From 1772fc5e211f9e9e0ab4cdc6c29b436aac178c2a Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期五, 23 二月 2024 12:19:55 +0800
Subject: [PATCH] 修改
---
modules/mainPart/src/main/java/com/zt/life/modules/configItemWarehouse/service/ConfigItemWarehouseService.java | 213 ++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 178 insertions(+), 35 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 862c230..b5a186d 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
@@ -1,40 +1,52 @@
package com.zt.life.modules.configItemWarehouse.service;
+import cn.hutool.core.convert.Convert;
import com.zt.common.service.BaseService;
+import com.zt.common.utils.CommonUtils;
+import com.zt.core.context.User;
+import com.zt.core.context.UserContext;
+import com.zt.life.export.dto.WordFile;
+import com.zt.life.export.service.WordFileService;
+import com.zt.life.modules.baselineRelease.model.BaselineReleaseRemark;
import com.zt.life.modules.configItemWarehouse.dao.ConfigItemWarehouseDao;
import com.zt.life.modules.configItemWarehouse.dto.ConfigItemWarehouseDto;
import com.zt.life.modules.configItemWarehouse.model.ConfigItemWarehouse;
import com.zt.life.modules.configItemWarehouse.model.WarehouseCmAudit;
import com.zt.life.modules.configItemWarehouse.model.WarehouseConfigItem;
import com.zt.life.modules.configItemWarehouse.model.WarehouseQaAudit;
-import com.zt.life.modules.itemCirculatOrder.dto.ItemCirculatOrderDto;
-import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrder;
-import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import com.zt.life.modules.itemCirculatOrder.service.ItemCirculatOrderTechnicalService;
-import com.zt.life.modules.project.model.SoftwareTestOrderDeliverable;
-import com.zt.life.modules.project.model.SoftwareTestOrderMeasured;
+import com.zt.life.modules.mainPart.utils.GetFilesPath;
+import com.zt.life.modules.mainPart.utils.GetShowDictList;
import com.zt.life.modules.project.service.ProjectService;
-import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
+import com.zt.life.modules.testCheckOrder.model.TestCheckOrder;
+import com.zt.life.modules.testCheckOrder.service.TestCheckOrderService;
+import com.zt.life.sys.dto.OssDto;
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.workflow.dto.FlowInfoDto;
+import com.zt.modules.workflow.service.WorkflowService;
+import org.apache.commons.lang3.StringUtils;
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;
-import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.FileNotFoundException;
+import java.io.UnsupportedEncodingException;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* 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;
@@ -42,7 +54,7 @@
private SysOssService sysOssService;
@Autowired
- private TestAgencyInfoService testAgencyInfoService;
+ private WorkflowService workflowService;
@Autowired
private SysCodeRuleService sysCodeRuleService;
@@ -59,6 +71,21 @@
@Autowired
private WarehouseConfigItemService configItemService;
+ @Autowired
+ private TestCheckOrderService testCheckOrderService;
+
+ @Autowired
+ private GetShowDictList getShowDictList;
+
+ @Autowired
+ private WordFileService wordFileService;
+
+ @Autowired
+ private GetFilesPath getFilesPath;
+
+ @Autowired
+ private ItemCirculatOrderTechnicalService technicalService;
+
/**
* 鍒嗛〉鏌ヨ
*
@@ -66,7 +93,16 @@
* @return
*/
public List<ConfigItemWarehouse> page(QueryFilter queryFilter) {
- return baseDao.getList(queryFilter.getQueryParams());
+ User user = UserContext.getUser();
+ Integer secretClass = user.getSecretClass();
+ Long deptId = user.getDeptId();
+ queryFilter.getQueryParams().put("secretClass",secretClass);
+ queryFilter.getQueryParams().put("deptId",deptId);
+ List<ConfigItemWarehouse> list = baseDao.getList(queryFilter.getQueryParams());
+ if (list.size() > 0) {
+ workflowService.getRunFlow(list, "pzxrk");
+ }
+ return list;
}
/**
@@ -85,7 +121,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());
@@ -94,13 +130,40 @@
for (WarehouseConfigItem configItem : configItemDto.getConfigItemList()) {
configItem.setWarehouseId(warehouseId);
- if (configItem.getId() != null) {
- configItemService.update(configItem);
- } else {
- configItem.setWarehouseId(warehouseId);
- configItemService.insert(configItem);
+ if (configItem.getItemName() != null) {
+ if (configItem.getId() != null) {
+ WarehouseConfigItem configItem2 = configItemService.get(configItem.getId());
+ if (CommonUtils.isActureChangeData(configItem, configItem2)) {
+ configItemService.update(configItem);
+ }
+ if (CommonUtils.isActureChangeData(configItemDto.getConfigItemWarehouse().getLibraryType(), configItem.getLibraryType())) {
+ configItem.setLibraryType(configItemDto.getConfigItemWarehouse().getLibraryType());
+ configItemService.update(configItem);
+ }
+ } else {
+ Map<String, String> map = new HashMap<>();
+ String pageCode = configItem.getPageCode();
+ if (StringUtils.isNotBlank(pageCode) && "plan,explain,record,report".contains(pageCode)) {
+ map.put("funCode", "test_" + pageCode);
+ configItem.setItemIdentify(sysCodeRuleService.getNewCode(map));
+ }
+ configItem.setLibraryType(configItemDto.getConfigItemWarehouse().getLibraryType());
+ configItem.setWarehouseId(warehouseId);
+ configItem.setProjectId(configItemDto.getConfigItemWarehouse().getProjectId());
+ configItemService.insert(configItem);
+ }
+ Long checkId = configItem.getCheckId();
+ if (checkId != null) {
+ TestCheckOrder testCheckOrder = testCheckOrderService.get(checkId);
+ if (testCheckOrder.getConfigItemId() == null) {
+ Long configItemId = configItem.getId();
+ testCheckOrder.setConfigItemId(configItemId);
+ testCheckOrder.setConfigOrderId(warehouseId);
+ testCheckOrderService.update(testCheckOrder);
+ }
+ }
+ sysOssConfigService.updateOss(configItem.getId(), configItem.getFiles());// 淇濆瓨闄勪欢
}
- sysOssConfigService.updateOss(configItem.getId(), configItem.getFiles());// 淇濆瓨闄勪欢
}
for (WarehouseCmAudit cmAudit : configItemDto.getCmAuditList()) {
@@ -122,18 +185,28 @@
qaAuditService.insert(qaAudit);
}
}
+
+ Long bizId = configItemDto.getConfigItemWarehouse().getId();
+ FlowInfoDto flowInfoDto = configItemDto.getFlowInfoDto();
+
+ if (flowInfoDto != null && flowInfoDto.getSubmitType() != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
+ if ("tj".equals(flowInfoDto.getSubmitType())) {
+ workflowService.startFlow(flowInfoDto.getFlowCode(), bizId);
+ }
+ workflowService.approvePass(flowInfoDto.getFlowCode(), bizId, flowInfoDto.getStepIdMark());
+ }
return true;
}
- public ConfigItemWarehouseDto getDto(Long projectId, Long warehouseId) {
+ public ConfigItemWarehouseDto getDto(Long projectId, Long warehouseId, String libraryType) {
ConfigItemWarehouseDto data = new ConfigItemWarehouseDto();
if (warehouseId != null) {
data.setId(warehouseId);
ConfigItemWarehouse configItemWarehouse = this.get(warehouseId);
data.setConfigItemWarehouse(configItemWarehouse);
-
- projectId = configItemWarehouse.getProjectId();
-
+ if (configItemWarehouse != null && projectId == null) {
+ projectId = configItemWarehouse.getProjectId();
+ }
List<WarehouseCmAudit> CmAuditList = cmAuditService.getList(warehouseId);
data.setCmAuditList(CmAuditList);
List<WarehouseQaAudit> QaAuditList = qaAuditService.getList(warehouseId);
@@ -142,17 +215,30 @@
data.setConfigItemList(ConfigItemList);
} else {
- ConfigItemWarehouse configItemWarehouse =new ConfigItemWarehouse();
+ ConfigItemWarehouse configItemWarehouse = new ConfigItemWarehouse();
+ configItemWarehouse.setLibraryType(libraryType);
data.setConfigItemWarehouse(configItemWarehouse);
- List<?> cmList = baseDao.itemList("warehouse_cm_audit");
- List<?> CmAuditList = cmList;
- data.setCmAuditList((List<WarehouseCmAudit>) CmAuditList);
- List<?> qaList = baseDao.itemList("warehouse_qa_audit");
- List<?> QaAuditList = qaList;
- data.setQaAuditList((List<WarehouseQaAudit>) QaAuditList);
- List<?> resultList = configItemService.ConfigItemList(projectId);
- List<?> ConfigItemList = resultList;
- data.setConfigItemList((List<WarehouseConfigItem>) ConfigItemList);
+ List<?> cmList = this.itemCmList("warehouse_cm_audit");
+ data.setCmAuditList((List<WarehouseCmAudit>) cmList);
+ List<?> qaList = this.itemQaList("warehouse_qa_audit");
+ data.setQaAuditList((List<WarehouseQaAudit>) qaList);
+ List<WarehouseConfigItem> resultList = new ArrayList<>();
+ if ("1".equals(libraryType)) {
+ List<String> srcId = technicalService.getsrcId(projectId);
+/* String ids = String.join(", ", srcId.stream()
+ .map(id -> "\"" + id + "\"")
+ .collect(Collectors.toList()));*/
+ String ids = String.join(", ", srcId);
+ resultList = configItemService.ConfigItemList(projectId, ids);
+ for (WarehouseConfigItem item :resultList){
+ if (ids.contains(item.getSrcId().toString()) && item.getSrcId()!=null && StringUtils.isNotBlank(ids)){
+ WarehouseConfigItem item2 = configItemService.getBySrc(projectId,item.getSrcId());
+ item.setVersion(null);
+ item.setRetrospectVersion(item2.getVersion());
+ }
+ }
+ }
+ data.setConfigItemList(resultList);
}
if (projectId != null) {
@@ -163,4 +249,61 @@
return data;
}
+ public List<WarehouseCmAudit> itemCmList(String dictType) {
+ return baseDao.itemCmList(dictType);
+ }
+ public List<WarehouseQaAudit> itemQaList(String dictType) {
+ return baseDao.itemQaList(dictType);
+ }
+
+ public void exportWarehouseOrder(Long id, HttpServletRequest request, HttpServletResponse response, String libraryType) {
+ try {
+ ConfigItemWarehouseDto dataObj = this.getDto(null, id, libraryType);
+
+ String qaAuditorPath = "鏂囦欢鍥剧墖:" + getFilesPath.getSignPath(Convert.toLong(dataObj.getConfigItemWarehouse().getQaAuditorId()));
+ dataObj.getConfigItemWarehouse().setQaAuditor(qaAuditorPath);
+ String cmAuditorPath = "鏂囦欢鍥剧墖:" + getFilesPath.getSignPath(Convert.toLong(dataObj.getConfigItemWarehouse().getCmAuditorId()));
+ dataObj.getConfigItemWarehouse().setCmAuditor(cmAuditorPath);
+ String approvalSignPath = "鏂囦欢鍥剧墖:" + getFilesPath.getSignPath(Convert.toLong(dataObj.getConfigItemWarehouse().getApprovalId()));
+ dataObj.getConfigItemWarehouse().setApprovalSign(approvalSignPath);
+ String operatorPath = "鏂囦欢鍥剧墖:" + getFilesPath.getSignPath(Convert.toLong(dataObj.getConfigItemWarehouse().getOperatorId()));
+ dataObj.getConfigItemWarehouse().setOperator(operatorPath);
+ //閫氱敤瀛楀吀鍒楄〃瀛楃涓茬敓鎴�
+ String libraryTypeStr = getShowDictList.getShowDictList(dataObj.getConfigItemWarehouse().getLibraryType(), "library_type", false);
+ dataObj.getConfigItemWarehouse().setLibraryType(libraryTypeStr);
+
+ String QaAuditResultStr = getShowDictList.getShowDictList(dataObj.getConfigItemWarehouse().getQaAuditResults(), "is_pass", false);
+ dataObj.getConfigItemWarehouse().setQaAuditResults(QaAuditResultStr);
+
+ String CmAuditResultStr = getShowDictList.getShowDictList(dataObj.getConfigItemWarehouse().getCmAuditResults(), "is_pass", false);
+ dataObj.getConfigItemWarehouse().setCmAuditResults(CmAuditResultStr);
+
+ String ApprovalOpinionStr = getShowDictList.getShowDictList(dataObj.getConfigItemWarehouse().getApprovalOpinions(), "is_agree", false);
+ dataObj.getConfigItemWarehouse().setApprovalOpinions(ApprovalOpinionStr);
+
+ for (WarehouseCmAudit cmAuditList : dataObj.getCmAuditList()) {
+ String value = cmAuditList.getExamineResult();
+ String ExamineResultStr = getShowDictList.getShowDictList(value, "tristate2", false);
+ cmAuditList.setExamineResult(ExamineResultStr);
+ }
+ for (WarehouseQaAudit qaAuditList : dataObj.getQaAuditList()) {
+ String value = qaAuditList.getExamineResult();
+ String ExamineResultStr = getShowDictList.getShowDictList(value, "tristate2", false);
+ qaAuditList.setExamineResult(ExamineResultStr);
+ }
+ for (WarehouseConfigItem configItemList : dataObj.getConfigItemList()) {
+ String value = configItemList.getSecretClass();
+ String secretClassStr = getShowDictList.getShowDictList(value, "secret_class", false);
+ configItemList.setSecretClass(secretClassStr);
+ }
+ WordFile wordFile = new WordFile();
+ wordFile.setModulePath("閰嶇疆椤瑰叆搴撶敵璇峰崟.docx");
+ wordFile.setWordName(dataObj.getProject().getSoftwareName() + "_閰嶇疆椤瑰叆搴撶敵璇峰崟.docx");
+ wordFileService.exportWordFile(request, dataObj, wordFile, response);
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
+ }
+ }
}
--
Gitblit v1.9.1