package com.zt.life.modules.riskTraceRecord.service; import com.zt.common.service.BaseService; import com.zt.common.utils.CommonUtils; 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.qaAuditReport.model.QaAuditReportIncongruent; import com.zt.life.modules.riskTraceRecord.dao.RiskTraceItemDao; import com.zt.life.modules.riskTraceRecord.dto.RiskTraceDto; import com.zt.life.modules.riskTraceRecord.model.RiskMeasure; 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.workflow.dto.FlowInfoDto; 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.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * risk_trace_item * * @author zt generator * @since 1.0.0 2024-01-09 */ @Service public class RiskTraceItemService extends BaseService { @Autowired private RiskMeasureService measureService; @Autowired private RiskTraceRecordService recordService; @Autowired private ProjectService projectService; /** * 分页查询 * * @param queryFilter * @return */ public List page(QueryFilter queryFilter) { return baseDao.getList(queryFilter.getQueryParams()); } private List getList(Long riskId) { Map params = new HashMap<>(); params.put("riskId",riskId); return baseDao.getList(params); } /** * 删除 * * @param ids */ public void delete(Long[] ids) { super.deleteLogic(ids); } public RiskTraceDto getDto(Long projectId, Long riskId){ RiskTraceDto data = new RiskTraceDto(); if (riskId != null) { data.setId(riskId); RiskMeasure riskMeasure = measureService.get(riskId); data.setRiskMeasure(riskMeasure); if (riskMeasure != null && projectId == null) { projectId = data.getProjectId(); } List itemList = this.getList(riskId); data.setItemList(itemList); List recordList = recordService.getList(riskId); data.setRecordList(recordList); } else { RiskMeasure riskMeasure = new RiskMeasure(); data.setRiskMeasure(riskMeasure); List itemList = this.getList(null); data.setItemList(itemList); List recordList = new ArrayList<>(); data.setRecordList(recordList); } if (projectId != null) { data.setProjectId(projectId); data.setProject(projectService.get(projectId)); } return data; } public Boolean save(RiskTraceDto riskTraceDto) { Long riskId = riskTraceDto.getRiskMeasure().getId(); if (riskId != null) measureService.update(riskTraceDto.getRiskMeasure()); else { measureService.insert(riskTraceDto.getRiskMeasure()); 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()) { item.setRiskId(riskId); if (item.getId() != null) { RiskTraceItem item2 = this.get(item.getId()); if (CommonUtils.isActureChangeData(item,item2)) { baseDao.updateById(item2); } } else { baseDao.insert(item); } } return true; } }