From a38a1ac77bb6ac9ea8bf0cf5f5f6b68d0e6e6974 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期二, 02 一月 2024 08:44:10 +0800
Subject: [PATCH] 修改

---
 web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue |  134 +++++++++++++++++++++++++++++---------------
 1 files changed, 87 insertions(+), 47 deletions(-)

diff --git a/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue b/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
index dfbf98f..235983c 100644
--- a/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
+++ b/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
@@ -16,19 +16,19 @@
             <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.configItemWarehouse.applicant"
+            <el-input :disabled="stepMarker!=='pzxrk_first'" v-model="dataForm.configItemWarehouse.applicant"
                       placeholder="璇疯緭鍏ョ敵璇蜂汉"></el-input>
           </el-form-item>
           <el-form-item label="鐢宠鏃ユ湡" style="width: 49%">
             <el-date-picker
-              :disabled="stepMarker=='pzxrk_first'"
+              :disabled="stepMarker!=='pzxrk_first'"
               v-model="dataForm.configItemWarehouse.applyDate"
               type="date"
               placeholder="璇烽�夋嫨鐢宠鏃ユ湡">
             </el-date-picker>
           </el-form-item>
           <el-form-item class="marginTopAndMarginBottom2" label="搴撶被鍨�" style="width: 99%">
-            <zt-dict v-model="dataForm.configItemWarehouse.libraryType" :radio="true" dict="library_type"></zt-dict>
+            <zt-dict disabled="disabled" v-model="dataForm.configItemWarehouse.libraryType" :radio="true" dict="library_type"></zt-dict>
           </el-form-item>
         </div>
         <div class="el-flexManageDialog el-border-bottom">
@@ -45,40 +45,37 @@
                     <span v-html="indexFormat(scope.$index)"></span>
                   </template>
                 </el-table-column>
-                <el-table-column prop="itemName" min-width="200" label="閰嶇疆椤瑰悕绉�">
+                <el-table-column prop="itemName" width="200" label="閰嶇疆椤瑰悕绉�">
                   <template v-slot="{ row }">
-                    <el-input v-model="row.itemName" placeholder="閰嶇疆椤瑰悕绉�"></el-input>
+                    <el-input v-if="showAddAndEdit" v-model="row.itemName" placeholder="閰嶇疆椤瑰悕绉�"></el-input>
+                    <span v-else>{{row.itemName}}</span>
                   </template>
                 </el-table-column>
-                <el-table-column prop="itemDentify" align="center" width="220" label="閰嶇疆椤规爣璇�">
+                <el-table-column prop="itemIdentify" align="center" min-width="290" label="閰嶇疆椤规爣璇�">
                   <template v-slot="{ row }">
-                    <el-input v-model="row.itemIdentify" placeholder="閰嶇疆椤规爣璇�"></el-input>
+                    <el-input v-if="showAddAndEdit" v-model="row.itemIdentify" placeholder="閰嶇疆椤规爣璇�"></el-input>
+                    <span v-else>{{row.itemIdentify}}</span>
                   </template>
                 </el-table-column>
                 <el-table-column prop="version" align="center" width="120" label="鐗堟湰">
                   <template v-slot="{ row }">
-                    <el-input v-model="row.version" placeholder="鐗堟湰"></el-input>
+                    <el-input v-if="showAddAndEdit" v-model="row.version" placeholder="鐗堟湰"></el-input>
+                    <span v-else>{{row.version}}</span>
                   </template>
                 </el-table-column>
                 <el-table-column prop="retrospectVersion" label="涓婃函鐗�" width="120" align="center">
                   <template v-slot="{ row }">
-                    <el-input v-model="row.retrospectVersion" placeholder="涓婃函鐗�"></el-input>
+                    <el-input v-if="showAddAndEdit" v-model="row.retrospectVersion" placeholder="涓婃函鐗�"></el-input>
+                    <span v-else>{{row.retrospectVersion}}</span>
                   </template>
                 </el-table-column>
                 <el-table-column prop="secretClass" label="瀵嗙骇" width="100" align="center">
                   <template v-slot="{ row }">
-                    <zt-dict v-model="row.secretClass" placeholder="瀵嗙骇" dict="secret_class"
+                    <zt-dict :disabled="!showAddAndEdit" v-model="row.secretClass" placeholder="瀵嗙骇" dict="secret_class"
                              clearable></zt-dict>
                   </template>
                 </el-table-column>
