From bdfbb741d767690ea05036a3116e63d06d6bb61b Mon Sep 17 00:00:00 2001
From: wente <329538422@qq.com>
Date: 星期一, 18 十二月 2023 10:03:30 +0800
Subject: [PATCH] 项目表

---
 web/src/views/modules/configItemChange/ConfigItemChange-AddOrUpdate.vue |  245 ++++++++++++++++++++++++++++++++----------------
 1 files changed, 163 insertions(+), 82 deletions(-)

diff --git a/web/src/views/modules/configItemChange/ConfigItemChange-AddOrUpdate.vue b/web/src/views/modules/configItemChange/ConfigItemChange-AddOrUpdate.vue
index 85e81e2..76fb4a6 100644
--- a/web/src/views/modules/configItemChange/ConfigItemChange-AddOrUpdate.vue
+++ b/web/src/views/modules/configItemChange/ConfigItemChange-AddOrUpdate.vue
@@ -1,14 +1,14 @@
 <template>
   <zt-dialog ref="dialog" column="3" :title="title" :stepMarker="stepMarker" @confirm="formSubmit">
     <el-form ref="dataForm" style="padding-top: 0" :inline="true" :disabled="dataForm.disabled" :model="dataForm"
-             label-width="120px" class="warehouseFormAuto">
+             label-width="120px" class="configChangeFormAuto">
       <div>
         <el-form-item label-width="60px" label="缂栧彿:" style="width:100%;margin-bottom: -5px">
           <span>{{dataForm.configItemChange.code || '缂栧彿鑷姩鐢熸垚'}}</span>
         </el-form-item>
       </div>
       <div style="border: 1px solid rgba(0,0,0,.2);width: 99%">
-        <div style="border-bottom: 1px solid rgba(0,0,0,.2);" class="warehouseContentWidth">
+        <div style="border-bottom: 1px solid rgba(0,0,0,.2);" class="configChangeContentWidth">
           <el-form-item class="marginTopAndMarginBottom" label="椤圭洰缂栧彿" style="width: 49%">
             <el-input v-model="dataForm.project.code" placeholder="璇疯緭鍏ラ」鐩紪鍙�"></el-input>
           </el-form-item>
@@ -16,29 +16,29 @@
             <el-input v-model="dataForm.project.softwareName" placeholder="璇疯緭鍏ラ」鐩悕绉�"></el-input>
           </el-form-item>
           <el-form-item label="鐢宠浜�" style="width: 49%">
-            <el-input :disabled="stepMarker!=='pzxrk_first'" v-model="dataForm.configItemChange.applicant"
+            <el-input :disabled="stepMarker!=='pzxbg_first'" v-model="dataForm.configItemChange.applicant"
                       placeholder="璇疯緭鍏ョ敵璇蜂汉"></el-input>
           </el-form-item>
           <el-form-item label="鐢宠鏃ユ湡" style="width: 49%">
             <el-date-picker
-              :disabled="stepMarker!=='pzxrk_first'"
+              :disabled="stepMarker!=='pzxbg_first'"
               v-model="dataForm.configItemChange.applyDate"
               type="date"
               placeholder="璇烽�夋嫨鐢宠鏃ユ湡">
             </el-date-picker>
           </el-form-item>
           <el-form-item class="marginTopAndMarginBottom2" label="搴撶被鍨�" style="width: 99%">
-            <zt-dict v-model="dataForm.configItemChange.libraryType" :radio="true" dict="library_type"></zt-dict>
+            <zt-dict :disabled="stepMarker!=='pzxbg_first'" v-model="dataForm.configItemChange.libraryType" :radio="true" dict="library_type"></zt-dict>
           </el-form-item>
         </div>
-        <div class="el-flexManageDialog el-border-bottom">
+        <div class="el-configChangeDialog el-border-bottom">
           <div class="DFormWidth DAlign DHold">
