Commit f8887bbb authored by suhuiguang's avatar suhuiguang

Merge branch 'develop_tzs_register_to_0715' of…

Merge branch 'develop_tzs_register_to_0715' of http://36.40.66.175:5000/moa/amos-boot-biz into develop_tzs_register_to_0715
parents 624f6ff8 30ad1f39
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.elevator.api.mapper; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.elevator.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
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.common.api.dto.DPFilterParamDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledQueryDto; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledQueryDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledRecordDto; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledRecordDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertPaperInfoDto; import com.yeejoin.amos.boot.module.elevator.api.dto.AlertPaperInfoDto;
...@@ -52,7 +53,7 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> { ...@@ -52,7 +53,7 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> {
* *
* @return * @return
*/ */
List<Map<String, Object>> queryListByLocation(@Param("regionCode") String regionCode); List<Map<String, Object>> queryListByLocation(@Param("regionCode") String regionCode, @Param("dto") DPFilterParamDto filterParamDto);
/** /**
* 接警情况统计 * 接警情况统计
* *
......
...@@ -147,11 +147,14 @@ ...@@ -147,11 +147,14 @@
LEFT JOIN idx_biz_jg_use_info ibjuj ON tac.equipment_id = ibjuj.RECORD LEFT JOIN idx_biz_jg_use_info ibjuj ON tac.equipment_id = ibjuj.RECORD
LEFT JOIN cb_data_dictionary cdd ON ibjuj.USE_PLACE = cdd.sequence_nbr LEFT JOIN cb_data_dictionary cdd ON ibjuj.USE_PLACE = cdd.sequence_nbr
WHERE WHERE
biz_org_code LIKE concat(#{regionCode}, '%') tac.biz_org_code LIKE concat(#{regionCode}, '%')
AND (tac.alarm_type_code = '960' or tac.alarm_type_code = '961') AND (tac.alarm_type_code = '960' or tac.alarm_type_code = '961')
AND AND
ibjuj.USE_PLACE is NOT NULL ibjuj.USE_PLACE is NOT NULL
AND cdd.NAME is NOT NULL AND cdd.NAME is NOT NULL
<if test="dto.beginDate !=null and dto.beginDate !='' and dto.endDate !=null and dto.endDate !=''">
AND tac.call_time BETWEEN #{dto.beginDate} AND #{dto.endDate}
</if>
GROUP BY GROUP BY
cdd.NAME cdd.NAME
ORDER BY ibjuj.USE_PLACE ASC ORDER BY ibjuj.USE_PLACE ASC
......
...@@ -111,20 +111,20 @@ public class DPStatisticsServiceImpl { ...@@ -111,20 +111,20 @@ public class DPStatisticsServiceImpl {
} }
public JSONObject elevatorCountStat(DPFilterParamDto dpFilterParamDto) throws Exception { public JSONObject elevatorCountStat(DPFilterParamDto dpFilterParamDto) throws Exception {
String regionCode = dpFilterParamDto.getCityCode();
List<RegionModel> regionList = this.getRegionList(dpFilterParamDto); List<RegionModel> regionList = this.getRegionList(dpFilterParamDto);
List<String> xdata = regionList.stream().map(r -> r.getRegionName().toString()).collect(Collectors.toList()); List<String> xdata = regionList.stream().map(r -> r.getRegionName().toString()).collect(Collectors.toList());
if (!regionCode.equals("610000")){
regionCode = "610000#" + regionCode;
}
List<Integer> ydata = new ArrayList<>(); List<Integer> ydata = new ArrayList<>();
String finalRegionCode = regionCode; Map<String, Integer> map = new HashMap<>();
regionList.stream().forEach(x -> {
regionList.parallelStream().forEach(x -> {
LambdaQueryWrapper<Elevator> lambda = new QueryWrapper<Elevator>().lambda(); LambdaQueryWrapper<Elevator> lambda = new QueryWrapper<Elevator>().lambda();
lambda.eq(Elevator::getRegionCode, finalRegionCode + "#" + x.getRegionCode()); lambda.like(Elevator::getRegionCode, x.getRegionCode());
ydata.add(elevatorMapper.selectCount(lambda)); map.put(x.getRegionName(), elevatorMapper.selectCount(lambda));
});
xdata.stream().forEach(x -> {
ydata.add(map.get(x));
}); });
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("xdata", xdata); jsonObject.put("xdata", xdata);
jsonObject.put("ydata", ydata); jsonObject.put("ydata", ydata);
...@@ -133,7 +133,10 @@ public class DPStatisticsServiceImpl { ...@@ -133,7 +133,10 @@ public class DPStatisticsServiceImpl {
public JSONObject eventStatByLocation(DPFilterParamDto dpFilterParamDto) throws Exception { public JSONObject eventStatByLocation(DPFilterParamDto dpFilterParamDto) throws Exception {
String orgCode = this.getAndSetOrgCode(dpFilterParamDto); String orgCode = this.getAndSetOrgCode(dpFilterParamDto);
List<Map<String, Object>> maps = alertCalledMapper.queryListByLocation(orgCode); dpFilterParamDto.setBeginDate(DateUtil.formatDate(DateTimeUtil.getMinValueOfOneDay(DateTimeUtil.addMonths(new Date(), -1)), DateUtil.Y_M_D_HMS));
dpFilterParamDto.setEndDate(DateUtil.formatDate(DateTimeUtil.getMaxValueOfOneDay(new Date()), DateUtil.Y_M_D_HMS));
List<Map<String, Object>> maps = alertCalledMapper.queryListByLocation(orgCode, dpFilterParamDto);
List<Object> xdata = maps.stream().map(item -> item.get("name")).collect(Collectors.toList()); List<Object> xdata = maps.stream().map(item -> item.get("name")).collect(Collectors.toList());
List<Object> ydata = maps.stream().map(item -> item.get("majorAlertCount")).collect(Collectors.toList()); List<Object> ydata = maps.stream().map(item -> item.get("majorAlertCount")).collect(Collectors.toList());
......
...@@ -64,4 +64,10 @@ public class JgChangeRegistrationTransferEq extends BaseEntity { ...@@ -64,4 +64,10 @@ public class JgChangeRegistrationTransferEq extends BaseEntity {
@TableField("device_info") @TableField("device_info")
private String deviceInfo; private String deviceInfo;
/**
* 使用登记证
*/
@TableField("use_registration_code")
private String useRegistrationCode;
} }
...@@ -29,4 +29,6 @@ public interface JgChangeRegistrationTransferMapper extends BaseMapper<JgChangeR ...@@ -29,4 +29,6 @@ public interface JgChangeRegistrationTransferMapper extends BaseMapper<JgChangeR
@Select("select name from tz_equipment_category where code=#{code}") @Select("select name from tz_equipment_category where code=#{code}")
String getEquiplistNameByEquiplist(String code); String getEquiplistNameByEquiplist(String code);
List<String> queryForFlowingEquipList();
} }
...@@ -110,5 +110,7 @@ ...@@ -110,5 +110,7 @@
</if> </if>
recDate desc recDate desc
</select> </select>
<select id="queryForFlowingEquipList" resultType="java.lang.String">
select change_data from tzs_jg_registration_history WHERE registration_class = '移装变更登记'
</select>
</mapper> </mapper>
...@@ -49,14 +49,6 @@ public class JgChangeRegistrationTransferController extends BaseController { ...@@ -49,14 +49,6 @@ public class JgChangeRegistrationTransferController extends BaseController {
@ApiOperation(httpMethod = "POST", value = "新增移装变更登记登记", notes = "新增移装变更登记登记") @ApiOperation(httpMethod = "POST", value = "新增移装变更登记登记", notes = "新增移装变更登记登记")
public ResponseModel<Object> save(@RequestParam(value = "submitType") String submitType, public ResponseModel<Object> save(@RequestParam(value = "submitType") String submitType,
@RequestBody JSONObject map) { @RequestBody JSONObject map) {
Map<String, Object> tableData = (Map<String, Object>) map.get(TABLE_PAGE_ID);
if(ValidationUtil.isEmpty(tableData)){
throw new BadRequest("参数校验失败.");
}
String equId = (String) tableData.get("record");
if(ValidationUtil.isEmpty(equId)){
throw new BadRequest("参数校验失败.");
}
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
return ResponseHelper.buildResponse(jgChangeRegistrationTransferService.createTransfer(submitType, map, reginParams)); return ResponseHelper.buildResponse(jgChangeRegistrationTransferService.createTransfer(submitType, map, reginParams));
} }
...@@ -72,14 +64,6 @@ public class JgChangeRegistrationTransferController extends BaseController { ...@@ -72,14 +64,6 @@ public class JgChangeRegistrationTransferController extends BaseController {
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新移装变更登记登记", notes = "根据sequenceNbr更新移装变更登记登记") @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新移装变更登记登记", notes = "根据sequenceNbr更新移装变更登记登记")
public ResponseModel<Object> updateBySequenceNbr(@RequestParam(value = "submitType") String submitType, public ResponseModel<Object> updateBySequenceNbr(@RequestParam(value = "submitType") String submitType,
@RequestBody JSONObject map) { @RequestBody JSONObject map) {
Map<String, Object> tableData = (Map<String, Object>) map.get(TABLE_PAGE_ID);
if(ValidationUtil.isEmpty(tableData)){
throw new BadRequest("参数校验失败.");
}
String equId = (String) tableData.get("sequenceNbr");
if(ValidationUtil.isEmpty(equId)){
throw new BadRequest("参数校验失败.");
}
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
return ResponseHelper.buildResponse(jgChangeRegistrationTransferService.updateTransfer(submitType, map, reginParams)); return ResponseHelper.buildResponse(jgChangeRegistrationTransferService.updateTransfer(submitType, map, reginParams));
} }
......
...@@ -137,7 +137,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste ...@@ -137,7 +137,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
private static final String IS_COPY = "isCopy"; private static final String IS_COPY = "isCopy";
// 设备种类 // 设备种类
public static final String EQU_LIST = "EQU_LIST"; public static final String EQU_LIST = "EQU_LIST";
//模版上传集合 // 模版上传集合
public static final String EQU_LISTS = "equLists"; public static final String EQU_LISTS = "equLists";
// 设备类别 // 设备类别
public static final String EQU_CATEGORY = "EQU_CATEGORY"; public static final String EQU_CATEGORY = "EQU_CATEGORY";
...@@ -157,11 +157,12 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste ...@@ -157,11 +157,12 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
// 设备来源名称 jg:新设备 jg_his:历史数据 // 设备来源名称 jg:新设备 jg_his:历史数据
public static final String DATA_SOURCE_NAME = "DATA_SOURCE_NAME"; public static final String DATA_SOURCE_NAME = "DATA_SOURCE_NAME";
private static final String ATTACHMENT_UPLOAD = "attachmentUpload"; private static final String ATTACHMENT_UPLOAD = "attachmentUpload";
public static final String USE_PLACE_CODE = "USE_PLACE_CODE";
private final List<String> resultError = new ArrayList<>(); private final List<String> resultError = new ArrayList<>();
List<String> useInnerCodeList = new ArrayList<>();//单位内部编号集合 List<String> useInnerCodeList = new ArrayList<>();// 单位内部编号集合
List<String> equCodeList = new ArrayList<>();//设备代码集合 List<String> equCodeList = new ArrayList<>();// 设备代码集合
List<String> factoryNumList = new ArrayList<>();//出厂编码集合 List<String> factoryNumList = new ArrayList<>();// 出厂编码集合
/** /**
* 业务类型 0:单个新增 1:批量导入 * 业务类型 0:单个新增 1:批量导入
...@@ -549,13 +550,13 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste ...@@ -549,13 +550,13 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
// 历史设备录入 直接取所有的设备种类(equList)下的所有设备类别 // 历史设备录入 直接取所有的设备种类(equList)下的所有设备类别
if ("his".equals(dataSource)) { if ("his".equals(dataSource)) {
// 历史数据导入设备类别限制 bug-21172 // 历史数据导入设备类别限制 bug-21172
if (!ObjectUtils.isEmpty(type) && "PL_DR".equals(type)){ if (!ObjectUtils.isEmpty(type) && "PL_DR".equals(type)) {
return this.baseMapper.queryAllEquCategoriesUnderTheEquList(equList).stream() return this.baseMapper.queryAllEquCategoriesUnderTheEquList(equList).stream()
.filter(x -> "2300".equals(x.getDictDataKey())) .filter(x -> "2300".equals(x.getDictDataKey()))
.collect(Collectors.toList()); .collect(Collectors.toList());
} }
// 历史数据新增设备类别限制 bug-21139 // 历史数据新增设备类别限制 bug-21139
if (!ObjectUtils.isEmpty(equList) && "8000".equals(equList)){ if (!ObjectUtils.isEmpty(equList) && "8000".equals(equList)) {
return this.baseMapper.queryAllEquCategoriesUnderTheEquList(equList).stream() return this.baseMapper.queryAllEquCategoriesUnderTheEquList(equList).stream()
.filter(x -> "8300".equals(x.getDictDataKey())) .filter(x -> "8300".equals(x.getDictDataKey()))
.collect(Collectors.toList()); .collect(Collectors.toList());
...@@ -656,8 +657,10 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste ...@@ -656,8 +657,10 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
} }
return objMap; return objMap;
} }
@Autowired
private SafetyProblemTracingMapper safetyProblemTracingMapper; @Autowired
private SafetyProblemTracingMapper safetyProblemTracingMapper;
/** /**
* 查询设备基本信息 * 查询设备基本信息
* *
...@@ -1348,14 +1351,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1348,14 +1351,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
BoolQueryBuilder dBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder dBuilder = QueryBuilders.boolQuery();
if (map.containsKey("DATA_SOURCE") && !ObjectUtils.isEmpty(map.get("DATA_SOURCE"))) { if (map.containsKey("DATA_SOURCE") && !ObjectUtils.isEmpty(map.get("DATA_SOURCE"))) {
if ("jg_his".equals(map.get("DATA_SOURCE"))) {//只查历史,前缀jg_his if ("jg_his".equals(map.get("DATA_SOURCE"))) {// 只查历史,前缀jg_his
dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg_his")); dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg_his"));
} else if (!"jg_his".equals(map.getString("DATA_SOURCE"))) {//只查新增,前缀为jg且前缀不为jg_his } else if (!"jg_his".equals(map.getString("DATA_SOURCE"))) {// 只查新增,前缀为jg且前缀不为jg_his
dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg")); dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg"));
dBuilder.mustNot(QueryBuilders.prefixQuery("DATA_SOURCE", "jg_his")); dBuilder.mustNot(QueryBuilders.prefixQuery("DATA_SOURCE", "jg_his"));
} }
} else { } else {
//查所有,前缀jg // 查所有,前缀jg
dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg")); dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg"));
} }
boolMust.must(dBuilder); boolMust.must(dBuilder);
...@@ -1363,17 +1366,19 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1363,17 +1366,19 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
String queryType = map.getString("QUERY_TYPE"); String queryType = map.getString("QUERY_TYPE");
if (!ObjectUtils.isEmpty(queryType)) { if (!ObjectUtils.isEmpty(queryType)) {
// 查询 安装告知【可告知设备列表】【USE_UNIT_CREDIT_CODE=== null || ""】 // 查询 安装告知【可告知设备列表】【USE_UNIT_CREDIT_CODE=== null || ""】
if (ValidationUtil.equals(queryType, "AZ")) {//安装 if (ValidationUtil.equals(queryType, "AZ")) {// 安装
BoolQueryBuilder nullOrEmptyQuery = QueryBuilders.boolQuery() BoolQueryBuilder nullOrEmptyQuery = QueryBuilders.boolQuery()
.mustNot(QueryBuilders.wildcardQuery("USE_UNIT_CREDIT_CODE", "*")); .mustNot(QueryBuilders.wildcardQuery("USE_UNIT_CREDIT_CODE", "*"));
boolMust.must(nullOrEmptyQuery); boolMust.must(nullOrEmptyQuery);
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "installNotice"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "installNotice");
} else if (ValidationUtil.equals(queryType, "WB")) {//维保 // 安装告知设备选择 - 业务限制
// 根据设备类别(EQU_CATEGORY)、安装单位过滤设备(USC_UNIT_CREDIT_CODE) 下面过滤条件已有
} else if (ValidationUtil.equals(queryType, "WB")) {// 维保
// 查询 维保备案【可绑定设备列表】【(EQU_STATE=== null || "")】 // 查询 维保备案【可绑定设备列表】【(EQU_STATE=== null || "")】
BoolQueryBuilder wbBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder wbBuilder = QueryBuilders.boolQuery();
wbBuilder.mustNot(QueryBuilders.existsQuery("EQU_STATE")); wbBuilder.mustNot(QueryBuilders.existsQuery("EQU_STATE"));
boolMust.must(wbBuilder); boolMust.must(wbBuilder);
} else if (ValidationUtil.equals(queryType, "SY")) {//使用 } else if (ValidationUtil.equals(queryType, "SY")) {// 使用
// 查询 使用登记【可选设备列表】【(EQU_STATUS=== null || "" ) && (USE_ORG_CODE(使用登记证编号) ==="" || null)】 // 查询 使用登记【可选设备列表】【(EQU_STATUS=== null || "" ) && (USE_ORG_CODE(使用登记证编号) ==="" || null)】
BoolQueryBuilder syBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder syBuilder = QueryBuilders.boolQuery();
syBuilder.mustNot(QueryBuilders.existsQuery("EQU_STATE")); syBuilder.mustNot(QueryBuilders.existsQuery("EQU_STATE"));
...@@ -1392,6 +1397,32 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1392,6 +1397,32 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
syBuilder.must(QueryBuilders.existsQuery("EQU_STATE")); syBuilder.must(QueryBuilders.existsQuery("EQU_STATE"));
syBuilder.must(QueryBuilders.wildcardQuery("USE_ORG_CODE", "*")); syBuilder.must(QueryBuilders.wildcardQuery("USE_ORG_CODE", "*"));
boolMust.must(syBuilder); boolMust.must(syBuilder);
if (ValidationUtil.equals(queryType, "GZ_GZ")) {// 改造告知设备选择 - 业务限制
// 设备类别(EQU_CATEGORY)、安装单位(USC_UNIT_CREDIT_CODE)、选择的使用单位(USE_UNIT_CREDIT_CODE)、选择的区县(USE_PLACE_CODE)过滤数据
if (ValidationUtil.isEmpty(map.get("useUnitCreditCode")) || ValidationUtil.isEmpty(map.get("county"))) {
throw new BadRequest("请先选择使用单位,施工区县等信息");
}
map.put("USE_UNIT_CREDIT_CODE", map.get("useUnitCreditCode"));
map.put(USE_PLACE_CODE, String.valueOf(map.get("county")).split("_")[0]);
} else if (ValidationUtil.equals(queryType, "GZ_WX")) {// 维修告知设备选择 - 业务限制
// 设备类别(EQU_CATEGORY)、安装单位(USC_UNIT_CREDIT_CODE)、选择的使用单位(USE_UNIT_CREDIT_CODE)、选择的区县(USE_PLACE_CODE)过滤数据
if (ValidationUtil.isEmpty(map.get("useUnitCreditCode")) || ValidationUtil.isEmpty(map.get("county"))) {
throw new BadRequest("请先选择使用单位,施工区县等信息");
}
map.put("USE_UNIT_CREDIT_CODE", map.get("useUnitCreditCode"));
map.put(USE_PLACE_CODE, String.valueOf(map.get("county")).split("_")[0]);
} else if (ValidationUtil.equals(queryType, "GZ_YZ")) {// 移装告知设备选择 - 业务限制
// 设备类别(EQU_CATEGORY)、安装单位(USC_UNIT_CREDIT_CODE)、选择的使用单位(USE_UNIT_CREDIT_CODE)、(区内移装(transferType=区内移装)根据区县(USE_PLACE_CODE))过滤数据
if (ValidationUtil.isEmpty(map.get("useUnitCreditCode"))) {
throw new BadRequest("请先选择使用单位等信息");
}
if (!ValidationUtil.isEmpty(map.get("transferType")) && ValidationUtil.equals(map.get("transferType"), "区内移装")
&& ValidationUtil.isEmpty(map.get("county"))) {
throw new BadRequest("请先选择施工区域等信息");
}
map.put("USE_UNIT_CREDIT_CODE", map.get("useUnitCreditCode"));
map.put(USE_PLACE_CODE, ValidationUtil.equals(map.get("transferType"), "区内移装") ? String.valueOf(map.get("county")).split("_")[0] : null);
}
} }
// this.setRepeatUsedCheckFilterByType(boolMust,companyCode,queryType); // this.setRepeatUsedCheckFilterByType(boolMust,companyCode,queryType);
} }
...@@ -1437,11 +1468,10 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1437,11 +1468,10 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
BoolQueryBuilder ubuilder = QueryBuilders.boolQuery(); BoolQueryBuilder ubuilder = QueryBuilders.boolQuery();
String useCode = QueryParser.escape(map.getString("USE_UNIT_CREDIT_CODE")); String useCode = QueryParser.escape(map.getString("USE_UNIT_CREDIT_CODE"));
useCode = useCode.contains("_") ? useCode.split("_")[0] : useCode; useCode = useCode.contains("_") ? useCode.split("_")[0] : useCode;
ubuilder.should(QueryBuilders.matchQuery("USE_UNIT_CREDIT_CODE", useCode)); ubuilder.must(QueryBuilders.matchQuery("USE_UNIT_CREDIT_CODE", useCode));
String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase(); String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase();
ubuilder.should(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + uscCode + "*")); ubuilder.must(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + QueryParser.escape(uscCode) + "*"));
ubuilder.minimumShouldMatch(1);
boolMust.must(ubuilder); boolMust.must(ubuilder);
} else { } else {
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE")) || !ObjectUtils.isEmpty(map.getString("useUnitCreditCode"))) { if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE")) || !ObjectUtils.isEmpty(map.getString("useUnitCreditCode"))) {
...@@ -1455,7 +1485,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1455,7 +1485,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
if (!ObjectUtils.isEmpty(map.getString("USC_UNIT_CREDIT_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("USC_UNIT_CREDIT_CODE"))) {
BoolQueryBuilder uuccBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder uuccBuilder = QueryBuilders.boolQuery();
String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase(); String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase();
uuccBuilder.must(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + uscCode + "*")); uuccBuilder.must(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + QueryParser.escape(uscCode) + "*"));
boolMust.must(uuccBuilder); boolMust.must(uuccBuilder);
} }
} }
...@@ -1515,28 +1545,35 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1515,28 +1545,35 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
if (!ObjectUtils.isEmpty(map.getString(EQU_CODE))) { if (!ObjectUtils.isEmpty(map.getString(EQU_CODE))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(EQU_CODE)); String test = QueryParser.escape(map.getString(EQU_CODE));
pBuilder.must(QueryBuilders.wildcardQuery(EQU_CODE, "*" + test.toLowerCase() + "*")); pBuilder.must(QueryBuilders.wildcardQuery(EQU_CODE, "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder); boolMust.must(pBuilder);
} }
// 单位内部编号模糊查询 // 单位内部编号模糊查询
if (!ObjectUtils.isEmpty(map.getString("USE_INNER_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("USE_INNER_CODE"))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_INNER_CODE")); String test = QueryParser.escape(map.getString("USE_INNER_CODE"));
pBuilder.must(QueryBuilders.wildcardQuery("USE_INNER_CODE", "*" + test.toLowerCase() + "*")); pBuilder.must(QueryBuilders.wildcardQuery("USE_INNER_CODE", "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder); boolMust.must(pBuilder);
} }
// 出厂编号/产品编码模糊查询 // 出厂编号/产品编码模糊查询
if (!ObjectUtils.isEmpty(map.getString(FACTORY_NUM))) { if (!ObjectUtils.isEmpty(map.getString(FACTORY_NUM))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(FACTORY_NUM)); String test = QueryParser.escape(map.getString(FACTORY_NUM));
pBuilder.must(QueryBuilders.wildcardQuery(FACTORY_NUM, "*" + test.toLowerCase() + "*")); pBuilder.must(QueryBuilders.wildcardQuery(FACTORY_NUM, "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder); boolMust.must(pBuilder);
} }
// 制造单位(生产单位)名称模糊查询 // 制造单位(生产单位)名称模糊查询
if (!ObjectUtils.isEmpty(map.getString("PRODUCE_UNIT_NAME"))) { if (!ObjectUtils.isEmpty(map.getString("PRODUCE_UNIT_NAME"))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery(); BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("PRODUCE_UNIT_NAME")); String test = QueryParser.escape(map.getString("PRODUCE_UNIT_NAME"));
pBuilder.must(QueryBuilders.wildcardQuery("PRODUCE_UNIT_NAME", "*" + test.toLowerCase() + "*")); pBuilder.must(QueryBuilders.wildcardQuery("PRODUCE_UNIT_NAME", "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder);
}
// 模糊查询
if (!ObjectUtils.isEmpty(map.getString(USE_PLACE_CODE))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(USE_PLACE_CODE));
pBuilder.must(QueryBuilders.wildcardQuery(USE_PLACE_CODE, "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder); boolMust.must(pBuilder);
} }
builder.query(boolMust); builder.query(boolMust);
...@@ -1637,39 +1674,39 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -1637,39 +1674,39 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
} }
private void setRepeatUsedCheckFilterByType(BoolQueryBuilder boolMust, String companyCode, String queryType) { private void setRepeatUsedCheckFilterByType(BoolQueryBuilder boolMust, String companyCode, String queryType) {
if("AZ".equals(queryType)){//安装告知 if ("AZ".equals(queryType)) {// 安装告知
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "installNotice"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "installNotice");
}else if("GZ_GZ".equals(queryType)){//改造告知 } else if ("GZ_GZ".equals(queryType)) {// 改造告知
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "renovationNoticeNew"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "renovationNoticeNew");
}else if("GZ_WX".equals(queryType)){//维修告知 } else if ("GZ_WX".equals(queryType)) {// 维修告知
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "maintainInfo"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "maintainInfo");
}else if("GZ_YZ".equals(queryType)){//移装告知 } else if ("GZ_YZ".equals(queryType)) {// 移装告知
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "transferNotice"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "transferNotice");
}else if("SY".equals(queryType)){//使用登记 } else if ("SY".equals(queryType)) {// 使用登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "useRegister"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "useRegister");
}else if("DJ_GZ".equals(queryType)){//改造变更登记 } else if ("DJ_GZ".equals(queryType)) {// 改造变更登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeRegistration"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeRegistration");
}else if("DJ_YZ".equals(queryType)){//移装变更登记 } else if ("DJ_YZ".equals(queryType)) {// 移装变更登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeRegistrationTransfer"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeRegistrationTransfer");
}else if("DJ_DW".equals(queryType)){//单位变更登记 } else if ("DJ_DW".equals(queryType)) {// 单位变更登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "unitChange"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "unitChange");
}else if("DJ_GM".equals(queryType)){//更名变更登记 } else if ("DJ_GM".equals(queryType)) {// 更名变更登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeName"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "changeName");
}else if("BF_YZ".equals(queryType)){//注销 } else if ("BF_YZ".equals(queryType)) {// 注销
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, ""); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "");
}else if("BF_ZX".equals(queryType)){//报废 } else if ("BF_ZX".equals(queryType)) {// 报废
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, ""); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "");
}else if("SB_QY".equals(queryType)){//启用 } else if ("SB_QY".equals(queryType)) {// 启用
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, ""); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "");
}else if("SB_TY".equals(queryType)){//停用 } else if ("SB_TY".equals(queryType)) {// 停用
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, ""); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "");
}else if("WB_BA".equals(queryType)){//维保备案 } else if ("WB_BA".equals(queryType)) {// 维保备案
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "maintenanceFiling"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "maintenanceFiling");
}else if("SB_YJ".equals(queryType)){//设备移交 } else if ("SB_YJ".equals(queryType)) {// 设备移交
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "equipmentHandover"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "equipmentHandover");
}else if("QP_BG".equals(queryType)){//车用气瓶变更 } else if ("QP_BG".equals(queryType)) {// 车用气瓶变更
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "vehicleGasCylinderChange"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "vehicleGasCylinderChange");
}else if("QP_DJ".equals(queryType)){//车用气瓶登记 } else if ("QP_DJ".equals(queryType)) {// 车用气瓶登记
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "vehicleInformation"); this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "vehicleInformation");
} }
} }
...@@ -2046,10 +2083,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2046,10 +2083,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
object.put("orgCode", company.getOrgCode()); object.put("orgCode", company.getOrgCode());
object.put("companyName", company.getCompanyName()); object.put("companyName", company.getCompanyName());
object.put("companyCode", company.getCompanyCode()); object.put("companyCode", company.getCompanyCode());
CompanyModel result = Privilege.companyClient.queryByCompanyCode(company.getCompanyCode()).getResult(); object.put("companyType", company.getCompanyType());
if (!ValidationUtil.isEmpty(result)) {
object.put("companyType", result.getCompanyType());
}
} }
return object; return object;
} }
...@@ -2098,14 +2132,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2098,14 +2132,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
String sourceRecord = equipmentClassForm.get(RECORD).toString(); String sourceRecord = equipmentClassForm.get(RECORD).toString();
// dataSource = "new".equals(equipSource) ? ("jg_" + sourceRecord) : ("jg_his_" + sourceRecord); // dataSource = "new".equals(equipSource) ? ("jg_" + sourceRecord) : ("jg_his_" + sourceRecord);
// bug-21203 // bug-21203
if (equipmentInfoForm.containsKey("DATA_SOURCE")){ if (equipmentInfoForm.containsKey("DATA_SOURCE")) {
String dataSourceCopy = equipmentInfoForm.get("DATA_SOURCE").toString(); String dataSourceCopy = equipmentInfoForm.get("DATA_SOURCE").toString();
if (dataSourceCopy.startsWith("jg_his")){ if (dataSourceCopy.startsWith("jg_his")) {
dataSource = "jg_his_" + sourceRecord; dataSource = "jg_his_" + sourceRecord;
}else { } else {
dataSource = "jg_" + sourceRecord; dataSource = "jg_" + sourceRecord;
} }
}else { } else {
throw new BadRequest("数据异常,请联系管理员"); throw new BadRequest("数据异常,请联系管理员");
} }
} }
...@@ -2236,7 +2270,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2236,7 +2270,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
} }
iIdxBizJgOtherInfoService.saveOrUpdateData(otherInfo); iIdxBizJgOtherInfoService.saveOrUpdateData(otherInfo);
if(CylinderTypeEnum.CYLINDER.getCode().equals(equCategory) || "2100".equals(equCategory)) { if (CylinderTypeEnum.CYLINDER.getCode().equals(equCategory) || "2100".equals(equCategory)) {
IdxBizJgInspectionDetectionInfo inspectionDetectionInfo = JSON.parseObject(JSON.toJSONString(equipmentInfoForm), IdxBizJgInspectionDetectionInfo.class); IdxBizJgInspectionDetectionInfo inspectionDetectionInfo = JSON.parseObject(JSON.toJSONString(equipmentInfoForm), IdxBizJgInspectionDetectionInfo.class);
List<Map<String, Object>> inspectionAndTestingInstitutions = commonMapper.getUnitListByType(INSPECTION_AND_TESTING_INSTITUTIONS); List<Map<String, Object>> inspectionAndTestingInstitutions = commonMapper.getUnitListByType(INSPECTION_AND_TESTING_INSTITUTIONS);
Optional<Map<String, Object>> optional = inspectionAndTestingInstitutions.stream().filter(x -> x.get("useCode").equals(inspectionDetectionInfo.getInspectOrgCode())).findFirst(); Optional<Map<String, Object>> optional = inspectionAndTestingInstitutions.stream().filter(x -> x.get("useCode").equals(inspectionDetectionInfo.getInspectOrgCode())).findFirst();
...@@ -2456,9 +2490,9 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2456,9 +2490,9 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
jsonObject.put("useUnitCreditCode", useUnitCreditCode); jsonObject.put("useUnitCreditCode", useUnitCreditCode);
Page<JSONObject> page = new Page<>(jsonObject.getLong("number"), jsonObject.getLong("size")); Page<JSONObject> page = new Page<>(jsonObject.getLong("number"), jsonObject.getLong("size"));
Set<String> records = EquipUsedCheckStrategyContext.getUsedStrategy("useRegister").getEquipInFlow(useUnitCreditCode); Set<String> records = EquipUsedCheckStrategyContext.getUsedStrategy("useRegister").getEquipInFlow(useUnitCreditCode);
if ("8300".equals(jsonObject.get("EQU_CATEGORY_CODE"))) {//管道 if ("8300".equals(jsonObject.get("EQU_CATEGORY_CODE"))) {// 管道
return jgUseRegistrationMapper.queryForUnitPipelineEquipmentPage(page, jsonObject, records); return jgUseRegistrationMapper.queryForUnitPipelineEquipmentPage(page, jsonObject, records);
} else if ("2300".equals(jsonObject.get("EQU_CATEGORY_CODE"))) {//气瓶 } else if ("2300".equals(jsonObject.get("EQU_CATEGORY_CODE"))) {// 气瓶
List<DictionarieValueModel> fillingMedium = Systemctl.dictionarieClient.dictValues("FILLING_MEDIUM").getResult(); List<DictionarieValueModel> fillingMedium = Systemctl.dictionarieClient.dictValues("FILLING_MEDIUM").getResult();
Map<String, Object> fillingMediumMap = fillingMedium.stream().collect(Collectors.toMap(DictionarieValueModel::getDictDataKey, DictionarieValueModel::getDictDataValue)); Map<String, Object> fillingMediumMap = fillingMedium.stream().collect(Collectors.toMap(DictionarieValueModel::getDictDataKey, DictionarieValueModel::getDictDataValue));
Page<JSONObject> result = jgUseRegistrationMapper.queryForUnitVesselEquipmentPage(page, jsonObject, records); Page<JSONObject> result = jgUseRegistrationMapper.queryForUnitVesselEquipmentPage(page, jsonObject, records);
...@@ -2617,14 +2651,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2617,14 +2651,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
String insUseMaintainExplain = getUrlByKey(fileDataList, "INS_USE_MAINTAIN_EXPLAIN"); String insUseMaintainExplain = getUrlByKey(fileDataList, "INS_USE_MAINTAIN_EXPLAIN");
String otherAccessoriesFact = getUrlByKey(fileDataList, "OTHER_ACCESSORIES_FACT"); String otherAccessoriesFact = getUrlByKey(fileDataList, "OTHER_ACCESSORIES_FACT");
String factSupervisionInspectionReport = getUrlByKey(fileDataList, "FACT_SUPERVISION_INSPECTION_REPORT"); String factSupervisionInspectionReport = getUrlByKey(fileDataList, "FACT_SUPERVISION_INSPECTION_REPORT");
//使用信息 // 使用信息
IdxBizJgUseInfo useInfo = new IdxBizJgUseInfo(); IdxBizJgUseInfo useInfo = new IdxBizJgUseInfo();
BeanUtils.copyProperties(data, useInfo); BeanUtils.copyProperties(data, useInfo);
useInfo.setRecord(record); useInfo.setRecord(record);
useInfo.setRecDate(new Date()); useInfo.setRecDate(new Date());
useInfo.setDataSource("his".equals(equipInfoDto.getDataSource()) ? "jg_his" : "jg");//区分历史设备和新增设备 useInfo.setDataSource("his".equals(equipInfoDto.getDataSource()) ? "jg_his" : "jg");// 区分历史设备和新增设备
useInfo.setEquState(null); useInfo.setEquState(null);
useInfo.setIsIntoManagement("his".equals(equipInfoDto.getDataSource()));//历史气瓶导入为已纳管设备 useInfo.setIsIntoManagement("his".equals(equipInfoDto.getDataSource()));// 历史气瓶导入为已纳管设备
// 使用单位信息 // 使用单位信息
if ("个人主体".equals(company.getCompanyType())) { if ("个人主体".equals(company.getCompanyType())) {
useInfo.setUseUnitCreditCode(company.getCompanyCode().split("_")[1]); useInfo.setUseUnitCreditCode(company.getCompanyCode().split("_")[1]);
...@@ -2635,7 +2669,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2635,7 +2669,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
} }
useInfoList.add(useInfo); useInfoList.add(useInfo);
//设计信息 // 设计信息
IdxBizJgDesignInfo designInfo = new IdxBizJgDesignInfo(); IdxBizJgDesignInfo designInfo = new IdxBizJgDesignInfo();
BeanUtils.copyProperties(data, designInfo); BeanUtils.copyProperties(data, designInfo);
designInfo.setRecord(record); designInfo.setRecord(record);
...@@ -2648,7 +2682,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2648,7 +2682,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
designInfo.setOtherAccessoriesDes(otherAccessoriesDes); designInfo.setOtherAccessoriesDes(otherAccessoriesDes);
designInfoList.add(designInfo); designInfoList.add(designInfo);
//制造信息 // 制造信息
IdxBizJgFactoryInfo factoryInfo = new IdxBizJgFactoryInfo(); IdxBizJgFactoryInfo factoryInfo = new IdxBizJgFactoryInfo();
BeanUtils.copyProperties(data, factoryInfo); BeanUtils.copyProperties(data, factoryInfo);
factoryInfo.setRecord(record); factoryInfo.setRecord(record);
...@@ -2662,7 +2696,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2662,7 +2696,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
factoryInfo.setImported(Optional.ofNullable(data.getImported()).orElse("0")); factoryInfo.setImported(Optional.ofNullable(data.getImported()).orElse("0"));
factoryInfoList.add(factoryInfo); factoryInfoList.add(factoryInfo);
//注册登记 // 注册登记
IdxBizJgRegisterInfo registerInfo = new IdxBizJgRegisterInfo(); IdxBizJgRegisterInfo registerInfo = new IdxBizJgRegisterInfo();
BeanUtils.copyProperties(data, registerInfo); BeanUtils.copyProperties(data, registerInfo);
registerInfo.setRecord(record); registerInfo.setRecord(record);
...@@ -2679,14 +2713,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2679,14 +2713,14 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
} }
registerInfoList.add(registerInfo); registerInfoList.add(registerInfo);
//检验检测 // 检验检测
IdxBizJgInspectionDetectionInfo inspectionDetectionInfo = new IdxBizJgInspectionDetectionInfo(); IdxBizJgInspectionDetectionInfo inspectionDetectionInfo = new IdxBizJgInspectionDetectionInfo();
BeanUtils.copyProperties(data, inspectionDetectionInfo); BeanUtils.copyProperties(data, inspectionDetectionInfo);
inspectionDetectionInfo.setInspectOrgCode(data.getInspectOrgCode()); inspectionDetectionInfo.setInspectOrgCode(data.getInspectOrgCode());
inspectionDetectionInfo.setRecord(record); inspectionDetectionInfo.setRecord(record);
inspectionDetectionInfo.setRecDate(new Date()); inspectionDetectionInfo.setRecDate(new Date());
inspectionDetectionInfo.setInspectType("ZZJDJY"); inspectionDetectionInfo.setInspectType("ZZJDJY");
inspectionDetectionInfo.setInspectConclusion("6040");//默认合格 inspectionDetectionInfo.setInspectConclusion("6040");// 默认合格
inspectionDetectionInfo.setInspectDate(DateUtil.parse(data.getInspectDate(), "yyyy-MM-dd")); inspectionDetectionInfo.setInspectDate(DateUtil.parse(data.getInspectDate(), "yyyy-MM-dd"));
// 根据条件确定增加的年数 // 根据条件确定增加的年数
inspectionDetectionInfo.setNextInspectDate(Date.from( inspectionDetectionInfo.setNextInspectDate(Date.from(
...@@ -2707,7 +2741,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2707,7 +2741,7 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
} }
otherInfoList.add(otherInfo); otherInfoList.add(otherInfo);
//技术参数 // 技术参数
IdxBizJgTechParamsVessel paramsVessel = new IdxBizJgTechParamsVessel(); IdxBizJgTechParamsVessel paramsVessel = new IdxBizJgTechParamsVessel();
BeanUtils.copyProperties(data, paramsVessel); BeanUtils.copyProperties(data, paramsVessel);
paramsVessel.setRecord(record); paramsVessel.setRecord(record);
...@@ -2745,9 +2779,9 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2745,9 +2779,9 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
if ("his".equals(equipInfoDto.getDataSource())) { if ("his".equals(equipInfoDto.getDataSource())) {
// 生成tzs_jg_certificate_change_record_eq记录 // 生成tzs_jg_certificate_change_record_eq记录
JgCertificateChangeRecordEq changeRecordEq = new JgCertificateChangeRecordEq(); JgCertificateChangeRecordEq changeRecordEq = new JgCertificateChangeRecordEq();
changeRecordEq.setChangeRecordId(String.valueOf(changeRecordId));//登记证记录主键 changeRecordEq.setChangeRecordId(String.valueOf(changeRecordId));// 登记证记录主键
changeRecordEq.setEquId(registerInfo.getRecord());//设备主键 changeRecordEq.setEquId(registerInfo.getRecord());// 设备主键
changeRecordEq.setProductCode(factoryInfo.getFactoryNum());//产品编号 changeRecordEq.setProductCode(factoryInfo.getFactoryNum());// 产品编号
certificateChangeRecordEqService.save(changeRecordEq); certificateChangeRecordEqService.save(changeRecordEq);
} }
}); });
...@@ -2823,13 +2857,13 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper; ...@@ -2823,13 +2857,13 @@ private SafetyProblemTracingMapper safetyProblemTracingMapper;
changeRecord.setAuditPassDate(new Date()); changeRecord.setAuditPassDate(new Date());
changeRecord.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName()); changeRecord.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName());
changeRecord.setRegDate(registrationManage.getCreateDate()); changeRecord.setRegDate(registrationManage.getCreateDate());
changeRecord.setChangeContent(this.buildRecordContent(registrationManage));//变更内容 changeRecord.setChangeContent(this.buildRecordContent(registrationManage));// 变更内容
changeRecord.setUseRegistrationCode(registrationManage.getUseRegistrationCode());//使用登记编号 changeRecord.setUseRegistrationCode(registrationManage.getUseRegistrationCode());// 使用登记编号
changeRecord.setReceiveCompanyCode(registrationManage.getReceiveCompanyCode());//接收机构公司代码 changeRecord.setReceiveCompanyCode(registrationManage.getReceiveCompanyCode());// 接收机构公司代码
changeRecord.setCertificateNo(registrationManage.getCertificateNo());//登记证书唯一码 changeRecord.setCertificateNo(registrationManage.getCertificateNo());// 登记证书唯一码
changeRecord.setUseUnitCreditCode(registrationManage.getUseUnitCreditCode());//使用单位统一信用代码 changeRecord.setUseUnitCreditCode(registrationManage.getUseUnitCreditCode());// 使用单位统一信用代码
changeRecord.setUseUnitName(registrationManage.getUseUnitName());//使用单位名称 changeRecord.setUseUnitName(registrationManage.getUseUnitName());// 使用单位名称
changeRecord.setEquCategory(registrationManage.getEquCategory());//设备类别编码 changeRecord.setEquCategory(registrationManage.getEquCategory());// 设备类别编码
changeRecord.setRoutePath(""); changeRecord.setRoutePath("");
changeRecord.setCreateDate(new Date()); changeRecord.setCreateDate(new Date());
changeRecord.setSequenceNbr(changeRecordId); changeRecord.setSequenceNbr(changeRecordId);
......
...@@ -2,12 +2,13 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl; ...@@ -2,12 +2,13 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence; import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.ImmutableMap;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo; 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.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity; import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
...@@ -23,9 +24,13 @@ import com.yeejoin.amos.boot.module.jg.api.mapper.*; ...@@ -23,9 +24,13 @@ import com.yeejoin.amos.boot.module.jg.api.mapper.*;
import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransferEqService; import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransferEqService;
import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransferService; import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransferService;
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.biz.config.LocalBadRequest;
import com.yeejoin.amos.boot.module.jg.biz.context.EquipUsedCheckStrategyContext;
import com.yeejoin.amos.boot.module.jg.biz.context.FlowingEquipRedisContext;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient; 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.jg.biz.service.ICmWorkflowService;
import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService; import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgOtherInfoService;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgUseInfoService; import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgUseInfoService;
import com.yeejoin.amos.boot.module.ymt.api.entity.*; import com.yeejoin.amos.boot.module.ymt.api.entity.*;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum; import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
...@@ -46,6 +51,7 @@ import org.redisson.api.RedissonClient; ...@@ -46,6 +51,7 @@ import org.redisson.api.RedissonClient;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean; import org.typroject.tyboot.core.foundation.utils.Bean;
...@@ -60,6 +66,7 @@ import java.util.concurrent.TimeUnit; ...@@ -60,6 +66,7 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.yeejoin.amos.boot.module.jg.biz.service.impl.JgUseRegistrationServiceImpl.getAuditPassedDate; import static com.yeejoin.amos.boot.module.jg.biz.service.impl.JgUseRegistrationServiceImpl.getAuditPassedDate;
/** /**
...@@ -72,6 +79,7 @@ import static com.yeejoin.amos.boot.module.jg.biz.service.impl.JgUseRegistration ...@@ -72,6 +79,7 @@ import static com.yeejoin.amos.boot.module.jg.biz.service.impl.JgUseRegistration
public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChangeRegistrationTransferDto, JgChangeRegistrationTransfer, JgChangeRegistrationTransferMapper> implements IJgChangeRegistrationTransferService { public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChangeRegistrationTransferDto, JgChangeRegistrationTransfer, JgChangeRegistrationTransferMapper> implements IJgChangeRegistrationTransferService {
private static final String PROCESS_DEFINITION_KEY = "changeRegistrationTransfer"; private static final String PROCESS_DEFINITION_KEY = "changeRegistrationTransfer";
private static final String TABLE_PAGE_ID = "changeRegistrationTransfer"; private static final String TABLE_PAGE_ID = "changeRegistrationTransfer";
private final List<String> NOT_FLOWING_STATE = Arrays.asList("使用单位待提交", "一级受理已驳回", "使用单位已撤回", "已作废", "已完成");
@Autowired @Autowired
RestHighLevelClient restHighLevelClient; RestHighLevelClient restHighLevelClient;
@Autowired @Autowired
...@@ -128,6 +136,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -128,6 +136,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
private JgCertificateChangeRecordEqServiceImpl certificateChangeRecordEqService; private JgCertificateChangeRecordEqServiceImpl certificateChangeRecordEqService;
@Autowired @Autowired
private JgUseRegistrationManageServiceImpl useRegistrationManageService; private JgUseRegistrationManageServiceImpl useRegistrationManageService;
@Autowired
private IIdxBizJgOtherInfoService otherInfoService;
/** /**
* 新增移装变更登记 * 新增移装变更登记
...@@ -137,8 +147,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -137,8 +147,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* @return * @return
*/ */
@GlobalTransactional(rollbackFor = Exception.class) @GlobalTransactional(rollbackFor = Exception.class)
@Transactional(rollbackFor = Exception.class)
public List<JgChangeRegistrationTransferDto> createTransfer(String submitType, JSONObject map, ReginParams reginParams) { public List<JgChangeRegistrationTransferDto> createTransfer(String submitType, JSONObject map, ReginParams reginParams) {
try {
Map<String, Object> tableData = (Map<String, Object>) map.get(TABLE_PAGE_ID); Map<String, Object> tableData = (Map<String, Object>) map.get(TABLE_PAGE_ID);
if (ValidationUtil.isEmpty(tableData)) { if (ValidationUtil.isEmpty(tableData)) {
throw new BadRequest("参数校验失败."); throw new BadRequest("参数校验失败.");
...@@ -167,6 +178,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -167,6 +178,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
throw new BadRequest("使用登记证不能为空"); throw new BadRequest("使用登记证不能为空");
} }
if ("1".equals(submitType)) {
this.repeatUsedEquipCheck(registrationIdList, reginParams.getCompany().getCompanyCode());
}
//查询证下的设备
List<JSONObject> deviceList = registrationManageService.queryEquByCertificateSeqList(registrationIdList); List<JSONObject> deviceList = registrationManageService.queryEquByCertificateSeqList(registrationIdList);
// 获取单位变更设备列表 // 获取单位变更设备列表
if (CollectionUtils.isEmpty(deviceList)) { if (CollectionUtils.isEmpty(deviceList)) {
...@@ -304,12 +320,13 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -304,12 +320,13 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
List<JgChangeRegistrationTransferEq> oldTransferEqList = new ArrayList<>(Collections.emptyList()); List<JgChangeRegistrationTransferEq> oldTransferEqList = new ArrayList<>(Collections.emptyList());
deviceList.forEach(device -> { deviceList.forEach(device -> {
JgChangeRegistrationTransferEq equip = new JgChangeRegistrationTransferEq(); JgChangeRegistrationTransferEq equip = new JgChangeRegistrationTransferEq();
equip.setEquipTransferId(sequenceNbr); equip.setEquipTransferId(String.valueOf(finalOldTransfer.getSequenceNbr()));
equip.setEquId((String) device.get("RECORD")); equip.setEquId((String) device.get("SEQUENCE_NBR"));
equip.setEquList((String) device.get("EQU_LIST")); equip.setEquList((String) device.get("EQU_LIST_CODE"));
equip.setEquCategory((String) device.get("EQU_CATEGORY")); equip.setEquCategory((String) device.get("EQU_CATEGORY_CODE"));
equip.setEquDefine((String) device.get("EQU_DEFINE")); equip.setEquDefine((String) device.get("EQU_DEFINE_CODE"));
equip.setDeviceInfo(JSONObject.toJSONString(device)); equip.setDeviceInfo(JSONObject.toJSONString(device));
equip.setUseRegistrationCode((String) device.get("USE_ORG_CODE"));
oldTransferEqList.add(equip); oldTransferEqList.add(equip);
}); });
jgChangeRegistrationTransferEqService.saveBatch(oldTransferEqList); jgChangeRegistrationTransferEqService.saveBatch(oldTransferEqList);
...@@ -366,6 +383,17 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -366,6 +383,17 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
resultDto.setEquCode((String) tableData.get("equCode")); resultDto.setEquCode((String) tableData.get("equCode"));
resultDto.setInnerCode((String) tableData.get("useInnerCode")); resultDto.setInnerCode((String) tableData.get("useInnerCode"));
return Collections.singletonList(resultDto); return Collections.singletonList(resultDto);
} catch (BadRequest | LocalBadRequest e) {
log.error(e.getMessage(), e);
this.rollBackForDelRedisData();
throw e;
} catch (Exception e) {
log.error(e.getMessage(), e);
this.rollBackForDelRedisData();
throw new BadRequest("保存失败!");
} finally {
FlowingEquipRedisContext.clean();
}
} }
/** /**
...@@ -375,6 +403,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -375,6 +403,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* @return * @return
*/ */
@GlobalTransactional(rollbackFor = Exception.class) @GlobalTransactional(rollbackFor = Exception.class)
@Transactional(rollbackFor = Exception.class)
public List<JgChangeRegistrationTransferDto> updateTransfer(String submitType, JSONObject map, ReginParams reginParams) { public List<JgChangeRegistrationTransferDto> updateTransfer(String submitType, JSONObject map, ReginParams reginParams) {
return this.createTransfer(submitType, map, reginParams); return this.createTransfer(submitType, map, reginParams);
} }
...@@ -403,7 +432,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -403,7 +432,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
try { try {
boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS); boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS);
// 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回) // 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回)
if(!isLocked){ if (!isLocked) {
throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!"); throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!");
} }
// 流程执行时,状态及权限校验 // 流程执行时,状态及权限校验
...@@ -431,10 +460,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -431,10 +460,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
workflowResult = commonService.buildWorkFlowInfo(Collections.singletonList(complete)).get(0); workflowResult = commonService.buildWorkFlowInfo(Collections.singletonList(complete)).get(0);
// 更新下一步执行人 // 更新下一步执行人
this.updateExecuteIds(instanceId, transfer, operate, workflowResult); this.updateExecuteIds(instanceId, transfer, operate, workflowResult);
delRepeatUseEquipData(transfer);
} catch (InterruptedException e) { } catch (InterruptedException e) {
e.printStackTrace(); e.printStackTrace();
} finally { } finally {
if(lock.isHeldByCurrentThread()){ if (lock.isHeldByCurrentThread()) {
lock.unlock(); lock.unlock();
} }
} }
...@@ -453,7 +483,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -453,7 +483,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
try { try {
boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS); boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS);
// 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回) // 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回)
if(!isLocked){ if (!isLocked) {
throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!"); throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!");
} }
// 撤回校验 // 撤回校验
...@@ -496,10 +526,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -496,10 +526,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
// redis流程实时数据更新 // redis流程实时数据更新
commonServiceImpl.saveExecuteFlowData2Redis(instanceId, this.buildInstanceRuntimeData(jgTransfer)); commonServiceImpl.saveExecuteFlowData2Redis(instanceId, this.buildInstanceRuntimeData(jgTransfer));
delRepeatUseEquipData(jgTransfer);
} catch (InterruptedException e) { } catch (InterruptedException e) {
e.printStackTrace(); e.printStackTrace();
} finally { } finally {
if(lock.isHeldByCurrentThread()){ if (lock.isHeldByCurrentThread()) {
lock.unlock(); lock.unlock();
} }
} }
...@@ -528,7 +559,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -528,7 +559,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
for (Long sequenceNbr : sequenceNbrs) { for (Long sequenceNbr : sequenceNbrs) {
JgChangeRegistrationTransfer registrationTransfer = this.baseMapper.selectById(sequenceNbr); JgChangeRegistrationTransfer registrationTransfer = this.baseMapper.selectById(sequenceNbr);
// 删除代办 + 中止流程 // 删除代办 + 中止流程
commonService.deleteTaskModel(String.valueOf(sequenceNbr),registrationTransfer.getInstanceId()); commonService.deleteTaskModel(String.valueOf(sequenceNbr), registrationTransfer.getInstanceId());
// 删除单子 // 删除单子
this.baseMapper.deleteById(sequenceNbr); this.baseMapper.deleteById(sequenceNbr);
// 删除单子对应eq // 删除单子对应eq
...@@ -546,6 +577,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -546,6 +577,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
/** /**
* 根据移装变更记录sequenceNbr查询详情 * 根据移装变更记录sequenceNbr查询详情
*
* @param sequenceNbr 变更记录sequenceNbr * @param sequenceNbr 变更记录sequenceNbr
* @return * @return
*/ */
...@@ -556,31 +588,32 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -556,31 +588,32 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
//移装变更详情 //移装变更详情
JgChangeRegistrationTransfer transfer = this.getById(sequenceNbr); JgChangeRegistrationTransfer transfer = this.getById(sequenceNbr);
//查询设备详情 //查询设备详情
String equipId = jgChangeRegistrationTransferEqMapper.getEquipIdByEquipTransferId(sequenceNbr); //String equipId = jgChangeRegistrationTransferEqMapper.getEquipIdByEquipTransferId(sequenceNbr);
if (ValidationUtil.equals(FlowStatusEnum.TO_BE_FINISHED.getName(), transfer.getStatus())) { if (ValidationUtil.equals(FlowStatusEnum.TO_BE_FINISHED.getName(), transfer.getStatus())) {
// 执行完成时查询历史表 // 执行完成时查询历史表
JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>() JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>()
.eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo())); .eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo()));
if (!ValidationUtil.isEmpty(historyData)) { if (!ValidationUtil.isEmpty(historyData)) {
Map<String,Object> newPosition = JSON.parseObject(historyData.getChangeData(),Map.class); Map<String, Object> newPosition = JSON.parseObject(historyData.getChangeData(), Map.class);
resultDataMap.putAll(newPosition); resultDataMap.putAll(newPosition);
if (!ValidationUtil.isEmpty(transfer)) { if (!ValidationUtil.isEmpty(transfer)) {
Map<String, Object> transferToMap = Bean.BeantoMap(transfer); Map<String, Object> transferToMap = Bean.BeantoMap(transfer);
transferToMap.put("receiveCompanyCode", transfer.getReceiveCompanyCode() + "_" + transfer.getReceiveOrgName());
resultDataMap.putAll(transferToMap); resultDataMap.putAll(transferToMap);
} }
} }
} else { } else {
// 非执行完成状态显示最新设备信息 // 非执行完成状态显示最新设备信息
Map<String, Object> equipDetailMap = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(equipId); //Map<String, Object> equipDetailMap = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(equipId);
resultDataMap.putAll(equipDetailMap); //resultDataMap.putAll(equipDetailMap);
if (!ValidationUtil.isEmpty(transfer)) { if (!ValidationUtil.isEmpty(transfer)) {
Map<String, Object> transferToMap = Bean.BeantoMap(transfer); Map<String, Object> transferToMap = Bean.BeantoMap(transfer);
resultDataMap.putAll(transferToMap); resultDataMap.putAll(transferToMap);
} }
JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>() JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>()
.eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo())); .eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo()));
Map<String,Object> changeData = JSON.parseObject(historyData.getChangeData(),Map.class); Map<String, Object> changeData = JSON.parseObject(historyData.getChangeData(), Map.class);
// 省市区街道字段等业务字段 // 省市区街道字段等业务字段
resultDataMap.put("transferProvince", changeData.get("transferProvince")); resultDataMap.put("transferProvince", changeData.get("transferProvince"));
resultDataMap.put("transferCity", changeData.get("transferCity")); resultDataMap.put("transferCity", changeData.get("transferCity"));
...@@ -595,15 +628,15 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -595,15 +628,15 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
resultDataMap.put("transferSafetyManager", changeData.get("transferSafetyManager")); resultDataMap.put("transferSafetyManager", changeData.get("transferSafetyManager"));
resultDataMap.put("transferPhone", changeData.get("transferPhone")); resultDataMap.put("transferPhone", changeData.get("transferPhone"));
resultDataMap.put("transferUseInfo", changeData.get("transferUseInfo")); resultDataMap.put("transferUseInfo", changeData.get("transferUseInfo"));
resultDataMap.put("useInnerCode", equipDetailMap.get("equCode")); //resultDataMap.put("useInnerCode", equipDetailMap.get("equCode"));
resultDataMap.put("receiveCompanyCode", transfer.getReceiveCompanyCode() + "_" + transfer.getReceiveOrgName()); resultDataMap.put("receiveCompanyCode", transfer.getReceiveCompanyCode() + "_" + transfer.getReceiveOrgName());
resultDataMap.put("registrationList", changeData.get("registrationList")); resultDataMap.put("registrationList", changeData.get("registrationList"));
} }
String transferSafetyManager = Optional.ofNullable(resultDataMap.get("transferSafetyManager")).orElse("").toString(); String transferSafetyManager = Optional.ofNullable(resultDataMap.get("transferSafetyManager")).orElse("").toString();
if(StringUtil.isNotEmpty(transferSafetyManager)){ if (StringUtil.isNotEmpty(transferSafetyManager)) {
String[] transferSafetyManagerList = transferSafetyManager.split("_"); String[] transferSafetyManagerList = transferSafetyManager.split("_");
if(transferSafetyManagerList.length>1){ if (transferSafetyManagerList.length > 1) {
resultDataMap.put("transferSafetyManagerName",transferSafetyManagerList[1]); resultDataMap.put("transferSafetyManagerName", transferSafetyManagerList[1]);
} }
} }
if (!resultDataMap.isEmpty()) { if (!resultDataMap.isEmpty()) {
...@@ -612,6 +645,34 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -612,6 +645,34 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
return pageDataMap; return pageDataMap;
} }
private void repeatUsedEquipCheck(List<Long> equipList, String companyCode) {
equipList.forEach(equipMap -> EquipUsedCheckStrategyContext.getUsedStrategy(PROCESS_DEFINITION_KEY)
.registrationRepeatUsedCheck(String.valueOf(equipMap), companyCode));
}
/**
* 删除 redis校验重复引用设备的数据
*/
private void delRepeatUseEquipData(JgChangeRegistrationTransfer transfer) {
if (NOT_FLOWING_STATE.contains(transfer.getAuditStatus())) {
JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>()
.eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo()));
JSONObject historyJson = JSON.parseObject(historyData.getChangeData());
List<Map<String, Object>> registrationList = (List<Map<String, Object>>) historyJson.get("registrationList");
List<String> ids = registrationList.stream().map(v -> JSON.parseObject(v.toString()).getString("sequenceNbr")).collect(Collectors.toList());
ids.forEach(id -> EquipUsedCheckStrategyContext.getUsedStrategy(PROCESS_DEFINITION_KEY)
.delDataForCheckEquipRepeatUsed(Collections.singletonList(id), transfer.getUseUnitCreditCode())
);
}
}
private void rollBackForDelRedisData() {
FlowingEquipRedisContext.getContext().forEach(
e -> EquipUsedCheckStrategyContext.getUsedStrategy(PROCESS_DEFINITION_KEY)
.delDataForCheckWithKey(e.getData(), e.getRedisKey()));
}
/** /**
* 分页查询 * 分页查询
* *
...@@ -622,10 +683,10 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -622,10 +683,10 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* @return * @return
*/ */
@Override @Override
public Page<Map<String, Object>> queryListForPage(Page<Map<String, Object>> page,String sort, JgChangeRegistrationTransferDto params, String companyTypeCode, String companyType) { public Page<Map<String, Object>> queryListForPage(Page<Map<String, Object>> page, String sort, JgChangeRegistrationTransferDto params, String companyTypeCode, String companyType) {
SortVo sortMap = commonService.sortFieldConversion(sort); SortVo sortMap = commonService.sortFieldConversion(sort);
Page<Map<String, Object>> listPage = this.baseMapper.getListPage(page,sortMap, params, companyTypeCode, RequestContext.getExeUserId()); Page<Map<String, Object>> listPage = this.baseMapper.getListPage(page, sortMap, params, companyTypeCode, RequestContext.getExeUserId());
listPage.getRecords().forEach(x-> x.put("companyType",companyType)); listPage.getRecords().forEach(x -> x.put("companyType", companyType));
return listPage; return listPage;
} }
...@@ -715,7 +776,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -715,7 +776,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
//流程执行完成后,更新设备使用信息 //流程执行完成后,更新设备使用信息
JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>() JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>()
.eq(JgRegistrationHistory::getCurrentDocumentId, jgChangeRegistrationTransfer.getApplyNo())); .eq(JgRegistrationHistory::getCurrentDocumentId, jgChangeRegistrationTransfer.getApplyNo()));
this.updateByFlowEnd(jgChangeRegistrationTransfer.getSequenceNbr().toString(), jgChangeRegistrationTransfer.getSupervisoryCode(), historyData);
this.updateByFlowEnd(jgChangeRegistrationTransfer.getSequenceNbr().toString(), historyData);
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
map.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode()); map.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
map.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName()); map.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
...@@ -723,10 +785,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -723,10 +785,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
map.put("flowStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName()); map.put("flowStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
map.put("relationId", jgChangeRegistrationTransfer.getInstanceId()); map.put("relationId", jgChangeRegistrationTransfer.getInstanceId());
map.put("model", jgChangeRegistrationTransfer); map.put("model", jgChangeRegistrationTransfer);
commonService.updateTaskModel(map); TaskV2Model taskV2Model = commonService.updateTaskModel(map);
//新增使用登记证和设备变更记录 //新增使用登记证和设备变更记录
this.saveChangeRecord(jgChangeRegistrationTransfer); this.saveChangeRecord(jgChangeRegistrationTransfer, taskV2Model);
} }
// redis流程实时数据更新 // redis流程实时数据更新
...@@ -734,20 +795,57 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -734,20 +795,57 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
this.getBaseMapper().updateById(jgChangeRegistrationTransfer); this.getBaseMapper().updateById(jgChangeRegistrationTransfer);
} }
public void saveChangeRecord(JgChangeRegistrationTransfer transfer) { private Map<String, String> createSupervisoryCode(JgRegistrationHistory historyData) {
Map<String, Object> changeData = JSON.parseObject(historyData.getChangeData(), Map.class);
List<JSONObject> registrationList = (List<JSONObject>) changeData.get("registrationList");
String equCategoryCode = Optional.ofNullable(registrationList)
.flatMap(list -> list.stream()
.findFirst()
.map(json -> json.getString("equCategoryCode")))
.orElse("");
String cityCode = Optional.ofNullable((String) changeData.get("transferCity"))
.map(s -> s.split("_")[0])
.orElse("");
String countyCode = Optional.ofNullable((String) changeData.get("transferCounty"))
.map(s -> s.split("_")[0])
.orElse("");
String isXiXian = "0".equals(changeData.get("transferIsXixian")) ? "null" : "1";
ImmutableMap<String, Object> map = ImmutableMap.<String, Object>builder()
.put("cityCode", cityCode)
.put("countyCode", countyCode)
.put("equCategory", equCategoryCode)
.put("isXiXian", isXiXian)
.build();
Map<String, Object> result = tzsServiceFeignClient.createCode(map).getResult();
return ImmutableMap.<String, String>builder()
.put("superviseCode", Optional.ofNullable(result)
.map(r -> (String) r.get("superviseCode"))
.orElse(""))
.put("code96333", Optional.ofNullable(result)
.map(r -> (String) r.get("code96333"))
.orElse(""))
.build();
}
public void saveChangeRecord(JgChangeRegistrationTransfer transfer, TaskV2Model taskV2Model) {
List<JgChangeRegistrationTransferEq> eqList = jgChangeRegistrationTransferEqService.lambdaQuery().eq(JgChangeRegistrationTransferEq::getEquipTransferId, transfer.getSequenceNbr()).list(); List<JgChangeRegistrationTransferEq> eqList = jgChangeRegistrationTransferEqService.lambdaQuery().eq(JgChangeRegistrationTransferEq::getEquipTransferId, transfer.getSequenceNbr()).list();
JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>() JgRegistrationHistory historyData = jgRegistrationHistoryMapper.selectOne(new LambdaQueryWrapper<JgRegistrationHistory>()
.eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo())); .eq(JgRegistrationHistory::getCurrentDocumentId, transfer.getApplyNo()));
List<JgCertificateChangeRecord> changeRecordList = new ArrayList<>(); List<JgCertificateChangeRecord> changeRecordList = new ArrayList<>();
List<JgCertificateChangeRecordEq> changeRecordEqList = new ArrayList<>(); List<JgCertificateChangeRecordEq> changeRecordEqList = new ArrayList<>();
JSONArray historyJson = JSON.parseArray(historyData.getChangeData());
for (Object object : historyJson) { JSONObject historyJson = JSON.parseObject(historyData.getChangeData());
JgCertificateChangeRecord changeRecord = new JgCertificateChangeRecord(); List<Map<String, Object>> registrationList = (List<Map<String, Object>>) historyJson.get("registrationList");
registrationList.forEach(registration -> {
long nextId = sequence.nextId(); long nextId = sequence.nextId();
JSONObject jsonObject = JSON.parseObject(object.toString()); JgCertificateChangeRecord changeRecord = new JgCertificateChangeRecord();
String registrationCode = jsonObject.getString("useRegistrationCode"); String registrationCode = (String) registration.get("useRegistrationCode");
String certificateNo = jsonObject.getString("certificateNo"); String certificateNo = (String) registration.get("certificateNo");
String equCategoryCode = jsonObject.getString("equCategoryCode"); String equCategoryCode = (String) registration.get("equCategoryCode");
changeRecord.setApplyNo(transfer.getApplyNo()); changeRecord.setApplyNo(transfer.getApplyNo());
changeRecord.setReceiveOrgName(transfer.getReceiveOrgName()); changeRecord.setReceiveOrgName(transfer.getReceiveOrgName());
changeRecord.setAuditPassDate(transfer.getAuditPassDate()); changeRecord.setAuditPassDate(transfer.getAuditPassDate());
...@@ -762,8 +860,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -762,8 +860,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
changeRecord.setEquCategory(equCategoryCode); changeRecord.setEquCategory(equCategoryCode);
changeRecord.setCreateDate(new Date()); changeRecord.setCreateDate(new Date());
changeRecord.setSequenceNbr(nextId); changeRecord.setSequenceNbr(nextId);
changeRecord.setRoutePath(taskV2Model.getRoutePath());
changeRecordList.add(changeRecord); changeRecordList.add(changeRecord);
for (JgChangeRegistrationTransferEq transferEq : eqList) { for (JgChangeRegistrationTransferEq transferEq : eqList) {
if (!StringUtils.isEmpty(transferEq.getUseRegistrationCode()) && !StringUtils.isEmpty(registrationCode) &&
transferEq.getUseRegistrationCode().equals(registrationCode)) {
JSONObject deviceJson = JSON.parseObject(transferEq.getDeviceInfo()); JSONObject deviceJson = JSON.parseObject(transferEq.getDeviceInfo());
JgCertificateChangeRecordEq changeRecordEq = new JgCertificateChangeRecordEq(); JgCertificateChangeRecordEq changeRecordEq = new JgCertificateChangeRecordEq();
changeRecordEq.setChangeRecordId(String.valueOf(nextId)); changeRecordEq.setChangeRecordId(String.valueOf(nextId));
...@@ -771,6 +872,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -771,6 +872,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
changeRecordEqList.add(changeRecordEq); changeRecordEqList.add(changeRecordEq);
} }
} }
});
if (!changeRecordList.isEmpty()) { if (!changeRecordList.isEmpty()) {
certificateChangeRecordService.saveBatch(changeRecordList); certificateChangeRecordService.saveBatch(changeRecordList);
} }
...@@ -782,16 +884,15 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -782,16 +884,15 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
private String buildRecordContent(JgChangeRegistrationTransfer obj) { private String buildRecordContent(JgChangeRegistrationTransfer obj) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
return obj.getCreateUserName() + "办理了【移装变更登记】,单号【" return obj.getCreateUserName() + "办理了【移装变更登记】,单号【"
+ obj.getApplyNo() + "】,移装后地址为"+ obj.getFullAddress() + ",申请日期" + simpleDateFormat.format(obj.getCreateDate()); + obj.getApplyNo() + "】,移装后地址为" + obj.getFullAddress() + ",申请日期" + simpleDateFormat.format(obj.getCreateDate());
} }
/** /**
* 流程结束后需要更新的数据 * 流程结束后需要更新的数据
* *
* @param sequenceNbr 移装变更单Id * @param sequenceNbr 移装变更单Id
* @param supervisoryCode 监管码
*/ */
public void updateByFlowEnd(String sequenceNbr, String supervisoryCode, JgRegistrationHistory historyData) { public void updateByFlowEnd(String sequenceNbr, JgRegistrationHistory historyData) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class); ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
JgChangeRegistrationTransfer transfer = this.getBaseMapper().selectById(sequenceNbr); JgChangeRegistrationTransfer transfer = this.getBaseMapper().selectById(sequenceNbr);
LambdaQueryWrapper<JgChangeRegistrationTransferEq> lambda = new QueryWrapper<JgChangeRegistrationTransferEq>().lambda(); LambdaQueryWrapper<JgChangeRegistrationTransferEq> lambda = new QueryWrapper<JgChangeRegistrationTransferEq>().lambda();
...@@ -802,17 +903,21 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -802,17 +903,21 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
if (!CollectionUtils.isEmpty(transferEqList)) { if (!CollectionUtils.isEmpty(transferEqList)) {
AtomicReference<String> useRegistrationCode = new AtomicReference<>(""); AtomicReference<String> useRegistrationCode = new AtomicReference<>("");
AtomicBoolean isUpdateRegistrationCode = new AtomicBoolean(false); AtomicBoolean isUpdateRegistrationCode = new AtomicBoolean(false);
transferEqList.forEach(device->{ transferEqList.forEach(device -> {
String supervisoryCode = "", code96333 = "";
//如果是区内移装,判断是否为韩城,杨凌,需要变更证号,否则不变证号 //如果是区内移装,判断是否为韩城,杨凌,需要变更证号,否则不变证号
if ("1".equals(transfer.getTransferType())) { if ("1".equals(transfer.getTransferType())) {
Map<String, String> supervisoryCodeMap = this.createSupervisoryCode(historyData);
supervisoryCode = supervisoryCodeMap.get("superviseCode");
code96333 = supervisoryCodeMap.get("code96333");
useRegistrationCode.set(commonServiceImpl.generateRegistrationCode(device.getEquId(), supervisoryCode, transfer.getReceiveCompanyCode())); useRegistrationCode.set(commonServiceImpl.generateRegistrationCode(device.getEquId(), supervisoryCode, transfer.getReceiveCompanyCode()));
useRegistrationCodeList.add(String.valueOf(useRegistrationCode)); useRegistrationCodeList.add(String.valueOf(useRegistrationCode));
isUpdateRegistrationCode.set(true); isUpdateRegistrationCode.set(true);
} }
//替换历史数据表和设备使用表 //替换历史数据表和设备使用表
this.replacementHistoryData(device.getEquId(), transfer.getApplyNo(), historyData); this.replacementHistoryData(device.getEquId(), transfer, historyData, supervisoryCode, code96333);
//更新使用注册登记证编号及ES中的信息 //更新使用注册登记证编号及ES中的信息
this.updateRegisterInfoAndEsData(device.getEquId(), historyData, useRegistrationCode.get(), isUpdateRegistrationCode); this.updateRegisterInfoAndEsData(device.getEquId(), historyData, useRegistrationCode.get(), supervisoryCode, code96333, isUpdateRegistrationCode);
//修改各类告知列表,置为废弃 //修改各类告知列表,置为废弃
this.updateInvalidStatusByHistory(device.getEquId(), device.getEquipTransferId()); this.updateInvalidStatusByHistory(device.getEquId(), device.getEquipTransferId());
//修改证管理表数据 //修改证管理表数据
...@@ -834,15 +939,16 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -834,15 +939,16 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
} }
private void updateUseRegistrationManage(JgChangeRegistrationTransfer transfer, JgRegistrationHistory historyData, String useRegistrationCode, boolean isUpdateRegistrationCode) { private void updateUseRegistrationManage(JgChangeRegistrationTransfer transfer, JgRegistrationHistory historyData, String useRegistrationCode, boolean isUpdateRegistrationCode) {
JSONArray historyJson = JSON.parseArray(historyData.getChangeData()); JSONObject historyJson = JSON.parseObject(historyData.getChangeData());
List<String> ids = historyJson.stream().map(v -> JSON.parseObject(v.toString()).getString("sequenceNbr")).collect(Collectors.toList()); List<Map<String, Object>> registrationList = (List<Map<String, Object>>) historyJson.get("registrationList");
List<String> ids = registrationList.stream().map(v -> JSON.parseObject(v.toString()).getString("sequenceNbr")).collect(Collectors.toList());
List<JgUseRegistrationManage> list = useRegistrationManageService.lambdaQuery().in(BaseEntity::getSequenceNbr, ids).list(); List<JgUseRegistrationManage> list = useRegistrationManageService.lambdaQuery().in(BaseEntity::getSequenceNbr, ids).list();
for (JgUseRegistrationManage registrationManage : list) { for (JgUseRegistrationManage registrationManage : list) {
registrationManage.setReceiveOrgName(transfer.getReceiveOrgName()); registrationManage.setReceiveOrgName(transfer.getReceiveOrgName());
registrationManage.setReceiveCompanyCode(transfer.getReceiveOrgCode()); registrationManage.setReceiveCompanyCode(transfer.getReceiveOrgCode());
registrationManage.setAuditPassDate(transfer.getAuditPassDate()); registrationManage.setAuditPassDate(transfer.getAuditPassDate());
registrationManage.setEquUseAddress(transfer.getFullAddress()); registrationManage.setEquUseAddress(transfer.getFullAddress());
if (isUpdateRegistrationCode){ if (isUpdateRegistrationCode) {
registrationManage.setUseRegistrationCode(useRegistrationCode); registrationManage.setUseRegistrationCode(useRegistrationCode);
} }
} }
...@@ -853,14 +959,14 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -853,14 +959,14 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* 修改历史数据表和设备使用表 * 修改历史数据表和设备使用表
* *
* @param record 设备Id * @param record 设备Id
* @param applyNo 申请记录编号
* @param newData 设备移装的新数据 * @param newData 设备移装的新数据
*/ */
public void replacementHistoryData(String record, String applyNo, JgRegistrationHistory newData) { public void replacementHistoryData(String record, JgChangeRegistrationTransfer transfer, JgRegistrationHistory newData, String supervisoryCode, String code96333) {
if (!ValidationUtil.isEmpty(record) && !ValidationUtil.isEmpty(applyNo)) { if (!ValidationUtil.isEmpty(record) && !ValidationUtil.isEmpty(transfer.getApplyNo())) {
//查询设备旧数据 //查询设备旧数据
IdxBizJgUseInfo useInfo = useInfoService.getOneData(record); IdxBizJgUseInfo useInfo = useInfoService.getOneData(record);
IdxBizJgOtherInfo otherInfo = otherInfoService.getOneData(record);
// 更新设备移装位置使用信息 // 更新设备移装位置使用信息
if (!ValidationUtil.isEmpty(newData)) { if (!ValidationUtil.isEmpty(newData)) {
...@@ -925,42 +1031,44 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -925,42 +1031,44 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
if (!ObjectUtils.isEmpty(longitudeLatitude)) { if (!ObjectUtils.isEmpty(longitudeLatitude)) {
useInfo.setLongitudeLatitude(longitudeLatitude); useInfo.setLongitudeLatitude(longitudeLatitude);
} }
if(!ObjectUtils.isEmpty(usePlace)){ if (!ObjectUtils.isEmpty(usePlace)) {
useInfo.setUsePlace(usePlace); useInfo.setUsePlace(usePlace);
} }
if(!ObjectUtils.isEmpty(isXixian)){ if (!ObjectUtils.isEmpty(isXixian)) {
useInfo.setIsNotXiXian(isXixian); useInfo.setIsNotXiXian(isXixian);
} }
if(!ObjectUtils.isEmpty(safetyManager)){ if (!ObjectUtils.isEmpty(safetyManager)) {
String[] safetyManagerList = safetyManager.split("_"); String[] safetyManagerList = safetyManager.split("_");
if (safetyManagerList.length>1){ if (safetyManagerList.length > 1) {
useInfo.setSafetyManagerId(safetyManagerList[0]); useInfo.setSafetyManagerId(safetyManagerList[0]);
useInfo.setSafetyManager(safetyManagerList[1]); useInfo.setSafetyManager(safetyManagerList[1]);
} }
} }
if(!ObjectUtils.isEmpty(phone)){ if (!ObjectUtils.isEmpty(phone)) {
useInfo.setPhone(phone); useInfo.setPhone(phone);
} }
if(!ObjectUtils.isEmpty(transferUseInfo)){ if (!ObjectUtils.isEmpty(transferUseInfo)) {
String[] useInfoList = transferUseInfo.split("_"); String[] useInfoList = transferUseInfo.split("_");
if(useInfoList.length>1){ if (useInfoList.length > 1) {
useInfo.setEstateUnitCreditCode(useInfoList[0]); useInfo.setEstateUnitCreditCode(useInfoList[0]);
useInfo.setEstateUnitName(useInfoList[1]); useInfo.setEstateUnitName(useInfoList[1]);
} }
} }
IdxBizJgSupervisionInfo idxBizJgSupervisionInfo = new IdxBizJgSupervisionInfo(); IdxBizJgSupervisionInfo idxBizJgSupervisionInfo = new IdxBizJgSupervisionInfo();
if(!ObjectUtils.isEmpty(supervisionUnit)){ if (!ObjectUtils.isEmpty(supervisionUnit)) {
String[] supervisionUnitList = supervisionUnit.split("_"); String[] supervisionUnitList = supervisionUnit.split("_");
if(supervisionUnitList.length>1){ if (supervisionUnitList.length > 1) {
idxBizJgSupervisionInfo.setOrgBranchCode(supervisionUnitList[0]); idxBizJgSupervisionInfo.setOrgBranchCode(supervisionUnitList[0]);
idxBizJgSupervisionInfo.setOrgBranchName(supervisionUnitList[1]); idxBizJgSupervisionInfo.setOrgBranchName(supervisionUnitList[1]);
LambdaQueryWrapper<IdxBizJgSupervisionInfo> eq = new QueryWrapper<IdxBizJgSupervisionInfo>().lambda().eq(IdxBizJgSupervisionInfo::getRecord,record); LambdaQueryWrapper<IdxBizJgSupervisionInfo> eq = new QueryWrapper<IdxBizJgSupervisionInfo>().lambda().eq(IdxBizJgSupervisionInfo::getRecord, record);
idxBizJgSupervisionInfoMapper.update(idxBizJgSupervisionInfo, eq); idxBizJgSupervisionInfoMapper.update(idxBizJgSupervisionInfo, eq);
} }
} }
useInfoService.saveOrUpdateData(useInfo); useInfoService.saveOrUpdateData(useInfo);
otherInfo.setSupervisoryCode(supervisoryCode);
otherInfo.setCode96333(code96333);
otherInfoService.saveOrUpdateData(otherInfo);
} }
} }
} }
...@@ -991,9 +1099,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -991,9 +1099,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* @param useRegistrationCode 使用注册登记证编号 * @param useRegistrationCode 使用注册登记证编号
* @param isUpdateRegistrationCode 是否更新使用登记证编号 * @param isUpdateRegistrationCode 是否更新使用登记证编号
*/ */
public void updateRegisterInfoAndEsData(String equId, JgRegistrationHistory newData, String useRegistrationCode, AtomicBoolean isUpdateRegistrationCode) { public void updateRegisterInfoAndEsData(String equId, JgRegistrationHistory newData, String useRegistrationCode, String supervisoryCode, String code96333, AtomicBoolean isUpdateRegistrationCode) {
//更新使用注册登记证编号 //更新使用注册登记证编号
if (isUpdateRegistrationCode.get()){ if (isUpdateRegistrationCode.get()) {
idxBizJgRegisterInfoMapper.updateUseOrgCodeByEquip(equId, useRegistrationCode); idxBizJgRegisterInfoMapper.updateUseOrgCodeByEquip(equId, useRegistrationCode);
} }
//获取移装新位置,更新ES //获取移装新位置,更新ES
...@@ -1024,7 +1132,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -1024,7 +1132,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
if (!ObjectUtils.isEmpty(county)) { if (!ObjectUtils.isEmpty(county)) {
String[] countyList = county.split("_"); String[] countyList = county.split("_");
if (countyList.length > 1) { if (countyList.length > 1) {
newUsePlace += countyList[1]+ "/"; newUsePlace += countyList[1] + "/";
} }
} }
if (!ObjectUtils.isEmpty(street)) { if (!ObjectUtils.isEmpty(street)) {
...@@ -1047,8 +1155,10 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -1047,8 +1155,10 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
map1.put("USE_PLACE", newUsePlace); map1.put("USE_PLACE", newUsePlace);
map1.put("ADDRESS", newAddress); map1.put("ADDRESS", newAddress);
map1.put("LONGITUDE_LATITUDE", newLongitudeLatitude); map1.put("LONGITUDE_LATITUDE", newLongitudeLatitude);
if (isUpdateRegistrationCode.get()){ if (isUpdateRegistrationCode.get()) {
map1.put("USE_ORG_CODE", useRegistrationCode); map1.put("USE_ORG_CODE", useRegistrationCode);
map1.put("SUPERVISORY_CODE", supervisoryCode);
map1.put("CODE96333", code96333);
} }
resultMap.put(equId, map1); resultMap.put(equId, map1);
tzsServiceFeignClient.commonUpdateEsDataByIds(resultMap); tzsServiceFeignClient.commonUpdateEsDataByIds(resultMap);
...@@ -1215,7 +1325,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -1215,7 +1325,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
if ("0".equals(printType)) { if ("0".equals(printType)) {
//调用生成使用登记证 //调用生成使用登记证
commonService.generateCertificateReport(exportParamsMap, response); commonService.generateCertificateReport(exportParamsMap, response);
}else{ } else {
commonService.generatePdfPrint(exportParamsMap, response); commonService.generatePdfPrint(exportParamsMap, response);
} }
} }
...@@ -1290,8 +1400,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -1290,8 +1400,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* @deprecated 动态获取 * @deprecated 动态获取
*/ */
public String getSummaryInfo(JgChangeRegistrationTransfer transfer) { public String getSummaryInfo(JgChangeRegistrationTransfer transfer) {
String result = "来自%s【%s】的业务办理,【申请单号:%s】"; String result = "发起了【移装变更登记】业务申请,【申请单号:%s】";
return String.format(result, Optional.ofNullable(transfer.getEquipListName()).orElse("无"), Optional.ofNullable(transfer.getSupervisoryCode()).orElse("无"), Optional.ofNullable(transfer.getApplyNo()).orElse("无")); return String.format(result, Optional.ofNullable(transfer.getApplyNo()).orElse("无"));
} }
public String getNextUserOrgCode(String operate, JgChangeRegistrationTransfer contract) { public String getNextUserOrgCode(String operate, JgChangeRegistrationTransfer contract) {
...@@ -1322,35 +1432,35 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang ...@@ -1322,35 +1432,35 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
} }
} }
public Map<String, Object> getDetailFieldCamelCase( String record) { public Map<String, Object> getDetailFieldCamelCase(String record) {
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
result = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(record); result = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(record);
//移装变更-省份回显 //移装变更-省份回显
result.put("transferProvince",result.get("province")); result.put("transferProvince", result.get("province"));
//移装变更-市回显 //移装变更-市回显
result.put("transferCity",result.get("city")); result.put("transferCity", result.get("city"));
//移装变更-区回显 //移装变更-区回显
result.put("transferCounty",result.get("county")); result.put("transferCounty", result.get("county"));
//移装变更-街道回显 //移装变更-街道回显
result.put("transferStreet",result.get("factoryUseSiteStreet")+"_"+result.get("streetName")); result.put("transferStreet", result.get("factoryUseSiteStreet") + "_" + result.get("streetName"));
//移装变更-移装场所 //移装变更-移装场所
result.put("transferUsePlace",result.get("usePlace")); result.put("transferUsePlace", result.get("usePlace"));
//移装变更-详细地址 //移装变更-详细地址
result.put("transferAddress",result.get("useAddress")); result.put("transferAddress", result.get("useAddress"));
//移装变更-经纬度 //移装变更-经纬度
result.put("transferLongitudeLatitude",result.get("longitudeLatitude")); result.put("transferLongitudeLatitude", result.get("longitudeLatitude"));
//移装变更-属地监管部门 //移装变更-属地监管部门
result.put("orgBranchCode",result.get("orgBranchCode")+"_"+result.get("orgBranchName")); result.put("orgBranchCode", result.get("orgBranchCode") + "_" + result.get("orgBranchName"));
//移装变更-所属经营单位 //移装变更-所属经营单位
result.put("transferIsXixian",result.get("isNotXiXian")); result.put("transferIsXixian", result.get("isNotXiXian"));
//移装变更-安全管理员 //移装变更-安全管理员
result.put("transferSafetyManager",result.get("safetyManagerId")+"_"+result.get("safetyManager")); result.put("transferSafetyManager", result.get("safetyManagerId") + "_" + result.get("safetyManager"));
//移装变更-安全管理员姓名 //移装变更-安全管理员姓名
result.put("transferSafetyManagerName",result.get("safetyManager")); result.put("transferSafetyManagerName", result.get("safetyManager"));
//移装变更-电话 //移装变更-电话
result.put("transferPhone",result.get("phone")); result.put("transferPhone", result.get("phone"));
//移装变更-产权单位 //移装变更-产权单位
result.put("transferUseInfo",result.get("estateUnitCreditCode")+"_"+result.get("estateUnitName")); result.put("transferUseInfo", result.get("estateUnitCreditCode") + "_" + result.get("estateUnitName"));
return result; return result;
} }
} }
\ No newline at end of file
package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeRegistrationTransferMapper;
import lombok.extern.slf4j.Slf4j;
import org.redisson.api.RBucket;
import org.redisson.api.RedissonClient;
import org.springframework.stereotype.Component;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author Administrator
*/
@Component
@Slf4j
public class JgChangeRegistrationTransferUsedCheckImpl extends BaseEquipUsedCheckService {
private final RedissonClient redissonClient;
private final String bizType = "changeRegistrationTransfer";
private final JgChangeRegistrationTransferMapper mapper;
public JgChangeRegistrationTransferUsedCheckImpl(RedissonClient redissonClient, JgChangeRegistrationTransferMapper mapper) {
this.redissonClient = redissonClient;
this.mapper = mapper;
}
@Override
public RedissonClient getRedisClient() {
return redissonClient;
}
@Override
public String getApplyBizType() {
return bizType;
}
public void init() {
// 获取设备数据并处理
Map<String, Set<String>> resultMap = mapper.queryForFlowingEquipList().stream()
.filter(Objects::nonNull)
.flatMap(changeData -> {
JSONObject changeDataJson = JSON.parseObject(changeData);
return changeDataJson.getJSONArray("registrationList").stream()
.filter(item -> item instanceof JSONObject)
.map(item -> (JSONObject) item)
.collect(Collectors.groupingBy(
reg -> reg.getString("useUnitCreditCode"),
Collectors.mapping(reg -> reg.getString("sequenceNbr"), Collectors.toSet())
)).entrySet().stream();
})
.collect(Collectors.toMap(
Map.Entry::getKey,
Map.Entry::getValue,
(existing, replacement) -> {
existing.addAll(replacement);
return existing;
}
));
// 将结果存储到 Redis
resultMap.forEach((companyCode, records) -> {
RBucket<Set<String>> rBucket = redissonClient.getBucket(getFlowingEquipRedisKey(companyCode, bizType));
rBucket.set(records);
});
}
}
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