Ver código fonte

1.节点报告出库申请、报告出库部门审核、报告出库开发
2.归档审核与复审部归档审核开发(开发中)
3.资产列表查询修改

GouGengquan 1 ano atrás
pai
commit
3bc1f9223f

+ 13 - 7
src/views/assets/allList.vue

@@ -217,13 +217,19 @@ export default {
             })
         },
         orderDetail(row) {
-            this.$router.push({
-                path: "/assets/orderDetail",
-                query: {
-                    row: JSON.stringify(row),
-                    back: '/assets/allList'
-                }
-            })
+            if (row.currentNodeCode === 'REPORT_OUT_DEPARTMENT_CHECK') {
+                this.$router.push(`/out/warehouse/check?todoBusinessId=${row.assetsId}&sNo=${row.statementNo}&rNo=${row.reportNo}&tId=${row.recordId}&cId=${row.currentNodeId}&nCode=${row.currentNodeCode}&businessType=ASSET_BUSINESS`)
+                return;
+            } else {
+                this.$router.push({
+                    path: "/assets/orderDetail",
+                    query: {
+                        row: JSON.stringify(row),
+                        back: '/assets/allList'
+                    }
+                })
+            }
+
         }
     }
 }

+ 152 - 9
src/views/assets/myOrderList.vue

@@ -38,12 +38,12 @@
                 </el-table-column>
                 <el-table-column label="意见书号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span v-if="row.productionType === 'STATEMENT'">{{ row.productionNo }}</span>
