From 68981c58ea61ff4edc0479facfb8b76181d2a582 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期五, 01 十二月 2023 10:54:37 +0800
Subject: [PATCH] 6

---
 modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java              |   10 -
 web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue                                      |   10 
 web/src/components/config-uploader/src/config-uploader.vue                                                     |   25 ++
 modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java                   |    6 
 web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue                                  |    4 
 web/src/views/modules/project/Environ-AddOrUpdate.vue                                                          |  419 +++++++++++++++++++++++++---------------------
 modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java     |   14 +
 modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java |   13 
 8 files changed, 274 insertions(+), 227 deletions(-)

diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java b/modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java
index 61432bf..30da0ec 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java
@@ -23,6 +23,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.zt.common.db.query.QueryFilter;
+
 import javax.annotation.Resource;
 import java.util.HashMap;
 import java.util.List;
@@ -32,11 +33,11 @@
 /**
  * config_item_warehouse
  *
- * @author zt generator 
+ * @author zt generator
  * @since 1.0.0 2023-11-27
  */
 @Service
-public class ConfigItemWarehouseService  extends BaseService<ConfigItemWarehouseDao, ConfigItemWarehouse> {
+public class ConfigItemWarehouseService extends BaseService<ConfigItemWarehouseDao, ConfigItemWarehouse> {
     @Autowired
     private SysOssConfigService sysOssConfigService;
 
@@ -87,7 +88,7 @@
         else {
             Map<String, String> map = new HashMap<>();
             map.put("funCode", "config_item_warehouse");
-            map.put("projectId",configItemDto.getProjectId().toString());
+            map.put("projectId", configItemDto.getProjectId().toString());
             configItemDto.getConfigItemWarehouse().setProjectId(configItemDto.getProjectId());
             configItemDto.getConfigItemWarehouse().setCode(sysCodeRuleService.getNewCode(map));
             baseDao.insert(configItemDto.getConfigItemWarehouse());
@@ -128,7 +129,7 @@
         Long bizId = configItemDto.getConfigItemWarehouse().getId();
         FlowInfoDto flowInfoDto = configItemDto.getFlowInfoDto();
 
-        if (flowInfoDto != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
+        if (flowInfoDto != null && flowInfoDto.getBizId() != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
             if ("tj".equals(flowInfoDto.getSubmitType())) {
                 workflowService.startFlow(flowInfoDto.getFlowCode(), bizId);
             }
@@ -144,7 +145,7 @@
             ConfigItemWarehouse configItemWarehouse = this.get(warehouseId);
             data.setConfigItemWarehouse(configItemWarehouse);
 
-            if (projectId==null) {
+            if (projectId == null) {
                 projectId = configItemWarehouse.getProjectId();
             }
             List<WarehouseCmAudit> CmAuditList = cmAuditService.getList(warehouseId);
@@ -155,7 +156,7 @@
             data.setConfigItemList(ConfigItemList);
 
         } else {
-            ConfigItemWarehouse configItemWarehouse =new ConfigItemWarehouse();
+            ConfigItemWarehouse configItemWarehouse = new ConfigItemWarehouse();
             data.setConfigItemWarehouse(configItemWarehouse);
             List<?> cmList = baseDao.itemList("warehouse_cm_audit");
             List<?> CmAuditList = cmList;
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java b/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java
index 5c1a3e6..dc3b387 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrder.java
@@ -64,16 +64,6 @@
 	@ApiModelProperty(value = "鏍″噯妫�娴嬫儏鍐佃鏄�")
 	private String detectSituation;
 
-/*	@ApiModelProperty(value = "鐗╁搧鍏ュ簱浜�")
-	private String warehousePerson;
-
-	@ApiModelProperty(value = "鐗╁搧鍏ュ簱鏃堕棿")
-	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date warehouseDate;
-
-	@ApiModelProperty(value = "鐗╁搧鍏ュ簱鎯呭喌")
-	private String warehouseSituation;*/
-
 	@ApiModelProperty(value = "鐗╁搧鍙戞斁浜�")
 	private String itemIssuer;
 
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java b/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java
index 738cd08..ff43239 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java
@@ -120,7 +120,7 @@
         Long bizId = itemCirculatOrderDto.getCirculatOrder().getId();
         FlowInfoDto flowInfoDto = itemCirculatOrderDto.getFlowInfoDto();
 
-        if (flowInfoDto != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
+        if (flowInfoDto != null && flowInfoDto.getBizId() != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
             if ("tj".equals(flowInfoDto.getSubmitType())) {
                 workflowService.startFlow(flowInfoDto.getFlowCode(), bizId);
             }
@@ -135,7 +135,7 @@
             data.setId(circulatOrderid);
             ItemCirculatOrder itemCirculatOrder = this.get(circulatOrderid);
             data.setCirculatOrder(itemCirculatOrder);
-            if (projectId==null){
+            if (projectId == null) {
                 projectId = itemCirculatOrder.getProjectId();
             }
 
@@ -154,7 +154,15 @@
 
         if (projectId != null) {
             data.setProjectId(projectId);
-            data.setProject(projectService.get(projectId));
+            Project project = projectService.get(projectId);
+            String type = project.getSoftwareType();
+            if (type == "3") {
+                type = "2";
+            } else {
+                type = "1";
+            }
+            project.setSoftwareType(type);
+            data.setProject(project);
         }
 
         if (data.getTestAgencyInfo() == null)
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java
index 2b8895c..4a78c76 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java
@@ -80,14 +80,8 @@
         EnvironDto data = environService.getDto(environId, projectId);
         if (environId != null) {
             OssDto ossDto = sysOssConfigService.getOssByBusiType(environId, "test_environt_diagram");
-            List<SysOss> sysOss1 =sysOssService.getSysOssByBusiIdAnd(environId,"test_environt_diagram");
-            String Url = "";
-            for (SysOss sysOss: sysOss1){
-                Url=sysOss.getUrl();
-            }
             if (ossDto != null) {
                 data.setFiles(ossDto);
-                data.setUrl(Url);
             }
         }
         return Result.ok(data);
diff --git a/web/src/components/config-uploader/src/config-uploader.vue b/web/src/components/config-uploader/src/config-uploader.vue
index 1e5fe8e..2f3f777 100644
--- a/web/src/components/config-uploader/src/config-uploader.vue
+++ b/web/src/components/config-uploader/src/config-uploader.vue
@@ -27,7 +27,7 @@
         </el-table>
       </el-collapse-item>
     </el-collapse>
-    <div v-else class="config-uploader" v-model="activeNames" >
+    <div v-else class="config-uploader" v-model="activeNames">
       <div v-for="group in (oss.groups || [])" :key="group.busiFieldGroup">
         <!-- <zt-form-item :label="field.busiFieldName" :prop="field.busiField" v-for="field in group.fields"
                        :key="field.busiField" :rules="field.isRequired ? 'required':''" style="width: 100%;">
@@ -53,7 +53,7 @@
               <zt-uploader v-model="dataForm[scope.row.busiField]" :dataForm="dataForm" multiple
                            :limit="scope.row.fileLimit" :file-type="scope.row.fileTypeArr"
                            :showFileList2="false" :accept="scope.row.accept" :file-size="scope.row.fileSize"
-                           @input="change(scope.row.busiField)"/>
+                           @input="change(scope.row.busiField)" @getUploaderImg="getUploaderImg"/>
             </template>
           </el-table-column>
         </el-table>
@@ -139,21 +139,33 @@
               field.fileTypeArr = arrType
             })
           })
-          console.log(JSON.parse(JSON.stringify(arr[0])),'JSON.parse(JSON.stringify(arr[0]))')
+          console.log(JSON.parse(JSON.stringify(arr[0])), 'JSON.parse(JSON.stringify(arr[0]))')
           return JSON.parse(JSON.stringify(arr[0]))
         }
         return null
       },
+      getUploaderImg(list) {
+        // this.imageList = list
+        if (list[0].url) {
+          this.$emit('getImageUrl', list[0].url)
+        }
+      },
       change(busiField) {
+        console.log(busiField, 'config_uploader change(busiField) busiField')
         this.fields.forEach(field => {
           if (field.busiField === busiField) {
             field.files.length = 0
-            this.dataForm[busiField].forEach(file => field.files.push(file))
+            this.dataForm[busiField].forEach(file => {
+                field.files.push(file)
+              }
+            )
             if (this.dataForm) {
               this.dataForm.hasUploadFinsh = 100
             }
           }
         })
+        console.log(this.dataForm, 'config_uploader change(busiField)')
+        this.$emit('getImageUrl')
       }
     }
   }
@@ -162,7 +174,8 @@
   .config-uploader label {
     width: 260px !important;
   }
-   .zt .el-upload-list__item .el-progress{
-    top:15px !important;
+
+  .zt .el-upload-list__item .el-progress {
+    top: 15px !important;
   }
 </style>
diff --git a/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue b/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
index c95ca02..7236f5d 100644
--- a/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
+++ b/web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
@@ -142,7 +142,7 @@
             </el-table>
             <div class="el-border-top">
               <el-form-item label="瀹℃牳缁撴灉" style="width: 99%">
-                <zt-dict v-model="dataForm.configItemWarehouse.cmAuditResults" placeholder="瀹℃牳缁撴灉" dict="is_pass" :radio="true"
+                <zt-dict :disabled="getRoleName.indexOf('CM瑙掕壊')===-1" v-model="dataForm.configItemWarehouse.cmAuditResults" placeholder="瀹℃牳缁撴灉" dict="is_pass" :radio="true"
                          clearable></zt-dict>
               </el-form-item>
               <el-form-item label="瀹℃牳浜猴細" style="width: 48%">
@@ -177,7 +177,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  type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" v-model="dataForm.configItemWarehouse.projectCmOperations"></el-input>
+              <el-input v-if="getRoleName.indexOf('CM瑙掕壊')>=0" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" v-model="dataForm.configItemWarehouse.projectCmOperations"></el-input>
             </el-form-item>
             <el-form-item label-width="80%" label="鎿嶄綔浜猴細" style="width: 65%">
               <span>{{dataForm.configItemWarehouse.operator}}</span>
diff --git a/web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue b/web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
index 49a7222..af0239d 100644
--- a/web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
+++ b/web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
@@ -185,7 +185,7 @@
           </div>
           <div class="el-border-left " style="width: 35%;height: 40px;">
             <el-form-item label="鏄惁婊¤冻娴嬭瘯瑕佹眰" label-width="150px" style="padding-left:20px;margin-bottom:0">
-              <zt-dict v-model="dataForm.circulatOrder.detectSituation" :radio="true" dict="is_or_not"></zt-dict>
+              <zt-dict :disabled="getRoleName.indexOf('QA瑙掕壊')===-1" v-model="dataForm.circulatOrder.detectSituation" :radio="true" dict="is_or_not"></zt-dict>
             </el-form-item>
           </div>
         </div>
@@ -248,7 +248,7 @@
           </div>
           <div class="el-border-left " style="width: 20%;height: 40px">
             <el-form-item style="width: 100%;padding-left:20px;margin:0;">
-              <el-input v-model="dataForm.circulatOrder.itemAcceptr"></el-input>
+              <el-input v-model="dataForm.circulatOrder.remark"></el-input>
             </el-form-item>
           </div>
         </div>
@@ -297,6 +297,12 @@
         }
       }
     },
