Procházet zdrojové kódy

1.bug修复
2.对于资产产品撰写以及流程分叉等相关前端页面与逻辑判断修改或新增

GouGengquan před 1 rokem
rodič
revize
bf59dcd7b5
2 změnil soubory, kde provedl 85 přidání a 41 odebrání
  1. 1 1
      src/api/modules/assets.js
  2. 84 40
      src/views/assets/orderDetail.vue

+ 1 - 1
src/api/modules/assets.js

@@ -92,7 +92,7 @@ export default {
         return request.post(`assetsProduction/writeAssetsProduction`, params)
     },
     // 根据业务id与产品号查询产品信息
-    getAssetsProductionDetail(params) {
+    getProductionList(params) {
         return request.get(`assetsProduction/getProductionList`, { params: params })
     }
 }

+ 84 - 40
src/views/assets/orderDetail.vue

@@ -437,7 +437,7 @@
         </div>
       </el-tab-pane>
       <el-tab-pane name="production" class="pane-class" :lazy=true>
-        <span slot="label"><i class="el-icon-document"></i>产品信息</span>
+        <span slot="label" @click="getProductionList()"><i class="el-icon-document"></i>产品信息</span>
         <div class="createMajor-main-container">
           <div class="postInfo-container">
             <div style="margin-top: 35px;">
@@ -448,58 +448,67 @@
                 </h3>
               </el-divider>
             </div>
-            <el-table ref="multipleTable" stripe @selection-change=""
-              :header-row-style="{ color: '#333333' }" border takeNumberItems style="width: 100%; margin-top:20px">
-              <el-table-column type="selection" width="55" :selectable="selectable">
-              </el-table-column>
+            <span v-if="currentNode.nodeCode === 'GENERATE_STATEMENT'">
+              选择要提交的产品:
+              <el-select v-model="commitProductionNo" @change="pushProductionNo()" placeholder="请选择要提交的产品"
+                style="width: 300px;">
+                <el-option v-for="(pro, productionNo) in assetsProductionData" :label="pro.productionNo"
+                  :value="pro.productionNo" :key="pro.id"></el-option>
+              </el-select>
+            </span>
+            <el-table ref="multipleTable" :data="assetsProductionData" stripe :header-row-style="{ color: '#333333' }"
+              border takeNumberItems style="width: 100%; margin-top:20px">
               <el-table-column prop="id" label="id" width="80" align="center">
               </el-table-column>
-              <el-table-column prop="productionNo" label="产品号" align="center" show-overflow-tooltip>
+              <el-table-column width="200" prop="productionNo" label="产品号" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="productionNo" label="产品类型" align="center" show-overflow-tooltip>
+              <el-table-column prop="productionType" label="产品类型" align="center" show-overflow-tooltip>
+                <template slot-scope="{row}">
+                  <span v-if="row.productionType === 'STATEMENT'">价值意见书</span>
+                  <span v-if="row.productionType == 'LETTER'">意见函</span>
+                  <span v-if="row.productionType == 'CONSULT'">咨询报告</span>
+                  <span v-if="row.productionType == 'REPORT'">评估报告</span>
+                </template>
               </el-table-column>
