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<EnvironDao, Environ> {
|
|
@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<EnvironSoftwareResources> softwareResourcesList = environSoftwareResourcesService.getList(environId);
|
data.setSoftwareResourcesList(softwareResourcesList);
|
|
List<EnvironHardwareResources> hardwareResourcesList = environHardwareResourcesService.getList(environId);
|
data.setHardwareResourcesList(hardwareResourcesList);
|
|
List<EnvironAnalysis> 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<Environ> 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<String, String> 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;
|
}
|
}
|