Explorar el Código

Merge branch 'master' of http://119.23.210.103:3000/wy/mj_firm_former

zhangjingyuan hace 3 años
padre
commit
f62e101459
Se han modificado 1 ficheros con 51 adiciones y 18 borrados
  1. 51 18
      src/views/system/dashboard/components/new-home.vue

+ 51 - 18
src/views/system/dashboard/components/new-home.vue

@@ -47,7 +47,7 @@
                             <el-table-column
                                 prop="subject"
                                 label="事务名称"
-                                width="300"
+                                width="250"
                                 show-overflow-tooltip
                             >
                                 <template slot-scope="scope">{{ scope.row.subject | getWorkInfo('name') }}</template>
@@ -59,10 +59,26 @@
                                 <el-table-column
                                     show-overflow-tooltip
                                     width="120"
-                                    label="状态"
+                                    label="事务状态"
                                 >
                                     <template slot-scope="scope">{{ '待' + scope.row.name }}</template>
                                 </el-table-column>
+                                <el-table-column show-overflow-tooltip width="100">
+                                    <template slot="header" slot-scope="scope">
+                                        <span>办理进度</span>
+                                        <el-tooltip effect="dark" placement="top">
+                                            <div slot="content">
+                                                普通事务:接收三天之内为待办理,三天之后为已超时
+                                                <br/>
+                                                计划事务:月底前七天内为即将超时,超过接收当月月底为已超时,其余为待办理
+                                            </div>
+                                            <i class="el-icon-info"></i>
+                                        </el-tooltip>
+                                    </template>
+                                    <template slot-scope="scope">
+                                        <el-tag :type="stateOption[scope.row.state].type">{{ stateOption[scope.row.state].label }}</el-tag>
+                                    </template>
+                                </el-table-column>
                                 <el-table-column
                                     prop="startDept"
                                     show-overflow-tooltip
@@ -85,7 +101,7 @@
                             <template v-else-if="['over', 'finish'].includes(activeTab)">
                                 <el-table-column
                                     show-overflow-tooltip
-                                    label="状态"
+                                    label="事务状态"
                                     width="100"
                                 >
                                     <template slot-scope="scope">{{ scope.row.curNode ? scope.row.status == 'running' ? '已发起' : '已' + scope.row.curNode : contOfValue(scope.row.status) }}</template>
@@ -197,6 +213,20 @@
         finish: 'inst.',
         save: ''
     }
+    const stateOption = {
+        wait: {
+            label: '待办理',
+            type: ''
+        },
+        soon: {
+            label: '即将超时',
+            type: 'warning'
+        },
+        overtime: {
+            label: '已超时',
+            type: 'danger'
+        }
+    }
     const operate = {
         wait: pending,
         over: handledTask,
@@ -234,6 +264,7 @@
         data() {
             return {
                 tabList,
+                stateOption,
                 dataList: [],
                 paginate: {},
                 searchParams: {
@@ -248,7 +279,6 @@
                 proInstId: '',
                 loading: false,
                 drawer: false,
-                newsDataCms: [],
                 dialogFormVisible: false,
                 orgName: '',
                 roleName: '',
@@ -353,10 +383,14 @@
                                 instList.push(item.bpmnInstId)
                             })
                             let sql = `select b.bpmn_inst_id_, b.create_by_, a.name_ from ibps_bpm_inst b left join ibps_party_employee a on a.id_ = b.create_by_ where b.bpmn_inst_id_ in (${instList.join(',')}) order by find_in_set(b.bpmn_inst_id_,'${instList.join(',')}')`
+                            let currentTime = Date.now()
                             curdPost('sql', sql).then(res => {
                                 const data = res.variables && res.variables.data
                                 data.forEach((item, index) => {
                                     dataResult[index].submitBy = item.name_
+                                    dataResult[index].workName = dataResult[index].subject.includes('#') ? dataResult[index].subject.split('#')[0] : dataResult[index].subject.split('(')[0]
+                                    dataResult[index].workType = dataResult[index].workName.includes('计划') ? 'plan' : 'normal'
+                                    dataResult[index].state = this.judgeExpire(dataResult[index].createTime, currentTime, dataResult[index].workType, '1')
                                 })
                                 this.dataList = dataResult
                                 this.paginate = pageResult
@@ -404,18 +438,6 @@
                 let s = taskState[cont]
                 return s ? s : '暂停'
             },
-            // 获取公告
-            getMessage() {
-                let sql = "select td.*,ie.NAME_ from t_dxtz td,ibps_party_employee ie  where td.bian_zhi_ren_ = ie.id_ and  td.fa_song_fang_shi_ like  '%公告%' ORDER BY create_time_ desc"
-
-                curdPost('sql', sql).then(res => {
-                    // console.log(res)
-                    if (res.state == 200) {
-                        let dbData = res.variables && res.variables.data
-                        this.newsDataCms = dbData
-                    }
-                })
-            },
             getFormatParams(v, pagination) {
                 const params = this.$refs['crud'] ? this.$refs['crud'].getSearcFormData() : {}
                 
@@ -527,13 +549,24 @@
                     this.dealUnexpile(result.all, noticeList)
                 }
             },
-            // 判断是否过期
-            judgeExpire(time, current, type) {
+            // 判断是否过期、获取办理状态
+            judgeExpire(time, current, type, isState) {
                 let D = new Date(time)
                 let a = new Date(time).getTime()
                 let b = new Date(current).getTime()
                 // 创建时间当月最后一天的时间戳
                 let c = new Date(D.getFullYear(), D.getMonth() + 1, 0).getTime()
+                // 返回办理状态
+                if (isState) {
+                    let state = ''
+                    if (type === 'plan') {
+                        state = b >= c ? 'overtime' : b + (86400000 * 7) > c ? 'soon' : 'wait'
+                    } else {
+                        state = a + (86400000 * 3) < b ? 'overtime' : 'wait'
+                    }
+                    return state
+                }
+                // 返回是否过期
                 if (type === 'plan') {
                     return b + (86400000 * 7) > c
                 } else {