-            鍏ュ簱閰嶇疆椤�
+            鍙樻洿鐢宠閰嶇疆椤�
           </div>
           <div class="el-border-left" style="width: calc(100% - 120px)">
             <div class="table-container">
               <el-table ref="tableConfigItemList" class="el-software el-margin-top-bot"
-                        style="width: 99%;margin-left: 5px" border :data="dataForm.configItemList"
+                        style="width: 99%;margin-left: 5px" border :data="dataForm.configChangeList"
                         stripe>
                 <el-table-column prop="no" align="center" width="60" label="搴忓彿">
                   <template slot-scope="scope">
@@ -51,7 +51,7 @@
                     <span v-else>{{row.itemName}}</span>
                   </template>
                 </el-table-column>
-                <el-table-column prop="itemDentify" align="center" min-width="290" label="閰嶇疆椤规爣璇�">
+                <el-table-column prop="itemIdentify" align="center" min-width="290" label="閰嶇疆椤规爣璇�">
                   <template v-slot="{ row }">
                     <el-input  v-if="showAddAndEdit" v-model="row.itemIdentify" placeholder="閰嶇疆椤规爣璇�"></el-input>
                     <span v-else>{{row.itemIdentify}}</span>
@@ -93,24 +93,89 @@
                   </template>
                 </el-table-column>
               </el-table>
-              <div v-if="showAddAndEdit" class="icon-container">
-                <el-dropdown @command="handleCommand">
-                  <span class="el-dropdown-link">
-                    <i class="el-icon-plus"></i>
-                  </span>
-                  <el-dropdown-menu slot="dropdown">
-                    <el-dropdown-item v-for="item in menuOptions" :key="item.pageCode" :command="item.pageCode">
-                      {{ item.name }}
-                    </el-dropdown-item>
-                  </el-dropdown-menu>
-                </el-dropdown>
+              <div v-if="showAddAndEdit && !dataForm.disabled"  class="icon-container" @click="handleCommand">
                 <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
-                <!-- <i class="el-icon-plus"></i>-->
+                 <i class="el-icon-plus"></i>
               </div>
             </div>
           </div>
         </div>