-              <el-table-column prop="purposeName" label="委托方名称" align="center" show-overflow-tooltip>
+              <el-table-column prop="clientName" label="委托方名称" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="theHolder" label="委托方电话" align="center" show-overflow-tooltip>
+              <el-table-column prop="clientTel" label="委托方电话" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="valueTypeName" label="评估基准日" align="center" show-overflow-tooltip>
+              <el-table-column prop="valuationBasisDate" label="评估基准日" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="totalAssetCarryingAmount" label="评估面积" align="center" show-overflow-tooltip>
+              <el-table-column prop="evaluateAcreage" label="评估面积" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="totalLiabilitiesCarryingAmount" label="评估单价" align="center"
-                show-overflow-tooltip>
+              <el-table-column prop="evaluatePrice" label="评估单价" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="carryingAmountOfNetAssets" label="评估总价" align="center" show-overflow-tooltip>
+              <el-table-column prop="evaluateAmount" label="评估总价" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="estimatedValue" label="产权人" align="center" show-overflow-tooltip>
+              <el-table-column prop="owner" label="产权人" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="产品打印数量" align="center" show-overflow-tooltip>
+              <el-table-column prop="printCount" label="产品打印数量" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="产品出具日期" align="center" show-overflow-tooltip>
+              <el-table-column prop="createProductionDate" label="产品出具日期" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="特殊情况说明" align="center" show-overflow-tooltip>
+              <el-table-column prop="comment" label="特殊情况说明" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="库存状态" align="center" show-overflow-tooltip>
+              <el-table-column prop="repertoryState" label="库存状态" align="center" show-overflow-tooltip>
+                <template slot-scope="{row}">
+                  <span v-if="row.productionType === 0">已入库</span>
+                  <span v-if="row.productionType === 1">已出库</span>
+                </template>
               </el-table-column>
-              <el-table-column prop="checkValue" label="入库时间" align="center" show-overflow-tooltip>
+              <el-table-column prop="repertoryInTime" label="入库时间" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="出库时间" align="center" show-overflow-tooltip>
+              <el-table-column prop="repertoryOutTime" label="出库时间" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="归档日期" align="center" show-overflow-tooltip>
+              <el-table-column prop="saveFileDate" label="归档日期" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="checkValue" label="送达状态" align="center" show-overflow-tooltip>
+              <el-table-column prop="delivery" label="送达状态" align="center" show-overflow-tooltip>
               </el-table-column>
               <el-table-column label="操作" align="center" width="130" fixed="right">
                 <template slot-scope="scope">
                   <el-button type="text" size="small">
                     查看
                   </el-button>
-                  <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text"
-                    size="small">
-                    编辑
-                  </el-button>
-                  <el-button v-if="currentNode.nodeCode === 'SPOT_RECONNAISSANCE_DETERMINE_PRICE'" type="text"
-                    size="small">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -792,7 +801,8 @@
             <el-row class="row-style">
               <el-col>
                 <el-form-item label="评估对象:" prop="productionNo" label-width="120px" class="postInfo-container-item">
-                  <el-select v-model="assetsProductionFrom.productionNo" @change="getAssetsProductionDetail()" placeholder="请选择" style="width: 300px;">
+                  <el-select v-model="assetsProductionFrom.productionNo" @change="getAssetsProductionDetail()"
+                    placeholder="请选择" style="width: 300px;">
                     <el-option v-for="(target, productionNo) in assetsEvaluationTarget" :label="target.productionNo"
                       :value="target.productionNo" :key="target.id"></el-option>
                   </el-select>
@@ -1015,14 +1025,15 @@ export default {
           skippable: true,
         },
         mainBusiness: "ASSET_BUSINESS",
-        doWorkflow: true,
+        doWorkflow: false,
+        businessSubId: null,
         businessId: null,
         currentNodeInstanceId: null,
-        currentNodeInstanceCode: null,
         production: [],
         reportNos: [],
