package com.zt.life.modules.project.service; import com.zt.common.service.BaseService; import com.zt.life.modules.project.dao.EnvironDao; import com.zt.life.modules.project.dto.EnvironDto; import com.zt.life.modules.project.model.*; import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; 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 org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zt.common.db.query.QueryFilter; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.*; /** * environ * * @author zt generator * @since 1.0.0 2023-11-17 */ @Service public class EnvironService extends BaseService { @Autowired private EnvironSoftwareResourcesService environSoftwareResourcesService; @Autowired private EnvironHardwareResourcesService environHardwareResourcesService; @Autowired private SoftwareTestOrderService softwareTestOrderService; @Autowired private SysCodeRuleService sysCodeRuleService; @Autowired private SysOssConfigService sysOssConfigService; @Autowired private EnvironAnalysisService environAnalysisService; @Autowired private ProjectService projectService; @Autowired private TestAgencyInfoService testAgencyInfoService; @Autowired private SysOssService sysOssService; public EnvironDto getDto(Long environId, Long projectId) { EnvironDto data = new EnvironDto(); if (environId != null) { Environ environ = this.get(environId); data.setEnviron(environ); data.setTestAgencyInfo(testAgencyInfoService.get(environId)); projectId = environ.getProjectId(); List softwareResourcesList = environSoftwareResourcesService.getList(environId); data.setSoftwareResourcesList(softwareResourcesList); List hardwareResourcesList = environHardwareResourcesService.getList(environId); data.setHardwareResourcesList(hardwareResourcesList); List environAnalysesList = environAnalysisService.getList(environId); data.setEnvironAnalysisList(environAnalysesList); } else { Environ environ =new Environ(); data.setEnviron(environ); } if (projectId != null) { data.setProjectId(projectId); data.setProject(projectService.get(projectId)); } if (data.getTestAgencyInfo() == null) data.setTestAgencyInfo(testAgencyInfoService.get(10000L)); return data; } /** * 分页查询 * * @param queryFilter * @return */ public List page(QueryFilter queryFilter) { return baseDao.getList(queryFilter.getQueryParams()); } /** * 删除 * * @param ids */ public void delete(Long[] ids) { super.deleteLogic(ids); } public Boolean save(EnvironDto environDto) { Long environId = environDto.getEnviron().getId(); if (environId != null) baseDao.updateById(environDto.getEnviron()); else { SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); String year = sdf.format(new Date()); Map map = new HashMap<>(); map.put("funCode", "environ"); map.put("projectId",environDto.getProjectId().toString()); environDto.getEnviron().setYear(year); environDto.getEnviron().setProjectId(environDto.getProjectId()); environDto.getEnviron().setCode(sysCodeRuleService.getNewCode(map)); baseDao.insert(environDto.getEnviron()); environId = environDto.getEnviron().getId(); } int i = 0; for (EnvironSoftwareResources environSoftwareResources : environDto.getSoftwareResourcesList()) { environSoftwareResources.setEnvironId(environId); if (environSoftwareResources.getId() != null) { environSoftwareResourcesService.update(environSoftwareResources); } else { i++; environSoftwareResources.setNo(i); environSoftwareResources.setEnvironId(environId); environSoftwareResourcesService.insert(environSoftwareResources); } } i = 0; for (EnvironHardwareResources environHardwareResources : environDto.getHardwareResourcesList()) { environHardwareResources.setEnvironId(environId); if (environHardwareResources.getId() != null) { environHardwareResourcesService.update(environHardwareResources); } else { i++; environHardwareResources.setNo(i); environHardwareResources.setEnvironId(environId); environHardwareResourcesService.insert(environHardwareResources); } } i = 0; for (EnvironAnalysis environAnalysis : environDto.getEnvironAnalysisList()) { environAnalysis.setEnvironId(environId); if (environAnalysis.getId() != null) { environAnalysisService.update(environAnalysis); } else { i++; environAnalysis.setNo(i); environAnalysis.setEnvironId(environId); environAnalysisService.insert(environAnalysis); } } if (environDto.getTestAgencyInfo().getId() == 10000) { environDto.getTestAgencyInfo().setId(environId); testAgencyInfoService.insert(environDto.getTestAgencyInfo()); } else { testAgencyInfoService.update(environDto.getTestAgencyInfo()); } sysOssConfigService.updateOss(environDto.getEnviron().getId(), environDto.getFiles());// 保存附件 return true; } }