-        <div class="el-flexManageDialog el-border-bottom">
+        <div class="el-configChangeDialog el-border-bottom">
+          <div style="width: 120px;text-align: center;font-weight: 600">
+            鍙樻洿鍘熷洜
+          </div>
+          <div class="el-border-left acceptDate" style="width: 90%;">
+            <el-form-item style="width: 100%;padding-left:20px;margin:0;">
+              <el-input v-if="stepMarker=='pzxbg_first'" v-model="dataForm.configItemChange.changeReason" placeholder="鍙樻洿鍘熷洜..."></el-input>
+              <span v-else>{{dataForm.configItemOutbound.changeReason}}</span>
+            </el-form-item>
+          </div>
+        </div>
+        <div class="el-configChangeDialog el-border-bottom">
+          <div style="width: 120px;text-align: center;font-weight: 600">
+            鍙樻洿褰卞搷鍒嗘瀽
+          </div>
+          <div class="el-border-left acceptDate" style="width: 90%;">
+            <el-form-item style="width: 100%;padding-left:20px;margin:0;">
+              <el-input :disabled="stepMarker!=='pzxbg_first'" v-model="dataForm.configItemChange.changeAnalysis" placeholder="鍙樻洿褰卞搷鍒嗘瀽..."></el-input>
+            </el-form-item>
+          </div>
+        </div>
+        <div class="el-configChangeDialog el-border-bottom">
+          <div style="width: 120px;text-align: center;font-weight: 600">
+            鍙樻洿鍐呭
+          </div>
+          <div style="width: calc(100% - 120px)" class="el-border-left">
+            <el-form-item class="el-CMTextarea" style="width: 100%;padding: 5px">
+              <el-input v-if="stepMarker=='pzxbg_first'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
+                        v-model="dataForm.configItemChange.changeContent"></el-input>
+              <span v-else>{{dataForm.configItemChange.changeContent}}</span>
+            </el-form-item>
+            <el-form-item label-width="80%" label="鍙樻洿瀹炴柦浜猴細" style="width: 65%">
+              <span>{{dataForm.configItemChange.implementer}}</span>
+            </el-form-item>
+            <el-form-item label="鏃ユ湡锛�" style="width: 20%">
+              <span>{{dataForm.configItemChange.changeDate}}</span>
+            </el-form-item>
+          </div>
+        </div>
+        <div class="el-configChangeDialog el-border-bottom">
+          <div class="DFormWidth DAlign DHold">
+            鎵瑰噯鎰忚
+          </div>
+          <div style="width: calc(100% - 120px)" class="el-border-left">
+            <el-form-item class="el-wt-form-item-margin" label-width="20px" style="width: 85%">
+              <zt-dict :disabled="stepMarker!=='pzxbg_bmsh'" v-model="dataForm.configItemChange.approvalOpinions"
+                       dict="is_pass" :radio="true"
+                       clearable></zt-dict>
+            </el-form-item>
+            <el-form-item label-width="80%" label="绛惧瓧锛�" style="width: 65%">
+              <span>{{dataForm.configItemChange.approvalSign}}</span>
+            </el-form-item>
+            <el-form-item label="鏃ユ湡锛�" style="width: 20%">
+              <span>{{dataForm.configItemChange.approvalDate}}</span>
+            </el-form-item>
+          </div>
+        </div>
+        <div class="el-configChangeDialog el-border-bottom">
+          <div style="width: 120px;text-align: center;font-weight: 600">
+            椤圭洰CM鍑哄簱鎿嶄綔
+          </div>
+          <div style="width: calc(100% - 120px)" class="el-border-left">
+            <el-form-item class="el-CMTextarea" style="width: 100%;padding: 5px">
+              <el-input v-if="stepMarker=='pzxbg_cmcz'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
+                        v-model="dataForm.configItemChange.outboundCmOperations"></el-input>
+              <span v-else>{{dataForm.configItemChange.outboundCmOperations}}</span>
+            </el-form-item>
+            <el-form-item label-width="80%" label="鎿嶄綔浜猴細" style="width: 65%">
+              <span>{{dataForm.configItemChange.outboundOperator}}</span>
+            </el-form-item>
+            <el-form-item label="鏃ユ湡锛�" style="width: 20%">
+              <span>{{dataForm.configItemChange.outboundOperateDate}}</span>
+            </el-form-item>
+          </div>
+        </div>
+        <div class="el-configChangeDialog el-border-bottom">
           <div class="DFormWidth DAlign DHold">
             椤圭洰QA瀹℃牳
           </div>
@@ -122,21 +187,21 @@
               <el-table-column prop="examineItem" min-width="300" label="妫�鏌ラ」"></el-table-column>
               <el-table-column label="妫�鏌ョ粨鏋�" width="250" align="center">
                 <template slot-scope="scope">
-                  <zt-dict :disabled="stepMarker!=='pzxrk_qash'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
+                  <zt-dict :disabled="stepMarker!=='pzxbg_qash'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
                            dict="tristate2" :radio="true"
                            clearable></zt-dict>
                 </template>
               </el-table-column>
               <el-table-column align="center" width="120" label="涓嶉�傜敤璇存槑">
                 <template v-slot="{ row }">
-                  <el-input v-if="stepMarker=='pzxrk_qash'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
+                  <el-input v-if="stepMarker=='pzxbg_qash'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
                   <span v-else>{{row.notApplyExplan}}</span>
                 </template>
               </el-table-column>
             </el-table>
             <div class="el-border-top">
               <el-form-item label="瀹℃牳缁撴灉" style="width: 99%">
-                <zt-dict :disabled="stepMarker!=='pzxrk_qash'" v-model="dataForm.configItemChange.qaAuditResults"
+                <zt-dict :disabled="stepMarker!=='pzxbg_qash'" v-model="dataForm.configItemChange.qaAuditResults"
                          dict="is_pass" :radio="true"
                          clearable></zt-dict>
               </el-form-item>
