From 815cf005152ca73ca08aabd44021d5f6ac72b06a Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期一, 20 十一月 2023 09:08:52 +0800
Subject: [PATCH] Changes

---
 modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java |  210 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 123 insertions(+), 87 deletions(-)

diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
index 707c2a7..5a5327a 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
@@ -1,25 +1,28 @@
 package com.zt.life.modules.project.service;
 
 import com.zt.common.service.BaseService;
+import com.zt.common.utils.CommonUtils;
 import com.zt.core.sys.dto.DictDto;
 import com.zt.core.sys.dto.DictItemDto;
 import com.zt.core.sys.dto.DictLeafDto;
 import com.zt.life.export.dto.WordFile;
+import com.zt.life.modules.mainPart.utils.GetShowDictList;
 import com.zt.life.export.service.WordFileService;
 import com.zt.life.modules.project.dao.SoftwareTestOrderDao;
 import com.zt.life.modules.project.dto.SoftwareTestOrderDto;
+import com.zt.life.modules.project.model.Project;
 import com.zt.life.modules.project.model.SoftwareTestOrder;
 import com.zt.life.modules.project.model.SoftwareTestOrderDeliverable;
 import com.zt.life.modules.project.model.SoftwareTestOrderMeasured;
 import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
+import com.zt.life.sys.service.SysOssConfigService;
 import com.zt.modules.coderule.service.SysCodeRuleService;
+import com.zt.modules.oss.service.SysOssService;
 import com.zt.modules.sys.service.SysDictTypeService;
-import lombok.val;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.zt.common.db.query.QueryFilter;
 
-import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.FileNotFoundException;
@@ -39,7 +42,6 @@
  */
 @Service
 public class SoftwareTestOrderService extends BaseService<SoftwareTestOrderDao, SoftwareTestOrder> {
-
     @Autowired
     private ProjectService projectService;
     @Autowired
@@ -55,6 +57,14 @@
     private SysDictTypeService sysDictTypeService;
     @Autowired
     private WordFileService wordFileService;
+    @Autowired
+    private GetShowDictList getShowDictList;
+
+    @Autowired
+    private SysOssConfigService sysOssConfigService;
+
+    @Autowired
+    private SysOssService sysOssService;
 
     /**
      * 鍒嗛〉鏌ヨ
@@ -63,7 +73,11 @@
      * @return
      */
     public List<SoftwareTestOrder> page(QueryFilter queryFilter) {
-        return baseDao.getList(queryFilter.getQueryParams());
+        List<SoftwareTestOrder> list = baseDao.getList(queryFilter.getQueryParams());
+        if (list != null && list.size() > 0) {
+            sysOssService.setListOsses(list, "test_order");
+        }
+        return list;
     }
 
 
@@ -84,6 +98,7 @@
         else {
             Map<String, String> map = new HashMap<>();
             map.put("funCode", "software_test_order");
+            softwareTestOrderDto.getSoftwareTestOrder().setProjectId(softwareTestOrderDto.getProjectId());
             softwareTestOrderDto.getSoftwareTestOrder().setCode(sysCodeRuleService.getNewCode(map));
             baseDao.insert(softwareTestOrderDto.getSoftwareTestOrder());
             softwareTestOrderId = softwareTestOrderDto.getSoftwareTestOrder().getId();
@@ -94,6 +109,7 @@
             if (softwareTestOrderMeasured.getId() != null) {
                 softwareTestOrderMeasuredService.update(softwareTestOrderMeasured);
             } else {
+                softwareTestOrderMeasured.setOrderId(softwareTestOrderId);
                 softwareTestOrderMeasuredService.insert(softwareTestOrderMeasured);
             }
         }
@@ -103,6 +119,7 @@
             if (softwareTestOrderDeliverable.getId() != null) {
                 softwareTestOrderDeliverableService.update(softwareTestOrderDeliverable);
             } else {
+                softwareTestOrderDeliverable.setOrderId(softwareTestOrderId);
                 softwareTestOrderDeliverableService.insert(softwareTestOrderDeliverable);
             }
         }
@@ -113,114 +130,133 @@
         } else {
             testAgencyInfoService.update(softwareTestOrderDto.getTestAgencyInfo());
         }
+        sysOssConfigService.updateOss(softwareTestOrderDto.getId(), softwareTestOrderDto.getFiles());// 淇濆瓨闄勪欢
         return true;
     }
 