-                <el-table-column fixed="right" prop="files" label="涓婁紶闄勪欢" width="300" align="center">
-                  <template v-slot="{ row }">
-                    <!--                    <zt-table-button @click="files(row.id)">涓婁紶闄勪欢</zt-table-button>-->
-                    <table-uploader busi-type="config_item_warehouse" model-name="row" :dataForm="row"
-                                    v-model="row.files"/>
-                  </template>
-                </el-table-column>
-                <el-table-column fixed="right" label="绠$悊" width="120" align="center">
+                <el-table-column v-if="showColumn" fixed="right" label="绠$悊" width="100" align="center">
                   <template v-slot="{ row }">
                     <zt-table-button v-if="row.checkId"
                                      @click="openCheckOrderWin(row)">淇敼妫�鏌ュ崟
@@ -86,12 +83,17 @@
                     <zt-table-button v-else-if="',杞欢娴嬭瘯璁″垝锛岃蒋浠舵祴璇曡鏄庯紝杞欢娴嬭瘯璁板綍锛岃蒋浠舵祴璇曟姤鍛�'.indexOf(row.itemName)>0"
                                      @click="openCheckOrderWin(row)">鏂板妫�鏌ュ崟
                     </zt-table-button>
-                    <!--                  <table-uploader busi-type="config_item_warehouse" model-name="row" :dataForm="row"-->
-                    <!--                                  v-model="row.files"/>-->
+                  </template>
+                </el-table-column>
+                <el-table-column fixed="right" prop="files" label="涓婁紶闄勪欢" width="240" align="center">
+                  <template v-slot="{ row }">
+                    <!--                    <zt-table-button @click="files(row.id)">涓婁紶闄勪欢</zt-table-button>-->
+                    <table-uploader :disabled="!showAddAndEdit" busi-type="config_item_warehouse" model-name="row" :dataForm="row"
+                                    v-model="row.files"/>
                   </template>
                 </el-table-column>
               </el-table>
-              <div class="icon-container">
+              <div v-if="showAddAndEdit && !dataForm.disabled" class="icon-container">
                 <el-dropdown @command="handleCommand">
                   <span class="el-dropdown-link">
                     <i class="el-icon-plus"></i>
@@ -120,21 +122,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=='wplz_qash'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
+                  <zt-dict :disabled="stepMarker!=='pzxrk_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=='wplz_qash'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
+                  <el-input v-if="stepMarker=='pzxrk_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=='wplz_qash'" v-model="dataForm.configItemWarehouse.qaAuditResults"
+                <zt-dict :disabled="stepMarker!=='pzxrk_qash'" v-model="dataForm.configItemWarehouse.qaAuditResults"
                          dict="is_pass" :radio="true"
                          clearable></zt-dict>
               </el-form-item>
@@ -159,21 +161,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!=='wplz_cmsh'" v-model="scope.row.examineResult" placeholder="妫�鏌ョ粨鏋�"
+                  <zt-dict :disabled="stepMarker!=='pzxrk_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=='wplz_cmsh'" v-model="row.notApplyExplan" placeholder="涓嶉�傜敤璇存槑"></el-input>
+                  <el-input v-if="stepMarker=='pzxrk_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=='wplz_cmsh'" v-model="dataForm.configItemWarehouse.cmAuditResults"
+                <zt-dict :disabled="stepMarker!=='pzxrk_cmsh'" v-model="dataForm.configItemWarehouse.cmAuditResults"
                          placeholder="瀹℃牳缁撴灉" dict="is_pass" :radio="true"
                          clearable></zt-dict>
               </el-form-item>
@@ -192,7 +194,7 @@
           </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!=='wplz_bmsh'" v-model="dataForm.configItemWarehouse.approvalOpinions"
+              <zt-dict :disabled="stepMarker!=='pzxrk_bmsh'" v-model="dataForm.configItemWarehouse.approvalOpinions"
                        dict="is_pass" :radio="true"
                        clearable></zt-dict>
             </el-form-item>
@@ -210,7 +212,7 @@
           </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=='wplz_cmcz'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
+              <el-input v-if="stepMarker=='pzxrk_cmcz'" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
                         v-model="dataForm.configItemWarehouse.projectCmOperations"></el-input>
               <span v-else>{{dataForm.configItemWarehouse.projectCmOperations}}</span>
             </el-form-item>
@@ -236,11 +238,16 @@
       </div>
       <add-or-update-check ref="addOrUpdate" @recall="setCheckId"/>
     </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 qs from "qs";
