فهرست منبع

1.资产装订盖章节点批量提交

GouGengquan 10 ماه پیش
والد
کامیت
9a7884cabb
2فایلهای تغییر یافته به همراه166 افزوده شده و 4 حذف شده
  1. 5 1
      src/api/modules/workflow.js
  2. 161 3
      src/views/assets/todoList.vue

+ 5 - 1
src/api/modules/workflow.js

@@ -26,5 +26,9 @@ export default {
   },
   commit(params){
     return request.post(`workFlow/commit`, params)
-  }
+  },
+  // 批量提交节点
+  batchCommit(params){
+    return request.post(`workFlow/batchCommit`, params)
+  },
 }

+ 161 - 3
src/views/assets/todoList.vue

@@ -30,6 +30,8 @@
                 </el-button>
                 <el-button class="filter-item" style="float: left;" round type="success" @click="resetParams()">重置
                 </el-button>
+                <PermissionButton menu-code="_views_assets_batch_commit_bookbinding_stamp" class-name="filter-item"
+                    type="danger" icon="el-icon-paperclip" :page-jump="false" round @click="openBatchCommitDialog()" />
             </template>
             <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;">
                 <el-table-column label="项目编号" align="center" width="150">
@@ -114,6 +116,74 @@
         </y-page-list-layout>
         <TransferDialog :transferDialogVisible="visible" @parentFalse="parentFalse()" @getPage="selectPage()"
             :recordId="recordId"></TransferDialog>
+        <el-dialog :visible.sync="batchCommitDialog" width="70%">
+            <y-page-list-layout :page-list="batchCommitPageData" :page-para="batchCommitListQuery"
+                :get-page-list="selectBatchCommitPage">
+                <template slot="left">
+                    <el-input style="margin-left: 20px;width: 300px;float: left;" class="filter-item"
+                        v-model="batchCommitListQuery.keyWord" placeholder="项目编号/报告号/项目名称/业务来源" clearable>
+                    </el-input>
+                    <el-button class="filter-item" style="margin-left: 10px;float: left;" type="primary"
+                        @click="searchBatchCommitList()" round>搜索
+                    </el-button>
+                    <el-button class="filter-item" style="margin-left: 10px;float: left;" type="danger"
+                        @click="batchCommitNode()" round>提交选中流程
+                    </el-button>
+                </template>
+                <parentTable :clickRowToPick="true" ref="table" v-loading="listLoading" :data="batchCommitPageData.records"
+                    slot="table" style="width: 100%;height: 800px;" :selectionChange="handleSelectionChange">
+                    <el-table-column align="center" type="selection" claimOrders width="50" border="true">
+                    </el-table-column>
+                    <el-table-column label="项目编号" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="意见书号" align="center" width="250">
+                        <template slot-scope="{row}">
+                            <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo == null ? '-' :
+                                row.statementNo }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="报告号" align="center" width="250">
+                        <template slot-scope="{row}">
+                            <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo == null ? '-' : row.reportNo
+                            }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="项目名称" align="center" width="265">
+                        <template slot-scope="{row}">
+                            <span>{{ row.reportName || row.statementName || row.name }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="业务类型" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span>{{ row.assetsBusinessGener }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="当前节点" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span>{{ row.currentNodeName }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="当前节点负责人" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span>{{ row.handlerName }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="项目负责人" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span>{{ row.principalName }}</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="客户经理" align="center" width="150">
+                        <template slot-scope="{row}">
+                            <span>{{ row.clientManagerName }}</span>
+                        </template>
+                    </el-table-column>
+                </parentTable>
+            </y-page-list-layout>
+        </el-dialog>
     </div>
 </template>
 
@@ -148,7 +218,8 @@ export default {
                 // 关键字
                 keyWord: null,
                 // 处理人id
-                handlerId: this.$store.getters.userInfo.id
+                handlerId: this.$store.getters.userInfo.id,
+                getNodeIsBookbindingStamp: false
             },
             // 用户下拉列表
             allUsers: [],
@@ -180,7 +251,17 @@ export default {
                 }
             ],
             visible: false,
-            recordId: null
+            recordId: null,
+            batchCommitDialog: false,
+            workNodeCommits: [],
+            batchCommitListQuery: {
+                page: 1,
+                size: 10,
+                current: 1,
+                keyWord: null,
+                handlerId: this.$store.getters.userInfo.id
+            },
+            batchCommitPageData: { records: [] }
         }
     },
     created() {
@@ -216,6 +297,21 @@ export default {
             }
             this.selectPage();
         },
+        // 当前用户待办分页查询
+        selectBatchCommitPage() {
+            this.$api.assets.selectPage(this.batchCommitListQuery).then(res => {
+                if (res.code === 200) {
+                    this.batchCommitPageData = res.data;
+                }
+            })
+        },
+        // 条件查询
+        searchBatchCommitList() {
+            // 重置分页
+            this.batchCommitListQuery.page = 1
+            this.batchCommitListQuery.size = 10
+            this.selectBatchCommitPage()
+        },
         // 获取所有用户下拉列表
         getAllUser() {
             this.$api.user.simpleAll().then(res => {
@@ -303,9 +399,71 @@ export default {
         transfer(recordId) {
             this.visible = true;
             this.recordId = recordId;
+        },
+        openBatchCommitDialog() {
+            this.listQuery.getNodeIsBookbindingStamp = true;
+            this.selectBatchCommitPage();
+            this.batchCommitDialog = true;
+        },
+        handleSelectionChange(val) {
+            let pickedCommits = [];
+            for (let i in val) {
+                let commit = new Object();
+                commit.instanceNodeId = val[i].currentNodeId;
+                commit.state = "PASS";
+                commit.comments = "批量提交装订盖章节点";
+                commit.businessSubId = val[i].statementNo;
+                commit.businessMinId = val[i].reportNo;
+                pickedCommits.push(commit);
+            }
+            console.log(pickedCommits);
+            this.workNodeCommits = pickedCommits;
+            console.log(this.workNodeCommits);
+        },
+        // 批量提交流程节点
+        batchCommitNode() {
+            if (this.workNodeCommits.length > 0) {
+                this.$confirm('确认批量提交已选中流程?', '提示', {
+                    confirmButtonText: '确定',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                    this.$api.workflow.batchCommit(this.workNodeCommits).then(res => {
+                        if (res.code === 200 && res.data) {
+                            this.$notify({
+                                title: '成功',
+                                message: '工作流节点批量提交成功。',
+                                type: 'success',
+                                duration: 2000
+                            });
+                            this.selectPage();
+                            this.selectBatchCommitPage();
+                        } else {
+                            this.$notify({
+                                title: '失败',
+                                message: res.message,
+                                type: 'error',
+                                duration: 2000
+                            });
+                        }
+                    })
+                }).catch(() => {
+                    this.$message({
+                        type: 'info',
+                        message: '已取消批量提交'
+                    });
+                });
+            } else {
+                this.$notify.error({
+                    title: '错误',
+                    message: '请选择至少一条流程再提交!'
+                });
+            }
         }
     }
 }
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+    
+</style>