Commit 96dce485 authored by 刘林's avatar 刘林

fix(JG):车用气瓶-后端修改

parent c40d44e9
...@@ -225,4 +225,7 @@ public class JgVehicleInformationDto extends BaseDto { ...@@ -225,4 +225,7 @@ public class JgVehicleInformationDto extends BaseDto {
@ApiModelProperty(value = "产权单位名称") @ApiModelProperty(value = "产权单位名称")
private String estateUnitName; private String estateUnitName;
@ApiModelProperty(value = "电话")
private String phone;
} }
...@@ -405,4 +405,7 @@ public class JgVehicleInformation extends BaseEntity { ...@@ -405,4 +405,7 @@ public class JgVehicleInformation extends BaseEntity {
@TableField(value = "estate_unit_name") @TableField(value = "estate_unit_name")
private String estateUnitName; private String estateUnitName;
@TableField(value = "phone")
private String phone;
} }
...@@ -26,5 +26,8 @@ public interface JgVehicleInformationMapper extends BaseMapper<JgVehicleInformat ...@@ -26,5 +26,8 @@ public interface JgVehicleInformationMapper extends BaseMapper<JgVehicleInformat
@MapKey("id") @MapKey("id")
List<Map<String, Object>> selectEquipList(@Param("id")Long id); List<Map<String, Object>> selectEquipList(@Param("id")Long id);
@MapKey("records")
List<Map<String, Object>> queryForUnitVesselEquipment(@Param("records")List<String> records);
Long countVesselCylinderIsUsedNumber(@Param("vehicleId") Long vehicleId, @Param("records") List<String> records); Long countVesselCylinderIsUsedNumber(@Param("vehicleId") Long vehicleId, @Param("records") List<String> records);
} }
package com.yeejoin.amos.boot.module.jg.api.vo; package com.yeejoin.amos.boot.module.jg.api.vo;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -227,4 +228,23 @@ public class JgVehicleInformationVo implements Serializable { ...@@ -227,4 +228,23 @@ public class JgVehicleInformationVo implements Serializable {
@ApiModelProperty(value = "设备品种") @ApiModelProperty(value = "设备品种")
private String equDefineCode; private String equDefineCode;
@ApiModelProperty(value = "安全员ID")
private String safetyManagerId;
@ApiModelProperty(value = "安全员名称")
private String safetyManagerName;
@ApiModelProperty(value = "产权单位Code")
private String estateUnitCreditCode;
@ApiModelProperty(value = "产权单位名称")
private String estateUnitName;
@ApiModelProperty(value = "其他附件")
private List<?> otherAccessories;
@ApiModelProperty(value = "电话")
private String phone;
private CompanyBo companyInfo;
} }
...@@ -203,5 +203,47 @@ ...@@ -203,5 +203,47 @@
#{record} #{record}
</foreach> </foreach>
</select> </select>
<sql id="page-list-vessel">
SELECT
ui."USE_UNIT_NAME" useUnitName,
ui."USE_UNIT_CREDIT_CODE" useUnitCreditCode,
(SELECT "PRODUCE_UNIT_NAME" from idx_biz_jg_factory_info where "RECORD" = tjvie.equ_id) produceUnitName,
to_char((SELECT "PRODUCE_DATE" from idx_biz_jg_factory_info where "RECORD" = tjvie.equ_id), 'YYYY-MM') produceDate,
ri."RECORD" record,
jui."USE_INNER_CODE" useInnerCode,
ri."EQU_CODE" equCode,
ri."EQU_LIST" equList,
(select name from tz_equipment_category where code = ri."EQU_LIST") equListName,
ri."EQU_CATEGORY" equCategory,
(select name from tz_equipment_category where code = ri."EQU_CATEGORY") equCategoryName,
ri."EQU_DEFINE" equDefine,
(select name from tz_equipment_category where code = ri."EQU_DEFINE") equDefineName,
ri."PRODUCT_NAME" productName,
ri."BRAND_NAME" brandName,
ri."EQU_TYPE" equType,
ri."EQU_CODE_TYPE" equCodeType,
ri."WHETHER_VEHICLE_CYLINDER" whetherVehicleCylinder,
pv."CHARGING_MEDIUM" chargingMedium,
pv."NOMINAL_WORKING_PRESSURE" nominalWorkingPressure,
pv."SINGLE_BOTTLE_VOLUME" singleBottleVolume,
to_char((select INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = tjvie.equ_id ORDER BY INSPECT_DATE limit 1), 'YYYY-MM-DD') inspectDate,
to_char((select NEXT_INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = tjvie.equ_id ORDER BY INSPECT_DATE limit 1), 'YYYY-MM-DD') nextInspectDate
FROM
tzs_jg_vehicle_information ui
left join tzs_jg_vehicle_information_eq tjvie on tjvie.vehicle_id = ui.sequence_nbr
LEFT JOIN idx_biz_jg_register_info ri on ri."RECORD" = tjvie.equ_id
LEFT JOIN idx_biz_jg_use_info jui on tjvie.equ_id = jui.RECORD
LEFT JOIN idx_biz_jg_tech_params_vessel pv ON pv."RECORD" = tjvie.equ_id
</sql>
<select id="queryForUnitVesselEquipment" resultType="java.util.Map">
<include refid="page-list-vessel"/>
WHERE ri."EQU_CATEGORY" = '2300' and jui."DATA_SOURCE" = 'jg' and ri.whether_vehicle_cylinder = 1
and jui.record in
<foreach collection="records" item="record" open="(" close=")" separator=",">
#{record}
</foreach>
ORDER BY ui.REC_DATE DESC
</select>
</mapper> </mapper>
...@@ -17,6 +17,7 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; ...@@ -17,6 +17,7 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.jg.api.dto.*; import com.yeejoin.amos.boot.module.jg.api.dto.*;
import com.yeejoin.amos.boot.module.jg.api.entity.*; import com.yeejoin.amos.boot.module.jg.api.entity.*;
import com.yeejoin.amos.boot.module.jg.api.enums.*; import com.yeejoin.amos.boot.module.jg.api.enums.*;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationEqMapper; import com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationEqMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationMapper; import com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgVehicleInformationService; import com.yeejoin.amos.boot.module.jg.api.service.IJgVehicleInformationService;
...@@ -31,7 +32,6 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum; ...@@ -31,7 +32,6 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*; import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model; import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO; import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO; import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
...@@ -112,6 +112,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -112,6 +112,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
private JgUseRegistrationServiceImpl jgUseRegistrationService; private JgUseRegistrationServiceImpl jgUseRegistrationService;
@Autowired @Autowired
private IdxBizJgInspectionDetectionInfoServiceImpl idxBizJgInspectionDetectionInfoService; private IdxBizJgInspectionDetectionInfoServiceImpl idxBizJgInspectionDetectionInfoService;
@Autowired
private JgUseRegistrationMapper jgUseRegistrationMapper;
/** /**
* 新增(提交)车用气瓶 * 新增(提交)车用气瓶
...@@ -135,12 +137,17 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -135,12 +137,17 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
.map(v -> (String) v.get("record")) .map(v -> (String) v.get("record"))
.collect(Collectors.toList()) .collect(Collectors.toList())
); );
if (!CylinderTypeEnum.CYLINDER.getCode().equals(map.get("equCategory")) && inspectionDetectionInfoList.stream().anyMatch(info ->
if (inspectionDetectionInfoList.stream().anyMatch(info ->
ObjectUtils.isEmpty(info) || ObjectUtils.isEmpty(info.getInspectType()) || ObjectUtils.isEmpty(info) || ObjectUtils.isEmpty(info.getInspectType()) ||
ObjectUtils.isEmpty(info.getInspectConclusion()) || ObjectUtils.isEmpty(info.getInspectOrgCode()) || ObjectUtils.isEmpty(info.getInspectConclusion()) || ObjectUtils.isEmpty(info.getInspectOrgCode()))) {
ObjectUtils.isEmpty(info.getInspectOrgName()))) {
throw new BadRequest("请补充设备检验检测信息后提交!"); throw new BadRequest("请补充设备检验检测信息后提交!");
} }
vehicleInfoDto.setNextInspectionDate(inspectionDetectionInfoList.stream()
.map(IdxBizJgInspectionDetectionInfo::getNextInspectDate)
.filter(Objects::nonNull)
.min(Date::compareTo)
.orElse(null));
CompanyBo company = reginParams.getCompany(); CompanyBo company = reginParams.getCompany();
vehicleInfoDto.setCreateDate(new Date()); vehicleInfoDto.setCreateDate(new Date());
...@@ -207,7 +214,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -207,7 +214,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
} }
// 安全管理员 // 安全管理员
Optional.ofNullable(map.getString("safetyManager")) Optional.ofNullable(map.getString("safetyManagerId"))
.filter(manager -> manager.contains("_")) .filter(manager -> manager.contains("_"))
.map(manager -> manager.split("_")) .map(manager -> manager.split("_"))
.ifPresent(data -> { .ifPresent(data -> {
...@@ -215,13 +222,6 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -215,13 +222,6 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
vehicleInfoDto.setSafetyManagerName(data[1]); vehicleInfoDto.setSafetyManagerName(data[1]);
}); });
//属地监管部门
if (!StringUtils.isEmpty(vehicleInfoDto.getOrgBranchCode())) {
String[] splitOrgBranchCode = vehicleInfoDto.getOrgBranchCode().split("_");
vehicleInfoDto.setOrgBranchCode(splitOrgBranchCode[0]);
vehicleInfoDto.setOrgBranchName(splitOrgBranchCode[1]);
}
// 产权单位信息 // 产权单位信息
if (!StringUtils.isEmpty(vehicleInfoDto.getEstateUnitName())) { if (!StringUtils.isEmpty(vehicleInfoDto.getEstateUnitName())) {
String[] data = String.valueOf(map.getString("estateUnitName")).split("_"); String[] data = String.valueOf(map.getString("estateUnitName")).split("_");
...@@ -239,6 +239,10 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -239,6 +239,10 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
vehicleInformation.setCreateUserId(reginParams.getUserModel().getUserId()); vehicleInformation.setCreateUserId(reginParams.getUserModel().getUserId());
vehicleInformation.setCreateUserName(reginParams.getUserModel().getRealName()); vehicleInformation.setCreateUserName(reginParams.getUserModel().getRealName());
vehicleInformation.setGasNum(equipmentLists.size()); vehicleInformation.setGasNum(equipmentLists.size());
vehicleInformation.setVolume(String.valueOf(equipmentLists.stream()
.mapToDouble(x -> Double.parseDouble(String.valueOf(x.get("singleBottleVolume"))))
.sum()));
vehicleInformation.setFillingMedium(equipmentLists.get(0).get("chargingMedium")+"");
boolean hasId = StringUtils.isEmpty(vehicleInfoDto.getSequenceNbr()); boolean hasId = StringUtils.isEmpty(vehicleInfoDto.getSequenceNbr());
//新增 //新增
...@@ -265,7 +269,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -265,7 +269,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
List<JgVehicleInformationEq> equipList = new ArrayList<>(); List<JgVehicleInformationEq> equipList = new ArrayList<>();
equipmentLists.forEach(x -> { equipmentLists.forEach(x -> {
JgVehicleInformationEq equip = new JgVehicleInformationEq(); JgVehicleInformationEq equip = new JgVehicleInformationEq();
equip.setEquId(String.valueOf(x.get("SEQUENCE_NBR"))); equip.setEquId(String.valueOf(x.get("record")));
equip.setVehicleId(vehicleInformation.getSequenceNbr() + ""); equip.setVehicleId(vehicleInformation.getSequenceNbr() + "");
equipList.add(equip); equipList.add(equip);
}); });
...@@ -274,6 +278,9 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -274,6 +278,9 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
} }
// 判断当前是否为提交 // 判断当前是否为提交
if (SUBMIT_TYPE_FLOW.equals(submit)) { if (SUBMIT_TYPE_FLOW.equals(submit)) {
this.checkVesselCylinderIsUsed(vehicleInformation.getSequenceNbr(), equipmentLists.stream()
.map(x -> String.valueOf(x.get("record")))
.collect(Collectors.toList()));
List<String> roleListNext = new ArrayList<>(); List<String> roleListNext = new ArrayList<>();
List<String> roleListAll = new ArrayList<>(); List<String> roleListAll = new ArrayList<>();
// 新增提交,没有instanceId需要发起流程 // 新增提交,没有instanceId需要发起流程
...@@ -410,6 +417,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -410,6 +417,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
* @return JgVehicleInformationModel * @return JgVehicleInformationModel
*/ */
public JgVehicleInformationVo queryBySequenceNbr(Long sequenceNbr) { public JgVehicleInformationVo queryBySequenceNbr(Long sequenceNbr) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())) + "", ReginParams.class);
JgVehicleInformationVo vo = new JgVehicleInformationVo(); JgVehicleInformationVo vo = new JgVehicleInformationVo();
JgVehicleInformationDto dto = this.baseMapper.queryBySequenceNbr(sequenceNbr); JgVehicleInformationDto dto = this.baseMapper.queryBySequenceNbr(sequenceNbr);
if (Objects.isNull(dto)) { if (Objects.isNull(dto)) {
...@@ -432,6 +441,14 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -432,6 +441,14 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
if (!ValidationUtil.isEmpty(dto.getOrgBranchCode()) && !ValidationUtil.isEmpty(dto.getOrgBranchName())) { if (!ValidationUtil.isEmpty(dto.getOrgBranchCode()) && !ValidationUtil.isEmpty(dto.getOrgBranchName())) {
vo.setOrgBranchCode(dto.getOrgBranchCode() + "_" + dto.getOrgBranchName()); vo.setOrgBranchCode(dto.getOrgBranchCode() + "_" + dto.getOrgBranchName());
} }
//安全管理员
if (!ValidationUtil.isEmpty(dto.getSafetyManagerId()) && !ValidationUtil.isEmpty(dto.getSafetyManagerName())) {
vo.setSafetyManagerId(dto.getSafetyManagerId() + "_" + dto.getSafetyManagerName());
}
//产权单位
if (!ValidationUtil.isEmpty(dto.getEstateUnitCreditCode()) && !ValidationUtil.isEmpty(dto.getEstateUnitName())) {
vo.setEstateUnitName(dto.getEstateUnitCreditCode() + "_" + dto.getEstateUnitName());
}
vo.setIdCardFront(ObjectUtils.isEmpty(dto.getIdCardFront()) ? null : JSON.parseArray(dto.getIdCardFront())); vo.setIdCardFront(ObjectUtils.isEmpty(dto.getIdCardFront()) ? null : JSON.parseArray(dto.getIdCardFront()));
vo.setIdCardBack(ObjectUtils.isEmpty(dto.getIdCardBack()) ? null : JSON.parseArray(dto.getIdCardBack())); vo.setIdCardBack(ObjectUtils.isEmpty(dto.getIdCardBack()) ? null : JSON.parseArray(dto.getIdCardBack()));
...@@ -440,12 +457,17 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -440,12 +457,17 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
vo.setVehicleRegistrationCertificate(ObjectUtils.isEmpty(dto.getVehicleRegistrationCertificate()) ? null : JSON.parseArray(dto.getVehicleRegistrationCertificate())); vo.setVehicleRegistrationCertificate(ObjectUtils.isEmpty(dto.getVehicleRegistrationCertificate()) ? null : JSON.parseArray(dto.getVehicleRegistrationCertificate()));
vo.setInspectionCertificate(ObjectUtils.isEmpty(dto.getInspectionCertificate()) ? null : JSON.parseArray(dto.getInspectionCertificate())); vo.setInspectionCertificate(ObjectUtils.isEmpty(dto.getInspectionCertificate()) ? null : JSON.parseArray(dto.getInspectionCertificate()));
vo.setFilingNotice(ObjectUtils.isEmpty(dto.getFilingNotice()) ? null : JSON.parseArray(dto.getFilingNotice())); vo.setFilingNotice(ObjectUtils.isEmpty(dto.getFilingNotice()) ? null : JSON.parseArray(dto.getFilingNotice()));
vo.setOtherAccessories(ObjectUtils.isEmpty(dto.getOtherAccessories()) ? null : JSON.parseArray(dto.getOtherAccessories()));
List<Map<String, Object>> equipList = this.baseMapper.selectEquipList(sequenceNbr); vo.setCompanyInfo(reginParams.getCompany());
vo.setEquipmentLists(equipList);
vo.setEquDefineCode(equipList.stream() LambdaQueryWrapper<JgVehicleInformationEq> vehicleInfoEqWrapper = new QueryWrapper<JgVehicleInformationEq>().lambda();
vehicleInfoEqWrapper.eq(JgVehicleInformationEq::getVehicleId, sequenceNbr);
List<JgVehicleInformationEq> vehicleInformationEqList = jgVehicleInformationEqService.getBaseMapper().selectList(vehicleInfoEqWrapper);
List<Map<String, Object>> equipmentLists= this.baseMapper.queryForUnitVesselEquipment(vehicleInformationEqList.stream().map(JgVehicleInformationEq::getEquId).collect(Collectors.toList()));
vo.setEquipmentLists(equipmentLists);
vo.setEquDefineCode(equipmentLists.stream()
.findFirst() .findFirst()
.map(map -> (String) map.get("EQU_DEFINE_CODE")) .map(map -> (String) map.get("equDefine"))
.orElse(null)); .orElse(null));
return vo; return vo;
} }
...@@ -974,7 +996,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -974,7 +996,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
useFlagParamDto.setCarNumber(vehicleInformation.getCarNumber()); useFlagParamDto.setCarNumber(vehicleInformation.getCarNumber());
useFlagParamDto.setFactoryNumber(exportParamsMap.get("factoryNum") + ""); useFlagParamDto.setFactoryNumber(exportParamsMap.get("factoryNum") + "");
useFlagParamDto.setCylinderNumOrVolume(vehicleInformation.getGasNum() + "/" + vehicleInformation.getVolume()); useFlagParamDto.setCylinderNumOrVolume(vehicleInformation.getGasNum() + "/" + vehicleInformation.getVolume());
useFlagParamDto.setFillingMedium(Systemctl.dictionarieClient.value("FILLING_MEDIUM", vehicleInformation.getFillingMedium()).getResult().getDictDataValue()); useFlagParamDto.setFillingMedium(vehicleInformation.getFillingMedium());
useFlagParamDto.setApplyNo(vehicleInformation.getApplyNo()); useFlagParamDto.setApplyNo(vehicleInformation.getApplyNo());
useFlagParamDto.setInspectionUnitName(vehicleInformation.getInspectUnitName()); useFlagParamDto.setInspectionUnitName(vehicleInformation.getInspectUnitName());
return useFlagParamDto; return useFlagParamDto;
......
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