@@ -149,7 +214,7 @@
             </div>
           </div>
         </div>
-        <div class="el-flexManageDialog el-border-bottom">
+        <div class="el-configChangeDialog el-border-bottom">
           <div class="DFormWidth DAlign DHold">
             CM瀹℃牳
           </div>
@@ -161,21 +226,21 @@
               <el-table-column prop="examineItem" min-width="300" label="妫�鏌ラ」"></el-table-column>
               <el-table-column label="妫�鏌ョ粨鏋�" width="250" align="center">
                 <template slot-scope="scope">
-                  <zt-dict :disabled="stepMarker!=='pzxrk_cmsh'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
+                  <zt-dict :disabled="stepMarker!=='pzxbg_cmsh'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
                            dict="tristate2" :radio="true"
                            clearable></zt-dict>
                 </template>
               </el-table-column>
               <el-table-column prop="notApplyExplan" align="center" width="120" label="涓嶉�傜敤璇存槑">
                 <template v-slot="{ row }">
-                  <el-input v-if="stepMarker=='pzxrk_cmsh'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
+                  <el-input v-if="stepMarker=='pzxbg_cmsh'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
                   <span v-else>{{row.notApplyExplan}}</span>
                 </template>
               </el-table-column>
             </el-table>
             <div class="el-border-top">
               <el-form-item label="瀹℃牳缁撴灉" style="width: 99%">
-                <zt-dict :disabled="stepMarker!=='pzxrk_cmsh'" v-model="dataForm.configItemChange.cmAuditResults"
+                <zt-dict :disabled="stepMarker!=='pzxbg_cmsh'" v-model="dataForm.configItemChange.cmAuditResults"
                          placeholder="瀹℃牳缁撴灉" dict="is_pass" :radio="true"
                          clearable></zt-dict>
               </el-form-item>
@@ -188,43 +253,26 @@
             </div>
           </div>
         </div>
-        <div class="el-flexManageDialog el-border-bottom">
+
+        <div class="el-configChangeDialog el-border-bottom">
           <div class="DFormWidth DAlign DHold">
-            鎵瑰噯鎰忚
-          </div>
-          <div style="width: calc(100% - 120px)" class="el-border-left">
-            <el-form-item class="el-wt-form-item-margin" label-width="20px" style="width: 85%">
-              <zt-dict :disabled="stepMarker!=='pzxrk_bmsh'" v-model="dataForm.configItemChange.approvalOpinions"
-                       dict="is_pass" :radio="true"
-                       clearable></zt-dict>
-            </el-form-item>
-            <el-form-item label-width="80%" label="绛惧瓧锛�" style="width: 65%">
-              <span>{{dataForm.configItemChange.approvalSign}}</span>
-            </el-form-item>
-            <el-form-item label="鏃ユ湡锛�" style="width: 20%">
-              <span>{{dataForm.configItemChange.approvalDate}}</span>
-            </el-form-item>
-          </div>
-        </div>
-        <div class="el-flexManageDialog el-border-bottom">
-          <div class="DFormWidth DAlign DHold">
-            椤圭洰CM鎿嶄綔
+            椤圭洰CM鍏ュ簱鎿嶄綔
           </div>
           <div style="width: calc(100% - 120px)" class="el-border-left">
             <el-form-item class="el-CMTextarea" style="width: 100%;padding: 5px">
-              <el-input v-if="stepMarker=='pzxrk_cmcz'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
-                        v-model="dataForm.configItemChange.projectCmOperations"></el-input>
-              <span v-else>{{dataForm.configItemChange.projectCmOperations}}</span>
+              <el-input v-if="stepMarker=='pzxbg_cmrk'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
+                        v-model="dataForm.configItemChange.warehouseCmOperations"></el-input>
+              <span v-else>{{dataForm.configItemChange.warehouseCmOperations}}</span>
             </el-form-item>
             <el-form-item label-width="80%" label="鎿嶄綔浜猴細" style="width: 65%">