+    computed:{
+      getRoleName(){
+        console.log(this.$store.state.user.roleName,'this.$store.state.user.roleName')
+        return this.$store.state.user.roleName || ''
+      },
+    },
     methods: {
       indexFormat(index) {
         return index += 1
diff --git a/web/src/views/modules/project/Environ-AddOrUpdate.vue b/web/src/views/modules/project/Environ-AddOrUpdate.vue
index 9a52aad..995fdb5 100644
--- a/web/src/views/modules/project/Environ-AddOrUpdate.vue
+++ b/web/src/views/modules/project/Environ-AddOrUpdate.vue
@@ -1,32 +1,34 @@
 <template>
   <zt-dialog ref="dialog" column="2" @confirm="formSubmit" append-to-body title="娴嬭瘯鐜寤虹珛纭琛�">
-      <el-form :model="dataForm" style="padding-top: 0" :inline="true"  ref="dataForm" :disabled="dataForm.disabled" label-width="130px" class="confirmFormAuto">
-        <div class="DConfirmForm">
-          <el-form-item label-width="60px" label="缂栧彿:" style="width:100%;margin-bottom: 0">
-            <span>{{dataForm.environ.code}}</span>
-          </el-form-item>
-        </div>
-        <div style="border: 1px solid rgba(0,0,0,.2);width: 99%" class="confirmDAuto DConfirmForm">
-          <el-form-item class="marginTopAndMarginBottom" label="涓撲笟瀹為獙瀹ゅ悕绉�" style="width: 49%">
-            <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="涓撲笟瀹為獙瀹ゅ悕绉�"></el-input>
-          </el-form-item>
-          <el-form-item class="marginTopAndMarginBottom" label="娴嬭瘯鍦扮偣" style="width: 49%">
-            <el-input v-model="dataForm.testAgencyInfo.site" placeholder="娴嬭瘯鍦扮偣"></el-input>
-          </el-form-item>
-          <el-form-item  label="琚祴杞欢" style="width: 49%">
-            <el-input v-model="dataForm.project.softwareName" placeholder="琚祴杞欢"></el-input>
-          </el-form-item>
-          <el-form-item label="鐗堟湰" style="width: 49%">
-            <el-input v-model="dataForm.project.softwareIdentity" placeholder="鐗堟湰"></el-input>
-          </el-form-item>
-          <div class="el-flexConfigDialog el-form-border">
-            <div class="DFormWidth DAlign DHold">
-              纭蒋浠惰祫婧�
-            </div>
-            <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">
-              <div style="padding: 5px">杞欢璧勬簮锛�</div>
-              <div class="table-container">
-              <el-table ref="tableSoftwareList" class="el-software el-margin-top-bot" border :data="dataForm.softwareResourcesList"
+    <el-form :model="dataForm" style="padding-top: 0" :inline="true" ref="dataForm" :disabled="dataForm.disabled"
+             label-width="130px" class="confirmFormAuto">
+      <div class="DConfirmForm">
+        <el-form-item label-width="60px" label="缂栧彿:" style="width:100%;margin-bottom: 0">
+          <span>{{dataForm.environ.code}}</span>
+        </el-form-item>
+      </div>
+      <div style="border: 1px solid rgba(0,0,0,.2);width: 99%" class="confirmDAuto DConfirmForm">
+        <el-form-item class="marginTopAndMarginBottom" label="涓撲笟瀹為獙瀹ゅ悕绉�" style="width: 49%">
+          <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="涓撲笟瀹為獙瀹ゅ悕绉�"></el-input>
+        </el-form-item>
+        <el-form-item class="marginTopAndMarginBottom" label="娴嬭瘯鍦扮偣" style="width: 49%">
+          <el-input v-model="dataForm.testAgencyInfo.site" placeholder="娴嬭瘯鍦扮偣"></el-input>
+        </el-form-item>
+        <el-form-item label="琚祴杞欢" style="width: 49%">
+          <el-input v-model="dataForm.project.softwareName" placeholder="琚祴杞欢"></el-input>
+        </el-form-item>
+        <el-form-item label="鐗堟湰" style="width: 49%">
+          <el-input v-model="dataForm.project.softwareIdentity" placeholder="鐗堟湰"></el-input>
+        </el-form-item>
+        <div class="el-flexConfigDialog el-form-border">
+          <div class="DFormWidth DAlign DHold">
+            纭蒋浠惰祫婧�
+          </div>
+          <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">
+            <div style="padding: 5px">杞欢璧勬簮锛�</div>
+            <div class="table-container">
+              <el-table ref="tableSoftwareList" class="el-software el-margin-top-bot" border
+                        :data="dataForm.softwareResourcesList"
                         stripe>
                 <el-table-column prop="no" align="center" width="80" label="搴忓彿">
                   <template slot-scope="scope">
@@ -48,20 +50,21 @@
                     <el-input v-model="row.purposes" placeholder="鐢ㄩ��"></el-input>
                   </template>
                 </el-table-column>
-                <el-table-column prop="unit" label="鎻愪緵鍗曚綅" width="180"  align="center">
+                <el-table-column prop="unit" label="鎻愪緵鍗曚綅" width="180" align="center">
                   <template v-slot="{ row }">
                     <el-input v-model="row.provideUnit" placeholder="鎻愪緵鍗曚綅"></el-input>
                   </template>
                 </el-table-column>
               </el-table>
-                <div class="icon-container" @click="addSoftwareRow()">
-                  <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
-                  <i class="el-icon-plus"></i>
-                </div>
+              <div class="icon-container" @click="addSoftwareRow()">
+                <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
+                <i class="el-icon-plus"></i>
               </div>
-              <div style="padding: 5px">纭欢璧勬簮锛�</div>
-              <div class="table-container">
-              <el-table ref="tableHardwareList" class="el-software el-margin-top-bot" border :data="dataForm.hardwareResourcesList"
+            </div>
+            <div style="padding: 5px">纭欢璧勬簮锛�</div>
+            <div class="table-container">
+              <el-table ref="tableHardwareList" class="el-software el-margin-top-bot" border
+                        :data="dataForm.hardwareResourcesList"
                         stripe>
                 <el-table-column prop="no" align="center" width="80" label="搴忓彿">
                   <template slot-scope="scope">
@@ -94,36 +97,37 @@
                   </template>
                 </el-table-column>
               </el-table>
-                <div class="icon-container" @click="addHardwareRow()">
-                  <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
-                  <i class="el-icon-plus"></i>
-                </div>
+              <div class="icon-container" @click="addHardwareRow()">
+                <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
+                <i class="el-icon-plus"></i>
               </div>
             </div>
           </div>
-          <div class="el-flexConfigDialog el-B-border">
-            <div class="DFormWidth DAlign DHold">
-              鍔ㄦ�佹祴璇曠幆澧冨浘
-            </div>
-            <div style="width: calc(100% - 120px);">
-              <div  class="el-wt-border-left">
-                <span>{{dataForm.environ.testEnvirontDiagram}}</span>
-                <config-uploader busi-type="test_environt_diagram" model-name="dataForm" :dataForm="dataForm"
-                                 @getImageUrl="getImageUrl"
-                                 v-model="dataForm.files"/>
-                <div v-if="dataForm.url">
-                  <el-image :src="dataForm.url"></el-image>
-                </div>
+        </div>
+        <div class="el-flexConfigDialog el-B-border">
+          <div class="DFormWidth DAlign DHold">
+            鍔ㄦ�佹祴璇曠幆澧冨浘
+          </div>
+          <div style="width: calc(100% - 120px);">
+            <div class="el-wt-border-left">
+              <span>{{dataForm.environ.testEnvirontDiagram}}</span>
+              <config-uploader busi-type="test_environt_diagram" model-name="dataForm" :dataForm="dataForm"
+                               @getImageUrl="getImageUrl"
+                               v-model="dataForm.files"/>
+              <div v-if="dataForm.url">
+                <el-image :src="dataForm.url"></el-image>
               </div>
             </div>
           </div>
-          <div class="el-flexConfigDialog el-B-border">
-            <div class="DFormWidth DAlign DHold">
-              鐜宸紓鎬у垎鏋�
-            </div>
-            <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">
-              <div class="table-container">
-              <el-table ref="tableEnvironeList" class="el-software el-margin-top-bot" border :data="dataForm.environAnalysisList"
+        </div>
+        <div class="el-flexConfigDialog el-B-border">
+          <div class="DFormWidth DAlign DHold">
+            鐜宸紓鎬у垎鏋�
+          </div>
+          <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">
+            <div class="table-container">
+              <el-table ref="tableEnvironeList" class="el-software el-margin-top-bot" border
+                        :data="dataForm.environAnalysisList"
                         stripe>
                 <el-table-column prop="no" align="center" width="80" label="搴忓彿">
                   <template slot-scope="scope">
@@ -156,57 +160,57 @@
                   </template>
                 </el-table-column>
               </el-table>
-                <div class="icon-container" @click="addDiscrepancyRow()">
-                  <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
-                  <i class="el-icon-plus"></i>
-                </div>
+              <div class="icon-container" @click="addDiscrepancyRow()">
+                <!-- 鏀剧疆鍥哄畾鐨勫浘鏍� -->
+                <i class="el-icon-plus"></i>
               </div>
             </div>
           </div>
-          <div class="el-flexConfigDialog el-B-border">
-            <div class="DFormWidth DAlign DHold">
-              鐜寤虹珛
-            </div>
-            <div style="width: calc(100% - 120px)"  class="DConfirmForm el-wt-border-left">
-              <el-form-item class="marginTopAndMarginBottom" label="浜哄憳" style="width: 49%">
-                <el-input v-model="dataForm.environ.establishStaff" placeholder="浜哄憳"></el-input>
-              </el-form-item>
-              <el-form-item class="marginTopAndMarginBottom" label="鏃ユ湡" style="width: 48%">
-                <el-date-picker
-                  v-model="dataForm.environ.establishDate"
-                  type="date"
-                  placeholder="鏃ユ湡">
-                </el-date-picker>
-              </el-form-item>
-              <el-form-item label-width="180px" class="isKill" label="鏄惁杩涜鐜鐥呮瘨鏌ユ潃" style="width: 49%">
-                <zt-dict v-model="dataForm.environ.isVirusScan" dict="is_or_not" :radio="true"></zt-dict>
-              </el-form-item>
-              <el-form-item label="鐥呮瘨搴撶増鏈�" style="width: 48%">
-                <el-input v-model="dataForm.environ.virusDatabaseVersion" placeholder="璇疯緭鍏ョ梾姣掑簱鐗堟湰"></el-input>
-              </el-form-item>
-            </div>
+        </div>
+        <div class="el-flexConfigDialog el-B-border">
+          <div class="DFormWidth DAlign DHold">
+            鐜寤虹珛
           </div>
-          <div class="el-flexConfigDialog">
-            <div class="DFormWidth DAlign DHold">
-              鐜纭
-            </div>
-            <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left">
-              <!-- 鍗曚綅鍚嶇О -->
-              <el-form-item class="marginTopAndMarginBottom" label="浜哄憳" style="width: 49%">
-                <el-input v-model="dataForm.environ.confirmatStaff" placeholder="浜哄憳"></el-input>
-              </el-form-item>
-              <!-- 鑱旂郴浜� -->
-              <el-form-item class="marginTopAndMarginBottom" label="鏃ユ湡" style="width: 48%">
-                <el-date-picker
-                  v-model="dataForm.environ.confirmatDate"
-                  type="date"
-                  placeholder="鏃ユ湡">
-                </el-date-picker>
-              </el-form-item>
-            </div>
+          <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left">
+            <el-form-item class="marginTopAndMarginBottom" label="浜哄憳" style="width: 49%">
+              <el-input v-model="dataForm.environ.establishStaff" placeholder="浜哄憳"></el-input>
+            </el-form-item>
+            <el-form-item class="marginTopAndMarginBottom" label="鏃ユ湡" style="width: 48%">
+              <el-date-picker
+                v-model="dataForm.environ.establishDate"
+                type="date"
+                placeholder="鏃ユ湡">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label-width="180px" class="isKill" label="鏄惁杩涜鐜鐥呮瘨鏌ユ潃" style="width: 49%">
+              <zt-dict v-model="dataForm.environ.isVirusScan" dict="is_or_not" :radio="true"></zt-dict>
+            </el-form-item>
+            <el-form-item label="鐥呮瘨搴撶増鏈�" style="width: 48%">
+              <el-input v-model="dataForm.environ.virusDatabaseVersion" placeholder="璇疯緭鍏ョ梾姣掑簱鐗堟湰"></el-input>
+            </el-form-item>
           </div>
         </div>
-      </el-form>
+        <div class="el-flexConfigDialog">
+          <div class="DFormWidth DAlign DHold">
+            鐜纭
+          </div>
+          <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left">
+            <!-- 鍗曚綅鍚嶇О -->
+            <el-form-item class="marginTopAndMarginBottom" label="浜哄憳" style="width: 49%">
+              <el-input v-model="dataForm.environ.confirmatStaff" placeholder="浜哄憳"></el-input>
+            </el-form-item>
+            <!-- 鑱旂郴浜� -->
+            <el-form-item class="marginTopAndMarginBottom" label="鏃ユ湡" style="width: 48%">
+              <el-date-picker
+                v-model="dataForm.environ.confirmatDate"
+                type="date"
+                placeholder="鏃ユ湡">
+              </el-date-picker>
+            </el-form-item>
+          </div>
+        </div>
+      </div>
+    </el-form>
   </zt-dialog>
 </template>
 
@@ -216,13 +220,13 @@
       return {
         dataForm: {
           id: '',
-          url:'',
-          environ:{
+          url: '',
+          environ: {
             code: '1',
             hardSoftwareRes: '',
             testEnvirontDiagram: '',
-            establishStaff:'',
-            establishDate:'',
+            establishStaff: '',
+            establishDate: '',
             environAnalysis: '',
             environEstablish: '',
             environConfirmat: '',
@@ -236,22 +240,23 @@
             softwareName: '',
           },
           testAgencyInfo: {
-            agencyName:'',
-            site:'',
+            agencyName: '',
+            site: '',
           },
-          softwareResourcesList:[],
-          hardwareResourcesList:[],
-          environAnalysisList:[]
+          softwareResourcesList: [],
+          hardwareResourcesList: [],
+          environAnalysisList: []
         }
       }
     },
     methods: {
-      init(id,row){
+      init(id, row) {
         this.dataForm.id = row.id
         this.dataForm.projectId = row.projectId
         // this.dataForm.disabled
         this.getInfo()
-        console.log(this.dataForm.id,this.dataForm.projectId,'params params')
+        this.getImageUrl()
+        console.log(this.dataForm.id, this.dataForm.projectId, 'params params')
       },
       // 鑾峰彇淇℃伅
       async getInfo() {
@@ -259,40 +264,58 @@
           environId: this.dataForm.id,
           projectId: this.dataForm.projectId
         }
-        let res = await this.$http.get(`/project/Environ/getDto`,{params: params})
+        let res = await this.$http.get(`/project/Environ/getDto`, {params: params})
         this.dataForm = {
           ...this.dataForm,
           ...res.data
         }
-        console.log(this.dataForm,'this.dataForm')
+        console.log(this.dataForm, 'this.dataForm')
       },
-      indexFormat(index){
+      indexFormat(index) {
         return index += 1
       },
-      addSoftwareRow(){
+      addSoftwareRow() {
         this.dataForm.softwareResourcesList.push({})
-        this.$nextTick(()=>{
-          const tableBody=this.$refs.tableSoftwareList.$el.querySelector('.el-table__body-wrapper')
+        this.$nextTick(() => {
+          const tableBody = this.$refs.tableSoftwareList.$el.querySelector('.el-table__body-wrapper')
           tableBody.scrollTop = tableBody.scrollHeight
         })
       },
-      addHardwareRow(){
+      addHardwareRow() {
         this.dataForm.hardwareResourcesList.push({})
-        this.$nextTick(()=>{
-          const tableBody=this.$refs.tableHardwareList.$el.querySelector('.el-table__body-wrapper')
+        this.$nextTick(() => {
+          const tableBody = this.$refs.tableHardwareList.$el.querySelector('.el-table__body-wrapper')
           tableBody.scrollTop = tableBody.scrollHeight;
         })
       },
-      addDiscrepancyRow(){
+      addDiscrepancyRow() {
         this.dataForm.environAnalysisList.push({})
-        this.$nextTick(()=>{
-          const tableBody=this.$refs.tableEnvironeList.$el.querySelector('.el-table__body-wrapper')
+        this.$nextTick(() => {
+          const tableBody = this.$refs.tableEnvironeList.$el.querySelector('.el-table__body-wrapper')
           tableBody.scrollTop = tableBody.scrollHeight;
         })
       },
-      getImageUrl(url){
-        this.dataForm.url  = url
-        console.log(this.dataForm.url,' this.dataForm.url')
+      getImageUrl() {
+        let pictureId = this.getFirstImageId(this.dataForm.files, 'test_environt_diagram')
+        this.dataForm.url = `${window.SITE_CONFIG['apiURL']}/sys/oss/content2?fileId=${pictureId}`
+        console.log(this.dataForm.url, ' this.dataForm.url')
+      },
+      getFirstImageId(oss) {
+        console.log(oss, ' getFirstImageId(oss)')
+        let fileId = 0
+        if (oss != null) {
+          if (oss.groups.length > 0) {
+            let group = oss.groups[0]
+            if (group.fields.length > 0) {
+              let field = group.fields[0]
+              if (field.files.length > 0) {
+                let file = field.files[0]
+                fileId = file.id
+              }
+            }
+          }
+        }
+        return fileId
       },
       // 琛ㄥ崟鎻愪氦
       async formSubmit() {
@@ -307,72 +330,84 @@
   }
 </script>
 <style>
-.confirmFormAuto {
-  width: 70%;
-  margin: 0 auto;
-}
-.confirmDAuto{
-  border: 1px solid rgba(0,0,0,.2);
-}
+  .confirmFormAuto {
+    width: 70%;
+    margin: 0 auto;
+  }
 
-.el-flexConfigDialog {
-  display: flex;
-  align-items: center;
-}
+  .confirmDAuto {
+    border: 1px solid rgba(0, 0, 0, .2);
+  }
 
-.DFormWidth {
-  width: 120px;
-}
-.DConfirmForm {
-  /*border-left: 1px solid;*/
-  width: 100%;
-}
+  .el-flexConfigDialog {
+    display: flex;
+    align-items: center;
+  }
 
-.DConfirmForm > .el-form-item > .el-form-item__content {
-  width: calc(100% - 130px);
-}
-.DConfirmForm > .el-form-item.isKill > .el-form-item__content {
-  width: calc(100% - 180px);
-}
-.el-form-border{
-  border-top: 1px solid rgba(0,0,0,.2);
-  border-bottom: 1px solid rgba(0,0,0,.2);
-}
-.el-B-border{
-  border-bottom: 1px solid rgba(0,0,0,.2);
-}
-.el-margin-top-bot{
-  margin-top:5px;
-  margin-bottom:5px;
-}
-.el-wt-border-left{
-  border-left:1px solid rgba(0,0,0,.2);
-}
-.zt .el-table.el-software th {
-  background: transparent;
-}
+  .DFormWidth {
+    width: 120px;
+  }
 
-.zt .el-table.el-software th > .cell {
-  font-weight: 500;
-}
-.DHold{
-  font-weight: 600;
-}
-.zt .el-table.el-software{
-  font-size: 14px;
-}
-.confirmFormAuto .marginTopAndMarginBottom {
-  margin-top: 10px !important;
-  margin-bottom: 0 !important;
-}
+  .DConfirmForm {
+    /*border-left: 1px solid;*/
+    width: 100%;
+  }
 
-.confirmFormAuto .marginTopAndMarginBottom2 {
-  margin-top: -10px !important;
-  margin-bottom: 10px !important;
-}
-.confirmFormAuto .marginTopAndMarginBottom3 {
-  margin-top: 0 !important;
-  margin-bottom: 10px !important;
-}
+  .DConfirmForm > .el-form-item > .el-form-item__content {
+    width: calc(100% - 130px);
+  }
+
+  .DConfirmForm > .el-form-item.isKill > .el-form-item__content {
+    width: calc(100% - 180px);
+  }
+
+  .el-form-border {
+    border-top: 1px solid rgba(0, 0, 0, .2);
+    border-bottom: 1px solid rgba(0, 0, 0, .2);
+  }
+
+  .el-B-border {
+    border-bottom: 1px solid rgba(0, 0, 0, .2);
+  }
+
+  .el-margin-top-bot {
+    margin-top: 5px;
+    margin-bottom: 5px;
+  }
+
+  .el-wt-border-left {
+    border-left: 1px solid rgba(0, 0, 0, .2);
+  }
+
+  .zt .el-table.el-software th {
+    background: transparent;
+  }
+
+  .zt .el-table.el-software th > .cell {
+    font-weight: 500;
+  }
+
+  .DHold {
+    font-weight: 600;
+  }
+
+  .zt .el-table.el-software {
+    font-size: 14px;
+  }
+
+  .confirmFormAuto .marginTopAndMarginBottom {
+    margin-top: 10px !important;
+    margin-bottom: 0 !important;
+  }
+
+  .confirmFormAuto .marginTopAndMarginBottom2 {
+    margin-top: -10px !important;
+    margin-bottom: 10px !important;
+  }
+
+  .confirmFormAuto .marginTopAndMarginBottom3 {
+    margin-top: 0 !important;
+    margin-bottom: 10px !important;
+  }
 
 </style>

--
Gitblit v1.9.1