Commit 8af31d47 authored by suhuiguang's avatar suhuiguang

feat(jyjc): 报检开发调整

1.报检规则4.0开发
parent 25bbfa70
......@@ -40,4 +40,7 @@ public class InspectionEquipInfoModel implements Serializable {
@ApiModelProperty(value = "主题,无需上送,由topic解析出来")
private String componentKey;
@ApiModelProperty(value = "申请报检单位信用代码")
private String unitCode;
}
......@@ -77,6 +77,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestBody;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
......@@ -105,8 +106,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
private static final String EQU_CODE = "EQU_CODE";
private static final String SEQUENCE_NBR = "SEQUENCE_NBR";
private static final String SUMMIT_TYPE = "0";
private static final String FIRST_INSPECT = "firstInspect";
private static final String SUPERVISE = "supervise";
@Autowired
TzsServiceFeignClient tzsServiceFeignClient;
@Autowired
......@@ -158,17 +157,10 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
private RedisUtils redisUtils;
@Autowired
private ESEquipmentCategory esEquipmentCategory;
@Autowired
private IdxBizJgProjectContraptionMapper idxBizJgProjectContraptionMapper;
@Autowired
private IdxBizJgProjectConstructionMapper idxBizJgProjectConstructionMapper;
@Autowired
private JyjcInspectionResultParamServiceImpl jyjcInspectionResultParamServiceImpl;
@Resource
private SnowflakeIdUtil sequence;
......@@ -250,18 +242,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
setNameAndIsMustAccept(model);
}
LambdaQueryWrapper<JyjcOpeningApplication> wa = new LambdaQueryWrapper<JyjcOpeningApplication>().eq(JyjcOpeningApplication::getUnitCode, model.getInspectionUnitCode()).eq(JyjcOpeningApplication::getStatus, FlowStatusEnum.TO_BE_FINISHED.getCode());
List<JyjcOpeningApplication> jyjcOpeningApplications = jyjcOpeningApplicationService.getBaseMapper().selectList(wa);
if (CollectionUtils.isNotEmpty(jyjcOpeningApplications)) {
//检验检测结果方式
if (jyjcOpeningApplications.get(0).getResultType() != null) {
model.setResultType(jyjcOpeningApplications.get(0).getResultType());
// 报检时冗余检验检测机构厂商编号,推送厂商报检信息时需要
model.setDockingUnitCode(jyjcOpeningApplications.get(0).getDockingUnitCode());
}
}
this.setResultTypeAndDockInfo(model);
model.setApplicationDate(new Date());
model.setPromoter(reginParams.getUserModel().getUserId());
model.setApplicationUnitName(reginParams.getCompany().getCompanyName());
......@@ -339,16 +320,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
} else {
// 保存并提交
LambdaQueryWrapper<JyjcOpeningApplication> wa = new LambdaQueryWrapper<JyjcOpeningApplication>().eq(JyjcOpeningApplication::getUnitCode, model.getInspectionUnitCode()).eq(JyjcOpeningApplication::getStatus, FlowStatusEnum.TO_BE_FINISHED.getCode());
List<JyjcOpeningApplication> jyjcOpeningApplications = jyjcOpeningApplicationService.getBaseMapper().selectList(wa);
if (CollectionUtils.isNotEmpty(jyjcOpeningApplications)) {
//检验检测结果方式
if (jyjcOpeningApplications.get(0).getResultType() != null) {
model.setResultType(jyjcOpeningApplications.get(0).getResultType());
// 报检时冗余检验检测机构厂商编号,推送厂商报检信息时需要
model.setDockingUnitCode(jyjcOpeningApplications.get(0).getDockingUnitCode());
}
}
this.setResultTypeAndDockInfo(model);
this.setNameAndIsMustAccept(model);
jyjcInspectionApplicationEquipService.getBaseMapper().deleteByApplicationSeq(model.getSequenceNbr());
if (!model.getEquip().isEmpty()) {
......@@ -515,7 +487,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
jyjcInspectionApplicationPushLogService.getBaseMapper().deleteByApplicationSeq(seq);
}
return true;
}
public Page<JyjcInspectionApplicationEquipModel> listByCategory(Page<JyjcInspectionApplicationEquipModel> page, String equipClassify) {
......@@ -778,7 +749,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
resultModel.setSequenceNbr(resultSeq);
resultModel.setIsExistNc(false);
resultModel.setManageType("batch");
this.setResultTypeByBizTypeV2(resultModel, model.getBizType());
resultModel.setResultType(model.getResultType());
resultModels.add(resultModel);
// TODO 以管道汇总样式表暂存json,在结果录入后,将数据更新技术参数,考虑老数据
Map<String, Object> paramDetail = getDeviceListByProjectContraption3(model);
......@@ -812,7 +783,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
resultModel.setEquCategory(applicationEquipModels.get(i).getEquCategory());
resultModel.setEquList(applicationEquipModels.get(i).getEquList());
resultModel.setIsExistNc(false);
this.setResultTypeByBizTypeV2(resultModel, model.getBizType());
resultModel.setResultType(model.getResultType());
Long resultSeq = sequence.nextId();
resultModel.setSequenceNbr(resultSeq);
resultModels.add(resultModel);
......@@ -841,9 +812,21 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
}
private void setResultTypeByBizTypeV2(JyjcInspectionResult resultModel, String bizType) {
private void setResultTypeAndDockInfo(JyjcInspectionApplicationModel applicationModel) {
LambdaQueryWrapper<JyjcOpeningApplication> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(JyjcOpeningApplication::getUnitCode, applicationModel.getInspectionUnitCode());
queryWrapper.eq(JyjcOpeningApplication::getStatus, FlowStatusEnum.TO_BE_FINISHED.getName());
queryWrapper.select(JyjcOpeningApplication::getResultType, BaseEntity::getSequenceNbr);
queryWrapper.orderByDesc(JyjcOpeningApplication::getAcceptDate);
queryWrapper.last("limit 1");
List<JyjcOpeningApplication> applicationList = jyjcOpeningApplicationService.list(queryWrapper);
if (!applicationList.isEmpty()) {
applicationModel.setResultType(applicationList.get(0).getResultType());
applicationModel.setDockingUnitCode(applicationList.get(0).getDockingUnitCode());
}
}
public void createHisAfterReceive(JyjcInspectionApplicationModel model) {
if (model.getEquipClassify().equals(EquipmentClassifityEnum.YLGD.getCode())) {
JSONObject hisData = getDeviceListByProjectContraption2(model);
......@@ -865,34 +848,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
}
private void setResultTypeByBizType(JyjcInspectionResult resultModel, String bizType) {
// 由于一个检验检测单位可以申请开通检验、检测两个申请,即确定一个 开通申请的维度为:单位编码 + 开通业务类型
// 但是表里面放的使用单位的公司编码,导致无法匹配到正确的开通申请,故按照单位编码+ 开通类型 + 状态查询开通申请
BizTypeEnum bizTypeEnum = BizTypeEnum.getInstance(bizType);
String openBizType = "";
assert bizTypeEnum != null;
switch (bizTypeEnum) {
case SUPERVISE:
case FIRST_INSPECTION:
openBizType = OpenBizTypeEnum.JY.getCode();
break;
case DETECTION:
openBizType = OpenBizTypeEnum.JC.getCode();
break;
default:
break;
}
LambdaQueryWrapper<JyjcOpeningApplication> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(JyjcOpeningApplication::getUnitCode, resultModel.getInspectionUnitCode());
queryWrapper.eq(JyjcOpeningApplication::getOpenBizType, openBizType);
queryWrapper.eq(JyjcOpeningApplication::getStatus, FlowStatusEnum.TO_BE_FINISHED.getCode());
queryWrapper.select(JyjcOpeningApplication::getResultType);
List<JyjcOpeningApplication> applicationList = jyjcOpeningApplicationService.list(queryWrapper);
if (!applicationList.isEmpty()) {
resultModel.setResultType(applicationList.get(0).getResultType());
}
}
private void pushInspectionApplication(JyjcInspectionApplicationModel inspectionApplicationModel) {
// 将检验检测申请信息推送至对应的检验机构
if (inspectionApplicationModel.getResultType().equals(ResultTypeEnum.INTEGRATED.getCode())) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment