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 | 258 +++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 208 insertions(+), 50 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 fd355ae..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,38 +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.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; @@ -40,7 +54,7 @@ private SysOssService sysOssService; @Autowired - private TestAgencyInfoService testAgencyInfoService; + private WorkflowService workflowService; @Autowired private SysCodeRuleService sysCodeRuleService; @@ -57,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; + /** * 鍒嗛〉鏌ヨ * @@ -64,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; } /** @@ -76,51 +114,99 @@ super.deleteLogic(ids); } - /* public Boolean save(ItemCirculatOrderDto itemCirculatOrderDto) { - Long circulatOrderid = itemCirculatOrderDto.getCirculatOrder().getId(); - if (circulatOrderid != null) - baseDao.updateById(itemCirculatOrderDto.getCirculatOrder()); + public Boolean save(ConfigItemWarehouseDto configItemDto) { + Long warehouseId = configItemDto.getConfigItemWarehouse().getId(); + if (warehouseId != null) + baseDao.updateById(configItemDto.getConfigItemWarehouse()); else { Map<String, String> map = new HashMap<>(); - map.put("funCode", "item_circulat_order"); - map.put("projectId",itemCirculatOrderDto.getProjectId().toString()); - itemCirculatOrderDto.getCirculatOrder().setProjectId(itemCirculatOrderDto.getProjectId()); - itemCirculatOrderDto.getCirculatOrder().setCode(sysCodeRuleService.getNewCode(map)); - baseDao.insert(itemCirculatOrderDto.getCirculatOrder()); - circulatOrderid = itemCirculatOrderDto.getCirculatOrder().getId(); + map.put("funCode", "config_item_warehouse"); + map.put("projectId", configItemDto.getProjectId().toString()); + configItemDto.getConfigItemWarehouse().setProjectId(configItemDto.getProjectId()); + configItemDto.getConfigItemWarehouse().setCode(sysCodeRuleService.getNewCode(map)); + baseDao.insert(configItemDto.getConfigItemWarehouse()); + warehouseId = configItemDto.getConfigItemWarehouse().getId(); } - for (ItemCirculatOrderTechnical circulatOrderTechnical : itemCirculatOrderDto.getTechnicalList()) { - circulatOrderTechnical.setCirculatOrderId(circulatOrderid); - if (circulatOrderTechnical.getId() != null) { - technicalService.update(circulatOrderTechnical); - } else { - circulatOrderTechnical.setCirculatOrderId(circulatOrderid); - technicalService.insert(circulatOrderTechnical); + for (WarehouseConfigItem configItem : configItemDto.getConfigItemList()) { + configItem.setWarehouseId(warehouseId); + 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(circulatOrderTechnical.getId(), circulatOrderTechnical.getFiles());// 淇濆瓨闄勪欢 } - if (itemCirculatOrderDto.getTestAgencyInfo().getId() == 10000) { - itemCirculatOrderDto.getTestAgencyInfo().setId(circulatOrderid); - testAgencyInfoService.insert(itemCirculatOrderDto.getTestAgencyInfo()); - } else { - testAgencyInfoService.update(itemCirculatOrderDto.getTestAgencyInfo()); + for (WarehouseCmAudit cmAudit : configItemDto.getCmAuditList()) { + cmAudit.setWarehouseId(warehouseId); + if (cmAudit.getId() != null) { + cmAuditService.update(cmAudit); + } else { + cmAudit.setWarehouseId(warehouseId); + cmAuditService.insert(cmAudit); + } + } + + for (WarehouseQaAudit qaAudit : configItemDto.getQaAuditList()) { + qaAudit.setWarehouseId(warehouseId); + if (qaAudit.getId() != null) { + qaAuditService.update(qaAudit); + } else { + qaAudit.setWarehouseId(warehouseId); + 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(); - - data.setTestAgencyInfo(testAgencyInfoService.get(warehouseId)); - + if (configItemWarehouse != null && projectId == null) { + projectId = configItemWarehouse.getProjectId(); + } List<WarehouseCmAudit> CmAuditList = cmAuditService.getList(warehouseId); data.setCmAuditList(CmAuditList); List<WarehouseQaAudit> QaAuditList = qaAuditService.getList(warehouseId); @@ -129,12 +215,30 @@ data.setConfigItemList(ConfigItemList); } else { - ConfigItemWarehouse configItemWarehouse =new ConfigItemWarehouse(); + ConfigItemWarehouse configItemWarehouse = new ConfigItemWarehouse(); + configItemWarehouse.setLibraryType(libraryType); data.setConfigItemWarehouse(configItemWarehouse); - List<?> cmList = cmAuditService.itemList(projectId); - List<?> CmAuditList = cmList; - data.setCmAuditList((List<WarehouseCmAudit>) CmAuditList); - List<?> resultList = qaAuditService.itemList(projectId); + 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) { @@ -142,10 +246,64 @@ data.setProject(projectService.get(projectId)); } - if (data.getTestAgencyInfo() == null) - data.setTestAgencyInfo(testAgencyInfoService.get(10000L)); - 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