-              <span>{{dataForm.configItemChange.operator}}</span>
+              <span>{{dataForm.configItemChange.warehouseOperator}}</span>
             </el-form-item>
             <el-form-item label="鏃ユ湡锛�" style="width: 20%">
-              <span>{{dataForm.configItemChange.operateDate}}</span>
+              <span>{{dataForm.configItemChange.warehouseOperateDate}}</span>
             </el-form-item>
           </div>
         </div>
-        <div class="el-flexManageDialog">
+        <div class="el-configChangeDialog">
           <div class="DFormWidth DAlign DHold">
             澶囨敞
           </div>
@@ -237,12 +285,19 @@
         </div>
       </div>
       <add-or-update-check ref="addOrUpdate" @recall="setCheckId"/>
+      <ConfigItemList ref="configItemList" @getChangeItemList="getChangeItemList"></ConfigItemList>
     </el-form>
+    <template v-slot:footer>
+      <el-button v-if="dataForm.disabled" type="primary" @click="print()">鎵撳嵃</el-button>
+    </template>
   </zt-dialog>
 </template>
 
 <script>
   import AddOrUpdateCheck from '../testCheckOrder/TestCheckOrder-AddOrUpdate'
+  import ConfigItemList from './configItemList.vue'
+  import qs from "qs";
+  import Cookies from "js-cookie";
 
   export default {
     data() {
@@ -250,6 +305,7 @@
         disabled: true,
         stepMarker: '',
         title: '鏌ョ湅',
+        ids:'',
         showColumn: false,
         showAddAndEdit:false,
         menuOptions: [
@@ -271,15 +327,23 @@
             qaAuditResults: "",
             qaAuditor: "",
             qaAuditDate: "",
+            changeReason:'',
             cmAuditResults: "",
             cmAuditor: "",
             cmAuditDate: "",
             approvalOpinions: "",
             approvalSign: "",
             approvalDate: "",
-            projectCmOperations: "",
-            operator: "",
-            operateDate: "",
+            changeAnalysis: "",
+            changeContent: "",
+            implementer: "",
+            changeDate: "",
+            outboundCmOperations: "",
+            outboundOperator: "",
+            outboundOperateDate: "",
+            warehouseCmOperations: "",
+            warehouseOperator: "",
+            warehouseOperateDate: "",
             remark: "",
           },
           project: {
@@ -304,7 +368,8 @@
     },
     computed: {},
     components: {
-      AddOrUpdateCheck
+      AddOrUpdateCheck,
+      ConfigItemList
     },
     methods: {
       indexFormat(index) {
@@ -323,8 +388,8 @@
         this.getInfo()
         if (!this.dataForm.disabled) {
           if (!row.stepMarker) {
-            this.stepMarker = 'pzxrk_first'
-            this.title = '鍏ュ簱鐢宠'
+            this.stepMarker = 'pzxbg_first'
+            this.title = '鍙樻洿鐢宠'
           } else {
             this.title = row.stepName
             this.stepMarker = row.stepMarker
@@ -339,18 +404,24 @@
       //     tableBody.scrollTop = tableBody.scrollHeight;
       //   })
       // },
-      handleCommand(pageCode) {
-        const selectedItem = this.menuOptions.find(item => item.pageCode === pageCode);
-        console.log(selectedItem, "handleCommand(pageCode) selectedItem")
-        if (selectedItem.pageCode === 'other') {
-          this.dataForm.configItemList.push({})
-        } else if (selectedItem) {
-          this.dataForm.configItemList.push({itemName: selectedItem.name, pageCode: selectedItem.pageCode})
-        }
-        this.$nextTick(() => {
-          const tableBody = this.$refs.tableConfigItemList.$el.querySelector('.el-table__body-wrapper')
-          tableBody.scrollTop = tableBody.scrollHeight;
+      handleCommand() {
+        this.$nextTick(()=>{
+          console.log(this.dataForm.projectId,'this.dataForm.projectId')
+          this.ids = this.dataForm.configChangeList.map(item=>item.selectId).join(',')
+          this.$refs.configItemList.$refs.dialog.init(this.dataForm.projectId,this.ids)
         })
+        // this.dataForm.configItemList.push({})
+        // this.$nextTick(() => {
+        //   const tableBody = this.$refs.tableConfigItemList.$el.querySelector('.el-table__body-wrapper')
+        //   tableBody.scrollTop = tableBody.scrollHeight;
+        // })
+      },
+      getChangeItemList(data){
+        console.log(data.configChangeList,'getChangeItemList(data)')
+        if(data.configChangeList){
+          this.dataForm.configChangeList=this.dataForm.configChangeList.concat(data.configChangeList)
+        }
+        console.log(this.dataForm.configChangeList,ids,'this.dataForm.configChangeList')
       },
       openCheckOrderWin(row) {
         console.log(row, "openCheckOrderWin(row)")
@@ -369,13 +440,21 @@
         console.log(checkId, row, "setCheckId(checkId, row)")
         this.$set(row, 'checkId', checkId)
       },
+      async print(){
+        var params = qs.stringify({
+          token: Cookies.get('token'),
+          id:this.dataForm.id
+        })
+        let apiURL = `/configItemChange/ConfigItemChange/exportConfigChange`
+        window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${params}`
+      },
       // 鑾峰彇淇℃伅
       async getInfo() {
         let params = {
-          warehouseId: this.dataForm.id,
+          changeId: this.dataForm.id,
           projectId: this.dataForm.projectId
         }
-        let res = await this.$http.get(`/configItemChange/ConfigItemWarehouse/getDto`, {params: params})
+        let res = await this.$http.get(`/configItemChange/ConfigItemChange/getDto`, {params: params})
         this.dataForm = {
           ...this.dataForm,
           ...res.data
@@ -405,13 +484,13 @@
         }
         if (submitType == 'tj' || submitType == 'bl') {
           let flowInfo = {
-            flowCode: 'pzxrk',
+            flowCode: 'pzxbg',
             stepIdMark: this.stepMarker,
             submitType: submitType
           }
           this.dataForm.flowInfoDto = flowInfo;
         }
-        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/configItemChange/ConfigItemWarehouse/', this.dataForm)
+        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/configItemChange/ConfigItemChange/', this.dataForm)
         if (res.success) {
           await this.$tip.success()
           this.$refs.dialog.close()
@@ -431,7 +510,7 @@
     border: 1px solid;
   }
 
-  .el-flexManageDialog {
+  .el-configChangeDialog {
     display: flex;
     align-items: center;
   }
@@ -487,20 +566,22 @@
     font-size: 14px;
   }
 
-  .warehouseContentWidth > .el-form-item > .el-form-item__content {
+  .configChangeContentWidth > .el-form-item > .el-form-item__content {
     width: calc(100% - 120px);
   }
 
-  .warehouseContentWidth > .el-form-item.lastChild > .el-form-item__content {
+  .configChangeContentWidth > .el-form-item.lastChild > .el-form-item__content {
     width: calc(100% - 142px);
   }
-
-  .warehouseFormAuto .marginTopAndMarginBottom {
+  .configChangeFormAuto .acceptDate > .el-form-item > .el-form-item__content {
+    width: 100%;
+  }
+  .configChangeFormAuto .marginTopAndMarginBottom {
     margin-top: 10px !important;
     margin-bottom: 0 !important;
   }
 
-  .warehouseFormAuto .marginTopAndMarginBottom2 {
+  .configChangeFormAuto .marginTopAndMarginBottom2 {
     margin-top: -10px !important;
     margin-bottom: 0 !important;
   }

--
Gitblit v1.9.1