Commit c2197b6d authored by suhuiguang's avatar suhuiguang

feat(重要提醒):使用登记新增提醒开发

1.使用登记新增提醒开发初稿
parent 37c274e8
package com.yeejoin.amos.boot.module.jg.biz.reminder.dto; package com.yeejoin.amos.boot.module.jg.api.dto;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;
......
...@@ -7,6 +7,7 @@ import com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto; ...@@ -7,6 +7,7 @@ import com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto;
import com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto; import com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto;
import com.yeejoin.amos.boot.module.jg.api.dto.EquipBizCountDto; import com.yeejoin.amos.boot.module.jg.api.dto.EquipBizCountDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationDto; import com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationDto;
import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistration; import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistration;
import com.yeejoin.amos.boot.module.jg.api.vo.SortVo; import com.yeejoin.amos.boot.module.jg.api.vo.SortVo;
import com.yeejoin.amos.boot.module.jg.api.vo.tableDataExportVo.RegistrationVo; import com.yeejoin.amos.boot.module.jg.api.vo.tableDataExportVo.RegistrationVo;
...@@ -127,4 +128,8 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> { ...@@ -127,4 +128,8 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> {
List<JgUseRegistrationDto> selectMissingSupOrgCodeUseList(); List<JgUseRegistrationDto> selectMissingSupOrgCodeUseList();
Set<Long> queryListByEqsAndStatus(@Param("records") Set<String> records, @Param("status") String status, @Param("applyNo") String applyNo); Set<Long> queryListByEqsAndStatus(@Param("records") Set<String> records, @Param("status") String status, @Param("applyNo") String applyNo);
Page<ReminderItemDto> queryForUnitVehiclePageForReminder(Page<?> page, @Param("records") List<String> records);
} }
...@@ -1528,4 +1528,18 @@ ...@@ -1528,4 +1528,18 @@
#{record} #{record}
</foreach> </foreach>
</select> </select>
<select id="queryForUnitVehiclePageForReminder" resultType="com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto">
SELECT
ri."PRODUCT_NAME" AS equipName,
fi."FACTORY_NUM" AS equipNo,
ri."RECORD" AS equipId
FROM idx_biz_jg_register_info ri
LEFT JOIN idx_biz_jg_factory_info fi on fi."RECORD" = ri."RECORD"
WHERE
ri.record in
<foreach collection="records" item="record" open="(" close=")" separator=",">
#{record}
</foreach>
ORDER BY ri.REC_DATE DESC
</select>
</mapper> </mapper>
...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.jg.biz.controller; ...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.IReminderHandler; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.IReminderHandler;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.RemindServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.reminder.service.RemindServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
......
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
......
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
......
...@@ -9,7 +9,7 @@ import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.EquipCreateOrEditE ...@@ -9,7 +9,7 @@ import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.EquipCreateOrEditE
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.service.IQualityScoreUpdate; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.service.IQualityScoreUpdate;
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService; import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgRegisterInfoServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgRegisterInfoServiceImpl;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgUseInfoServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgUseInfoServiceImpl;
......
...@@ -6,7 +6,7 @@ import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.EquipCreateOrEditE ...@@ -6,7 +6,7 @@ import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.EquipCreateOrEditE
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.service.IQualityScoreUpdate; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.event.service.IQualityScoreUpdate;
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService; import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgProjectContraptionServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgProjectContraptionServiceImpl;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption; import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption;
......
...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum; import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService; import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo; import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo; import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
......
...@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum; import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService; import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption; import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
......
package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.strategy; package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.strategy;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import java.util.List; import java.util.List;
......
...@@ -2,8 +2,8 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.strategy; ...@@ -2,8 +2,8 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.strategy;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.ReminderFieldDiff; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.ReminderFieldDiff;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderField; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderField;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
......
package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.useRegister; package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.useRegister;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistration;
import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistrationEq;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum; import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.CylinderTypeEnum;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentClassifityEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import static com.yeejoin.amos.boot.module.jg.biz.service.impl.CommonServiceImpl.notice;
/** /**
* 使用登记-提醒处理器 * 使用登记-提醒处理器
*/ */
@Component @Component
public class UseRegisterReminderAdapter extends DefaultReminder { public class UseRegisterReminderAdapter extends DefaultReminder {
public UseRegisterReminderAdapter(ApplicationContext applicationContext) {
private final UseRegisterReminderParse useRegisterReminderParse;
public UseRegisterReminderAdapter(ApplicationContext applicationContext, UseRegisterReminderParse useRegisterReminderParse) {
super(applicationContext); super(applicationContext);
this.useRegisterReminderParse = useRegisterReminderParse;
} }
@Override @Override
public IPage<ReminderItemDto> realtimeParse(String bizId, Page<ReminderItemDto> page) { public IPage<ReminderItemDto> realtimeParse(String bizId, Page<ReminderItemDto> page) {
return null; // 创建后, 监管通过时使用
JgUseRegistration useRegistration = useRegisterReminderParse.getJgUseRegistrationMapper().selectById(bizId);
// 压力管道
if (StringUtils.isNotEmpty(useRegistration.getProjectContraptionId())) {
String projectContraptionId = useRegistration.getProjectContraptionId();
IdxBizJgProjectContraption projectContraption = useRegisterReminderParse.getIdxBizJgProjectContraptionServiceImpl().getById(projectContraptionId);
ReminderItemDto reminderItemDto = new ReminderItemDto();
reminderItemDto.setEquipId(projectContraptionId);
reminderItemDto.setEquipNo(projectContraption.getProjectContraptionNo());
reminderItemDto.setEquipName(projectContraption.getProjectContraption());
reminderItemDto.setDetailData(BeanUtil.beanToMap(useRegistration));
page.setRecords(Collections.singletonList(reminderItemDto));
page.setTotal(1L);
}
// 气瓶
if (StringUtils.isEmpty(useRegistration.getProjectContraptionId()) && "unit".equals(useRegistration.getManageType())) {
LambdaQueryWrapper<JgUseRegistrationEq> lambda = new QueryWrapper<JgUseRegistrationEq>().lambda();
lambda.eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr());
lambda.select(JgUseRegistrationEq::getEquId);
List<String> records = useRegisterReminderParse.getJgRelationEquipMapper().selectList(lambda).stream().map(JgUseRegistrationEq::getEquId).collect(Collectors.toList());
Page<ReminderItemDto> mapPage = useRegisterReminderParse.getJgUseRegistrationMapper().queryForUnitVehiclePageForReminder(page, records);
mapPage.getRecords().forEach(item -> item.setDetailData(BeanUtil.beanToMap(useRegistration)));
}
// 台套设备
if (StringUtils.isEmpty(useRegistration.getManageType()) || "set".equals(useRegistration.getManageType())) {
LambdaQueryWrapper<JgUseRegistrationEq> lambda = new QueryWrapper<JgUseRegistrationEq>().lambda();
lambda.eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr());
lambda.select(JgUseRegistrationEq::getEquId);
List<JgUseRegistrationEq> eqList = useRegisterReminderParse.getJgRelationEquipMapper().selectList(lambda);
String record = eqList.iterator().next().getEquId();
ReminderItemDto reminderItemDto = new ReminderItemDto();
IdxBizJgRegisterInfo registerInfo = useRegisterReminderParse.getIdxBizJgRegisterInfoMapper().selectOne(new LambdaQueryWrapper<IdxBizJgRegisterInfo>().eq(IdxBizJgRegisterInfo::getRecord, record)
.select(IdxBizJgRegisterInfo::getRecord, IdxBizJgRegisterInfo::getProductName));
IdxBizJgUseInfo idxBizJgUseInfo = useRegisterReminderParse.getIdxBizJgUseInfoMapper().selectOne(new LambdaQueryWrapper<IdxBizJgUseInfo>().eq(IdxBizJgUseInfo::getRecord, record)
.select(IdxBizJgUseInfo::getRecord, IdxBizJgUseInfo::getUseInnerCode));
reminderItemDto.setEquipId(record);
reminderItemDto.setEquipNo(idxBizJgUseInfo.getUseInnerCode());
reminderItemDto.setEquipName(registerInfo.getProductName());
reminderItemDto.setDetailData(BeanUtil.beanToMap(useRegistration));
page.setRecords(Collections.singletonList(reminderItemDto));
page.setTotal(1L);
}
return page;
} }
@Override @Override
protected List<ReminderItemDto> realtimeParse(String bizId) { protected List<ReminderItemDto> realtimeParse(String bizId) {
// 创建后,评分使用
JgUseRegistration useRegistration = useRegisterReminderParse.getJgUseRegistrationMapper().selectById(bizId);
// todo 气瓶时不显示评分,在列表上显示
// 压力管道
if (StringUtils.isNotEmpty(useRegistration.getProjectContraptionId())) {
String projectContraptionId = useRegistration.getProjectContraptionId();
IdxBizJgProjectContraption projectContraption = useRegisterReminderParse.getIdxBizJgProjectContraptionServiceImpl().getById(projectContraptionId);
ReminderItemDto reminderItemDto = new ReminderItemDto();
reminderItemDto.setEquipId(projectContraptionId);
reminderItemDto.setEquipNo(projectContraption.getProjectContraptionNo());
reminderItemDto.setEquipName(projectContraption.getProjectContraption());
// 区分单据状态
reminderItemDto.setDetailData(this.buildProjectContraptionByStatus(useRegistration, useRegistration.getProjectContraptionId()));
return Collections.singletonList(reminderItemDto);
}
// 台套设备
if (StringUtils.isEmpty(useRegistration.getManageType()) || "set".equals(useRegistration.getManageType())) {
LambdaQueryWrapper<JgUseRegistrationEq> lambda = new QueryWrapper<JgUseRegistrationEq>().lambda();
lambda.eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr());
lambda.select(JgUseRegistrationEq::getEquId);
List<JgUseRegistrationEq> eqList = useRegisterReminderParse.getJgRelationEquipMapper().selectList(lambda);
String record = eqList.iterator().next().getEquId();
ReminderItemDto reminderItemDto = new ReminderItemDto();
IdxBizJgRegisterInfo registerInfo = useRegisterReminderParse.getIdxBizJgRegisterInfoMapper().selectOne(new LambdaQueryWrapper<IdxBizJgRegisterInfo>().eq(IdxBizJgRegisterInfo::getRecord, record)
.select(IdxBizJgRegisterInfo::getRecord, IdxBizJgRegisterInfo::getProductName));
IdxBizJgUseInfo idxBizJgUseInfo = useRegisterReminderParse.getIdxBizJgUseInfoMapper().selectOne(new LambdaQueryWrapper<IdxBizJgUseInfo>().eq(IdxBizJgUseInfo::getRecord, record)
.select(IdxBizJgUseInfo::getRecord, IdxBizJgUseInfo::getUseInnerCode));
reminderItemDto.setEquipId(record);
reminderItemDto.setEquipNo(idxBizJgUseInfo.getUseInnerCode());
reminderItemDto.setEquipName(registerInfo.getProductName());
reminderItemDto.setDetailData(this.buildSetUseDataByStatus(useRegistration, record));
return Collections.singletonList(reminderItemDto);
}
return Collections.emptyList(); return Collections.emptyList();
} }
private Map<String, Object> buildSetUseDataByStatus(JgUseRegistration useRegistration, String record) {
if (!useRegistration.getStatus().equals(FlowStatusEnum.TO_BE_FINISHED.getName())) {
return BeanUtil.beanToMap(useRegistration);
}
return useRegisterReminderParse.getEquipDetailByRecord(record);
}
private Map<String, Object> buildProjectContraptionByStatus(JgUseRegistration useRegistration, String projectContraptionId) {
if (!useRegistration.getStatus().equals(FlowStatusEnum.TO_BE_FINISHED.getName())) {
return BeanUtil.beanToMap(useRegistration);
}
Map<String, Object> re = BeanUtil.beanToMap(useRegistration);
IdxBizJgProjectContraption projectContraption = useRegisterReminderParse.getIdxBizJgProjectContraptionServiceImpl().getById(projectContraptionId);
re.putAll(BeanUtil.beanToMap(projectContraption));
return re;
}
@Override @Override
public IPage<ReminderItemDto> jsonParse(String bizId, Map<String, Object> formData, Page<ReminderItemDto> page) { public IPage<ReminderItemDto> jsonParse(String bizId, Map<String, Object> formData, Page<ReminderItemDto> page) {
return null; JSONObject data;
// 新增 + 编辑的保存使用
if (formData.containsKey(notice)) { // 新增工作台发起
data = JSONObject.parseObject(JSONObject.toJSONString(formData));
} else { // 编辑
data = new JSONObject(formData);
}
String manageType = data.getString("manageType");
if (StringUtils.isNotEmpty(manageType) && "unit".equals(manageType)) { // 单位办理方式
String equListCode = data.getString("EQU_LIST_CODE");
// 气瓶--气瓶分页
if (CylinderTypeEnum.CYLINDER.getCode().equals(formData.get("EQU_CATEGORY_CODE"))) {
List<Map<String, Object>> equipmentLists = (List<Map<String, Object>>) data.get("equipmentLists");
List<String> records = equipmentLists.stream().map(item -> item.get("record").toString()).collect(Collectors.toList());
Page<ReminderItemDto> mapPage = useRegisterReminderParse.getJgUseRegistrationMapper().queryForUnitVehiclePageForReminder(page, records);
mapPage.getRecords().forEach(item -> {
item.setDetailData(data);
});
}
// 压力管道--装置
if (EquipmentClassifityEnum.YLGD.getCode().equals(equListCode)) {
String projectContraptionId = data.getString("projectContraptionId");
IdxBizJgProjectContraption projectContraption = useRegisterReminderParse.getIdxBizJgProjectContraptionServiceImpl().getById(projectContraptionId);
ReminderItemDto reminderItemDto = new ReminderItemDto();
reminderItemDto.setEquipId(projectContraptionId);
reminderItemDto.setEquipNo(projectContraption.getProjectContraptionNo());
reminderItemDto.setEquipName(projectContraption.getProjectContraption());
reminderItemDto.setDetailData(data);
page.setRecords(Collections.singletonList(reminderItemDto));
page.setTotal(1L);
}
} else { // 台套方式
String record = data.getString("equipId");
ReminderItemDto reminderItemDto = new ReminderItemDto();
reminderItemDto.setEquipId(record);
reminderItemDto.setEquipNo(data.getString("useInnerCode"));
reminderItemDto.setEquipName(data.getString("productName"));
reminderItemDto.setDetailData(data);
page.setRecords(Collections.singletonList(reminderItemDto));
page.setTotal(1L);
}
return page;
} }
@Override @Override
public MatchItemDto setMatchItem(String bizId, Map<String, Object> formData) { public MatchItemDto setMatchItem(String bizId, Map<String, Object> formData) {
// 新增 + 编辑的保存使用
// 台套设备
// 气瓶
// 压力管道
return null; return null;
} }
@Override @Override
public MatchItemDto setMatchItem(String bizId) { public MatchItemDto setMatchItem(String bizId) {
return null; // 评分 + 详情使用
JgUseRegistration useRegistration = useRegisterReminderParse.getJgUseRegistrationMapper().selectById(bizId);
MatchItemDto matchItemDto = MatchItemDto.builder().build();
matchItemDto.setRegType(StringUtils.isEmpty(useRegistration.getRegType()) ? "0" : useRegistration.getRegType());
matchItemDto.setIsRegister(true);
// 压力管道
if (StringUtils.isNotEmpty(useRegistration.getProjectContraptionId())) {
IdxBizJgProjectContraption projectContraption = useRegisterReminderParse.getIdxBizJgProjectContraptionServiceImpl().getById(useRegistration.getProjectContraptionId());
matchItemDto.setEquList(projectContraption.getEquList());
matchItemDto.setEquCategory(projectContraption.getEquCategory());
matchItemDto.setEquDefine(projectContraption.getEquDefine());
}
// 气瓶
if (StringUtils.isEmpty(useRegistration.getProjectContraptionId()) && "unit".equals(useRegistration.getManageType())) {
setEquCategoryByOneRecord(useRegistration, matchItemDto);
}
// 台套设备
if (StringUtils.isEmpty(useRegistration.getManageType()) || "set".equals(useRegistration.getManageType())) {
setEquCategoryByOneRecord(useRegistration, matchItemDto);
}
return matchItemDto;
}
private void setEquCategoryByOneRecord(JgUseRegistration useRegistration, MatchItemDto matchItemDto) {
LambdaQueryWrapper<JgUseRegistrationEq> lambda = new QueryWrapper<JgUseRegistrationEq>().lambda();
lambda.eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr());
lambda.select(JgUseRegistrationEq::getEquId);
List<JgUseRegistrationEq> eqList = useRegisterReminderParse.getJgRelationEquipMapper().selectList(lambda);
String record = eqList.iterator().next().getEquId();
IdxBizJgRegisterInfo registerInfo = useRegisterReminderParse.getIdxBizJgRegisterInfoMapper().selectOne(new LambdaQueryWrapper<IdxBizJgRegisterInfo>().eq(IdxBizJgRegisterInfo::getRecord, record)
.select(IdxBizJgRegisterInfo::getRecord, IdxBizJgRegisterInfo::getEquList, IdxBizJgRegisterInfo::getEquCategory, IdxBizJgRegisterInfo::getEquDefine));
matchItemDto.setEquList(registerInfo.getEquList());
matchItemDto.setEquCategory(registerInfo.getEquCategory());
matchItemDto.setEquDefine(registerInfo.getEquDefine());
} }
@Override @Override
......
package com.yeejoin.amos.boot.module.jg.biz.reminder.biz.useRegister;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationEqMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationMapper;
import com.yeejoin.amos.boot.module.jg.biz.reminder.service.CommonReminderService;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.IdxBizJgProjectContraptionServiceImpl;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgRegisterInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgUseInfoMapper;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component;
import java.util.Map;
@Component
@RequiredArgsConstructor
@Getter
public class UseRegisterReminderParse {
private final IdxBizJgProjectContraptionServiceImpl idxBizJgProjectContraptionServiceImpl;
private final JgUseRegistrationMapper jgUseRegistrationMapper;
private final JgUseRegistrationEqMapper jgRelationEquipMapper;
private final IdxBizJgRegisterInfoMapper idxBizJgRegisterInfoMapper;
private final IdxBizJgUseInfoMapper idxBizJgUseInfoMapper;
private final CommonReminderService commonReminderService;
public Map<String, Object> getEquipDetailByRecord(String record) {
return commonReminderService.getEquipDetailByRecord(record);
}
}
...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum; import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.DefaultReminder;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
......
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.GradeStrategyFactory;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import java.util.List; import java.util.List;
......
...@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.core; ...@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.core;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import java.util.Map; import java.util.Map;
......
...@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.core; ...@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.jg.biz.reminder.core;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import java.util.List; import java.util.List;
......
package com.yeejoin.amos.boot.module.jg.biz.reminder.dto; package com.yeejoin.amos.boot.module.jg.biz.reminder.dto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
@Data @Data
@Builder @Builder
public class MatchItemDto { public class MatchItemDto {
/**
* 业务类型
*/
private String bizType; private String bizType;
/**
* 设备种类编码
*/
private String equList; private String equList;
/**
* 设备类别编码
*/
private String equCategory; private String equCategory;
/**
* 设备品种编码
*/
private String equDefine; private String equDefine;
/** /**
...@@ -20,7 +34,9 @@ public class MatchItemDto { ...@@ -20,7 +34,9 @@ public class MatchItemDto {
*/ */
private String whetherVehicleCylinder = "0"; private String whetherVehicleCylinder = "0";
/**
* 0-新增登记;1-历史有证登记;2-历史无证登记
*/
private String regType; private String regType;
/** /**
...@@ -28,5 +44,8 @@ public class MatchItemDto { ...@@ -28,5 +44,8 @@ public class MatchItemDto {
*/ */
private Boolean isRegister = false; private Boolean isRegister = false;
/**
* 要查询的设备、装置、气瓶
*/
Page<ReminderItemDto> page; Page<ReminderItemDto> page;
} }
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.IReminderHandler; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.IReminderHandler;
import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.ReminderFactory; import com.yeejoin.amos.boot.module.jg.biz.reminder.biz.factory.ReminderFactory;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
......
...@@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.module.jg.api.entity.TzsJgColumnReminderRule; import com.yeejoin.amos.boot.module.jg.api.entity.TzsJgColumnReminderRule;
import com.yeejoin.amos.boot.module.jg.biz.reminder.core.ReminderFieldDiff; import com.yeejoin.amos.boot.module.jg.biz.reminder.core.ReminderFieldDiff;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto; import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.MatchItemDto;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderField; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderField;
import com.yeejoin.amos.boot.module.jg.biz.reminder.dto.ReminderItemDto; import com.yeejoin.amos.boot.module.jg.api.dto.ReminderItemDto;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.TzsJgColumnReminderRuleServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.TzsJgColumnReminderRuleServiceImpl;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
......
...@@ -168,9 +168,9 @@ public class CommonServiceImpl implements ICommonService { ...@@ -168,9 +168,9 @@ public class CommonServiceImpl implements ICommonService {
private static final String HISTORY_EQU_TYPE = "historyEquType"; private static final String HISTORY_EQU_TYPE = "historyEquType";
private static final String SECOND = "second"; private static final String SECOND = "second";
// 业务通用发起——告知单详情 // 业务通用发起——告知单详情
private static final String notice = "notice"; public static final String notice = "notice";
// 业务通用发起——技术参数-改造变更登记使用 // 业务通用发起——技术参数-改造变更登记使用
private static final String techInfo = "techInfo"; public static final String techInfo = "techInfo";
// 业务通用发起——安装告知表单key // 业务通用发起——安装告知表单key
private static final String AZGZ_FORM_ID = "1734141426742095873"; private static final String AZGZ_FORM_ID = "1734141426742095873";
// 业务通用发起——移装变更表单key // 业务通用发起——移装变更表单key
......
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