+  import Cookies from "js-cookie";
 
   export default {
     data() {
@@ -248,13 +255,16 @@
         disabled: true,
         stepMarker: '',
         title: '鏌ョ湅',
+        showColumn: false,
+        showAddAndEdit: false,
         menuOptions: [
-          {pageCode: 'plan', name: '杞欢娴嬭瘯璁″垝'},
+          {pageCode: 'plan', name: '杞欢娴嬭瘯璁″垝', itemIdentify: ''},
           {pageCode: 'explain', name: '杞欢娴嬭瘯璇存槑'},
           {pageCode: 'record', name: '杞欢娴嬭瘯璁板綍'},
           {pageCode: 'report', name: '杞欢娴嬭瘯鎶ュ憡'},
           {pageCode: 'other', name: '鍏朵粬'}
         ],
+        pageNameCode: {'杞欢娴嬭瘯璁″垝': 'plan', '杞欢娴嬭瘯璇存槑': 'explain', '杞欢娴嬭瘯璁板綍': 'record', '杞欢娴嬭瘯鎶ュ憡': 'report'},
         dataForm: {
           id: '',
           configItemWarehouse: {
@@ -288,12 +298,16 @@
         }
       }
     },
-    computed: {
-      getRoleName() {
-        console.log(this.$store.state.user.roleName, 'this.$store.state.user.roleName')
-        return this.$store.state.user.roleName || ''
-      },
+    created() {
+      const roleName = localStorage.getItem('roleName')
+      if (roleName && roleName.includes('QA')) {
+        this.showColumn = true;
+      }
+      if (roleName && roleName.includes('娴嬭瘯鍛�')) {
+        this.showAddAndEdit = true;
+      }
     },
+    computed: {},
     components: {
       AddOrUpdateCheck
     },
@@ -311,6 +325,10 @@
         if (row.projectId) {
           this.dataForm.projectId = row.projectId
         }
+        if (row.libraryType) {
+          console.log(row.libraryType,"row.libraryType")
+          this.dataForm.configItemWarehouse.libraryType = row.libraryType
+        }
         this.getInfo()
         if (!this.dataForm.disabled) {
           if (!row.stepMarker) {
@@ -323,16 +341,9 @@
         }
         console.log(this.dataForm.id, this.dataForm.projectId, 'params params')
       },
-      // addConfigItemWarehouseRow(){
-      //   this.dataForm.configItemList.push({})
-      //   this.$nextTick(()=>{
-      //     const tableBody=this.$refs.tableConfigItemList.$el.querySelector('.el-table__body-wrapper')
-      //     tableBody.scrollTop = tableBody.scrollHeight;
-      //   })
-      // },
       handleCommand(pageCode) {
         const selectedItem = this.menuOptions.find(item => item.pageCode === pageCode);
-        console.log(selectedItem,"handleCommand(pageCode) selectedItem")
+        console.log(selectedItem, "handleCommand(pageCode) selectedItem")
         if (selectedItem.pageCode === 'other') {
           this.dataForm.configItemList.push({})
         } else if (selectedItem) {
@@ -344,17 +355,28 @@
         })
       },
       openCheckOrderWin(row) {
-          row.projectId = this.dataForm.projectId
-          this.$refs.addOrUpdate.$refs.dialog.init(null, row)
+        console.log(row, "openCheckOrderWin(row)")
+        row.projectId = this.dataForm.projectId
+        if (!row.checkId) {
+          row.checkId = -1
+        }
+        // if (!row.pageCode) {//鍏跺疄杩欓噷鏄病鐢ㄧ殑
+        //   row.pageCode = this.pageNameCode[row.itemName]
+        // }
+        console.log(row.itemName, row.pageCode, "row.itemName,openCheckOrderWin(row) row.pageCode")
+        this.$refs.addOrUpdate.$refs.dialog.init(null, row)
+
       },
       setCheckId(checkId, row) {
-        row.checkId = checkId
+        console.log(checkId, row, "setCheckId(checkId, row)")
+        this.$set(row, 'checkId', checkId)
       },
       // 鑾峰彇淇℃伅
       async getInfo() {
         let params = {
           warehouseId: this.dataForm.id,
-          projectId: this.dataForm.projectId
+          projectId: this.dataForm.projectId,
+          libraryType:this.dataForm.configItemWarehouse.libraryType
         }
         let res = await this.$http.get(`/configItemWarehouse/ConfigItemWarehouse/getDto`, {params: params})
         this.dataForm = {
@@ -372,8 +394,26 @@
         }
         console.log(this.dataForm, "getInfo this.dataForm")
       },
+      async print(){
+        var params = qs.stringify({
+          token: Cookies.get('token'),
+          id:this.dataForm.id
+        })
+        let apiURL = `/configItemWarehouse/ConfigItemWarehouse/exportWarehouseOrder`
+        window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${params}`
+      },
       // 琛ㄥ崟鎻愪氦
       async formSubmit(submitType) {
+        if (this.showColumn && submitType == 'bl') {
+          for (let item of this.dataForm.configItemList) {
+            if (item) {
+              if (this.pageNameCode[item.itemName] && !item.checkId) {
+                this.$alert("鏈夋湭鎻愪氦鐨勬鏌ュ崟")
+                return
+              }
+            }
+          }
+        }
         if (submitType == 'tj' || submitType == 'bl') {
           let flowInfo = {
             flowCode: 'pzxrk',

--
Gitblit v1.9.1