-        businessSubId: null,
-        ifFeedback: null
+        currentNodeInstanceCode: null,
+        ifCheckTask: true,
+        ifPay: null
       },
       currentNode: {
         flowId: null,
@@ -1353,7 +1364,9 @@ export default {
         hasNotTakeNumTargetSelect: null,
         selectAll: null,
         printCount: null
-      }
+      },
+      assetsProductionData: null,
+      commitProductionNo: null
     }
   },
   watch: {
@@ -1362,10 +1375,12 @@ export default {
   created() {
     this.couldEdit = true;
     this.couldBack = true;
+    this.nodeBusinessInfo.doWorkflow = true;
     // 获取页面参数
     this.pageParams.back = this.$route.query.back;
     this.pageParams.row = JSON.parse(this.$route.query.row);
     this.nodeBusinessInfo.businessSubId = this.pageParams.row.productionNo;
+    console.log(this.nodeBusinessInfo.businessSubId)
     this.getProductionTypes(this.pageParams.row.assetsId);
     this.getCurrentNodeInfo();
     this.getAllotDepartment();
@@ -1373,6 +1388,7 @@ export default {
     this.getCustomerCompany(1);
     this.getAssetsDetailById(this.pageParams.row.assetsId);
     this.getProductionByBusinessId(this.pageParams.row.assetsId);
+    this.getProductionList();
   },
 
   methods: {
@@ -1402,8 +1418,8 @@ export default {
         let nodeCode = this.currentNode.nodeCode;
         switch (nodeCode) {
           case 'GENERATE_STATEMENT':
-            let notTakeNumberTargets = this.evaluateLandData.filter(function (e) {
-              return e.statementNo == null;
+            let notTakeNumberTargets = this.assetsEvaluationTarget.filter(function (e) {
+              return e.productionNo == null;
             })
             if (notTakeNumberTargets.length > 0) {
               this.$notify({
@@ -1722,7 +1738,7 @@ export default {
     // 获取流程节点信息
     getCurrentNodeInfo() {
       if (this.pageParams.row.assetsId) {
-        this.$api.workNodeInstance.currentNode({ "mainBusiness": "ASSET_BUSINESS", "businessId": this.pageParams.row.assetsId, "businessSubId": this.pageParams.row.businessSubId, "businessMinId": this.pageParams.row.businessMinId }).then(res => {
+        this.$api.workNodeInstance.currentNode({ "mainBusiness": "ASSET_BUSINESS", "businessId": this.pageParams.row.assetsId, "businessSubId": this.pageParams.row.productionNo, "businessMinId": this.pageParams.row.businessMinId }).then(res => {
           if (res.code === 200) {
             if (res.data) {
               this.currentNode = res.data;
@@ -2215,13 +2231,14 @@ export default {
             if (res.code == 200) {
               this.$notify({
                 title: '成功',
-                message: '产品撰写成功!请继续提交流程节点!',
+                message: '产品撰写成功!',
                 type: 'success',
                 duration: 2000
               });
             }
             this.getAETargetListByAssetsId();
             this.productionWriteDialogVisible = false;
+            this.getProductionList()
           })
         }
       })
@@ -2229,8 +2246,35 @@ export default {
     },
     resetProductionForm() {
       this.fileList = [];
-    }
+    },
+    // 根据业务id与产品号查询产品信息
+    getProductionList() {
+      let aProListSelectDTO = { businessId: null, productionNo: null }
+      aProListSelectDTO.businessId = this.assetsForm.id;
+      aProListSelectDTO.productionNo = this.pageParams.row.productionNo;
+      this.$api.assets.getProductionList(aProListSelectDTO).then(res => {
+        if (res.code == 200) {
+          this.assetsProductionData = res.data;
+        }
+      })
+    },
+    //选择要提交节点的产品号
+    pushProductionNo() {
+      this.nodeBusinessInfo.reportNos = [];
+      this.nodeBusinessInfo.reportNos.push(this.commitProductionNo);
+      this.nodeBusinessInfo.businessSubId = this.commitProductionNo;
 
+      //判断是否还有未撰写的产品(false:无,提交时完成节点任务 true:有,提交时不完成节点任务)
+      let isNotWriteAllPro = this.assetsEvaluationTarget.some(obj =>
+        (obj.createProductionDate === null || obj.createProductionDate === '')
+      );
+      if (this.currentNode.nodeCode === 'GENERATE_STATEMENT' && isNotWriteAllPro) {
+        this.nodeBusinessInfo.ifCheckTask = false;
+      } else {
+        this.nodeBusinessInfo.ifCheckTask = true;
+      }
+
+    }
   }
 
 }