Forráskód Böngészése

工作流列表接口

xiao-xx 4 éve
szülő
commit
ad4e55eda3

+ 7 - 0
src/api/activiti/form/fw.js

@@ -18,6 +18,13 @@ export function  listInfo(query) {
     method: 'get',
     params: query
   })
+}// 发文待办列表
+export function  toDoItemListInfo(query) {
+  return request({
+    url: '/fw/toDoFwList',
+    method: 'get',
+    params: query
+  })
 }
 
 //已办工作列表

+ 3 - 3
src/views/dashboard/BarChart.vue

@@ -6,7 +6,7 @@
       <el-button style="float: right; padding: 5px 0;color: black;" type="text" @click="more">更   多</el-button>
     </el-row>
     <el-table v-loading="loading" :data="mesList" size="small" :show-header="showHeader">
-      <el-table-column label="公告公示"style="color:#1890ff"  prop="tatle" align="left"  :show-header="showHeader">
+      <el-table-column label="标题"style="color:#1890ff"  prop="tatle" align="left"  :show-header="showHeader">
         <template slot-scope="scope">
           <el-button type="text" @click="handleUpdate(scope.row)" style="color: black">{{scope.row.tatle}}</el-button>
         </template>
@@ -47,7 +47,7 @@
     components: {},
     data() {
       return {
-        showHeader:false,
+        showHeader:true,
         //下拉选框
         content: this.value,
         radio: '1',
@@ -72,7 +72,7 @@
         // 查询参数
         queryParams: {
           pageNum: 1,
-          pageSize:6,
+          pageSize:5,
           tatle: undefined,
           documentType: undefined,
           img: undefined,

+ 64 - 28
src/views/dashboard/LineChart.vue

@@ -2,54 +2,90 @@
   <el-card >
   <div slot="header" class="clearfix">
     <span>我的事项</span>
-    <el-button style="float: right; padding: 3px 0;color: #202020;" type="text">更多</el-button>
+    <el-button style="float: right; padding: 3px 0;color: #202020;" type="text" @click="more">更多</el-button>
   </div>
   <el-tabs v-model="activeName" @tab-click="handleClick">
-    <el-tab-pane label="已办事项" name="first">
-      <el-table :data="tableData" style="width: 100%;" :header-cell-style="{background:'#eee',width:'100%'}">
-             <el-table-column type="index" label="#" width="50" align="center"></el-table-column>
-             <el-table-column prop="name" label="业务名称"  align="left" ></el-table-column>
-             <el-table-column prop="date" label="完成时间" width="180" align="center"></el-table-column>
+    <el-tab-pane label="待办事项" name="first">
+      <el-table :data="toListItem" style="width: 100%;" :header-cell-style="{background:'#eee',width:'100%'}">
+        <el-table-column type="index" label="序号" width="50" align="center"></el-table-column>
+        <el-table-column prop="fwtitle" label="业务名称"  align="left" ></el-table-column>
+        <el-table-column prop="createtime" label="完成时间" width="180" align="center">
+          <template slot-scope="scope">
+            <span>{{scope.row.createtime | format('yyyy-MM-dd hh:mm')}}</span>
+          </template>
+        </el-table-column>
       </el-table>
     </el-tab-pane>
-    <el-tab-pane label="待办事项" name="second">
-      <el-table :data="tableData" style="width: 100%;" :header-cell-style="{background:'#eee',width:'100%'}">
-             <el-table-column type="index" label="#" width="50" align="center"></el-table-column>
-             <el-table-column prop="name" label="业务名称"  align="left" ></el-table-column>
-             <el-table-column prop="date" label="完成时间" width="180" align="center"></el-table-column>
+    <el-tab-pane label="我的申请" name="second">
+      <el-table :data="myApplication" style="width: 100%;" :header-cell-style="{background:'#eee',width:'100%'}">
+             <el-table-column type="index" label="序号" width="50" align="center"></el-table-column>
+             <el-table-column prop="fwtitle" label="业务名称"  align="left" ></el-table-column>
+             <el-table-column prop="createtime" label="创建时间" width="180" align="center">
+                <template slot-scope="scope">
+                  <span>{{scope.row.createtime | format('yyyy-MM-dd hh:mm')}}</span>
+                </template>
+             </el-table-column>
       </el-table>
     </el-tab-pane>
+
   </el-tabs>
   </el-card>
 </template>
 
 <script>
+  import { listInfo} from '@/api/system/meapply/meapply'
+  import {toDoItemListInfo} from "@/api/activiti/form/fw";
   export default {
     data() {
       return {
         activeName: 'first',
-        tableData: [{
-          name: '王小虎上海市普陀区金沙江路 1518 弄',
-          date: '2020-05-02',
-        }, {
-         name: '王小虎上海市普陀区金沙江路 1518 弄',
-           date: '2020-05-02',
-         }, {
-           name: '王小虎上海市普陀区金沙江路 1518 弄',
-             date: '2020-05-02',
-         }, {
-             name: '王小虎上海市普陀区金沙江路 1518 弄',
-               date: '2020-05-02',
-          }, {
-           name: '王小虎上海市普陀区金沙江路 1516 弄',
-           date: '2020-05-03',
-        }]
+        myApplication: [],
+        toListItem: [],
+        //参数
+        lineParams: {
+          pageNum: 1,
+          pageSize: 5,
+          // orderByColumn: "createtime",
+          // isAsc:"desc",//排序方式
+        },
       }
     },
+    created() {
+      this.getList();
+    },
     methods: {
       handleClick(tab, event) {
         console.log(tab, event);
-      }
+      },
+      getList() {
+        this.loading = true;
+        //我的申请
+        listInfo(this.lineParams).then(response => {
+          this.myApplication = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+        //待办请求
+        toDoItemListInfo(this.queryParams).then(response => {
+          this.toListItem = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+      },
+      detern(row){
+        this.reset();
+        const actkey = row.actkey || this.ids
+        const form = row || this.form
+        this.$router.push({path:'/actwork/todo/tododetails',query: {bd:form,id:actkey }})
+      },
+      more(){
+        if(this.activeName=='first'){
+          this.$router.replace('/meapply')
+        }else {
+          this.$router.replace('/todo')
+        }
+
+      },
     }
   };
 </script>

+ 88 - 10
src/views/dashboard/PieChart.vue

@@ -1,23 +1,99 @@
 <template>
   <el-card class="box-card">
     <div slot="header" class="clearfix">
-      <span>公示公告</span>
-      <el-button style="float: right; padding: 3px 0;color: #202020;" type="text">更多</el-button>
-    </div>
-    <div v-for="o in 5" :key="o" class="text item">
-      {{'列表内容 '+ o}}
+      <span>我的通知(未签收)</span>
+      <el-button style="float: right; padding: 3px 0;color: #202020;" type="text" @click="more">更多</el-button>
     </div>
+    <el-table v-loading="loading" :data="infoList" size="small" :show-header="showHeader">
+      <el-table-column label="标题"style="color:#1890ff"  prop="tatle" align="left"  :show-header="showHeader">
+        <template slot-scope="scope">
+          <el-button type="text"  style="color: black">{{scope.row.title}}</el-button>
+        </template>
+      </el-table-column>
+      <el-table-column label="发布日期" align="right"prop="updateTime" :show-header="showHeader" >
+        <template slot-scope="scope">
+          <el-button type="text"  style="color: black">{{parseTime(scope.row.sendtime,'{y}-{m}-{d}')}}</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
   </el-card>
 </template>
+<script>
+  import { listInfo, } from "@/api/system/notify_info/mylist";
+  export default {
+    name: "Info",
+    data() {
+      return {
+        showHeader:true,
+// 遮罩层
+        loading: true,
+// 选中数组
+        ids: [],
+// 非单个禁用
+        single: true,
+// 非多个禁用
+        multiple: true,
+// 总条数
+        total: 0,
+// 【请填写功能名称】表格数据
+        infoList: [],
+// 弹出层标题
+        title: "",
+// 是否显示弹出层
+        open: false,
+// 查询参数
+        pieParams: {
+          pageNum: 1,
+          pageSize: 5,
+          recvstatus:0,
+          orderByColumn:"sendtime",//排序字段
+           isAsc:"desc",//排序方式
+        },
+// 表单参数
+        form: {},
+// 表单校验
+        rules: {
+          guid: [
+            {required: true, message: "收件人不能为空", trigger: "blur"}
+          ],
+        },
+        tztitle: "通知详情",
+        tzshow: false,
+        xxloading: true,
+      };
+    },
+    created() {
+      this.getList();
+    },
+    methods: {
+      /** 查询【请填写功能名称】列表 */
+      getList() {
+        this.loading = true;
+        listInfo(this.pieParams).then(response => {
+          console.log(response.rows)
+          this.infoList = response.rows;
+          this.loading = false;
+        });
+      },
+
+      //指定跳转地址
+      more(){
+        this.$router.replace('/mylist')
+      },
 
+    }
+  }
+</script>
 <style lang="less" scoped>
-  .box-card{
+  .box-card {
     margin-left: 16px;
     height: 400px;
   }
-  .clearfix{
-    color:#1890ff;
+
+  .clearfix {
+    color: #1890ff;
   }
+
   .text {
     font-size: 14px;
   }
@@ -32,11 +108,13 @@
     display: table;
     content: "";
   }
+
   .clearfix:after {
     clear: both
   }
-  .el-card__header{
+
+  .el-card__header {
     background: #f5f5f5;
-    color:#1890ff;
+    color: #1890ff;
   }
 </style>

+ 25 - 22
src/views/dashboard/RaddarChart.vue

@@ -2,12 +2,12 @@
   <el-card class="box-card" style="margin-left: 0px">
     <div slot="header" class="clearfix">
       <span>办结业务</span>
-      <el-button style="float: right; padding: 3px 0;color: #202020;" type="text">更多</el-button>
+      <el-button style="float: right; padding: 3px 0;color: #202020;" type="text" @click="more">更多</el-button>
     </div>
-  <el-table class="body" :data="tableData" :header-cell-style="{background:'#eee',width:'100%'}">
-        <el-table-column type="index" label="#" width="50" align="center"></el-table-column>
-        <el-table-column prop="name" label="业务名称"  align="left"></el-table-column>
-        <el-table-column prop="date" label="完成时间" width="180" align="center"></el-table-column>
+  <el-table class="body" :data="doneList" :header-cell-style="{background:'#eee',width:'100%'}">
+        <el-table-column type="index" label="序号" width="50" align="center"></el-table-column>
+        <el-table-column prop="fwtitle" label="业务名称"  align="left"></el-table-column>
+        <el-table-column prop="createtime" label="完成时间" width="180" align="center"></el-table-column>
  </el-table>
  </el-card>
 </template>
@@ -16,24 +16,27 @@
  export default {
       data() {
         return {
-          tableData: [{
-            name: '王小虎上海市普陀区金沙江路 1518 弄',
-            date: '2020-05-02',
-          }, {
-           name: '王小虎上海市普陀区金沙江路 1518 弄',
-             date: '2020-05-02',
-           }, {
-             name: '王小虎上海市普陀区金沙江路 1518 弄',
-               date: '2020-05-02',
-           }, {
-               name: '王小虎上海市普陀区金沙江路 1518 弄',
-                 date: '2020-05-02',
-            }, {
-             name: '王小虎上海市普陀区金沙江路 1516 弄',
-             date: '2020-05-03',
-          }]
+          doneList: [],
+          raddarParams: {
+            pageNum: 1,
+            pageSize: 5,
+            // orderByColumn: "createtime",
+            // isAsc:"desc",//排序方式
+          },
         }
-      }
+      },
+   methods:{
+     getList() {
+       this.loading = true;
+       havedInfo(this.raddarParams).then(response => {
+         this.doneList = response.rows;
+         this.loading = false;
+       });
+     },
+     more(){
+       this.$router.replace('/havedone')
+     },
+   }
     }
 </script>
 <style lang="less" scoped>

+ 108 - 12
src/views/system/actwork/havedone.vue

@@ -1,7 +1,26 @@
 <template>
   <div class="app-container">
     <el-row :gutter="10" class="mb8">
-
+      <!--<el-col :span="1.5">-->
+      <!--<el-button-->
+      <!--type="success"-->
+      <!--icon="el-icon-edit"-->
+      <!--size="small"-->
+      <!--:disabled="single"-->
+      <!--@click="handleUpdate1"-->
+      <!--v-hasPermi="['system:info:edit']"-->
+      <!--&gt;修改</el-button>-->
+      <!--</el-col>-->
+      <!--<el-col :span="1.5">-->
+      <!--<el-button-->
+      <!--type="danger"-->
+      <!--icon="el-icon-delete"-->
+      <!--size="small"-->
+      <!--:disabled="multiple"-->
+      <!--@click="handleDelete"-->
+      <!--v-hasPermi="['system:info:remove']"-->
+      <!--&gt;删除</el-button>-->
+      <!--</el-col>-->
       <el-col :span="1.5">
         <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
           <el-form-item label="名称" prop="mailTheme">
@@ -49,12 +68,12 @@
             icon="el-icon-edit"
             @click="detern(scope.row)"
           >详情</el-button>
-         <!-- <el-button
+          <el-button
             size="small"
             type="text"
             icon="el-icon-share"
             @click="details(scope.row)"
-          >审批进度</el-button>-->
+          >审批进度</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -65,13 +84,56 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
+    <el-dialog title="审批跟踪记录" :visible.sync="dialogVisible" width="1200px">
+
+      <el-tabs :tab-position="tabPosition" style="min-height: 200px;">
+        <el-tab-pane>
+          <span slot="label"><i class="el-icon-date"></i> 审批记录</span>
+          <img :src="picUrl">
+        </el-tab-pane>
+        <el-tab-pane>
+          <span slot="label"><i class="el-icon-date"></i> 审批历史</span>
+
+
+          <el-table border :data="historyExamine" @selection-change="handleSelectionChange">
+            <el-table-column label="序号" type="index" width="130" align="center"></el-table-column>
+            <el-table-column label="任务名称" width="180" align="center" prop="activityName"/>
+            <el-table-column label="处理人" align="center" prop="assigneeName"/>
+            <el-table-column label="审批意见" align="center" prop="comment"/>
 
+            <el-table-column label="申请时间" width="180" align="center" prop="startTime">
+              <template slot-scope="scope">
+                <span>{{scope.row.startTime | format('yyyy-MM-dd hh:mm')}}</span>
+              </template>
+            </el-table-column>
+
+            <el-table-column label="结束时间" width="180" align="center" prop="endTime">
+              <template slot-scope="scope">
+                <span>{{scope.row.endTime | format('yyyy-MM-dd hh:mm')}}</span>
+              </template>
+            </el-table-column>
+
+            <el-table-column label="耗时" width="180" align="center" prop="activityType">
+              <template slot-scope="scope">
+                <span>{{scope.row.activityType }}</span>
+              </template>
+            </el-table-column>
+          </el-table>
+          <!--          formatTotalDateSub()-->
+
+        </el-tab-pane>
+      </el-tabs>
+      <span slot="footer" class="dialog-footer">
+           <el-button @click="cancel">关 闭</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
 <script>
 
-    import { havedInfo } from "@/api/activiti/form/fw";
+  import { havedInfo } from "@/api/activiti/form/fw";
+  import { recordImg, examineHistory } from '@/api/system/meapply/meapply'
   export default {
     name: 'havedone',
     data(){
@@ -104,7 +166,25 @@
         form: {},
         // 表单校验
         rules: {
-        }
+        },
+        picUrl: '',
+        tabPosition: 'left',
+
+        //弹窗
+        dialogVisible:false,
+        //审批历史
+        historyExamine: [
+          {
+            activityName: '',
+            assignee: '',
+            assigneeName: '',
+            comment: '',
+            startTime: '',
+            endTime: '',
+            activityType: ''
+          }
+
+        ],
       };
     },
     created() {
@@ -112,17 +192,32 @@
     },
     methods: {
 
-        detern(row){
-            this.reset();
-            const actkey = row.taskid || this.ids
-            const form = row || this.form
-            this.$router.push({path:'/actwork/havedone/havedetails',query: {bd:form,id:actkey }})
-        },
+      detern(row){
+        this.reset();
+        const actkey = row.taskid || this.ids
+        const form = row || this.form
+        this.$router.push({path:'/actwork/havedone/havedetails',query: {bd:form,id:actkey }})
+      },
+      details(row){
+        this.dialogVisible = true
+        //查看图片
+        var formdata = new FormData
+        formdata.append('pProcessInstanceId', row.taskid)
+        recordImg(formdata).then(response => {
+          this.picUrl = window.URL.createObjectURL(response)
+        })
+        examineHistory(row.taskid).then(response => {
+          this.historyExamine = response.rows;
+          console.log(response.rows)
+        })
+
+      },
+
 
       /** 查询【请填写功能名称】列表 */
       getList() {
         this.loading = true;
-          havedInfo(this.queryParams).then(response => {
+        havedInfo(this.queryParams).then(response => {
           this.infoList = response.rows;
           this.total = response.total;
           this.loading = false;
@@ -131,6 +226,7 @@
       // 取消按钮
       cancel() {
         this.open = false;
+        this.dialogVisible = false;
         this.reset();
       },
       // 表单重置

+ 3 - 0
src/views/system/actwork/meapply.vue

@@ -216,10 +216,13 @@
         formdata.append('pProcessInstanceId', row)
         //进度查看
         recordImg(formdata).then(response => {
+
           this.picUrl = window.URL.createObjectURL(response)
+
         })
 
         examineHistory(row).then(response => {
+
           this.historyExamine = response.rows;
           console.log(response.rows)
         })

+ 2 - 8
src/views/system/actwork/todo.vue

@@ -127,7 +127,7 @@
 </template>
 
 <script>
-  import {listInfo} from "@/api/activiti/form/fw";
+  import {toDoItemListInfo} from "@/api/activiti/form/fw";
   export default {
     name: 'todo',
     data(){
@@ -177,12 +177,6 @@
             const actkey = row.actkey || this.ids
             const form = row || this.form
             this.$router.push({path:'/actwork/todo/tododetails',query: {bd:form,id:actkey }})
-            // getInfo(mailGuid).then(response => {
-            //     this.form = response.data;
-            //     // this.open = true;
-            //     // this.title = "修改";
-            // });
-
         },
 
       // 详情
@@ -192,7 +186,7 @@
       /** 查询【请填写功能名称】列表 */
       getList() {
         this.loading = true;
-        listInfo(this.queryParams).then(response => {
+        toDoItemListInfo(this.queryParams).then(response => {
           this.infoList = response.rows;
           this.total = response.total;
           this.loading = false;