交叉审核

This commit is contained in:
2025-11-10 20:40:45 +08:00
parent d7554b49dc
commit 398fd2d303

View File

@@ -19,7 +19,10 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONFactory;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.JSONWriter;
import com.alibaba.nacos.shaded.io.grpc.Attributes.Key; import com.alibaba.nacos.shaded.io.grpc.Attributes.Key;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.core.toolkit.IdWorker;
@@ -281,16 +284,30 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
@Override @Override
public JSONObject crossAuditByTaskId(Long businessAssayTaskId) { public JSONObject crossAuditByTaskId(Long businessAssayTaskId) {
JSONWriter.Context context = JSONFactory.createWriteContext();
context.setDateFormat("yyyy-MM-dd HH:mm:ss");
JSONObject resultJsonObject = new JSONObject(); JSONObject resultJsonObject = new JSONObject();
BusinessAssayTaskDO businessAssayTaskDO = businessAssayTaskMapper.selectById(businessAssayTaskId); BusinessAssayTaskDO businessAssayTaskDO = businessAssayTaskMapper.selectById(businessAssayTaskId);
if (businessAssayTaskDO == null) { if (businessAssayTaskDO == null) {
throw new ServiceException(1_032_100_000, "未找到任务分配单"); throw new ServiceException(1_032_100_000, "未找到任务分配单");
} }
String formValue = businessAssayTaskDO.getFormValue();
JSONObject formValueJsonObject = JSON.parseObject(formValue);
String jsonString = JSON.toJSONString(businessAssayTaskDO, context);
JSONObject businessAssayTaskJson = JSON.parseObject(jsonString);
formValueJsonObject.forEach((key, value) -> {
businessAssayTaskJson.put(key, value);
});
JSONArray jsonArray = new JSONArray();
jsonArray.add(businessAssayTaskJson);
resultJsonObject.put("businessAssayTask", jsonArray);
List<BusinessAssayTaskDetailDO> businessAssayTaskDetailList = businessAssayTaskDetailMapper.selectList(new LambdaQueryWrapperX<BusinessAssayTaskDetailDO>().eq(BusinessAssayTaskDetailDO::getBusinessAssayTaskId, businessAssayTaskDO.getId())); List<BusinessAssayTaskDetailDO> businessAssayTaskDetailList = businessAssayTaskDetailMapper.selectList(new LambdaQueryWrapperX<BusinessAssayTaskDetailDO>().eq(BusinessAssayTaskDetailDO::getBusinessAssayTaskId, businessAssayTaskDO.getId()));
List<BusinessAssayTaskDataDO> businessAssayTaskDataList = businessAssayTaskDataMapper.selectList(new LambdaQueryWrapperX<BusinessAssayTaskDataDO>().eq(BusinessAssayTaskDataDO::getBusinessAssayTaskId, businessAssayTaskDO.getId()).eq(BusinessAssayTaskDataDO::getConfigAssayMethodId, businessAssayTaskDO.getConfigAssayMethodId())); List<BusinessAssayTaskDataDO> businessAssayTaskDataList = businessAssayTaskDataMapper.selectList(new LambdaQueryWrapperX<BusinessAssayTaskDataDO>().eq(BusinessAssayTaskDataDO::getBusinessAssayTaskId, businessAssayTaskDO.getId()).eq(BusinessAssayTaskDataDO::getConfigAssayMethodId, businessAssayTaskDO.getConfigAssayMethodId()));
BusinessAssayTaskDataDO businessAssayTaskData = businessAssayTaskDataList.get(0); // BusinessAssayTaskDataDO businessAssayTaskData = businessAssayTaskDataList.get(0);
//处理数据 //处理数据
List<Map<String, Object>> datas = new ArrayList<>(); List<Map<String, Object>> datas = new ArrayList<>();
for (BusinessAssayTaskDataDO businessAssayTaskDataDO : businessAssayTaskDataList) { for (BusinessAssayTaskDataDO businessAssayTaskDataDO : businessAssayTaskDataList) {
@@ -311,13 +328,15 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
projectDataSearch2.setBusinessAssayTaskDataId(businessAssayTaskDataDO.getId()); projectDataSearch2.setBusinessAssayTaskDataId(businessAssayTaskDataDO.getId());
List<BusinessAssayProjectAndParameterRespVO> projectAndParameterList2 = businessAssayProjectDataMapper.selectProjectAndParameterBy(projectDataSearch2); List<BusinessAssayProjectAndParameterRespVO> projectAndParameterList2 = businessAssayProjectDataMapper.selectProjectAndParameterBy(projectDataSearch2);
for (BusinessAssayProjectAndParameterRespVO ep : projectAndParameterList2) { for (BusinessAssayProjectAndParameterRespVO ep : projectAndParameterList2) {
map.put("e" + ep.getDicId(), ep); // map.put("e" + ep.getDicId(), ep);
map.put(ep.getName(), ep.getValue());
if (StringUtils.isNotEmpty(ep.getFormula())) { if (StringUtils.isNotEmpty(ep.getFormula())) {
BusinessAssayParameterDataReqVO parameterDataSearch = new BusinessAssayParameterDataReqVO(); BusinessAssayParameterDataReqVO parameterDataSearch = new BusinessAssayParameterDataReqVO();
parameterDataSearch.setBusinessAssayProjectDataId(ep.getId()); parameterDataSearch.setBusinessAssayProjectDataId(ep.getId());
List<BusinessAssayProjectAndParameterRespVO> plist = businessAssayParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch); List<BusinessAssayProjectAndParameterRespVO> plist = businessAssayParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch);
for (BusinessAssayProjectAndParameterRespVO p : plist) { for (BusinessAssayProjectAndParameterRespVO p : plist) {
map.put("p" + p.getDicId(), p); // map.put("p" + p.getDicId(), p);
map.put(p.getName(), p.getValue());
} }
} }
@@ -344,13 +363,15 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
projectDataSearch2.setBusinessQCManagementDataId(businessQCManagementData.getId()); projectDataSearch2.setBusinessQCManagementDataId(businessQCManagementData.getId());
List<BusinessAssayProjectAndParameterRespVO> projectAndParameterList2 = businessQCManagementProjectDataMapper.selectProjectAndParameterBy(projectDataSearch2); List<BusinessAssayProjectAndParameterRespVO> projectAndParameterList2 = businessQCManagementProjectDataMapper.selectProjectAndParameterBy(projectDataSearch2);
for (BusinessAssayProjectAndParameterRespVO ep : projectAndParameterList2) { for (BusinessAssayProjectAndParameterRespVO ep : projectAndParameterList2) {
map.put("e" + ep.getDicId(), ep); // map.put("e" + ep.getDicId(), ep);
map.put(ep.getName(), ep.getValue());
if (StringUtils.isNotEmpty(ep.getFormula())) { if (StringUtils.isNotEmpty(ep.getFormula())) {
BusinessQCManagementParameterDataReqVO parameterDataSearch = new BusinessQCManagementParameterDataReqVO(); BusinessQCManagementParameterDataReqVO parameterDataSearch = new BusinessQCManagementParameterDataReqVO();
parameterDataSearch.setBusinessQCManagementProjectDataId(ep.getId()); parameterDataSearch.setBusinessQCManagementProjectDataId(ep.getId());
List<BusinessAssayProjectAndParameterRespVO> plist = businessQCManagementParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch); List<BusinessAssayProjectAndParameterRespVO> plist = businessQCManagementParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch);
for (BusinessAssayProjectAndParameterRespVO p : plist) { for (BusinessAssayProjectAndParameterRespVO p : plist) {
map.put("p" + p.getDicId(), p); // map.put("p" + p.getDicId(), p);
map.put(p.getName(), p.getValue());
} }
} }
@@ -375,7 +396,8 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
parameterDataSearch2.setBusinessQCCoefficientDataId(businessQCCoefficientData.getId()); parameterDataSearch2.setBusinessQCCoefficientDataId(businessQCCoefficientData.getId());
List<BusinessAssayProjectAndParameterRespVO> plist2 = businessQCCoefficientParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch2); List<BusinessAssayProjectAndParameterRespVO> plist2 = businessQCCoefficientParameterDataMapper.selectProjectAndParameterBy(parameterDataSearch2);
for (BusinessAssayProjectAndParameterRespVO p : plist2) { for (BusinessAssayProjectAndParameterRespVO p : plist2) {
map.put("p" + p.getDicId(), p); // map.put("p" + p.getDicId(), p);
map.put(p.getName(), p.getValue());
} }
datas.add(map); datas.add(map);
} }