-    public SoftwareTestOrderDto getDto(Long orderId, Long projectId) {
+    public SoftwareTestOrderDto getDto(Long projectId, Long orderId) {
         SoftwareTestOrderDto data = new SoftwareTestOrderDto();
         if (orderId != null) {
             data.setId(orderId);
             SoftwareTestOrder softwareTestOrder = this.get(orderId);
             data.setSoftwareTestOrder(softwareTestOrder);
 
-            if (projectId == null)
-                projectId = softwareTestOrder.getProjectId();
+            projectId = softwareTestOrder.getProjectId();
 
             data.setTestAgencyInfo(testAgencyInfoService.get(orderId));
-            List<SoftwareTestOrderDeliverable> deliverableList = softwareTestOrderDeliverableService.childrenTables(orderId);
-            if (deliverableList.isEmpty()) {
-                deliverableList = this.deliverableDict();
-                deliverableList = deliverableList.stream()
-                        .peek(deliverable -> {
-                            if (deliverable.getIdentify() == null) {
-                                // 淇敼 identify 瀛楁鐨勫�间负鏂板��
-                                deliverable.setIdentify("1.0.0");
-                            }
-                        })
-                        .collect(Collectors.toList());
-            }
+
+            List<SoftwareTestOrderDeliverable> deliverableList = softwareTestOrderDeliverableService.getList(orderId);
             data.setDeliverableList(deliverableList);
 
-            List<SoftwareTestOrderMeasured> measuredList = softwareTestOrderMeasuredService.childrenTables(orderId);
-            if (measuredList.isEmpty()) {
-                measuredList = this.MeasuredDict();
-                measuredList = measuredList.stream()
-                        .peek(measured -> {
-                            if (measured.getIdentify() == null) {
-                                // 淇敼 identify 瀛楁鐨勫�间负鏂板��
-                                measured.setIdentify("1.0.0");
-                            }
-                        })
-                        .collect(Collectors.toList());
-            }
+            List<SoftwareTestOrderMeasured> measuredList = softwareTestOrderMeasuredService.getList(orderId);
             data.setMeasuredList(measuredList);
         } else {
-            data.setTestAgencyInfo(testAgencyInfoService.get(10000L));
+            Project project = projectService.get(projectId);
+            String projectCode = project.getCode();
+            String softName =project.getSoftwareName();
+            List<?> testItemResult = baseDao.dictList("testItem_type", projectCode,softName);
+            List<?> measuredList = testItemResult;
+            data.setMeasuredList((List<SoftwareTestOrderMeasured>) measuredList);
+
+            List<?> productLibraryResult = baseDao.dictList("product_library_file", projectCode,null);
+            List<?> deliverableList = productLibraryResult;
+            data.setDeliverableList((List<SoftwareTestOrderDeliverable>) deliverableList);
         }
+
         if (projectId != null) {
             data.setProjectId(projectId);
             data.setProject(projectService.get(projectId));
         }
+
+        if (data.getTestAgencyInfo() == null)
+            data.setTestAgencyInfo(testAgencyInfoService.get(10000L));
+
         return data;
     }
 
-
-    public List<SoftwareTestOrderDeliverable> deliverableDict() {
-        return baseDao.getdeliverableDictList();
-    }
-
-    public List<SoftwareTestOrderMeasured> MeasuredDict() {
-        return baseDao.getMeasuredDictList();
-    }
-
     public void exportWord(Long id, HttpServletRequest request, HttpServletResponse response) {
-        WordFile wordFile = new WordFile();
-        wordFile.setModulePath("aaaa");
-        wordFile.setWordName("aaa");
-        SoftwareTestOrderDto dataObj = this.getDto(id, null);
-
-        List<DictDto> userDicts = sysDictTypeService.getUserDicts();
-        DictDto testType1Dict = userDicts.stream()
-                .filter(c -> c.getDictType().equals("test_type1"))
-                .collect(Collectors.toList()).get(0);
-
-        List<String> testType11 = new ArrayList<>();
-        List<String> testType12 = new ArrayList<>();
-        List<String> testType21 = new ArrayList<>();
-        List<String> testType22 = new ArrayList<>();
-
-        int i = 0;
-        String testType = "," + dataObj.getSoftwareTestOrder().getTestType1() + ",";
-        for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) {
-            String value = dictItemDto.getDictValue();
-            String desc = (testType.contains("," + value + ",")?"鈽�":"鈻�")+dictItemDto.getDictLabel();
-            if ((i++) % 2 == 0) {
-                testType12.add(desc);
-            } else {
-                testType11.add(desc);
-            }
-        }
-
-        i = 0;
-        testType = "," + dataObj.getSoftwareTestOrder().getTestType2() + ",";
-        for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) {
-            String value = dictItemDto.getDictValue();
-            String desc = (testType.contains("," + value + ",")?"鈽�":"鈻�")+dictItemDto.getDictLabel();
-            if ((i++) % 2 == 0) {
-                testType22.add(desc);
-            } else {
-                testType21.add(desc);
-            }
-        }
-
-        dataObj.getSoftwareTestOrder().setTestType11(testType11);
-        dataObj.getSoftwareTestOrder().setTestType12(testType12);
-        dataObj.getSoftwareTestOrder().setTestType21(testType21);
-        dataObj.getSoftwareTestOrder().setTestType22(testType22);
-
-        List<Object> measuredList = new ArrayList<>();
-
         try {
+            SoftwareTestOrderDto dataObj = this.getDto(null, id);
+            //鐗规畩鍒楄〃鐢熸垚
+            List<DictDto> userDicts = sysDictTypeService.getUserDicts();
+            DictDto testType1Dict = userDicts.stream()
+                    .filter(c -> c.getDictType().equals("test_type1"))
+                    .collect(Collectors.toList()).get(0);
+
+            List<HashMap<String, Object>> testType11 = new ArrayList<>();
+            List<HashMap<String, Object>> testType12 = new ArrayList<>();
+            List<HashMap<String, Object>> testType21 = new ArrayList<>();
+            List<HashMap<String, Object>> testType22 = new ArrayList<>();
+
+
+            int i = 0;
+            String testType = "," + dataObj.getSoftwareTestOrder().getTestType1() + ",";
+            for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) {
+                String value = dictItemDto.getDictValue();
+                String desc = (testType.contains("," + value + ",") ? "鈽�" : "鈻�") + dictItemDto.getDictLabel();
+                HashMap<String, Object> stateItem = new HashMap<>();
+                stateItem.put("item", desc);
+                if ((i++) % 2 == 0) {
+                    testType12.add(stateItem);
+                } else {
+                    testType11.add(stateItem);
+                }
+            }
+
+            i = 0;
+            testType = "," + dataObj.getSoftwareTestOrder().getTestType2() + ",";
+            for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) {
+                String value = dictItemDto.getDictValue();
+                String desc = (testType.contains("," + value + ",") ? "鈽�" : "鈻�") + dictItemDto.getDictLabel();
+                HashMap<String, Object> stateItem = new HashMap<>();
+                stateItem.put("item", desc);
+                if ((i++) % 2 == 0) {
+                    testType22.add(stateItem);
+                } else {
+                    testType21.add(stateItem);
+                }
+            }
+
+            dataObj.getSoftwareTestOrder().setTestType11(testType11);
+            dataObj.getSoftwareTestOrder().setTestType12(testType12);
+            dataObj.getSoftwareTestOrder().setTestType21(testType21);
+            dataObj.getSoftwareTestOrder().setTestType22(testType22);
+
+            //閫氱敤瀛楀吀鍒楄〃瀛楃涓茬敓鎴�
+            String criticalLevelStr = getShowDictList.getShowDictList(dataObj.getProject().getCriticalLevel(), "critical_level", false);
+            dataObj.getSoftwareTestOrder().setCriticalLevelStr(criticalLevelStr);
+
+            for (SoftwareTestOrderMeasured measured : dataObj.getMeasuredList()) {
+                String value = measured.getIsMeasured();
+                String isMeasuredStr = getShowDictList.getShowDictList(value, "is_or_not", false);
+                measured.setIsMeasuredStr(isMeasuredStr);
+            }
+
+            String sortwareTypeStr = getShowDictList.getShowDictList(dataObj.getProject().getSoftwareType(), "software_type", false);
+            dataObj.getSoftwareTestOrder().setSortwareTypeStr(sortwareTypeStr);
+
+            String testBasisStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestBasis(), "test_basis", true);
+            dataObj.getSoftwareTestOrder().setTestBasisStr(testBasisStr);
+
+            String testStandardStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestStandard(), "test_standard", true);
+            dataObj.getSoftwareTestOrder().setTestStandardStr(testStandardStr);
+
+            String testLevelStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestLevel(), "test_level", false);
+            dataObj.getSoftwareTestOrder().setTestLevelStr(testLevelStr);
+
+            String test = dataObj.getSoftwareTestOrder().getOtherRequire();
+            String otherRequireStr = getShowDictList.getShowDictList(test, "other_require", false);
+            dataObj.getSoftwareTestOrder().setOtherRequireStr(otherRequireStr);
+
+            String articleNatureStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getArticleNature(), "article_nature", false);
+            dataObj.getSoftwareTestOrder().setArticleNatureStr(articleNatureStr);
+
+            String sampleStatusStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getSampleStatus(), "is_or_not", false);
+            dataObj.getSoftwareTestOrder().setSampleStatusStr(sampleStatusStr);
+
+            WordFile wordFile = new WordFile();
+            wordFile.setModulePath("娴嬭瘯濮旀墭鍗�.docx");
+            wordFile.setWordName(dataObj.getProject().getSoftwareName() + "_娴嬭瘯濮旀墭鍗�.docx");
             wordFileService.exportWordFile(request, dataObj, wordFile, response);
         } catch (UnsupportedEncodingException e) {
             e.printStackTrace();

--
Gitblit v1.9.1