+                        <span>{{ row.statementNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="报告号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span v-if="row.productionType !== 'STATEMENT'">{{ row.productionNo }}</span>
+                        <span>{{ row.reportNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="项目名称" align="center" width="150">
@@ -126,10 +126,18 @@
                         <span>{{ row.invoiceRealAmount }}</span>
                     </template>
                 </el-table-column>
-                <el-table-column label="操作" align="center" width="150" fixed="right">
+                <el-table-column label="操作" align="center" width="200" fixed="right">
                     <template slot-scope="{row}">
-                        <el-button round type="primary" @click="orderDetail(row)">详情</el-button>
+                        <el-button type="text" @click="orderDetail(row)">详情</el-button>
                         <el-button type="text" size="small" @click="openShouldAmountDialog(row)">应收款</el-button>
+                        <el-button v-if="row.currentNodeCode === 'REPORT_OUT_APPLY'" type="text"
+                            @click="openRepertoryOutWarehouse(row)">
+                            申请提前出库
+                        </el-button>
+                        <!-- <el-button v-if="row.currentNodeCode === 'REPORT_OUT_APPLY'" type="text"
+                            @click="canceladdRepertoryOutWarehouse(row)">
+                            撤销出库申请
+                        </el-button> -->
                     </template>
                 </el-table-column>
             </parentTable>
@@ -160,6 +168,21 @@
                 <el-button type="primary" @click="saveShouldAmount()">确 定</el-button>
             </span>
         </el-dialog>
+        <el-dialog :visible.sync="repertoryOutWarehouseVisible">
+            <el-form ref="outWarehouse" :model="outWarehouse" style="margin-left:40px; margin-right: 200px;">
+                <el-row>
+                    <el-col>
+                        <el-form-item label="出库原因:" prop="remark" label-width="160px" class="postInfo-container-item">
+                            <el-input type="textarea" placeholder="请输入申请提前出库原因" v-model="outWarehouse.remark"></el-input>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+            </el-form>
+            <span slot="footer" class="dialog-footer">
+                <el-button @click="repertoryOutWarehouseVisible = false">取 消</el-button>
+                <el-button type="primary" @click="addRepertoryOutWarehouse()">确 定</el-button>
+            </span>
+        </el-dialog>
     </div>
 </template>
 
@@ -221,7 +244,21 @@ export default {
                 businessSubId: null,
                 productionFundId: null,
                 evaluateAmount: null
-            }
+            },
+            repertoryOutWarehouseVisible: false,
+            outWarehouse: {
+                id: null,
+                productionFundId: null,
+                reportNo: null,
+                statementNo: null,
+                remark: null,
+                realAmount: null
+            },
+            businessId: null,
+            businessSubId: null,
+            businessMinId: null,
+            recordId: null,
+            currentNodeId: null
         }
     },
     created() {
@@ -276,7 +313,7 @@ export default {
             this.shouldAmountDialog = true;
             this.fund.id = row.orderFundId;
             this.fund.businessType = 'ASSET_BUSINESS';
-            this.fund.businessId = row.id;
+            this.fund.businessId = row.assetsId;
             this.fund.orderFundId = row.orderFundId;
             this.fund.shouldAmount = row.shouldAmount;
             this.fund.remark = row.remark;
@@ -291,11 +328,11 @@ export default {
                             if (res.code === 200 && res.data) {
                                 this.$notify({
                                     title: '成功',
-                                    message: '订单应收款已完善',
+                                    message: '订单应收款已修改',
                                     type: 'success',
                                     duration: 1000
                                 });
-                                this.getList();
+                                this.selectMyOrderPage();
                                 this.shouldAmountDialog = false;
                             } else {
                                 this.$notify({
@@ -315,7 +352,7 @@ export default {
                                     type: 'success',
                                     duration: 1000
                                 });
-                                this.getList();
+                                this.selectMyOrderPage();
                                 this.shouldAmountDialog = false;
                             } else {
                                 this.$notify({
@@ -341,6 +378,112 @@ export default {
             this.fund.productionFundId = null;
             this.fund.remark = null;
             this.fund.evaluateAmount = null
+        },
+        openRepertoryOutWarehouse(row) {
+            this.repertoryOutWarehouseVisible = true;
+            this.outWarehouse.reportNo = row.reportNo;
+            this.outWarehouse.businessType = 'ASSET_BUSINESS';
+            this.businessId = row.assetsId;
+            this.businessSubId = row.statementNo;
+            this.businessMinId = row.reportNo;
+            this.recordId = row.recordId;
+            this.currentNodeId = row.currentNodeId;
+        },
+        // 新增出库申请
+        addRepertoryOutWarehouse() {
+            if (this.outWarehouse.remark !== null && this.outWarehouse.remark !== '') {
+                let taskRecordDTO = new Object();
+                taskRecordDTO.recordId = this.recordId;;
+                taskRecordDTO.taskData = this.outWarehouse;
+                this.$api.productionOutWarehouse.add(taskRecordDTO).then(res => {
+                    if (res.code === 200 && res.data) {
+                        this.$notify({
+                            title: '成功',
+                            message: '出库申请已提交',
+                            type: 'success',
+                            duration: 2000
+                        });
+                        this.commitNode('PASS', this.outWarehouse.remark);
+                        this.repertoryOutWarehouseVisible = false;
+                    } else {
+                        this.$notify({
+                            title: '失败',
+                            message: '出库申请提交失败',
+                            type: 'error',
+                            duration: 2000
+                        });
+                    }
+                })
+            } else {
+                this.$notify({
+                    title: '警告',
+                    message: '出库原因是必填项',
+                    type: 'error',
+                    duration: 2000
+                });
+            }
+        },
+        // 撤销出库申请
+        canceladdRepertoryOutWarehouse(row) {
+            this.$confirm('请确认是否撤销此出库申请?', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning',
+                center: true
+            }).then(() => {
+                this.$api.productionOutWarehouse.detail(row.warehouseId).then(res => {
+                    if (res.departmentCheckState !== '审核中') {
+                    this.$notify({
+                        title: '警告',
+                        message: '出库申请'+ res.departmentCheckState +',无法撤销。',
+                        type: 'error',
+                        duration: 2000
+                    });
+                    return;
+                }
+                })
+                
+                if (row.id) {
+                    this.$api.productionOutWarehouse.cancel(row.id).then(res => {
+                        if (res.code === 200 && res.data) {
+                            this.$notify({
+                                title: '成功',
+                                message: '出库申请已撤销',
+                                type: 'success',
+                                duration: 2000
+                            });
+                            // 撤销成功退回节点
+                            this.commitNode('REVERSE');
+                        }
+                    })
+                }
+            })
+        },
+        // 提交节点
+        commitNode(state, remark) {
+            let commit = new Object;
+            commit.instanceNodeId = this.currentNodeId;
+            commit.state = state;
+            commit.comments = remark;
+            commit.businessMinId = this.businessMinId;
+            commit.businessSubId = this.businessSubId;
+            this.$api.workflow.commit(commit).then(res => {
+                if (res.code === 200 && res.data) {
+                    this.$notify({
+                        title: '成功',
+                        message: '工作流节点提交成功。',
+                        type: 'success',
+                        duration: 2000
+                    });
+                } else {
+                    this.$notify({
+                        title: '失败',
+                        message: '工作流节点提交失败,请联系管理员。',
+                        type: 'error',
+                        duration: 2000
+                    });
+                }
+            })
         }
     }
 }

+ 34 - 14
src/views/assets/orderDetail.vue

@@ -19,6 +19,12 @@
       </el-collapse-item>
     </el-collapse>
     <div class="button-area">
+      <el-button @click="openProductionDialog" v-if="currentNode.nodeCode === 'PRODUCT_CHOICE' || currentNode.nodeCode === 'REPORT_CHOICE'" type="danger" round>
+        选择产品
+      </el-button>
+      <el-button @click="openAssetsAchievementRatioDialog()" v-if="currentNode.nodeCode === 'CHECK_ARCHIVING' || currentNode.nodeCode === 'RECHECK_ARCHIVING'" type="danger" round>
+        <span v-if="currentNode.nodeCode === 'RECHECK_ARCHIVING'">复审部</span> 归档审核
+      </el-button>
       <el-button v-if="nodeBusinessInfo.currentNodePermission.commit" class="y-save" type="success" round
         @click="commit('PASS')" :disabled="!nodeBusinessInfo.doWorkflow">提交</el-button>
       <el-button v-if="nodeBusinessInfo.currentNodePermission.reversible" class="y-save" type="warning" round
@@ -281,15 +287,6 @@
             </div>
           </el-form>
         </y-detail-page-layout>
-        <el-row>
-          <el-col>
-            <el-col :span="2">
-              <el-button @click="openProductionDialog"
-                v-if="currentNode.nodeCode === 'PRODUCT_CHOICE' || currentNode.nodeCode === 'REPORT_CHOICE'" type="danger"
-                round>选择产品</el-button>
-            </el-col>
-          </el-col>
-        </el-row>
       </el-tab-pane>
       <el-tab-pane name="members" class="pane-class" :lazy=true>
         <span slot="label"><i class="el-icon-document"></i>项目人员</span>
@@ -577,9 +574,11 @@
                     @click="productionPerformanceForm.productionId = scope.row.id, openProductionCheckDialog()">
                     四审报告
                   </el-button>
-                  <el-button v-if="(currentNode.nodeCode === 'STATEMENT_IN' || currentNode.nodeCode === 'REPORT_IN') && scope.row.repertoryState === null"
+                  <el-button
+                    v-if="(currentNode.nodeCode === 'STATEMENT_IN' || currentNode.nodeCode === 'REPORT_IN') && scope.row.repertoryState === null"
                     type="text" size="small" @click="openWareHouseDialog(scope.row);">产品入库</el-button>
-                  <el-button v-if="(currentNode.nodeCode === 'STATEMENT_OUT' || currentNode.nodeCode === 'REPORT_OUT') && scope.row.repertoryState === false"
+                  <el-button
+                    v-if="(currentNode.nodeCode === 'STATEMENT_OUT' || currentNode.nodeCode === 'REPORT_OUT') && scope.row.repertoryState === false"
                     type="text" size="small" @click="openWareHouseDialog(scope.row);">产品出库</el-button>
                 </template>
               </el-table-column>
@@ -1140,6 +1139,14 @@
         <el-button type="primary" @click="doWareHouse()">确 定</el-button>
       </span>
     </el-dialog>
+
+    <el-dialog :visible.sync="assetsAchievementRatioDialogVisible" width="50%">
+      
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="warehouseDialog = false">取 消</el-button>
+        <el-button type="primary" @click="">确 定</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -1614,7 +1621,16 @@ export default {
       warehouseDialog: false,
       scanEntryData: null,
       wareHouseProductionType: null,
-      wareHouseproductionId: null
+      wareHouseproductionId: null,
+      assetsAchievementRatioDialogVisible: false,
+      // 资产绩效比例表单
+      evaluationMemberForm: {
+        id: null,
+        businessType: null,
+        memberId: null,
+        achievementRatio: null,
+        reportNo: null
+      }
     }
   },
   watch: {
@@ -1935,8 +1951,8 @@ export default {
               this.nodeBusinessInfo.currentNodePermission.skippable = res.data.skippable;
               this.nodeBusinessInfo.currentNodePermission.terminable = res.data.terminable;
               this.nodeBusinessInfo.businessId = this.pageParams.row.assetsId;
-              
-              if(this.currentNode.nodeCode === 'REPORT_IN'){
+
+              if (this.currentNode.nodeCode === 'REPORT_IN') {
                 this.getProductionRealAmount(this.pageParams.row.reportNo);
               }
             }
@@ -2801,6 +2817,10 @@ export default {
           this.nodeBusinessInfo.ifProductionFund = false;
         }
       })
+    },
+    // 打开绩效比例分配弹窗
+    openAssetsAchievementRatioDialog(){
+      this.assetsAchievementRatioDialogVisible = true;
     }
   }
 

+ 6 - 0
src/views/finance/outWarehouseCheck.vue

@@ -193,6 +193,9 @@ export default {
     },
     getList() {
       this.listQuery.keyword = this.$route.query.sNo;
+      if (this.$route.query.businessType === 'ASSET_BUSINESS') {
+        this.listQuery.keyword = this.$route.query.rNo;
+      }
       this.$api.productionOutWarehouse.list(Object.assign({businessType:this.businessType}, this.listQuery)).then(res=>{
         if (res.code ===200){
             this.pageData = res.data;
@@ -206,6 +209,9 @@ export default {
       if (code === 'PERSONAL_BUSINESS'){
         return '个贷业务'
       }
+      if (code === 'ASSET_BUSINESS') {
+        return '资产业务'
+      }
     },
     doCheck(id){
         this.checkDialog = true;