Commit 7e7e2322 authored by suhuiguang's avatar suhuiguang

feat(jg): 压力管道后续业务

1.维修告知适配及问题修改 2.装置编辑
parent 156ec05e
......@@ -42,9 +42,9 @@ public interface JgEnableDisableMapper extends BaseMapper<JgEnableDisable> {
IPage<IdxBizJgProjectContraption> queryJgProjectContraptionPage(@Param("page") Page<IdxBizJgProjectContraption> page, @Param("useUnitCreditCode") String useUnitCreditCode, @Param("proIds") Set<String> proIds);
IPage<Map<String, Object>> selectPipeLinePage(@Param("page") Page<Map<String, Object>> page, @Param("projectContraptionId") String projectContraptionId, @Param("applyType") String applyType, @Param("filters") Map<String, Object> filters);
List<Map<String, Object>> selectPipeLineByRecords(@Param("records") List<String> records);
IPage<Map<String, Object>> selectPipeLinePage(@Param("page") Page<Map<String, Object>> page, @Param("projectContraptionId") String projectContraptionId, @Param("applyType") String applyType, @Param("filters") Map<String, Object> filters);
}
package com.yeejoin.amos.boot.module.jg.api.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.mapper.CustomBaseMapper;
import com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto;
......@@ -46,9 +47,12 @@ public interface JgMaintainNoticeMapper extends CustomBaseMapper<JgMaintainNotic
void updatePromoter(@Param("id")Long id);
Map<String, Object> getEquipInfoByRecord(String record);
List<CompanyEquipCountDto> queryForFlowingEquipList();
List<MaintainVo> queryMaintainInIds(@Param("ids") List<String> ids);
IPage<Map<String, Object>> selectPipeLinePage(@Param("page") Page<Map<String, Object>> page, @Param("projectContraptionId") String projectContraptionId, @Param("filters") Map<String, Object> filters);
List<Map<String, Object>> selectPipeLineByRecords(@Param("records") List<String> records);
}
package com.yeejoin.amos.boot.module.jg.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -70,4 +71,7 @@ public interface IJgMaintainNoticeService extends IService<JgMaintainNotice> {
* @return JgInstallationNoticeDto
*/
JgMaintainNotice cancelApplication(Long sequenceNbr, String cancelReason);
IPage<Map<String, Object>> findPipeLinePage(Page<Map<String, Object>> page, String sequenceNbr, Map<String, Object> filters);
}
......@@ -300,4 +300,82 @@
ORDER BY
isn.create_date DESC, isn.apply_no DESC
</select>
<sql id="page-list-pipeline">
SELECT
ui."USE_UNIT_NAME" useUnitName,
ui."USE_UNIT_CREDIT_CODE" useUnitCreditCode,
ui."PROJECT_CONTRAPTION_ID" as projectContraptionId,
to_char(ui."USE_DATE", 'YYYY-MM') useDate,
(SELECT DESIGN_UNIT_NAME from idx_biz_jg_design_info where "RECORD" = ui."RECORD") designUnitName,
(SELECT USC_UNIT_NAME from idx_biz_jg_construction_info where "RECORD" = ui."RECORD" ORDER BY USC_DATE DESC limit 1) uscUnitName,
to_char((SELECT USC_DATE from idx_biz_jg_construction_info where "RECORD" = ui."RECORD" ORDER BY USC_DATE DESC limit 1), 'YYYY-MM') uscDate,
ui."RECORD" AS record,
ui."RECORD" AS SEQUENCE_NBR,
ui.IS_INTO_MANAGEMENT as isIntoManagement,
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,
pp."PIPE_NAME" as productName,
ri."BRAND_NAME" brandName,
ri."EQU_TYPE" equType,
ri."EQU_CODE_TYPE" equCodeType,
ri."WHETHER_VEHICLE_CYLINDER" whetherVehicleCylinder,
ri."USE_ORG_CODE" useOrgCode,
pp."DEVICE_NAME" deviceName,
(select name from cb_data_dictionary where code = pp."DEVICE_LEVEL" and type in ('GYGDHIS','8100','8200','8300')) deviceLevel,
pp."PIPE_NAME" pipeName,
pp."PIPELINE_NUMBER" pipelineNumber,
pp."NOMINAL_DIAMETER" nominalDiameter,
pp."WALL_THICKNESS" wallThickness,
pp."PIPE_LENGTH" pipeLength,
pp."PIPE_LENGTH_TEXT" AS pipeLengthText,
pp."PRESSURE" pressure,
pp."TEMPERATURE" temperature,
pp."MEDIUM" medium,
pp."REMARKS" remarks,
pp."WORK_PRESSURE" AS workPressure,
pp."WORK_TEMPERATURE" AS workTemperature,
pp."WORK_MEDIUM" AS workMedium,
ui."EQU_STATE" as equState,
ui."REC_DATE",
(select INSPECT_ORG_NAME from idx_biz_jg_inspection_detection_info where "RECORD" = ui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) inspectOrgName,
(select name from cb_data_dictionary where type = 'JYJL' and code = (select INSPECT_CONCLUSION from idx_biz_jg_inspection_detection_info where "RECORD" = ui."RECORD" ORDER BY INSPECT_DATE DESC limit 1)) inspectConclusion,
to_char((select NEXT_INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = ui."RECORD" ORDER BY INSPECT_DATE DESC limit 1), 'YYYY-MM-DD') nextInspectDate,
(select INSPECT_REPORT from idx_biz_jg_inspection_detection_info where "RECORD" = ui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) inspectReport
FROM
idx_biz_jg_use_info ui
LEFT JOIN idx_biz_jg_register_info ri on ri."RECORD" = ui."RECORD"
LEFT JOIN idx_biz_jg_tech_params_pipeline pp ON pp."RECORD" = ui."RECORD"
</sql>
<select id="selectPipeLinePage" resultType="java.util.Map">
select * from (
<include refid="page-list-pipeline"/>
WHERE
ui."PROJECT_CONTRAPTION_ID" = #{projectContraptionId}
and (ui."EQU_STATE" is null or ui."EQU_STATE" <![CDATA[ <> ]]> '3')
<if test="filters != null and filters.pipelineNumber != null and filters.pipelineNumber != ''">
and pp."PIPELINE_NUMBER" like concat('%', #{filters.pipelineNumber},'%')
</if>
<if test="filters != null and filters.productName != null and filters.productName != ''">
and pp."PIPE_NAME" like concat('%', #{filters.productName},'%')
</if>
)
ORDER BY REC_DATE DESC
</select>
<select id="selectPipeLineByRecords" resultType="java.util.Map">
select * from (
<include refid="page-list-pipeline"/>
WHERE
ui."RECORD" = ANY(ARRAY[
<foreach collection="records" item="record" separator=",">
#{record}
</foreach>
]) )
ORDER BY REC_DATE DESC
</select>
</mapper>
......@@ -35,19 +35,6 @@ public class JgMaintainByWorkFlowController {
JgMaintainNoticeServiceImpl jgMaintainNoticeServiceImpl;
private static final String TABLE_PAGE_ID = "maintainInfo";
// /**
// * 提交
// *
// * @return
// */
// @TycloudOperation(ApiLevel = UserType.AGENCY)
// @PostMapping(value = "/submit")
// @ApiOperation(httpMethod = "POST", value = "维修告知提交", notes = "维修告知提交")
// public ResponseModel<JgMaintainNoticeDto> submit(@RequestBody JgMaintainNoticeDto model, String op) {
// // TODO 发起维修告知流程
// // jgMaintainNoticeServiceImpl.submit(model, op);
// return ResponseHelper.buildResponse(model);
// }
/**
* 撤销
......
package com.yeejoin.amos.boot.module.jg.biz.controller;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
......@@ -11,6 +12,8 @@ import com.yeejoin.amos.boot.module.jg.api.service.IJgMaintainNoticeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
......@@ -153,4 +156,20 @@ public class JgMaintainNoticeController extends BaseController {
JgMaintainNotice result = iJgMaintainNoticeService.cancelApplication(dto.getSequenceNbr(), dto.getCancelReason());
return ResponseHelper.buildResponse(result);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/pipeline/page")
@ApiOperation(value = "查询装置下可做维修的管道", notes = "查询装置下可做维修的管道")
public ResponseModel<IPage<Map<String, Object>>> findPipeLinePage(
@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size,
@RequestParam("projectContraptionId") String projectContraptionId,
@RequestParam Map<String, Object> filters) {
Page<Map<String, Object>> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
IPage<Map<String, Object>> re = iJgMaintainNoticeService.findPipeLinePage(page, projectContraptionId, filters);
return ResponseHelper.buildResponse(re);
}
}
......@@ -38,6 +38,7 @@ import com.yeejoin.amos.boot.module.jg.biz.event.publisher.EventPublisher;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgProjectContraptionService;
import com.yeejoin.amos.boot.module.ymt.api.dto.IdxBizJgProjectContraptionDto;
import com.yeejoin.amos.boot.module.ymt.api.entity.*;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgProjectContraptionMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.TzBaseEnterpriseInfoMapper;
import com.yeejoin.amos.feign.privilege.Privilege;
......@@ -598,7 +599,7 @@ public class IdxBizJgProjectContraptionServiceImplService extends BaseEntityServ
.map(map -> {
commonService.convertStringToJsonobject(map, jsonFields);
map.put("unitType", company.getCompanyType());
map.put("pipelineList", baseMapper.selectEquipList((String) map.get("SEQUENCE_NBR")));
map.put("pipelineList", this.getPipelineList(sequenceNbr));
return map;
})
.orElse(Collections.emptyMap());
......@@ -607,6 +608,28 @@ public class IdxBizJgProjectContraptionServiceImplService extends BaseEntityServ
return resultMap;
}
private List<Map<String, Object>> getPipelineList(String sequenceNbr) {
List<Map<String, Object>> pipelineList = baseMapper.selectEquipList(sequenceNbr);
pipelineList.forEach(p -> {
try {
p.put("equStateName",
Optional.ofNullable(p.get("equState"))
.map(Object::toString)
.filter(org.apache.commons.lang3.StringUtils::isNotEmpty)
.map(Integer::parseInt)
.map(EquipmentEnum.getName::get)
.orElse("待用")
);
} catch (NumberFormatException e) {
p.put("equStateName", "待用");
}
});
return pipelineList;
}
public Page<Map<String, Object>> techParamsPipelinePage(String sequenceNbr,int current, int size) {
Page<Map<String, Object>> page=new Page<>();
page.setCurrent(current);
......
......@@ -5,12 +5,13 @@ import com.alibaba.fastjson.JSON;
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.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.annotation.ResultFieldMapping;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.IDataDictionaryService;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
......@@ -19,6 +20,7 @@ import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.common.api.dao.ESEquipmentCategory;
import com.yeejoin.amos.boot.module.common.api.dto.ESEquipmentCategoryDto;
import com.yeejoin.amos.boot.module.common.api.enums.ConstructionTypeEnum;
import com.yeejoin.amos.boot.module.common.api.service.ICompensateFlowDataOfRedis;
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.enums.BusinessTypeEnum;
......@@ -36,12 +38,11 @@ import com.yeejoin.amos.boot.module.jg.biz.edit.typeHandler.EquipCategoryTypeHan
import com.yeejoin.amos.boot.module.jg.biz.event.CancellationEvent;
import com.yeejoin.amos.boot.module.jg.biz.event.publisher.EventPublisher;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.ICmWorkflowService;
import com.yeejoin.amos.boot.module.common.api.service.ICompensateFlowDataOfRedis;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgConstructionInfoService;
import com.yeejoin.amos.boot.module.jg.biz.utils.CodeUtil;
import com.yeejoin.amos.boot.module.jg.biz.utils.WordTemplateUtils;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgConstructionInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption;
import com.yeejoin.amos.boot.module.ymt.api.entity.RegistrationInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
......@@ -103,9 +104,6 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
EventPublisher eventPublisher;
@Autowired
private ICmWorkflowService iCmWorkflowService;
@Autowired
JgMaintainNoticeEqMapper jgMaintainNoticeEqMapper;
@Autowired
......@@ -127,10 +125,6 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
@Autowired
private SnowflakeIdUtil sequence;
@Autowired
IDataDictionaryService dataDictionaryService;
@Autowired
RedisUtils redisUtils;
......@@ -161,14 +155,16 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
private JgCertificateChangeRecordServiceImpl certificateChangeRecordService;
@Autowired
private JgCertificateChangeRecordEqServiceImpl jgCertificateChangeRecordEqServiceImpl;
@Autowired
private IdxBizJgProjectContraptionMapper idxBizJgProjectContraptionMapper;
@Autowired
private CodeUtil codeUtil;
@Autowired
private EquipCategoryTypeHandler equipCategoryTypeHandler;
@Autowired
private IdxBizJgProjectContraptionMapper idxBizJgProjectContraptionMapper;
@Autowired
private IdxBizJgProjectContraptionServiceImplService idxBizJgProjectContraptionServiceImplService;
/**
* 根据sequenceNbr查询
......@@ -224,7 +220,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
// 兼容老数据
if (hisData == null || ObjectUtils.isEmpty(hisData.get("deviceList"))) {
// 老数据逻辑
setNewEquipInfo(sequenceNbr, maintainInfo);
setNewEquipInfo(sequenceNbr, maintainInfo, notice);
new FillingEditPermForCurrentUser(new JSONObject(maintainInfo), companyBo, BusinessTypeEnum.JG_MAINTENANCE_NOTIFICATION).getData();
return new HashMap<String, Map<String, Object>>() {{
put(TABLE_PAGE_ID, maintainInfo);
......@@ -233,15 +229,13 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
// 新数据逻辑
hisData.putAll(maintainInfo);
CommonServiceImpl.formatTime2StrDateForEquip(hisData);
// setNewEquipInfo(sequenceNbr, maintainInfo);
// hisData.put("deviceList", maintainInfo.get("deviceList"));
new FillingEditPermForCurrentUser(hisData, companyBo, BusinessTypeEnum.JG_MAINTENANCE_NOTIFICATION).getData();
return new HashMap<String, Map<String, Object>>() {{
this.put(TABLE_PAGE_ID, hisData);
}};
}
} else {
setNewEquipInfo(sequenceNbr, maintainInfo);
setNewEquipInfo(sequenceNbr, maintainInfo, notice);
new FillingEditPermForCurrentUser(new JSONObject(maintainInfo), companyBo, BusinessTypeEnum.JG_MAINTENANCE_NOTIFICATION).getData();
return new HashMap<String, Map<String, Object>>() {{
put(TABLE_PAGE_ID, maintainInfo);
......@@ -287,23 +281,29 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
});
}
private void setNewEquipInfo(Long sequenceNbr, Map<String, Object> maintainInfo) {
private void setNewEquipInfo(Long sequenceNbr, Map<String, Object> maintainInfo, JgMaintainNotice notice) {
List<String> equIds = jgMaintainNoticeEqMapper.selectList(
new LambdaQueryWrapper<JgMaintainNoticeEq>()
.eq(JgMaintainNoticeEq::getEquipTransferId, sequenceNbr))
.stream()
.map(JgMaintainNoticeEq::getEquId)
.collect(Collectors.toList());
String equListCode = String.valueOf(maintainInfo.get("EQU_LIST_CODE"));
List<Map<String, Object>> deviceList = EquipmentClassifityEnum.YLGD.getCode().equals(equListCode)
? idxBizJgProjectContraptionMapper.selectPipelineList(equIds)
: getEquipListMaps(esEquipmentCategory.findAllById(equIds));
deviceList.forEach(item->{
item.replaceAll((k, v) -> v == null ? "" : v);
});
List<Map<String, Object>> deviceList;
deviceList = getDeviceList(notice, equIds);
maintainInfo.put("deviceList", deviceList);
}
private List<Map<String, Object>> getDeviceList(JgMaintainNotice notice, List<String> equIds) {
List<Map<String, Object>> deviceList;
if (!notice.getEquListCode().equals(EquipmentClassifityEnum.YLGD.getCode())) {
deviceList = getEquipListMaps(esEquipmentCategory.findAllById(equIds));
} else {
deviceList = getBaseMapper().selectPipeLineByRecords(equIds);
}
deviceList.forEach(item -> item.replaceAll((k, v) -> v == null ? "" : v));
return deviceList;
}
private List<Map<String, Object>> getEquipListMaps(Iterable<ESEquipmentCategoryDto> equips) {
List<Map<String, Object>> arrayList = new ArrayList<>();
equips.forEach(equip -> {
......@@ -455,16 +455,16 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
BeanUtils.copyProperties(noticeDto, bean);
jgMaintainNoticeMapper.updateById(bean);
}
LambdaQueryWrapper<JgMaintainNoticeEq> lambdaQueryWrapper = new LambdaQueryWrapper();
LambdaQueryWrapper<JgMaintainNoticeEq> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(JgMaintainNoticeEq::getEquipTransferId, noticeDto.getSequenceNbr());
jgMaintainNoticeEqMapper.delete(lambdaQueryWrapper);
List<JgMaintainNoticeEq> equipList = new ArrayList<>();
if (!CollectionUtils.isEmpty(deviceList)){
if (!CollectionUtils.isEmpty(deviceList)) {
deviceList.forEach(obj -> {
JgMaintainNoticeEq jgRelationEquip = new JgMaintainNoticeEq();
jgRelationEquip.setEquId(String.valueOf(obj.get("SEQUENCE_NBR")));
jgRelationEquip.setEquipTransferId(noticeDto.getSequenceNbr().toString());
jgRelationEquip.setEquCode(ObjectUtils.isEmpty(obj.get("EQU_CODE"))?null:String.valueOf(obj.get("EQU_CODE")));
jgRelationEquip.setEquCode(ObjectUtils.isEmpty(obj.get("EQU_CODE")) ? null : String.valueOf(obj.get("EQU_CODE")));
jgRelationEquip.setEquListCode(String.valueOf(obj.get("EQU_LIST_CODE")));
jgRelationEquip.setEquCategoryCode(String.valueOf(obj.get("EQU_CATEGORY_CODE")));
equipList.add(jgRelationEquip);
......@@ -504,7 +504,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
String type = "jgLook".equals(client) ? null : reginParams.getCompany().getLevel();
String orgCode = "jgLook".equals(client) ? reginParams.getCompany().getOrgCode() : null;
SortVo sortMap = commonService.sortFieldConversion(sort);
List<DataDictionary> dictionaries = dataDictionaryService.getByType("WXLX");
List<DataDictionary> dictionaries = iDataDictionaryService.getByType("WXLX");
Page<Map<String, Object>> noticePage = jgMaintainNoticeMapper.queryForPage(page, sortMap, model, type, companyCode, userId, orgCode);
List<Map<String, Object>> mappedRecords = noticePage.getRecords().stream().peek(notice -> {
......@@ -524,7 +524,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
* 列表查询-导出用
*/
public List<MaintainVo> queryMaintainInIds(List<String> ids) {
List<DataDictionary> dictionaries = dataDictionaryService.getByType("WXLX");
List<DataDictionary> dictionaries = iDataDictionaryService.getByType("WXLX");
List<MaintainVo> maintainVos = jgMaintainNoticeMapper.queryMaintainInIds(ids);
return maintainVos.stream().peek(notice -> {
Optional.ofNullable(notice.getNoticeStatus()).ifPresent(status -> notice.setNoticeStatus(FlowStatusEnum.getNameByType(Long.valueOf(status))));
......@@ -551,7 +551,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
List<JgMaintainNoticeEq> list = jgMaintainNoticeEqService.lambdaQuery().eq(JgMaintainNoticeEq::getEquipTransferId, sequenceNbr).list();
HashMap<String, Object> map = new HashMap<>();
List<Map<String, Object>> placeholderList = new ArrayList<>();
if(!CollectionUtils.isEmpty(list)){
if (!CollectionUtils.isEmpty(list)) {
for (JgMaintainNoticeEq jgMaintainNoticeEq : list) {
List<Map<String, Object>> informationList = jgMaintainNoticeMapper.queryEquipInformation(jgMaintainNoticeEq.getSequenceNbr());
if (Objects.isNull(JgMaintainNotice) || CollectionUtils.isEmpty(informationList)) {
......@@ -610,7 +610,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
this.repeatUsedEquipCheck(deviceList, reginParams.getCompany().getCompanyCode());
}
String applyNo;
if (ValidationUtil.isEmpty(model.getApplyNo())){
if (ValidationUtil.isEmpty(model.getApplyNo())) {
// 获取告知单号
ResponseModel<List<String>> applyNoResult = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.WXGZ.getCode(), 1);
if (CollectionUtils.isEmpty(applyNoResult.getResult())) {
......@@ -618,7 +618,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
throw new RuntimeException();
}
applyNo = applyNoResult.getResult().get(0);
}else{
} else {
applyNo = model.getApplyNo();
}
......@@ -651,8 +651,8 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
if (SUBMIT_TYPE_TEMP.equals(submitType)) {
notice.setIsTemporaryStatus("1");
}
notice.setEquListCode(Objects.toString(tableData.get(EQU_LIST_CODE),""));
notice.setEquCategory(Objects.toString(tableData.get(EQU_CATEGORY_CODE),""));
notice.setEquListCode(Objects.toString(tableData.get(EQU_LIST_CODE), ""));
notice.setEquCategory(Objects.toString(tableData.get(EQU_CATEGORY_CODE), ""));
notice.setEquCategoryDesc(equipCategoryTypeHandler.handle(notice.getEquCategory()));
notice.setInstallUnitName(reginParams.getCompany().getCompanyName());
notice.setInstallUnitCreditCode(reginParams.getCompany().getCompanyCode());
......@@ -661,12 +661,12 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
DataDictionary dictionary = iDataDictionaryService.getByCode(notice.getMaintainType(), "WXLX");
notice.setMaintainTypeDesc(dictionary.getName());
notice.setFullAddress(notice.getProvinceName() + notice.getCityName() + notice.getCountyName() + notice.getStreetName() + notice.getAddress());
if (!CollectionUtils.isEmpty(deviceList)){
if (!CollectionUtils.isEmpty(deviceList)) {
deviceList.forEach(obj -> {
JgMaintainNoticeEq jgRelationEquip = new JgMaintainNoticeEq();
jgRelationEquip.setEquId(String.valueOf(obj.get("SEQUENCE_NBR")));
jgRelationEquip.setEquipTransferId(applyNo);
jgRelationEquip.setEquCode(ObjectUtils.isEmpty(obj.get("EQU_CODE"))?null:String.valueOf(obj.get("EQU_CODE")));
jgRelationEquip.setEquCode(ObjectUtils.isEmpty(obj.get("EQU_CODE")) ? null : String.valueOf(obj.get("EQU_CODE")));
jgRelationEquip.setEquListCode(String.valueOf(obj.get("EQU_LIST_CODE")));
jgRelationEquip.setEquCategoryCode(String.valueOf(obj.get("EQU_CATEGORY_CODE")));
equipList.add(jgRelationEquip);
......@@ -680,7 +680,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
// 暂存任务
buildTaskDraft(notice);
}
if (!CollectionUtils.isEmpty(deviceList)){
if (!CollectionUtils.isEmpty(deviceList)) {
if (!ValidationUtil.isEmpty(model.getSequenceNbr())) {
LambdaQueryWrapper<JgMaintainNoticeEq> lambda = new QueryWrapper<JgMaintainNoticeEq>().lambda();
lambda.eq(JgMaintainNoticeEq::getEquipTransferId, model.getSequenceNbr());
......@@ -707,7 +707,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
}
private void updateRedisBatch(JgMaintainNotice jgMaintainNotice) {
if (!ObjectUtils.isEmpty(jgMaintainNotice.getInstanceId())){
if (!ObjectUtils.isEmpty(jgMaintainNotice.getInstanceId())) {
commonService.saveExecuteFlowData2Redis(jgMaintainNotice.getInstanceId(), this.buildInstanceRuntimeData(jgMaintainNotice));
}
}
......@@ -727,7 +727,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
taskMessageDto.setNextTaskId(maintainNotice.getNextTaskId());
dto.setModel(taskMessageDto);
//摘要 按原有规则组装
dto.setTaskContent(String.format("来自%s的业务办理,【申请单号%s】",equipCategoryTypeHandler.handle(maintainNotice.getEquListCode()), maintainNotice.getApplyNo()));
dto.setTaskContent(String.format("来自%s的业务办理,【申请单号%s】", equipCategoryTypeHandler.handle(maintainNotice.getEquListCode()), maintainNotice.getApplyNo()));
//申请单号
dto.setTaskCode(maintainNotice.getApplyNo());
//业务类型枚举code值
......@@ -779,7 +779,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
}
private List<WorkflowResultDto> workFlowInfo(String submitType,String receiveCompanyCode) {
private List<WorkflowResultDto> workFlowInfo(String submitType, String receiveCompanyCode) {
if (SUBMIT_TYPE_FLOW.equals(submitType)) {
// 发起流程
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
......@@ -882,14 +882,12 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
model.setInspectionUnitName(inspectUnitIdList[1]);
}
}
String projectContraption = model.getProjectContraption();
if (!ObjectUtils.isEmpty(projectContraption)) {
String[] projectContraptionList = projectContraption.split("_");
if (projectContraptionList.length > 1) {
model.setProjectContraptionId(projectContraptionList[0]);
model.setProjectContraption(projectContraptionList[1]);
}
model.setProjectContraption(this.getProjectContraptionName(model.getProjectContraptionId()));
}
private String getProjectContraptionName(String projectContraptionId) {
IdxBizJgProjectContraption projectContraption = idxBizJgProjectContraptionServiceImplService.lambdaQuery().eq(BaseEntity::getSequenceNbr, projectContraptionId).select(BaseEntity::getSequenceNbr, IdxBizJgProjectContraption::getProjectContraption).one();
return Optional.ofNullable(projectContraption).map(IdxBizJgProjectContraption::getProjectContraption).orElse(null);
}
public boolean submit(JgMaintainNotice notice, String op, String opinion) {
......@@ -975,7 +973,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public void accept(JgMaintainNoticeDto dto, String op, String opinion,Map<String, Object> model) {
public void accept(JgMaintainNoticeDto dto, String op, String opinion, Map<String, Object> model) {
String instanceId = dto.getInstanceId();
String nextTaskId = dto.getNextTaskId();
String lockKey = CommonServiceImpl.buildJgExecuteLockKey(instanceId);
......@@ -1126,7 +1124,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
}
private void createResume(List<JgMaintainNoticeEq> jgRelationEquips, JgMaintainNotice notice, String routePath) {
if(StringUtils.hasText(notice.getProjectContraptionId())){
if (StringUtils.hasText(notice.getProjectContraptionId())) {
jgResumeInfoService.saveBatchResume(Collections.singletonList(
JgResumeInfoDto.builder()
.applyNo(notice.getApplyNo())
......@@ -1142,7 +1140,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
)
);
} else {
jgResumeInfoService.saveBatchResume(jgRelationEquips.stream().map(eq-> JgResumeInfoDto.builder().applyNo(notice.getApplyNo())
jgResumeInfoService.saveBatchResume(jgRelationEquips.stream().map(eq -> JgResumeInfoDto.builder().applyNo(notice.getApplyNo())
.businessType(BusinessTypeEnum.JG_MAINTENANCE_NOTIFICATION.getName())
.businessId(String.valueOf(notice.getSequenceNbr()))
.equId(eq.getEquId())
......@@ -1160,7 +1158,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgMaintainNotice.getCreateUserId());
String content =jgMaintainNotice.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【维修告知】" +
String content = jgMaintainNotice.getUseUnitName() + "的" + agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【维修告知】" +
"单号【" + jgMaintainNotice.getApplyNo() + "】,办理日期" + DateUtils.getDateNowShortStr();
List<JgCertificateChangeRecord> certificateChangeRecords = new ArrayList<>();
List<JgCertificateChangeRecordEq> changeRecordEqList = new ArrayList<>();
......@@ -1211,7 +1209,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
}
private void createConstruction2Db(JgMaintainNotice jgMaintainNotice, List<JgMaintainNoticeEq> jgMaintainNoticeEqs) {
List<IdxBizJgConstructionInfo> constructionInfoList = jgMaintainNoticeEqs.stream().map(e->{
List<IdxBizJgConstructionInfo> constructionInfoList = jgMaintainNoticeEqs.stream().map(e -> {
IdxBizJgConstructionInfo idxBizJgConstructionInfo = new IdxBizJgConstructionInfo();
idxBizJgConstructionInfo.setUscUnitCreditCode(jgMaintainNotice.getInstallUnitCreditCode());
idxBizJgConstructionInfo.setUscUnitName(jgMaintainNotice.getInstallUnitName());
......@@ -1266,6 +1264,13 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
return maintainNotice;
}
@Override
public IPage<Map<String, Object>> findPipeLinePage(Page<Map<String, Object>> page, String projectContraptionId, Map<String, Object> filters) {
IPage<Map<String, Object>> re = this.getBaseMapper().selectPipeLinePage(page, projectContraptionId, filters);
re.getRecords().forEach(item -> item.put("inspectReport", Optional.ofNullable(item.get("inspectReport")).map(r -> JSON.parse(r.toString())).orElse(null)));
return re;
}
private List<String> getEquList(JgMaintainNotice jgMaintainNotice) {
LambdaQueryWrapper<JgMaintainNoticeEq> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(JgMaintainNoticeEq::getEquipTransferId, jgMaintainNotice.getSequenceNbr());
......@@ -1288,7 +1293,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
// 1.待办任务更新为已完成
this.finishedTask(maintainNotice);
// 2.终止流程-工作流报错暂时注释掉
iCmWorkflowService.stopProcess(maintainNotice.getInstanceId(), maintainNotice.getCancelReason());
cmWorkflowService.stopProcess(maintainNotice.getInstanceId(), maintainNotice.getCancelReason());
// 3.清空redis(缓存的流程中及已完成安装告知的设备)
this.delRepeatUseEquipData(maintainNotice);
}
......@@ -1309,7 +1314,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
@Override
public boolean beforeCheck(JgMaintainNotice jgMaintainNotice) {
return jgMaintainNotice.getInstanceId() != null && !jgMaintainNotice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode())) &&!jgMaintainNotice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_DISCARD.getCode()));
return jgMaintainNotice.getInstanceId() != null && !jgMaintainNotice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode())) && !jgMaintainNotice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_DISCARD.getCode()));
}
@Override
......
......@@ -77,6 +77,7 @@
ibjdi."DESIGN_UNIT_NAME" AS designUnitName,
ibjui."USE_DATE" AS useDate,
ibjui."RECORD" AS record,
ibjui."EQU_STATE" as equState,
ibjui.project_contraption_id AS projectContraptionId
FROM idx_biz_jg_use_info ibjui
LEFT JOIN idx_biz_jg_tech_params_pipeline ibjtpp ON ibjui.RECORD = ibjtpp.RECORD
......
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