| | |
| | | package com.zt.life.modules.riskTraceRecord.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.project.service.ProjectService; |
| | | import com.zt.life.modules.qaAuditReport.dto.QaAuditReportDto; |
| | | import com.zt.life.modules.qaAuditReport.model.QaAuditReport; |
| | |
| | | import com.zt.life.modules.riskTraceRecord.model.RiskTraceItem; |
| | | import com.zt.life.modules.riskTraceRecord.model.RiskTraceRecord; |
| | | import com.zt.life.sys.service.SysOssConfigService; |
| | | import com.zt.modules.oss.service.SysOssService; |
| | | import com.zt.modules.workflow.dto.FlowInfoDto; |
| | | import com.zt.modules.workflow.service.WorkflowService; |
| | | 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; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | |
| | | @Autowired |
| | | private ProjectService projectService; |
| | | |
| | | @Autowired |
| | | private SysOssService sysOssService; |
| | | |
| | | @Autowired |
| | | private WordFileService wordFileService; |
| | | |
| | | @Autowired |
| | | private SysOssConfigService sysOssConfigService; |
| | | |
| | | /** |
| | | * 分页查询 |
| | | * |
| | |
| | | * @return |
| | | */ |
| | | public List<RiskTraceItem> page(QueryFilter queryFilter) { |
| | | return baseDao.getList(queryFilter.getQueryParams()); |
| | | List<RiskTraceItem> list = baseDao.getList(queryFilter.getQueryParams()); |
| | | /* if (list != null && list.size() > 0) { |
| | | sysOssService.setListOsses(list, "risk_trace_item"); |
| | | }*/ |
| | | return list; |
| | | } |
| | | |
| | | private List<RiskTraceItem> getList(Long riskId) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("riskId",riskId); |
| | | return baseDao.getList(params); |
| | | } |
| | | /** |
| | | * 删除 |
| | | * |
| | |
| | | if (riskMeasure != null && projectId == null) { |
| | | projectId = data.getProjectId(); |
| | | } |
| | | List<RiskTraceItem> itemList = this.getList(riskId); |
| | | data.setItemList(itemList); |
| | | List<RiskTraceRecord> recordList = recordService.getList(riskId); |
| | | data.setRecordList(recordList); |
| | | List<RiskTraceRecord> riskList = recordService.getList(riskId); |
| | | data.setRiskList(riskList); |
| | | } else { |
| | | RiskMeasure riskMeasure = new RiskMeasure(); |
| | | data.setRiskMeasure(riskMeasure); |
| | | List<RiskTraceItem> itemList = this.getList(null); |
| | | List<RiskTraceItem> itemList = this.getList(riskId); |
| | | data.setItemList(itemList); |
| | | List<RiskTraceRecord> recordList = new ArrayList<>(); |
| | | data.setRecordList(recordList); |
| | | List<RiskTraceRecord> riskList = recordService.getList(riskId); |
| | | data.setRiskList(riskList); |
| | | } |
| | | if (projectId != null) { |
| | | data.setProjectId(projectId); |
| | | data.getRiskMeasure().setProjectId(projectId); |
| | | data.setProject(projectService.get(projectId)); |
| | | } |
| | | return data; |
| | | } |
| | | |
| | | private List<RiskTraceItem> getList(Long riskId) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("riskId", riskId); |
| | | return baseDao.getList(params); |
| | | } |
| | | |
| | | |
| | |
| | | riskId = riskTraceDto.getRiskMeasure().getId(); |
| | | } |
| | | |
| | | for (RiskTraceRecord record : riskTraceDto.getRecordList()) { |
| | | record.setRiskId(riskId); |
| | | if (record.getId() != null) { |
| | | RiskTraceRecord record2 = recordService.get(record.getId()); |
| | | if (CommonUtils.isActureChangeData(record,record2)) { |
| | | recordService.update(record2); |
| | | } |
| | | } else { |
| | | recordService.insert(record); |
| | | } |
| | | } |
| | | for (RiskTraceItem item : riskTraceDto.getItemList()) { |
| | | if (item.getRiskId() == null) { |
| | | item.setId(null); |
| | | item.setRiskId(riskId); |
| | | if (item.getId() != null) { |
| | | RiskTraceItem item2 = this.get(item.getId()); |
| | | if (CommonUtils.isActureChangeData(item,item2)) { |
| | | baseDao.updateById(item2); |
| | | this.insert(item); |
| | | } |
| | | } |
| | | |
| | | for (int i = 0; i < riskTraceDto.getRiskList().size(); i++) { |
| | | RiskTraceRecord risk = riskTraceDto.getRiskList().get(i); |
| | | RiskTraceItem item = null; |
| | | if (riskTraceDto.getItemList().size() > 0) { |
| | | item = riskTraceDto.getItemList().get(i); |
| | | } |
| | | risk.setRiskId(riskId); |
| | | |
| | | if (risk.getId() != null) { |
| | | recordService.update(risk); |
| | | } else { |
| | | baseDao.insert(item); |
| | | risk.setItemId(item.getId()); |
| | | recordService.insert(risk); |
| | | } |
| | | } |
| | | |
| | | |
| | | sysOssConfigService.updateOss(riskTraceDto.getId(), riskTraceDto.getFiles());// 保存附件 |
| | | return true; |
| | | } |
| | | |
| | | public void exportRiskRecord(Long id, HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | RiskTraceDto dataObj = this.getDto(null, id); |
| | | WordFile wordFile = new WordFile(); |
| | | wordFile.setModulePath("测试风险跟踪记录.docx"); |
| | | if (dataObj.getProject() == null) { |
| | | dataObj.setProject(projectService.get(dataObj.getRiskMeasure().getProjectId())); |
| | | } |
| | | wordFile.setWordName(dataObj.getProject().getSoftwareName() + "_测试风险跟踪记录.docx"); |
| | | wordFileService.exportWordFile(request, dataObj, wordFile, response); |
| | | } catch (UnsupportedEncodingException | FileNotFoundException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |