Commit 23c3e1f0 authored by 刘林's avatar 刘林

fix(jg):黑设备历史登记功能开发

parent fd2ac89b
...@@ -180,4 +180,7 @@ public class JgUseRegistrationDto extends BaseDto { ...@@ -180,4 +180,7 @@ public class JgUseRegistrationDto extends BaseDto {
@ApiModelProperty(value = "气瓶类别(0液化石油气瓶、1工业气瓶、2其他)") @ApiModelProperty(value = "气瓶类别(0液化石油气瓶、1工业气瓶、2其他)")
private String cylinderCategory; private String cylinderCategory;
@ApiModelProperty(value = " 监察处置机构代码")
private String supervisionOrgCode;
} }
...@@ -64,4 +64,9 @@ public class TaskMessageDto { ...@@ -64,4 +64,9 @@ public class TaskMessageDto {
* 下节点任务id * 下节点任务id
*/ */
String nextTaskId; String nextTaskId;
/**
* 登记类型(新增使用登记,历史使用登记,特殊使用登记)
*/
String regType;
} }
...@@ -255,4 +255,10 @@ public class JgUseRegistration extends BaseEntity { ...@@ -255,4 +255,10 @@ public class JgUseRegistration extends BaseEntity {
*/ */
@TableField("cylinder_category") @TableField("cylinder_category")
private String cylinderCategory; private String cylinderCategory;
/**
* 监察处置机构代码
*/
@TableField("supervision_org_code")
private String supervisionOrgCode;
} }
...@@ -19,11 +19,11 @@ public enum WorkFlowStatusEnum { ...@@ -19,11 +19,11 @@ public enum WorkFlowStatusEnum {
* 使用登记流程 * 使用登记流程
*/ */
USE_SUBMIT("使用单位提交", "useSubmit", "使用单位待提交", "一级受理已驳回", "使用单位已撤回"), USE_SUBMIT("使用单位提交", "useSubmit", "使用单位待提交", "一级受理已驳回", "使用单位已撤回"),
USE_RECEIVE("一级受理", "useReceive", "一级待受理", "二级受理已驳回", "一级受理已撤回"), USE_RECEIVE("一级受理", "useReceive", "一级待受理", "已驳回", "一级受理已撤回"),
USE_SAFETY_CHECK("安全监察受理", "safetyCheck", "安全监察待受理", "二级受理已驳回", "安全监察已撤回"),
USE_PRELIMINARY("二级受理", "usePreliminary", "二级待受理", "三级受理已驳回", "二级受理已撤回"), USE_PRELIMINARY("二级受理", "usePreliminary", "二级待受理", "三级受理已驳回", "二级受理已撤回"),
USE_REEXAMINE("三级受理", "useReexamine", "三级待受理","",""), USE_REEXAMINE("三级受理", "useReexamine", "三级待受理","",""),
/** /**
* 维保备案 * 维保备案
*/ */
......
...@@ -77,6 +77,7 @@ ...@@ -77,6 +77,7 @@
ur.receive_company_code, ur.receive_company_code,
ur.use_unit_credit_code, ur.use_unit_credit_code,
ur.transfer_to_user_ids, ur.transfer_to_user_ids,
ur.supervision_org_code,
ur.use_address as fullAddress, ur.use_address as fullAddress,
ur.cancel_reason as cancelReason, ur.cancel_reason as cancelReason,
(select group_concat(re.equ_id) from tzs_jg_use_registration_eq re where ur.sequence_nbr = re.equip_transfer_id) as equipId, (select group_concat(re.equ_id) from tzs_jg_use_registration_eq re where ur.sequence_nbr = re.equip_transfer_id) as equipId,
...@@ -186,8 +187,9 @@ ...@@ -186,8 +187,9 @@
AND auditPassDate BETWEEN #{dto.auditPassDateStart} AND #{dto.auditPassDateEnd} AND auditPassDate BETWEEN #{dto.auditPassDateStart} AND #{dto.auditPassDateEnd}
</if> </if>
<if test="dto.dataType == 'supervision' "> <if test="dto.dataType == 'supervision' ">
AND (receive_company_code = #{dto.receiveCompanyCode} or transfer_to_user_ids LIKE concat ('%', AND (receive_company_code = #{dto.receiveCompanyCode}
#{dto.currentUserId}, '%')) OR transfer_to_user_ids LIKE concat ('%',#{dto.currentUserId}, '%'))
OR supervision_org_code LIKE concat (#{dto.supervisionOrgCode}, '%')
AND status <![CDATA[<>]]> '使用单位待提交' AND status <![CDATA[<>]]> '使用单位待提交'
</if> </if>
<if test="dto.dataType == 'company' "> <if test="dto.dataType == 'company' ">
...@@ -305,7 +307,8 @@ ...@@ -305,7 +307,8 @@
jri.OTHER_ACCESSORIES_REG as otherAccessoriesReg, jri.OTHER_ACCESSORIES_REG as otherAccessoriesReg,
jfi.OTHER_ACCESSORIES_FACT as otherAccessoriesFact, jfi.OTHER_ACCESSORIES_FACT as otherAccessoriesFact,
jfi.FACT_SUPERVISION_INSPECTION_REPORT as factSupervisionInspectionReport, jfi.FACT_SUPERVISION_INSPECTION_REPORT as factSupervisionInspectionReport,
jfi.BOILER_ENERGY_EFFICIENCY_CERTIFICATE as boilerEnergyEfficiencyCertificate jfi.BOILER_ENERGY_EFFICIENCY_CERTIFICATE as boilerEnergyEfficiencyCertificate,
jfi.FACTORY_IS_COMPLETE as factoryIsComplete
from idx_biz_jg_register_info jri from idx_biz_jg_register_info jri
LEFT JOIN idx_biz_jg_factory_info jfi on jri.RECORD = jfi.RECORD LEFT JOIN idx_biz_jg_factory_info jfi on jri.RECORD = jfi.RECORD
where jri.RECORD = #{id} where jri.RECORD = #{id}
...@@ -399,7 +402,8 @@ ...@@ -399,7 +402,8 @@
APPRAISAL_DATE as appraisalDate, APPRAISAL_DATE as appraisalDate,
DESIGN_DOC as designDoc, DESIGN_DOC as designDoc,
DESIGN_STANDARD as designStandard, DESIGN_STANDARD as designStandard,
OTHER_ACCESSORIES_DES as otherAccessoriesDes OTHER_ACCESSORIES_DES as otherAccessoriesDes,
DESIGN_IS_COMPLETE as designIsComplete
from idx_biz_jg_design_info from idx_biz_jg_design_info
where RECORD = #{id} where RECORD = #{id}
</select> </select>
......
...@@ -120,6 +120,20 @@ public class IdxBizJqEquipmentRegisterController extends BaseController { ...@@ -120,6 +120,20 @@ public class IdxBizJqEquipmentRegisterController extends BaseController {
return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.queryForEquipmentRegisterPage(jsonObject)); return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.queryForEquipmentRegisterPage(jsonObject));
} }
/**
* @author LiuLin
*
* 历史无证设备分页查询接口(ES)
* @param map 参数
* @return 分页信息
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/queryHisNoCertEquipPage")
@ApiOperation(httpMethod = "GET", value = "历史无证设备分页查询接口查询", notes = "历史无证设备分页查询接口查询")
public ResponseModel<Page<JSONObject>> queryHisNoCertEquipPage(@RequestParam Map<String, Object> map) {
return ResponseHelper.buildResponse(idxBizJgRegisterInfoService.queryHisNoCertEquipPage(new JSONObject(map)));
}
// /** // /**
// * 查询设备注册列表 // * 查询设备注册列表
// * // *
......
...@@ -112,6 +112,7 @@ public class JgUseRegistrationController extends BaseController { ...@@ -112,6 +112,7 @@ public class JgUseRegistrationController extends BaseController {
} else { } else {
dto.setDataType(BaseController.COMPANY_TYPE_SUPERVISION); dto.setDataType(BaseController.COMPANY_TYPE_SUPERVISION);
dto.setReceiveCompanyCode(info.getCompany().getCompanyCode()); dto.setReceiveCompanyCode(info.getCompany().getCompanyCode());
dto.setSupervisionOrgCode(info.getCompany().getOrgCode());
} }
if (dto.getAuditPassDateRange() != null && !dto.getAuditPassDateRange().isEmpty() && !dto.getAuditPassDateRange().equals("[, ]")) { if (dto.getAuditPassDateRange() != null && !dto.getAuditPassDateRange().isEmpty() && !dto.getAuditPassDateRange().equals("[, ]")) {
String dateRangeStr = dto.getAuditPassDateRange(); String dateRangeStr = dto.getAuditPassDateRange();
...@@ -136,7 +137,7 @@ public class JgUseRegistrationController extends BaseController { ...@@ -136,7 +137,7 @@ public class JgUseRegistrationController extends BaseController {
Page<Map<String, Object>> list = jgUseRegistrationServiceImpl.getList(dto, sort, page, dto.getRoleIds()); Page<Map<String, Object>> list = jgUseRegistrationServiceImpl.getList(dto, sort, page, dto.getRoleIds());
list.getRecords().forEach(x -> { list.getRecords().forEach(x -> {
x.put("companyType", info.getCompany().getCompanyType()); x.put("companyType", info.getCompany().getCompanyType());
x.put("regType", "1".equals(x.get("regType")) ? "历史登记" : "新增登记"); x.put("regType", "1".equals(x.get("regType")) ? "历史登记": "2".equals(x.get("regType")) ? "特殊历史登记": "新增登记");
}); });
return ResponseHelper.buildResponse(list); return ResponseHelper.buildResponse(list);
} }
......
...@@ -73,4 +73,6 @@ public interface IIdxBizJgRegisterInfoService { ...@@ -73,4 +73,6 @@ public interface IIdxBizJgRegisterInfoService {
void inspectionExpirationReminderOnce(); void inspectionExpirationReminderOnce();
void initEnterpriseLicenseExpirationOnce(); void initEnterpriseLicenseExpirationOnce();
Page<JSONObject> queryHisNoCertEquipPage(JSONObject jsonObject);
} }
...@@ -1291,6 +1291,11 @@ public class CommonServiceImpl implements ICommonService { ...@@ -1291,6 +1291,11 @@ public class CommonServiceImpl implements ICommonService {
return jgUseRegistrationServiceImpl.handleUnitHistoryEquip(jsonObject); return jgUseRegistrationServiceImpl.handleUnitHistoryEquip(jsonObject);
case "vehicle": case "vehicle":
return jgVehicleInformationService.saveOrUpdateHisData(jsonObject); return jgVehicleInformationService.saveOrUpdateHisData(jsonObject);
case "set_sp"://特殊历史登记
jsonObject.put("regType", "2");
jsonObject.put("businessCode", "DJ_SY");
jsonObject.put("submit", Boolean.TRUE);
return jgUseRegistrationServiceImpl.handleUseRegistration(jsonObject);
default: default:
return jgUseRegistrationServiceImpl.handleHistoryEquip(jsonObject); return jgUseRegistrationServiceImpl.handleHistoryEquip(jsonObject);
} }
......
...@@ -1609,6 +1609,296 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste ...@@ -1609,6 +1609,296 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
return resultListMap; return resultListMap;
} }
@Override
public Page<JSONObject> queryHisNoCertEquipPage(JSONObject map) {
if (map.containsKey("flag") && !map.containsKey("USE_UNIT_CREDIT_CODE")) {
return new Page<>();
}
Integer pageNumber = ObjectUtils.isEmpty(map.getInteger("number")) ? 1 : map.getInteger("number");
Integer size = ObjectUtils.isEmpty(map.getInteger("size")) ? 20 : map.getInteger("size");
Page<JSONObject> result = new Page<>(pageNumber, size);
SearchRequest request = new SearchRequest();
request.indices("idx_biz_view_jg_all");
SearchSourceBuilder builder = new SearchSourceBuilder();
builder.trackTotalHits(true);
BoolQueryBuilder boolMust = QueryBuilders.boolQuery();
// 获取当前登录人单位类型
JSONObject company = getCompanyType();
if (ValidationUtil.isEmpty(company)) {
result.setRecords(new ArrayList<>());
result.setTotal(0);
return result;
}
String companyCode = company.getString("companyCode").contains("_") ?
company.getString("companyCode").split("_")[1] : company.getString("companyCode");
String type = company.getString("companyType");
// 根据当前登录人查询
if (!ValidationUtil.isEmpty(map.get(EQUSTATE))) {
map.put(EQUSTATE, EquimentEnum.getCode.get(map.get(EQUSTATE).toString()).toString());
}
// 根据当前登录用户类型及管辖机构筛选条件添加对应参数
if (ObjectUtils.isEmpty(map.getString(SEQUENCE_NBR)) && ObjectUtils.isEmpty(map.getString("useUnitCreditCode"))) {
if (!ValidationUtil.isEmpty(type) && type.contains("使用单位")) {
if (ValidationUtil.isEmpty(map.getString("USE_UNIT_CREDIT_CODE"))) {
map.put("USE_UNIT_CREDIT_CODE", companyCode);
}
}
if (!ValidationUtil.isEmpty(type) && type.contains("安装改造维修单位")) {
map.put("USC_UNIT_CREDIT_CODE", companyCode);
}
if (!ValidationUtil.isEmpty(type) && type.contains("个人主体")) {
map.put("USE_UNIT_CREDIT_CODE", companyCode);
}
}
// 默认条件【STATUS==="" || null】
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.should(QueryBuilders.matchQuery("STATUS", "已认领"));
meBuilder.should(QueryBuilders.boolQuery().mustNot(QueryBuilders.existsQuery("STATUS")));
meBuilder.should(QueryBuilders.boolQuery().must(QueryBuilders.matchPhraseQuery("STATUS", "")));
meBuilder.minimumShouldMatch(1);
boolMust.must(meBuilder);
// 查询下次检验日期大于当前天的设备
long currentDayTime = DateUtil.parse(DateUtil.now(), "yyy-MM-dd").getTime();
boolMust.must(QueryBuilders.rangeQuery("NEXT_INSPECT_DATE").gte(currentDayTime));
// DATA_SOURCE 为“jg”开头的数据(从监管新加或复制的设备)
// 20240314 提出的监管业务不要让企业用户选到之前一码通认领或补录的设备,让从监管业务中去新增
BoolQueryBuilder dBuilder = QueryBuilders.boolQuery();
String queryType = map.getString("QUERY_TYPE");
if (map.containsKey("DATA_SOURCE") && !ObjectUtils.isEmpty(map.get("DATA_SOURCE"))) {
String dataSource = map.getString("DATA_SOURCE");
if ("jg_his_black".equals(dataSource)) {
// 只查历史,前缀为 jg_his
dBuilder.must(QueryBuilders.prefixQuery("DATA_SOURCE", "jg_his_black"));
}
}
boolMust.must(dBuilder);
if (!ObjectUtils.isEmpty(map.getString(IS_INTO_MANAGEMENT))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String param = QueryParser.escape(map.getString(IS_INTO_MANAGEMENT));
pBuilder.must(QueryBuilders.matchQuery(IS_INTO_MANAGEMENT, param));
boolMust.must(pBuilder);
}
if (!ObjectUtils.isEmpty(map.getString(EQU_CATEGORY))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String param = QueryParser.escape(map.getString(EQU_CATEGORY));
pBuilder.must(QueryBuilders.matchPhraseQuery(EQU_CATEGORY, "*" + param + "*"));
boolMust.must(pBuilder);
}
// 使用单位 //安装改造维修单位
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE")) && !ObjectUtils.isEmpty(map.getString("USC_UNIT_CREDIT_CODE"))) {
BoolQueryBuilder ubuilder = QueryBuilders.boolQuery();
String useCode = QueryParser.escape(map.getString("USE_UNIT_CREDIT_CODE"));
useCode = useCode.contains("_") ? useCode.split("_")[0] : useCode;
ubuilder.must(QueryBuilders.matchQuery("USE_UNIT_CREDIT_CODE", useCode));
String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase();
ubuilder.must(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + QueryParser.escape(uscCode) + "*"));
boolMust.must(ubuilder);
} else {
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE")) || !ObjectUtils.isEmpty(map.getString("useUnitCreditCode"))) {
BoolQueryBuilder uuccBuilder = QueryBuilders.boolQuery();
String uucc = !ValidationUtil.isEmpty(map.getString("USE_UNIT_CREDIT_CODE")) ? map.getString("USE_UNIT_CREDIT_CODE") : map.getString("useUnitCreditCode");
String param = QueryParser.escape(uucc);
param = param.contains("_") ? param.split("_")[0] : param;
uuccBuilder.must(QueryBuilders.matchQuery("USE_UNIT_CREDIT_CODE", param));
boolMust.must(uuccBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("USC_UNIT_CREDIT_CODE"))) {
BoolQueryBuilder uuccBuilder = QueryBuilders.boolQuery();
String uscCode = QueryParser.escape(map.getString("USC_UNIT_CREDIT_CODE")).toLowerCase();
uuccBuilder.must(QueryBuilders.wildcardQuery("USC_UNIT_CREDIT_CODE", "*" + QueryParser.escape(uscCode) + "*"));
boolMust.must(uuccBuilder);
}
}
// 设备种类编码
if (!ObjectUtils.isEmpty(map.getString("EQU_LIST_CODE"))) {
BoolQueryBuilder elcBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("EQU_LIST_CODE"));
elcBuilder.must(QueryBuilders.matchPhraseQuery("EQU_LIST_CODE", test));
boolMust.must(elcBuilder);
}
// 设备类别编码
if (!ObjectUtils.isEmpty(map.getString("EQU_DEFINE_CODE"))) {
BoolQueryBuilder elcBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("EQU_DEFINE_CODE"));
elcBuilder.must(QueryBuilders.matchPhraseQuery("EQU_DEFINE_CODE", test));
boolMust.must(elcBuilder);
}
// 设备种类名称
if (!ObjectUtils.isEmpty(map.getString(EQU_LIST))) {
BoolQueryBuilder elBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(EQU_LIST));
elBuilder.must(QueryBuilders.matchPhraseQuery(EQU_LIST, "*" + test + "*"));
boolMust.must(elBuilder);
}
// 设备类别
if (!ObjectUtils.isEmpty(map.getString(EQU_CATEGORY_CODE))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(EQU_CATEGORY_CODE));
pBuilder.must(QueryBuilders.termQuery(EQU_CATEGORY_CODE, test));
boolMust.must(pBuilder);
}
// 设备代码模糊查询
if (!ObjectUtils.isEmpty(map.getString(EQU_CODE))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(EQU_CODE));
pBuilder.must(QueryBuilders.wildcardQuery(EQU_CODE, "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder);
}
// 单位内部编号模糊查询
if (!ObjectUtils.isEmpty(map.getString("USE_INNER_CODE"))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_INNER_CODE"));
pBuilder.must(QueryBuilders.wildcardQuery("USE_INNER_CODE", "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder);
}
// 出厂编号/产品编码模糊查询
if (!ObjectUtils.isEmpty(map.getString(FACTORY_NUM))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString(FACTORY_NUM));
pBuilder.must(QueryBuilders.wildcardQuery(FACTORY_NUM, "*" + QueryParser.escape(test.toLowerCase()) + "*"));
boolMust.must(pBuilder);
}
// 制造单位(生产单位)名称模糊查询
if (!ObjectUtils.isEmpty(map.getString("PRODUCE_UNIT_NAME"))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("PRODUCE_UNIT_NAME"));
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);
}
// 工程装置名称模糊查询
if (!ObjectUtils.isEmpty(map.getString(PROJECT_CONTRAPTION))) {
BoolQueryBuilder pBuilder = QueryBuilders.boolQuery();
pBuilder.must(QueryBuilders.termsQuery("PROJECT_CONTRAPTION.keyword", map.getString(PROJECT_CONTRAPTION)));
boolMust.must(pBuilder);
}
// 查询 使用登记【可选设备列表】【(EQU_STATUS=== null || "" ) && (USE_ORG_CODE(使用登记证编号) ==="" || null)】
BoolQueryBuilder syBuilder = QueryBuilders.boolQuery();
syBuilder.mustNot(QueryBuilders.existsQuery("EQU_STATE"));
// syBuilder.mustNot(QueryBuilders.wildcardQuery("USE_ORG_CODE", "*"));
boolMust.must(syBuilder);
this.setRepeatUsedCheckFilterParam(boolMust, companyCode, "useRegistration");
builder.query(boolMust);
builder.sort("REC_DATE", SortOrder.DESC);
builder.from((pageNumber - 1) * size);
builder.size(size);
request.source(builder);
List<JSONObject> list = new LinkedList<>();
long totle = 0;
if (log.isDebugEnabled()) {
log.debug("查询es 的查询条件: {}", request);
}
try {
SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
for (SearchHit hit : response.getHits().getHits()) {
System.out.println(hit);
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(hit);
JSONObject dto2 = jsonObject.getJSONObject("sourceAsMap");
if (!ValidationUtil.isEmpty(dto2.get(CONSTRUCTIONTYPE))) {
// 转化施工类型
String constructionType = dto2.get(CONSTRUCTIONTYPE).toString();
if (!ValidationUtil.isEmpty(constructionType)) {
String[] constructionTypeList = constructionType.split(",");
List<String> statusList = new ArrayList<>();
for (String cType : constructionTypeList) {
Integer integer = Integer.valueOf(cType);
String status = ConstructionEnum.getName.get(integer);
statusList.add(status);
}
dto2.put(CONSTRUCTIONTYPE, Joiner.on(",").join(statusList));
}
}
if (!ValidationUtil.isEmpty(dto2.get(EQUSTATE))) {
Integer integer = Integer.valueOf(dto2.get(EQUSTATE).toString());
String status = EquimentEnum.getName.get(integer);
dto2.put(EQUSTATE, status);
}
if (!ValidationUtil.isEmpty(dto2.get(DATA_SOURCE))) {
String s = dto2.get(DATA_SOURCE).toString();
dto2.put(DATA_SOURCE, s);
dto2.put(DATA_SOURCE_NAME, Arrays.stream(EquipSourceEnum.values())
.filter(e -> s.startsWith(e.getCode()))
.map(EquipSourceEnum::getName)
.findFirst()
.orElse(EquipSourceEnum.jg.getName()));
}
dto2.put("record", dto2.get(SEQUENCE_NBR));
list.add(dto2);
}
// 获取所有设备的Id
List<String> equIds = null;
if (!ValidationUtil.isEmpty(list)) {
equIds = list.stream().map(item -> item.get(SEQUENCE_NBR).toString()).collect(Collectors.toList());
}
if (!ValidationUtil.isEmpty(equIds)) {
// 查询设备地址
List<IdxBizJgUseInfo> useInfoListByEquIds = idxBizJgUseInfoService.getUseInfoListByEquIds(equIds);
Map<String, String> equAddressMap = new HashMap<>();
if (!ValidationUtil.isEmpty(useInfoListByEquIds)) {
equAddressMap = useInfoListByEquIds.stream().collect(Collectors.toMap(IdxBizJgUseInfo::getRecord,
useInfo -> {
String fulladdress = "";
if (!ValidationUtil.isEmpty(useInfo.getProvinceName())) {
fulladdress += useInfo.getProvinceName();
}
if (!ValidationUtil.isEmpty(useInfo.getCityName())) {
fulladdress += useInfo.getCityName();
}
if (!ValidationUtil.isEmpty(useInfo.getCountyName())) {
fulladdress += useInfo.getCountyName();
}
if (!ValidationUtil.isEmpty(useInfo.getStreetName())) {
fulladdress += useInfo.getStreetName();
}
if (!ValidationUtil.isEmpty(useInfo.getAddress())) {
fulladdress += useInfo.getAddress();
}
return fulladdress;
}
)
);
}
// 更新设备使用情况和设备地址
for (JSONObject item : list) {
String fullAddress = equAddressMap.get(item.getString(SEQUENCE_NBR));
item.put("ADDRESS", !ValidationUtil.isEmpty(fullAddress) ? fullAddress : "");
item.put("CAN_EDIT", this.checkEquipIsCanEdit(item.getString(SEQUENCE_NBR)));
item.put("CAN_DELETE", this.checkEquipIsCanDelete(item.getString(SEQUENCE_NBR)));
}
}
totle = response.getInternalResponse().hits().getTotalHits().value;
result.setRecords(list);
result.setTotal(totle);
} catch (IOException e) {
throw new RuntimeException(e);
}
return result;
}
/** /**
* 设备注册信息分页查询 * 设备注册信息分页查询
* *
......
...@@ -441,8 +441,6 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -441,8 +441,6 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
* @param map map * @param map map
* @return list * @return list
*/ */
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public List<Map<String, Object>> save(JSONObject map) { public List<Map<String, Object>> save(JSONObject map) {
Map<String, Function<JSONObject, List<Map<String, Object>>>> functionMap = MapBuilder.<String, Function<JSONObject, List<Map<String, Object>>>>create() Map<String, Function<JSONObject, List<Map<String, Object>>>> functionMap = MapBuilder.<String, Function<JSONObject, List<Map<String, Object>>>>create()
.put("unit", this::handleUnitUseRegistration).build(); .put("unit", this::handleUnitUseRegistration).build();
...@@ -456,7 +454,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -456,7 +454,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
* @param map map * @param map map
* @return list * @return list
*/ */
private List<Map<String, Object>> handleUseRegistration(JSONObject map) { @Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public List<Map<String, Object>> handleUseRegistration(JSONObject map) {
try { try {
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);
CompanyBo company = reginParams.getCompany(); CompanyBo company = reginParams.getCompany();
...@@ -483,6 +483,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -483,6 +483,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]); jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]);
jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode()); jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode());
} }
if (map.containsKey("orgBranchCode")) {
// 监察处置机构代码
String[] splitOrgBranchCode = String.valueOf(map.getString("orgBranchCode")).split("_");
jgUseRegistration.setSupervisionOrgCode(splitOrgBranchCode[0]);
}
// 安全管理员 // 安全管理员
if (map.containsKey("safetyManager")) { if (map.containsKey("safetyManager")) {
String[] data = String.valueOf(map.getString("safetyManager")).split("_"); String[] data = String.valueOf(map.getString("safetyManager")).split("_");
...@@ -563,8 +568,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -563,8 +568,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
if (!ObjectUtils.isEmpty(listResponseModel)) { if (!ObjectUtils.isEmpty(listResponseModel)) {
jgUseRegistration.setApplyNo(listResponseModel.getResult().get(0)); jgUseRegistration.setApplyNo(listResponseModel.getResult().get(0));
} }
jgUseRegistration.setAuditStatus("待提交"); jgUseRegistration.setAuditStatus("待提交");//字段不用
jgUseRegistration.setStatus(WorkFlowStatusEnum.USE_SUBMIT.getPass()); jgUseRegistration.setStatus(WorkFlowStatusEnum.USE_SUBMIT.getPass());
jgUseRegistration.setRegType("2".equals(map.get("regType")) ? "2" : "0");
this.save(jgUseRegistration); this.save(jgUseRegistration);
jgRelationEquip.setEquipTransferId(jgUseRegistration.getSequenceNbr().toString()); jgRelationEquip.setEquipTransferId(jgUseRegistration.getSequenceNbr().toString());
jgRelationEquipMapper.insert(jgRelationEquip); jgRelationEquipMapper.insert(jgRelationEquip);
...@@ -596,12 +602,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -596,12 +602,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
WorkflowResultDto workflowResultDto = resultDto.get(0); WorkflowResultDto workflowResultDto = resultDto.get(0);
updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, "", Boolean.TRUE, null); updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, "", Boolean.TRUE, null);
} }
} }
if (!ObjectUtils.isEmpty(instanceId)) { if (!ObjectUtils.isEmpty(instanceId)) {
// 执行流程 // 执行流程
flowExecute(jgUseRegistration.getSequenceNbr(), instanceId, "0", "", "", map.getString("manageType"), String.valueOf(map.get("nextTaskId")), null); flowExecute(jgUseRegistration.getSequenceNbr(), instanceId, "0", "", "", map.getString("manageType"), String.valueOf(map.get("nextTaskId")), map);
} }
} else { } else {
if (ObjectUtils.isEmpty(map.get("instanceId"))) { if (ObjectUtils.isEmpty(map.get("instanceId"))) {
...@@ -686,7 +691,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -686,7 +691,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
* @param map map * @param map map
* @return list * @return list
*/ */
private List<Map<String, Object>> handleUnitUseRegistration(JSONObject map) { @Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public List<Map<String, Object>> handleUnitUseRegistration(JSONObject map) {
try { try {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())) + "", ReginParams.class); ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())) + "", ReginParams.class);
CompanyBo company = reginParams.getCompany(); CompanyBo company = reginParams.getCompany();
...@@ -1571,22 +1578,69 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1571,22 +1578,69 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
} }
// 组装信息 // 组装信息
TaskResultDTO dto = new TaskResultDTO(); TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(jgUseRegistration.getNextTaskId()); dto.setTaskId(jgUseRegistration.getNextTaskId());
dto.setComment(comment); dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (jgUseRegistration.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getReject()) || jgUseRegistration.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getRollBack())) { if (jgUseRegistration.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getReject()) || jgUseRegistration.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getRollBack())) {
map.put("approvalStatus", "提交"); map.put("approvalStatus", "提交");
} }
dto.setVariable(map);
// 接受机构 String companyCode = "";
if ("1".equals(operate) && WorkFlowStatusEnum.USE_RECEIVE.getPass().equals(jgUseRegistration.getStatus())) { if (jsonObject.containsKey("orgBranchCode") && !ObjectUtils.isEmpty(jsonObject.get("orgBranchCode"))) {
// 驳回到使用单位 String orgBranchCode = String.valueOf(jsonObject.get("orgBranchCode")).split("_")[0];
String orgCode = orgBranchCode.substring(0, orgBranchCode.lastIndexOf("*"));
HashMap<String, Object> parentMessage = (HashMap<String, Object>) Privilege.companyClient.queryByOrgcode(orgCode).getResult();
CompanyModel parentModel = JSON.parseObject(JSON.toJSONString(parentMessage.get("compnay")), CompanyModel.class);
companyCode = parentModel.getCompanyCode();
}
//驳回
if ("1".equals(operate)){
//一级驳回
if(WorkFlowStatusEnum.USE_RECEIVE.getPass().equals(jgUseRegistration.getStatus())){
// 一级驳回到使用单位
dto.setNextExecuteUserCompanyCode(jgUseRegistration.getUseUnitCreditCode()); dto.setNextExecuteUserCompanyCode(jgUseRegistration.getUseUnitCreditCode());
dto.setNextExecuteUserOrgCode(jgUseRegistration.getUseUnitCreditCode());
}
//特殊登记,安全监察驳回到一级
if("2".equals(jgUseRegistration.getRegType())) {
// 二级驳回到监察单位
if(WorkFlowStatusEnum.USE_PRELIMINARY.getPass().equals(jgUseRegistration.getStatus()) || WorkFlowStatusEnum.USE_PRELIMINARY.getReject().equals(jgUseRegistration.getStatus())){
dto.setNextExecuteUserCompanyCode(companyCode);
dto.setResultCode("approvalStatus");
map.put("approvalStatus", "9");
operate = "9";
}else if(WorkFlowStatusEnum.USE_SAFETY_CHECK.getPass().equals(jgUseRegistration.getStatus())|| WorkFlowStatusEnum.USE_SAFETY_CHECK.getReject().equals(jgUseRegistration.getStatus())){
//安全监察驳回到一级
dto.setNextExecuteUserCompanyCode(jgUseRegistration.getReceiveCompanyCode());
dto.setResultCode("approvalStatus");
map.put("approvalStatus", operate);
operate = "2";
}else{
dto.setNextExecuteUserCompanyCode(jgUseRegistration.getReceiveCompanyCode());
dto.setResultCode("approvalStatus");
map.put("approvalStatus", operate);
}
} else { } else {
//正常使用登记
dto.setNextExecuteUserCompanyCode(jgUseRegistration.getReceiveCompanyCode()); dto.setNextExecuteUserCompanyCode(jgUseRegistration.getReceiveCompanyCode());
map.put("approvalStatus", operate);
dto.setResultCode("approvalStatus");
} }
} else{
//通过
//一级通过,且是特殊登记,需要监察,approvalStatus=2
if ("2".equals(jgUseRegistration.getRegType()) && (WorkFlowStatusEnum.USE_RECEIVE.getPass().equals(jgUseRegistration.getStatus()) || WorkFlowStatusEnum.USE_RECEIVE.getReject().equals(jgUseRegistration.getStatus()))){
dto.setResultCode("approvalStatus");
map.put("approvalStatus", "9");
dto.setNextExecuteUserCompanyCode(companyCode);
}else{//新增登记
map.put("approvalStatus", operate);
dto.setResultCode("approvalStatus");
dto.setNextExecuteUserCompanyCode(jgUseRegistration.getReceiveCompanyCode());
}
}
dto.setVariable(map);//无驳回1需监察 0, 通过,需要监察2, 驳回到监察是2
ProcessTaskDTO complete = cmWorkflowService.completeOrReject(jgUseRegistration.getNextTaskId(), dto, operate); ProcessTaskDTO complete = cmWorkflowService.completeOrReject(jgUseRegistration.getNextTaskId(), dto, operate);
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>(); ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
processTaskDTOS.add(complete); processTaskDTOS.add(complete);
...@@ -2940,6 +2994,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -2940,6 +2994,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]); jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]);
jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode()); jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode());
} }
if (map.containsKey("orgBranchCode")) {
// 监察处置机构代码
String[] splitOrgBranchCode = String.valueOf(map.getString("orgBranchCode")).split("_");
jgUseRegistration.setSupervisionOrgCode(splitOrgBranchCode[0]);
}
// 安全管理员 // 安全管理员
if (map.containsKey("safetyManager")) { if (map.containsKey("safetyManager")) {
String[] data = String.valueOf(map.getString("safetyManager")).split("_"); String[] data = String.valueOf(map.getString("safetyManager")).split("_");
...@@ -3410,6 +3469,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -3410,6 +3469,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]); jgUseRegistration.setReceiveOrgName(splitMaintenanceUnitCode[1]);
jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode()); jgUseRegistration.setReceiveCompanyOrgCode(commonService.getOneCompany(jgUseRegistration.getReceiveCompanyCode()).getOrgCode());
} }
if (map.containsKey("orgBranchCode")) {
// 监察处置机构代码
String[] splitOrgBranchCode = String.valueOf(map.getString("orgBranchCode")).split("_");
jgUseRegistration.setSupervisionOrgCode(splitOrgBranchCode[0]);
}
// 安全管理员 // 安全管理员
if (map.containsKey("safetyManager")) { if (map.containsKey("safetyManager")) {
String[] data = String.valueOf(map.getString("safetyManager")).split("_"); String[] data = String.valueOf(map.getString("safetyManager")).split("_");
......
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