Commit 13fa9a13 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 d8e1e552 96f0d702
...@@ -44,4 +44,6 @@ public interface CylinderAreaDataMapper extends BaseMapper<CylinderAreaData> { ...@@ -44,4 +44,6 @@ public interface CylinderAreaDataMapper extends BaseMapper<CylinderAreaData> {
List<CylinderInfoStatisticsDto> getCylinderStatisticsDataByCity(String orgCode); List<CylinderInfoStatisticsDto> getCylinderStatisticsDataByCity(String orgCode);
List<Map<String, Object>> getQiZhanStatisticsDataByCity(@Param(value = "orgCodes") List<String> orgCodes); List<Map<String, Object>> getQiZhanStatisticsDataByCity(@Param(value = "orgCodes") List<String> orgCodes);
Long getOpertorStatisticsDataByCity(@Param(value = "orgCodes") List<String> orgCodes);
} }
...@@ -141,4 +141,22 @@ ...@@ -141,4 +141,22 @@
a.orgCode a.orgCode
</select> </select>
<select id="getOpertorStatisticsDataByCity" resultType="Long">
SELECT
count(1)
FROM
tz_base_enterprise_info u
RIGHT JOIN tzs_user_info ui ON ui.unit_code = u.use_code
WHERE
u.data_sources = '陕西省内企业'
AND u.unit_type LIKE'%充装单位%'
AND ui.post like '%"6552"%'
<if test="orgCodes != null and orgCodes.size > 0">
AND
<foreach collection="orgCodes" open="(" item="orgCode" close=")" separator=" or ">
(u.org_code like concat(#{orgCode}, '%') )
</foreach>
</if>
</select>
</mapper> </mapper>
...@@ -1464,7 +1464,7 @@ public class CylinderInfoController extends BaseController { ...@@ -1464,7 +1464,7 @@ public class CylinderInfoController extends BaseController {
public ResponseModel<IPage<CylinderFillingMessageModel>> getUploadCylinderLogs(PageParam pageParam, String regionCode ) { public ResponseModel<IPage<CylinderFillingMessageModel>> getUploadCylinderLogs(PageParam pageParam, String regionCode ) {
IPage<CylinderFillingMessageModel> result = cylinderFillingMessageService.getUploadCylinderLogs(pageParam, regionCode); IPage<CylinderFillingMessageModel> result = cylinderFillingMessageService.getUploadCylinderLogs(pageParam, regionCode);
return ResponseHelper.buildResponse(result); return ResponseHelper.buildResponse(result);
}; }
} }
...@@ -25,6 +25,7 @@ import com.yeejoin.amos.feign.privilege.model.CompanyModel; ...@@ -25,6 +25,7 @@ import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel; import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import joptsimple.internal.Strings; import joptsimple.internal.Strings;
import org.apache.lucene.search.comparators.DoubleComparator;
import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RequestOptions;
...@@ -599,7 +600,7 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto ...@@ -599,7 +600,7 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
result.put("cylindersCount", qiping); result.put("cylindersCount", qiping);
result.put("stationCount", unitNumber); result.put("stationCount", unitNumber);
result.put("operatorCount", 0); result.put("operatorCount", this.baseMapper.getOpertorStatisticsDataByCity(orgCodes));
return result; return result;
} }
...@@ -735,9 +736,12 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto ...@@ -735,9 +736,12 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
} }
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
result.put("xdata", xdata); List<Map<String, String>> data = new ArrayList<>();
List<String> ydata = new ArrayList<>();
// List<String> ydata = new ArrayList<>();
for (int i = 0; i < xdata.size(); i++) { for (int i = 0; i < xdata.size(); i++) {
Map<String, String> item = new HashMap<>();
item.put("name", xdata.get(i));
// 计算xuke的加权值 // 计算xuke的加权值
double xukeWeighted = Double.parseDouble(xuke.get(i)) * 0.10; // 10% double xukeWeighted = Double.parseDouble(xuke.get(i)) * 0.10; // 10%
...@@ -753,10 +757,31 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto ...@@ -753,10 +757,31 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
// 计算总指数 // 计算总指数
double totalIndex = xukeWeighted + jianyanchaoqiWeighted + jianyanhegeWeighted + czjcWeighted + czjchegeWeighted; double totalIndex = xukeWeighted + jianyanchaoqiWeighted + jianyanhegeWeighted + czjcWeighted + czjchegeWeighted;
item.put("value",String.format("%.2f", totalIndex));
data.add(item);
// ydata.add(String.format("%.2f", totalIndex));
}
ydata.add(String.format("%.2f", totalIndex)); data = data.stream()
.filter(map -> map.containsKey("value")) // 确保每个Map都包含指定的键
.sorted(Comparator.comparingDouble(map -> {
// 检查并解析值,如果失败则返回Double.MIN_VALUE(或根据需要处理)
try {
return Double.parseDouble(map.get("value"));
} catch (NumberFormatException e) {
// 处理无法解析为double的情况,这里返回Double.MIN_VALUE表示最小
// 或者可以抛出自定义异常,记录日志等
return Double.MIN_VALUE;
} }
result.put("ydata", ydata); }))
.collect(Collectors.toList());
List<String> name = data.stream().map(map -> map.get("name")).collect(Collectors.toList());
Collections.reverse(name);
result.put("xdata", name);
List<String> value = data.stream().map(map -> map.get("value")).collect(Collectors.toList());
Collections.reverse(value);
result.put("ydata", value);
return result; return result;
} }
} }
\ No newline at end of file
...@@ -46,7 +46,9 @@ public enum BusinessTypeEnum { ...@@ -46,7 +46,9 @@ public enum BusinessTypeEnum {
JY_INSPECTION_APPLICATION_CHECK("117", "电梯检测"), JY_INSPECTION_APPLICATION_CHECK("117", "电梯检测"),
JG_VEHICLE_GAS_APPLICATION("118", "车用气瓶登记"); JG_VEHICLE_GAS_APPLICATION("118", "车用气瓶登记"),
JG_VEHICLE_GAS_CYLINDER_CHANGE("119", "车用气瓶变更登记");
private final String code; private final String code;
private final String name; private final String name;
......
...@@ -2,6 +2,10 @@ package com.yeejoin.amos.boot.module.jg.api.mapper; ...@@ -2,6 +2,10 @@ package com.yeejoin.amos.boot.module.jg.api.mapper;
import com.yeejoin.amos.boot.module.jg.api.entity.JgChangeVehicleRegistrationUnit; import com.yeejoin.amos.boot.module.jg.api.entity.JgChangeVehicleRegistrationUnit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/** /**
* 单位变更登记 Mapper 接口 * 单位变更登记 Mapper 接口
...@@ -11,4 +15,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -11,4 +15,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/ */
public interface JgChangeVehicleRegistrationUnitMapper extends BaseMapper<JgChangeVehicleRegistrationUnit> { public interface JgChangeVehicleRegistrationUnitMapper extends BaseMapper<JgChangeVehicleRegistrationUnit> {
List<Map<String, Object>> getEquList(@Param("records") List<String>records);
} }
...@@ -2,4 +2,43 @@ ...@@ -2,4 +2,43 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeVehicleRegistrationUnitMapper"> <mapper namespace="com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeVehicleRegistrationUnitMapper">
<select id="getEquList" resultType="java.util.Map">
SELECT
(SELECT "PRODUCE_UNIT_NAME" from idx_biz_jg_factory_info where "RECORD" = ri.RECORD) produceUnitName,
(SELECT "FACTORY_NUM" from idx_biz_jg_factory_info where "RECORD" = ri.RECORD) factoryNum,
to_char((SELECT "PRODUCE_DATE" from idx_biz_jg_factory_info where "RECORD" = ri.RECORD), 'YYYY-MM') produceDate,
ri."RECORD" record,
jui."USE_INNER_CODE" useInnerCode,
ri."EQU_CODE" equCode,
ri."EQU_LIST" equList,
(select name from tz_equipment_category where code = ri."EQU_LIST") equListName,
ri."EQU_CATEGORY" equCategory,
(select name from tz_equipment_category where code = ri."EQU_CATEGORY") equCategoryName,
ri."EQU_DEFINE" equDefine,
(select name from tz_equipment_category where code = ri."EQU_DEFINE") equDefineName,
ri."PRODUCT_NAME" productName,
ri."BRAND_NAME" brandName,
ri."EQU_TYPE" equType,
ri."EQU_CODE_TYPE" equCodeType,
ri."WHETHER_VEHICLE_CYLINDER" whetherVehicleCylinder,
pv."CHARGING_MEDIUM" chargingMedium,
pv."NOMINAL_WORKING_PRESSURE" nominalWorkingPressure,
pv."SINGLE_BOTTLE_VOLUME" singleBottleVolume,
to_char((select INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = ri.RECORD ORDER BY INSPECT_DATE limit 1), 'YYYY-MM-DD') inspectDate,
to_char((select NEXT_INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = ri.RECORD ORDER BY INSPECT_DATE limit 1), 'YYYY-MM-DD') nextInspectDate
FROM
idx_biz_jg_register_info ri
LEFT JOIN idx_biz_jg_use_info jui on ri.RECORD = jui.RECORD
LEFT JOIN idx_biz_jg_tech_params_vessel pv ON pv."RECORD" = ri.RECORD
WHERE ri."EQU_CATEGORY" = '2300' and jui."DATA_SOURCE" like 'jg%' and ri.whether_vehicle_cylinder = 1
and jui.record in
<foreach collection="records" item="record" open="(" close=")" separator=",">
#{record}
</foreach>
</select>
</mapper> </mapper>
...@@ -119,7 +119,7 @@ ...@@ -119,7 +119,7 @@
AND tjurm.receive_company_code = #{dto.receiveCompanyCode} AND tjurm.receive_company_code = #{dto.receiveCompanyCode}
</if> </if>
-- 是否车用气瓶(whetherVehicleCylinder)= 1 ,过滤出车用气瓶使用登记证数据 -- 是否车用气瓶(whetherVehicleCylinder)= 1 ,过滤出车用气瓶使用登记证数据
<if test="dto.whetherVehicleCylinder != null and dto.whetherVehicleCylinder == '1' "> <if test="dto.whetherVehicleCylinder != null and dto.whetherVehicleCylinder == 1 ">
AND tjurm.reg_type = '车用气瓶登记' AND tjurm.reg_type = '车用气瓶登记'
</if> </if>
ORDER BY ORDER BY
......
package com.yeejoin.amos.boot.module.jg.biz.controller; package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationManageDto;
import com.yeejoin.amos.boot.module.jg.api.enums.CompanyTypeEnum;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List; import java.util.List;
import java.util.Map;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.JgChangeVehicleRegistrationUnitServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.JgChangeVehicleRegistrationUnitServiceImpl;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -30,18 +38,7 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController { ...@@ -30,18 +38,7 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController {
@Autowired @Autowired
JgChangeVehicleRegistrationUnitServiceImpl jgChangeVehicleRegistrationUnitServiceImpl; JgChangeVehicleRegistrationUnitServiceImpl jgChangeVehicleRegistrationUnitServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<JgChangeVehicleRegistrationUnitDto> save(@RequestBody JgChangeVehicleRegistrationUnitDto model) {
model = jgChangeVehicleRegistrationUnitServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/** /**
* 根据sequenceNbr更新 * 根据sequenceNbr更新
...@@ -101,6 +98,15 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController { ...@@ -101,6 +98,15 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController {
return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.queryForJgChangeVehicleRegistrationUnitPage(page)); return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.queryForJgChangeVehicleRegistrationUnitPage(page));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增、更新车用气瓶变更", notes = "新增、更新车用气瓶变更")
public ResponseModel<String> save(@RequestBody JSONObject model) {
ReginParams reginParams = getSelectedOrgInfo();
jgChangeVehicleRegistrationUnitServiceImpl.saveMessage(model, reginParams);
return ResponseHelper.buildResponse("");
}
/** /**
* 列表全部数据查询 * 列表全部数据查询
* *
...@@ -112,4 +118,68 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController { ...@@ -112,4 +118,68 @@ public class JgChangeVehicleRegistrationUnitController extends BaseController {
public ResponseModel<List<JgChangeVehicleRegistrationUnitDto>> selectForList() { public ResponseModel<List<JgChangeVehicleRegistrationUnitDto>> selectForList() {
return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.queryForJgChangeVehicleRegistrationUnitList()); return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.queryForJgChangeVehicleRegistrationUnitList());
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping (value = "/getUseRegistrationCodeData")
@ApiOperation(httpMethod = "GET", value = "获取当前企业,某接收机构审批的使用登记证信息", notes = "获取当前企业,某接收机构审批的使用登记证信息")
public ResponseModel<Page<JgUseRegistrationManageDto>> getUseRegistrationCodeData(
@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size,
@RequestParam(value = "useUnitCreditCode") String useUnitCreditCode,
@RequestParam(value = "whetherVehicleCylinder") String whetherVehicleCylinder,
@RequestParam(value = "certificateStatus") String certificateStatus
) {
JgUseRegistrationManageDto dto = new JgUseRegistrationManageDto();
Page<JgUseRegistrationManageDto> page = new Page<JgUseRegistrationManageDto>();
page.setCurrent(current);
page.setSize(size);
if (!ValidationUtil.isEmpty(useUnitCreditCode)){
String[] codes = useUnitCreditCode.split("_");
if (!ValidationUtil.isEmpty(codes)){
dto.setDataType(BaseController.COMPANY_TYPE_COMPANY);
dto.setUseUnitCreditCode(codes[0]);
}
}
if (!ValidationUtil.isEmpty(certificateStatus)){
dto.setCertificateStatus(certificateStatus);
}
if (!ValidationUtil.isEmpty(whetherVehicleCylinder)){
dto.setWhetherVehicleCylinder(whetherVehicleCylinder);
}
return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.getUseRegistrationCodeData(page, dto));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getEquList")
@ApiOperation(httpMethod = "GET", value = "根据使用登记查询绑定气瓶(组件默认参数record)", notes = "根据使用登记查询绑定气瓶")
public ResponseModel<Map<String, Object>> getEquList(@RequestParam(value = "record") String record) {
return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.getEquList(record));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/details")
@ApiOperation(httpMethod = "GET", value = "获取详情", notes = "获取详情")
public ResponseModel<Map<String, Object>> getDetails(@RequestParam(value = "sequenceNbr") String sequenceNbr) {
return ResponseHelper.buildResponse(jgChangeVehicleRegistrationUnitServiceImpl.getDetails(sequenceNbr));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/withdraw")
@ApiOperation(httpMethod = "POST", value = "撤回", notes = "撤回")
public ResponseModel<Object> withdraw(@RequestBody JSONObject map) {
jgChangeVehicleRegistrationUnitServiceImpl.withdraw(String.valueOf(map.get("instanceId")), String.valueOf(map.get("nextTaskId")));
return ResponseHelper.buildResponse("ok");
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/flowExecute")
@ApiOperation(httpMethod = "POST", value = "执行流程", notes = "执行流程")
public ResponseModel<Object> flowExecute(@RequestBody JSONObject map) {
jgChangeVehicleRegistrationUnitServiceImpl.flowExecute(Long.valueOf(String.valueOf(map.get("sequenceNbr"))),
String.valueOf(map.get("instanceId")),
String.valueOf(map.get("operate")),
String.valueOf(map.get("comment")),
String.valueOf(map.get("nextTaskId")));
return ResponseHelper.buildResponse("ok");
}
} }
...@@ -58,7 +58,7 @@ public class JgUseRegistrationController extends BaseController { ...@@ -58,7 +58,7 @@ public class JgUseRegistrationController extends BaseController {
String.valueOf(map.get("comment")), String.valueOf(map.get("comment")),
String.valueOf(map.getOrDefault("carNumber", "")), String.valueOf(map.getOrDefault("carNumber", "")),
String.valueOf(map.getOrDefault("manageType", "")), String.valueOf(map.getOrDefault("manageType", "")),
String.valueOf(map.get("nextTaskId"))); String.valueOf(map.get("nextTaskId")), map);
return ResponseHelper.buildResponse("ok"); return ResponseHelper.buildResponse("ok");
} }
......
...@@ -240,6 +240,8 @@ public class CommonServiceImpl implements ICommonService { ...@@ -240,6 +240,8 @@ public class CommonServiceImpl implements ICommonService {
private Configuration configuration; private Configuration configuration;
@Autowired @Autowired
EquipTechParamPipelineMapper equipTechParamPipelineMapper; EquipTechParamPipelineMapper equipTechParamPipelineMapper;
@Autowired
private JgChangeVehicleRegistrationUnitServiceImpl jgChangeVehicleRegistrationUnitService;
public static byte[] file2byte(File file) { public static byte[] file2byte(File file) {
try { try {
...@@ -1179,7 +1181,13 @@ public class CommonServiceImpl implements ICommonService { ...@@ -1179,7 +1181,13 @@ public class CommonServiceImpl implements ICommonService {
provideMap.put(YZBG_PAGE_ID, noticeObj); provideMap.put(YZBG_PAGE_ID, noticeObj);
JSONObject jsonObject = new JSONObject(provideMap); JSONObject jsonObject = new JSONObject(provideMap);
return jgChangeRegistrationTransferService.createTransfer(submitType, jsonObject, reginParams); return jgChangeRegistrationTransferService.createTransfer(submitType, jsonObject, reginParams);
} else if (type.equals(ApplicationFormTypeEnum.DWBG.getBusinessCode())) { }else if (type.equals(ApplicationFormTypeEnum.DWBG.getBusinessCode()) && !ObjectUtils.isEmpty(basicObj.get("equCategory")) && CylinderTypeEnum.SPECIAL_CYLINDER.getCode().equals(basicObj.get("equCategory").toString())) {
noticeObj.put("submit", submitType);
noticeObj.put("formType", "add");
noticeObj.put("receiveOrgCode", !ObjectUtils.isEmpty(basicObj.get("receiveOrgCreditCode")) ? String.valueOf(basicObj.get("receiveOrgCreditCode")) : String.valueOf(basicObj.get("receiveOrgCreditCode1")));
JSONObject jsonObject = new JSONObject(noticeObj);
return jgChangeVehicleRegistrationUnitService.saveMessage(jsonObject, reginParams);
}else if (type.equals(ApplicationFormTypeEnum.DWBG.getBusinessCode())) {
noticeObj.put("receiveOrgCode", !ObjectUtils.isEmpty(basicObj.get("receiveOrgCreditCode")) ? String.valueOf(basicObj.get("receiveOrgCreditCode")) : String.valueOf(basicObj.get("receiveOrgCreditCode1"))); noticeObj.put("receiveOrgCode", !ObjectUtils.isEmpty(basicObj.get("receiveOrgCreditCode")) ? String.valueOf(basicObj.get("receiveOrgCreditCode")) : String.valueOf(basicObj.get("receiveOrgCreditCode1")));
provideMap.put(DWBG_PAGE_ID, noticeObj); provideMap.put(DWBG_PAGE_ID, noticeObj);
JSONObject jsonObject = new JSONObject(provideMap); JSONObject jsonObject = new JSONObject(provideMap);
......
package com.yeejoin.amos.boot.module.jg.biz.service.impl; package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.yeejoin.amos.boot.module.jg.api.entity.JgChangeVehicleRegistrationUnit; import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.jg.api.dto.*;
import com.yeejoin.amos.boot.module.jg.api.entity.*;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.WorkFlowStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeVehicleRegistrationUnitMapper; import com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeVehicleRegistrationUnitMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeVehicleRegistrationUnitService; import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeVehicleRegistrationUnitService;
import com.yeejoin.amos.boot.module.jg.api.dto.JgChangeVehicleRegistrationUnitDto; import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgFactoryInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import io.seata.spring.annotation.GlobalTransactional;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List; import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
/** /**
* 单位变更登记服务实现类 * 单位变更登记服务实现类
...@@ -16,7 +54,382 @@ import java.util.List; ...@@ -16,7 +54,382 @@ import java.util.List;
* @date 2024-07-10 * @date 2024-07-10
*/ */
@Service @Service
public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgChangeVehicleRegistrationUnitDto,JgChangeVehicleRegistrationUnit,JgChangeVehicleRegistrationUnitMapper> implements IJgChangeVehicleRegistrationUnitService { public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgChangeVehicleRegistrationUnitDto, JgChangeVehicleRegistrationUnit, JgChangeVehicleRegistrationUnitMapper> implements IJgChangeVehicleRegistrationUnitService {
private static final String SUBMIT_TYPE_FLOW = "1";
private static final String PROCESS_DEFINITION_KEY = "vehicleGasCylinderChange";
private static final String BUSINESS_NAME = "车用气瓶变更";
private static final String template = "%s发起车用气瓶变更登记业务申请,【申请单号:%s】";
@Autowired
JgRegistrationHistoryServiceImpl jgRegistrationHistoryService;
@Autowired
CommonServiceImpl commonServiceImpl;
@Autowired
CmWorkflowServiceImpl cmWorkflowService;
@Autowired
RedisUtils redisUtils;
@Autowired
ICommonService commonService;
@Autowired
TzsServiceFeignClient tzsServiceFeignClient;
@Autowired
private JgUseRegistrationManageServiceImpl jgUseRegistrationManageService;
@Autowired
private JgVehicleInformationServiceImpl jgVehicleInformationService;
@Autowired
private JgChangeVehicleRegistrationUnitEqServiceImpl jgChangeVehicleRegistrationUnitEqService;
@Autowired
private RedissonClient redissonClient;
public void changeData(JgChangeVehicleRegistrationUnit dto) {
if (!ObjectUtils.isEmpty(dto.getReceiveCompanyCode())) {
// 接收单位信息
String[] splitMaintenanceUnitCode = dto.getReceiveCompanyCode().split("_");
dto.setReceiveCompanyCode(splitMaintenanceUnitCode[0]);
dto.setReceiveOrgName(splitMaintenanceUnitCode[1]);
dto.setReceiveCompanyOrgCode(commonService.getOneCompany(dto.getReceiveCompanyCode()).getOrgCode());
}
if (!ObjectUtils.isEmpty(dto.getUseUnitCreditCode())) {
// 使用单位
String[] splitMaintenanceUnitCode = dto.getUseUnitCreditCode().split("_");
dto.setUseUnitCreditCode(splitMaintenanceUnitCode[0]);
dto.setUseUnitName(splitMaintenanceUnitCode[1]);
}
if (!ObjectUtils.isEmpty(dto.getNewUseUnitCreditCode())) {
// 新使用单位
String[] splitMaintenanceUnitCode = dto.getNewUseUnitCreditCode().split("_");
dto.setNewUseUnitCreditCode(splitMaintenanceUnitCode[0]);
dto.setNewUseUnitName(splitMaintenanceUnitCode[1]);
}
if (!ObjectUtils.isEmpty(dto.getOrgBranchCode())) {
// 属地监管部门
String[] splitMaintenanceUnitCode = dto.getOrgBranchCode().split("_");
dto.setOrgBranchCode(splitMaintenanceUnitCode[0]);
dto.setOrgBranchName(splitMaintenanceUnitCode[1]);
}
}
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 600000)
public List<JgChangeVehicleRegistrationUnit> saveMessage(JSONObject map, ReginParams reginParams) {
JgChangeVehicleRegistrationUnit dto = new JgChangeVehicleRegistrationUnit();
if (!map.containsKey("sequenceNbr")) {
// 新增
BeanUtil.copyProperties(map, dto);
dto.setCreateDate(new Date());
dto.setCreateUserId(reginParams.getUserModel().getUserId());
dto.setCreateUserName(reginParams.getUserModel().getRealName());
dto.setRecDate(new Date());
dto.setRecUserId(reginParams.getUserModel().getUserId());
changeData(dto);
if (map.containsKey("useRegistrationCode") && !ObjectUtils.isEmpty(map.get("useRegistrationCode"))) {
dto.setUseRegistCode(map.get("useRegistrationCode").toString());
}
ResponseModel<List<String>> listResponseModel = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.getCode.get(String.valueOf(map.get("businessCode"))), 1);
if (!ObjectUtils.isEmpty(listResponseModel)) {
dto.setApplyNo(listResponseModel.getResult().get(0));
dto.setApplyDate(new Date());
}
dto.setStatus("使用单位待提交");
this.save(dto);
} else {
// 更新
JgChangeVehicleRegistrationUnit updateDto = this.getById(Long.parseLong(map.get("sequenceNbr").toString()));
BeanUtil.copyProperties(map, updateDto);
changeData(updateDto);
this.updateById(updateDto);
BeanUtil.copyProperties(updateDto, dto);
}
// 更新业务关联设备表
saveChangeVehicleEq(dto, map);
// 更新历史表信息
saveHistory(dto, map);
// 是否发起流程
if (!ObjectUtils.isEmpty(map.get("submit")) && SUBMIT_TYPE_FLOW.equals(map.get("submit").toString())) {
// 删除暂存代办
commonServiceImpl.deleteTasksByRelationId(String.valueOf(dto.getSequenceNbr()));
String instanceId = "";
if (!ObjectUtils.isEmpty(map.get("instanceId"))) {
instanceId = map.get("instanceId").toString();
} else {
// 启动并执行流程
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
ActWorkflowStartDTO workflowDto = new ActWorkflowStartDTO();
ArrayList<ActWorkflowStartDTO> list = new ArrayList<>();
workflowDto.setProcessDefinitionKey(PROCESS_DEFINITION_KEY);
workflowDto.setBusinessKey("1");
workflowDto.setCompleteFirstTask(Boolean.TRUE);
// 接受机构
workflowDto.setNextExecuteUserCompanyCode(dto.getReceiveCompanyCode());
list.add(workflowDto);
actWorkflowBatchDTO.setProcess(list);
List<ProcessTaskDTO> processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
updateData(dto.getSequenceNbr(), "0", workflowResultDto, Boolean.TRUE);
}
}
if (!ObjectUtils.isEmpty(instanceId)) {
// 执行流程
flowExecute(dto.getSequenceNbr(), instanceId, "0", "", String.valueOf(map.get("nextTaskId")));
}
} else {
if (ObjectUtils.isEmpty(map.get("instanceId"))) {
ArrayList<TaskModelDto> list = new ArrayList<>();
TaskModelDto taskDto = new TaskModelDto();
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(dto, taskMessageDto);
// 数据参数
taskDto.setModel(taskMessageDto);
// 摘要
taskDto.setTaskContent(String.format(template, dto.getCreateUserName(), dto.getApplyNo()));
// 申请单号
taskDto.setTaskCode(dto.getApplyNo());
// 业务类型
taskDto.setTaskType(String.valueOf(BusinessTypeEnum.JG_VEHICLE_GAS_CYLINDER_CHANGE.getCode()));
// 业务主键
taskDto.setRelationId(String.valueOf(dto.getSequenceNbr()));
taskDto.setNextExecuteUser("");
list.add(taskDto);
commonServiceImpl.buildTaskModel(list);
}
}
return Collections.singletonList(dto);
}
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 600000)
public void flowExecute(Long id, String instanceId, String operate, String comment, String nextTaskId) {
String lockKey = CommonServiceImpl.buildJgExecuteLockKey(instanceId);
RLock lock = redissonClient.getLock(lockKey);
try {
boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS);
// 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回)
if (!isLocked) {
throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!");
}
// 流程执行时,状态及权限校验
commonService.checkForExecuteFlow(nextTaskId, instanceId);
JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit = this.getBaseMapper().selectById(id);
// 组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(jgChangeVehicleRegistrationUnit.getNextTaskId());
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (jgChangeVehicleRegistrationUnit.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getReject()) || jgChangeVehicleRegistrationUnit.getStatus().equals(WorkFlowStatusEnum.USE_SUBMIT.getRollBack())) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
// 接受机构
if ("1".equals(operate) && WorkFlowStatusEnum.USE_RECEIVE.getPass().equals(jgChangeVehicleRegistrationUnit.getStatus())) {
// 驳回到使用单位
dto.setNextExecuteUserCompanyCode(jgChangeVehicleRegistrationUnit.getNewUseUnitCreditCode());
} else {
dto.setNextExecuteUserCompanyCode(jgChangeVehicleRegistrationUnit.getReceiveCompanyCode());
}
ProcessTaskDTO complete = cmWorkflowService.completeOrReject(jgChangeVehicleRegistrationUnit.getNextTaskId(), dto, operate);
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
processTaskDTOS.add(complete);
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
updateData(jgChangeVehicleRegistrationUnit.getSequenceNbr(), operate, workflowResultDto, Boolean.FALSE);
}
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
if (lock.isHeldByCurrentThread()) {
lock.unlock();
}
}
}
public JgChangeVehicleRegistrationUnit updateData(Long sequenceNbr, String operate, WorkflowResultDto workflowResultDto, Boolean isFirst) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String role = workflowResultDto.getNextExecutorRoleIds();
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
if (!ObjectUtils.isEmpty(workflowResultDto.getNextTaskCode())) {
taskCode = workflowResultDto.getNextTaskCode();
}
JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit = this.getBaseMapper().selectById(sequenceNbr);
jgChangeVehicleRegistrationUnit.setNextTaskId(workflowResultDto.getNextTaskId());
jgChangeVehicleRegistrationUnit.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
if (isFirst) {
jgChangeVehicleRegistrationUnit.setInstanceStatus(workflowResultDto.getExecutorRoleIds());
jgChangeVehicleRegistrationUnit.setInstanceId(workflowResultDto.getInstanceId());
}
if (!FlowStatusEnum.TO_BE_FINISHED.getName().equals(taskCode)) {
jgChangeVehicleRegistrationUnit.setNextExecutorIds(role);
jgChangeVehicleRegistrationUnit.setPromoter(reginParams.getUserModel().getUserId());
if (!ObjectUtils.isEmpty(jgChangeVehicleRegistrationUnit.getInstanceStatus())) {
jgChangeVehicleRegistrationUnit.setInstanceStatus(jgChangeVehicleRegistrationUnit.getInstanceStatus() + "," + role);
} else {
jgChangeVehicleRegistrationUnit.setInstanceStatus(role);
}
if ("0".equals(operate)) {
// 通过操作
jgChangeVehicleRegistrationUnit.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getPass());
} else {
// 驳回操作
jgChangeVehicleRegistrationUnit.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getReject());
jgChangeVehicleRegistrationUnit.setPromoter("");
}
if (isFirst) {
buildTask(jgChangeVehicleRegistrationUnit, workflowResultDto);
} else {
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", jgChangeVehicleRegistrationUnit.getInstanceId());
params.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgChangeVehicleRegistrationUnit.getStatus()));
params.put("flowStatusLabel", jgChangeVehicleRegistrationUnit.getStatus());
params.put("taskStatus", commonServiceImpl.getDictionaryCodeByName(jgChangeVehicleRegistrationUnit.getStatus()));
params.put("taskStatusLabel", jgChangeVehicleRegistrationUnit.getStatus());
TaskV2Model taskV2Model = commonServiceImpl.updateTaskModel(params);
// 创建新的代办
if (!ObjectUtils.isEmpty(taskV2Model)) {
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(jgChangeVehicleRegistrationUnit, taskMessageDto);
taskModelDto.setModel(taskMessageDto);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
taskModelDto.setFlowCode(workflowResultDto.getNextTaskId());
if (WorkFlowStatusEnum.USE_SUBMIT.getCode().equals(taskCode) && "1".equals(operate)) {
taskModelDto.setPageType("edit");
}
commonServiceImpl.buildTaskModel(Collections.singletonList(taskModelDto));
} else {
workflowResultDto.setInstanceId(jgChangeVehicleRegistrationUnit.getInstanceId());
buildTask(jgChangeVehicleRegistrationUnit, workflowResultDto);
}
}
} else {
// 流程结束
jgChangeVehicleRegistrationUnit.setStatus(taskCode);
jgChangeVehicleRegistrationUnit.setNextExecuteUserIds("");
LambdaQueryWrapper<JgRegistrationHistory> lambdaSelect = new QueryWrapper<JgRegistrationHistory>().lambda();
lambdaSelect.eq(JgRegistrationHistory::getCurrentDocumentId, String.valueOf(sequenceNbr));
JgRegistrationHistory jgRegistrationHistory = jgRegistrationHistoryService.getBaseMapper().selectOne(lambdaSelect);
JSONObject historyData = JSONObject.parseObject(jgRegistrationHistory.getChangeData());
// 更新代办
updateAgency(jgChangeVehicleRegistrationUnit);
}
this.getBaseMapper().updateById(jgChangeVehicleRegistrationUnit);
commonServiceImpl.saveExecuteFlowData2Redis(jgChangeVehicleRegistrationUnit.getInstanceId(), this.buildInstanceRuntimeData(jgChangeVehicleRegistrationUnit));
return jgChangeVehicleRegistrationUnit;
}
public InstanceRuntimeData buildInstanceRuntimeData(JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit) {
return InstanceRuntimeData.builder()
.nextExecuteUserIds(jgChangeVehicleRegistrationUnit.getNextExecuteUserIds())
.promoter(jgChangeVehicleRegistrationUnit.getPromoter())
.nextTaskId(jgChangeVehicleRegistrationUnit.getNextTaskId())
.build();
}
private TaskV2Model updateAgency(JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit) {
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", jgChangeVehicleRegistrationUnit.getInstanceId());
params.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgChangeVehicleRegistrationUnit.getStatus()));
params.put("flowStatusLabel", jgChangeVehicleRegistrationUnit.getStatus());
params.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
params.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(jgChangeVehicleRegistrationUnit, taskMessageDto);
params.put("model", taskMessageDto);
return commonServiceImpl.updateTaskModel(params);
}
public void buildTask(JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit, WorkflowResultDto workflowResultDto) {
// 代办消息
ArrayList<TaskModelDto> list = new ArrayList<>();
TaskModelDto dto = new TaskModelDto();
dto.setTaskType(String.valueOf(BusinessTypeEnum.JG_VEHICLE_GAS_CYLINDER_CHANGE.getCode()));
dto.setTaskTypeLabel(BusinessTypeEnum.JG_VEHICLE_GAS_CYLINDER_CHANGE.getName());
dto.setFlowCreateDate(jgChangeVehicleRegistrationUnit.getCreateDate());
dto.setTaskName(workflowResultDto.getNextTaskName());
dto.setTaskCode(workflowResultDto.getNextTaskCode());
dto.setRelationId(workflowResultDto.getInstanceId());
dto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
dto.setTaskStatus(commonServiceImpl.getDictionaryCodeByName(WorkFlowStatusEnum.getMessage(workflowResultDto.getNextTaskCode()).getPass()));
dto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setFlowStatus(commonServiceImpl.getDictionaryCodeByName(jgChangeVehicleRegistrationUnit.getStatus()));
dto.setFlowStatusLabel(jgChangeVehicleRegistrationUnit.getStatus());
dto.setStartUserId(jgChangeVehicleRegistrationUnit.getCreateUserId());
dto.setStartUser(jgChangeVehicleRegistrationUnit.getCreateUserName());
dto.setStartUserCompanyName(jgChangeVehicleRegistrationUnit.getUseUnitName());
dto.setStartDate(new Date());
jgChangeVehicleRegistrationUnit.setInstanceId(workflowResultDto.getInstanceId());
jgChangeVehicleRegistrationUnit.setNextExecutorIds(workflowResultDto.getNextExecutorRoleIds());
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(jgChangeVehicleRegistrationUnit, taskMessageDto);
dto.setTaskContent(String.format(template, jgChangeVehicleRegistrationUnit.getCreateUserName(), jgChangeVehicleRegistrationUnit.getApplyNo()));
dto.setModel(taskMessageDto);
dto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
dto.setFlowCode(jgChangeVehicleRegistrationUnit.getNextTaskId());
list.add(dto);
commonServiceImpl.buildTaskModel(list);
}
public void saveHistory(JgChangeVehicleRegistrationUnit dto, JSONObject map) {
JgRegistrationHistory jgRegistrationHistory = new JgRegistrationHistory();
LambdaQueryWrapper<JgRegistrationHistory> lambda = new QueryWrapper<JgRegistrationHistory>().lambda();
lambda.eq(JgRegistrationHistory::getCurrentDocumentId, dto.getSequenceNbr());
lambda.eq(JgRegistrationHistory::getRegistrationClass, BUSINESS_NAME);
Integer integer = jgRegistrationHistoryService.getBaseMapper().selectCount(lambda);
if (integer > 0) {
jgRegistrationHistory.setChangeData(JSON.toJSONString(map));
jgRegistrationHistoryService.update(jgRegistrationHistory, lambda);
} else {
jgRegistrationHistory.setChangeData(JSON.toJSONString(map));
jgRegistrationHistory.setStatus("new");
jgRegistrationHistory.setRegistrationClass(BUSINESS_NAME);
jgRegistrationHistory.setCurrentDocumentId(dto.getSequenceNbr().toString());
jgRegistrationHistoryService.save(jgRegistrationHistory);
}
}
public void saveChangeVehicleEq(JgChangeVehicleRegistrationUnit dto, JSONObject map) {
ArrayList<JgChangeVehicleRegistrationUnitEq> list = new ArrayList<>();
if (map.containsKey("dataList")) {
JSONArray objects = JSONObject.parseArray(JSON.toJSONString(map.get("dataList")));
objects.forEach(data -> {
JgChangeVehicleRegistrationUnitEq jgChangeVehicleRegistrationUnitEq = new JgChangeVehicleRegistrationUnitEq();
JSONObject object = JSONObject.parseObject(data.toString());
jgChangeVehicleRegistrationUnitEq.setUnitChangeId(dto.getSequenceNbr().toString());
jgChangeVehicleRegistrationUnitEq.setRegistrationCertificate(map.get("useRegistrationCode").toString());
jgChangeVehicleRegistrationUnitEq.setEquId(object.get("record").toString());
jgChangeVehicleRegistrationUnitEq.setCreateDate(new Date());
jgChangeVehicleRegistrationUnitEq.setCreateUserName(dto.getCreateUserName());
jgChangeVehicleRegistrationUnitEq.setCreateUserId(dto.getCreateUserId());
jgChangeVehicleRegistrationUnitEq.setRecDate(new Date());
jgChangeVehicleRegistrationUnitEq.setRecUserId(dto.getRecUserId());
list.add(jgChangeVehicleRegistrationUnitEq);
});
}
if (!ObjectUtils.isEmpty(list)) {
LambdaQueryWrapper<JgChangeVehicleRegistrationUnitEq> lambda = new QueryWrapper<JgChangeVehicleRegistrationUnitEq>().lambda();
lambda.eq(JgChangeVehicleRegistrationUnitEq::getUnitChangeId, dto.getSequenceNbr());
jgChangeVehicleRegistrationUnitEqService.remove(lambda);
jgChangeVehicleRegistrationUnitEqService.saveBatch(list);
}
}
/** /**
* 分页查询 * 分页查询
*/ */
...@@ -28,6 +441,107 @@ public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgCh ...@@ -28,6 +441,107 @@ public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgCh
* 列表查询 示例 * 列表查询 示例
*/ */
public List<JgChangeVehicleRegistrationUnitDto> queryForJgChangeVehicleRegistrationUnitList() { public List<JgChangeVehicleRegistrationUnitDto> queryForJgChangeVehicleRegistrationUnitList() {
return this.queryForList("" , false); return this.queryForList("", false);
}
public Page<JgUseRegistrationManageDto> getUseRegistrationCodeData(Page<JgUseRegistrationManageDto> page,
JgUseRegistrationManageDto dto) {
return jgUseRegistrationManageService.queryForJgUseRegistrationManagePage(page, dto, null);
}
public Map<String, Object> getEquList(String useRegistrationCode) {
HashMap<String, Object> map = new HashMap<>();
JgUseRegistrationManage registrationManage = jgUseRegistrationManageService.lambdaQuery().eq(JgUseRegistrationManage::getUseRegistrationCode, useRegistrationCode).one();
List<JSONObject> jsonObjects = jgUseRegistrationManageService.queryEquByCertificateSeq(registrationManage.getSequenceNbr());
if (!ObjectUtils.isEmpty(jsonObjects)) {
JgVehicleInformation information = jgVehicleInformationService.lambdaQuery().eq(JgVehicleInformation::getUseRegistrationCode, useRegistrationCode).one();
List<String> records = jsonObjects.stream().map(a -> String.valueOf(a.get("SEQUENCE_NBR"))).collect(Collectors.toList());
List<Map<String, Object>> equList = this.getBaseMapper().getEquList(records);
equList.forEach(a -> {
if (!ObjectUtils.isEmpty(information) && !ObjectUtils.isEmpty(information.getCarNumber())) {
a.put("carNumber", information.getCarNumber());
}
});
map.put("dataList", equList);
// 组件回显
map.put("useRegistrationCode", useRegistrationCode);
}
return map;
}
public Map<String, Object> getDetails(String sequenceNbr) {
JgRegistrationHistory history = jgRegistrationHistoryService.lambdaQuery().eq(JgRegistrationHistory::getCurrentDocumentId, sequenceNbr).eq(JgRegistrationHistory::getRegistrationClass, BUSINESS_NAME).one();
if (!ObjectUtils.isEmpty(history) && !ObjectUtils.isEmpty(history.getChangeData())) {
JSONObject object = JSONObject.parseObject(history.getChangeData());
object.put("sequenceNbr", sequenceNbr);
return object;
} else {
return new HashMap<>();
}
}
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public void withdraw(String instanceId, String nextTaskId) {
String lockKey = CommonServiceImpl.buildJgExecuteLockKey(instanceId);
RLock lock = redissonClient.getLock(lockKey);
try {
boolean isLocked = lock.tryLock(0, 180, TimeUnit.SECONDS);
// 解决并发问题:多个人同时操作一个流程(并发执行通过、驳回、撤回)
if (!isLocked) {
throw new BadRequest("当前流程已经被执行!请重新打开页面查看并执行!");
}
// 撤回校验
commonServiceImpl.checkForRevocationFlow(nextTaskId, instanceId);
JgChangeVehicleRegistrationUnit jgChangeVehicleRegistrationUnit = new JgChangeVehicleRegistrationUnit();
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
ProcessTaskDTO processTaskDTO = cmWorkflowService.rollBack(instanceId);
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
processTaskDTOS.add(processTaskDTO);
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
String taskCode = "";
String roles = "";
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
taskCode = resultDto.get(0).getNextTaskCode();
roles = resultDto.get(0).getNextExecutorRoleIds();
jgChangeVehicleRegistrationUnit.setNextTaskId(resultDto.get(0).getNextTaskId());
jgChangeVehicleRegistrationUnit.setNextExecuteUserIds(resultDto.get(0).getNextExecutorUserIds());
}
LambdaQueryWrapper<JgChangeVehicleRegistrationUnit> lambda = new QueryWrapper<JgChangeVehicleRegistrationUnit>().lambda();
lambda.eq(JgChangeVehicleRegistrationUnit::getInstanceId, instanceId);
if (!ObjectUtils.isEmpty(taskCode)) {
jgChangeVehicleRegistrationUnit.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getRollBack());
}
jgChangeVehicleRegistrationUnit.setPromoter(reginParams.getUserModel().getUserId());
jgChangeVehicleRegistrationUnit.setNextExecutorIds(roles);
this.update(jgChangeVehicleRegistrationUnit, lambda);
LambdaQueryWrapper<JgChangeVehicleRegistrationUnit> queryWrapper = new QueryWrapper<JgChangeVehicleRegistrationUnit>().lambda();
queryWrapper.eq(JgChangeVehicleRegistrationUnit::getInstanceId, instanceId);
JgChangeVehicleRegistrationUnit data = this.baseMapper.selectOne(queryWrapper);
// 设备信息
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(data));
jsonObject.put("nextTaskId", data.getNextTaskId());
jsonObject.put("nextExecuteUser", data.getNextExecutorIds());
jsonObject.put("taskType", BusinessTypeEnum.JG_VEHICLE_GAS_CYLINDER_CHANGE.getCode());
jsonObject.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgChangeVehicleRegistrationUnit.getStatus()));
jsonObject.put("flowStatusLabel", jgChangeVehicleRegistrationUnit.getStatus());
jsonObject.put("pageType", "look");
//如果创建人等于当前人则打开编辑页面
if (taskCode.equals(WorkFlowStatusEnum.USE_SUBMIT.getCode())) {
jsonObject.put("pageType", "edit");
}
// 撤回删除代办
commonServiceImpl.rollbackTask(instanceId, jsonObject);
// redis流程实时数据更新
commonServiceImpl.saveExecuteFlowData2Redis(instanceId, this.buildInstanceRuntimeData(data));
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
if (lock.isHeldByCurrentThread()) {
lock.unlock();
}
}
} }
} }
\ No newline at end of file
...@@ -1048,7 +1048,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN ...@@ -1048,7 +1048,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
this.justGenerateEquCode(idxBizJgRegisterInfo, jgInstallationNotice.getReceiveOrgCreditCode(), jgInstallationNotice); this.justGenerateEquCode(idxBizJgRegisterInfo, jgInstallationNotice.getReceiveOrgCreditCode(), jgInstallationNotice);
tzsJgRegistrationInfoMapper.updateById(idxBizJgRegisterInfo); tzsJgRegistrationInfoMapper.updateById(idxBizJgRegisterInfo);
// 更新es // 更新es
updateEquipEs(jgInstallationNotice, tzsJgOtherInfo, idxBizJgRegisterInfo, idxBizJgSupervisionInfo, map1); updateEquipEs(jgInstallationNotice, tzsJgOtherInfo, idxBizJgRegisterInfo, idxBizJgSupervisionInfo, map1, dto);
// 记录施工信息表 // 记录施工信息表
createConstruction2Db(jgInstallationNotice, jgRelationEquip); createConstruction2Db(jgInstallationNotice, jgRelationEquip);
...@@ -1204,7 +1204,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN ...@@ -1204,7 +1204,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
private void updateEquipEs(JgInstallationNotice jgInstallationNotice, OtherInfo tzsJgOtherInfo, private void updateEquipEs(JgInstallationNotice jgInstallationNotice, OtherInfo tzsJgOtherInfo,
IdxBizJgRegisterInfo tzsJgRegistrationInfo, IdxBizJgSupervisionInfo idxBizJgSupervisionInfo, IdxBizJgRegisterInfo tzsJgRegistrationInfo, IdxBizJgSupervisionInfo idxBizJgSupervisionInfo,
Map<String, Object> map1) { Map<String, Object> map1, JgInstallationNoticeDto dto) {
Map<String, Map<String, Object>> objMap = new HashMap<>(); Map<String, Map<String, Object>> objMap = new HashMap<>();
map1.put("EQU_CODE", tzsJgRegistrationInfo.getEquCode()); map1.put("EQU_CODE", tzsJgRegistrationInfo.getEquCode());
map1.put("ORG_BRANCH_CODE", idxBizJgSupervisionInfo.getOrgBranchCode()); map1.put("ORG_BRANCH_CODE", idxBizJgSupervisionInfo.getOrgBranchCode());
...@@ -1213,6 +1213,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN ...@@ -1213,6 +1213,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
map1.put("USE_UNIT_CREDIT_CODE", jgInstallationNotice.getUseUnitCreditCode()); map1.put("USE_UNIT_CREDIT_CODE", jgInstallationNotice.getUseUnitCreditCode());
map1.put("USE_UNIT_NAME", jgInstallationNotice.getUseUnitName()); map1.put("USE_UNIT_NAME", jgInstallationNotice.getUseUnitName());
map1.put("IS_INTO_MANAGEMENT", true); map1.put("IS_INTO_MANAGEMENT", true);
map1.put("USE_SITE_CODE", dto.getProvince().split("_")[0] + "#" + dto.getCity().split("_")[0] + "#" + dto.getCounty().split("_")[0] + "#" + dto.getFactoryUseSiteStreet().split("_")[0]);
map1.put("USC_UNIT_CREDIT_CODE", jgInstallationNotice.getInstallUnitCreditCode()); map1.put("USC_UNIT_CREDIT_CODE", jgInstallationNotice.getInstallUnitCreditCode());
map1.put("USC_UNIT_NAME", jgInstallationNotice.getInstallUnitName()); map1.put("USC_UNIT_NAME", jgInstallationNotice.getInstallUnitName());
map1.put("USE_PLACE", String.format("%s/%s/%s/%s", jgInstallationNotice.getProvinceName(), jgInstallationNotice.getCityName(), jgInstallationNotice.getCountyName(), jgInstallationNotice.getStreetName())); map1.put("USE_PLACE", String.format("%s/%s/%s/%s", jgInstallationNotice.getProvinceName(), jgInstallationNotice.getCityName(), jgInstallationNotice.getCountyName(), jgInstallationNotice.getStreetName()));
......
...@@ -546,14 +546,14 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -546,14 +546,14 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS); List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) { if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0); WorkflowResultDto workflowResultDto = resultDto.get(0);
updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, "", Boolean.TRUE); 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"))); flowExecute(jgUseRegistration.getSequenceNbr(), instanceId, "0", "", "", map.getString("manageType"), String.valueOf(map.get("nextTaskId")),null);
} }
} else { } else {
if (ObjectUtils.isEmpty(map.get("instanceId"))) { if (ObjectUtils.isEmpty(map.get("instanceId"))) {
...@@ -749,10 +749,10 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -749,10 +749,10 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
resultDto.stream() resultDto.stream()
.findFirst() .findFirst()
.ifPresent(workflowResultDto -> .ifPresent(workflowResultDto ->
this.updateUseRegUnitData(useRegistration.getSequenceNbr(), "0", workflowResultDto, true)); this.updateUseRegUnitData(useRegistration.getSequenceNbr(), "0", workflowResultDto, true, null));
} else { } else {
// 执行流程 // 执行流程
flowExecute(useRegistration.getSequenceNbr(), useRegistration.getInstanceId(), "0", "", "", map.getString("manageType"), String.valueOf(map.get("nextTaskId"))); flowExecute(useRegistration.getSequenceNbr(), useRegistration.getInstanceId(), "0", "", "", map.getString("manageType"), String.valueOf(map.get("nextTaskId")),null);
} }
} else { } else {
String equType = this.baseMapper.getEquType(String.valueOf(map.get("EQU_LIST_CODE"))); String equType = this.baseMapper.getEquType(String.valueOf(map.get("EQU_LIST_CODE")));
...@@ -792,7 +792,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -792,7 +792,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
* @param workflowResultDto 工作流返回 * @param workflowResultDto 工作流返回
* @param isFirst 是否first * @param isFirst 是否first
*/ */
private void updateUseRegUnitData(Long sequenceNbr, String operate, WorkflowResultDto workflowResultDto, Boolean isFirst) { private void updateUseRegUnitData(Long sequenceNbr, String operate, WorkflowResultDto workflowResultDto, Boolean isFirst,JSONObject jsonObject) {
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);
String role = workflowResultDto.getNextExecutorRoleIds(); String role = workflowResultDto.getNextExecutorRoleIds();
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName(); String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
...@@ -884,7 +884,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -884,7 +884,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
IdxBizJgRegisterInfo registerInfo = idxBizJgRegisterInfoMapper.selectOne(lambdaReg); IdxBizJgRegisterInfo registerInfo = idxBizJgRegisterInfoMapper.selectOne(lambdaReg);
// 更新设备信息 && 生成使用登记证编号 && 同步es // 更新设备信息 && 生成使用登记证编号 && 同步es
processMapData(sequenceNbr, mapData, jgUseRegistration, jgRegistrationHistory,registerInfo,taskV2Model); processMapData(sequenceNbr, mapData, jgUseRegistration, jgRegistrationHistory,registerInfo,taskV2Model,jsonObject);
// 查询设备制造信息 // 查询设备制造信息
LambdaQueryWrapper<IdxBizJgFactoryInfo> factoryInfoWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<IdxBizJgFactoryInfo> factoryInfoWrapper = new LambdaQueryWrapper<>();
...@@ -995,7 +995,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -995,7 +995,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistrationManageService.save(jgUseRegistrationManage); jgUseRegistrationManageService.save(jgUseRegistrationManage);
} }
public JgUseRegistration updateData(Long sequenceNbr, String operate, WorkflowResultDto workflowResultDto, String carNumber, Boolean isFirst) { public JgUseRegistration updateData(Long sequenceNbr, String operate, WorkflowResultDto workflowResultDto, String carNumber, Boolean isFirst,JSONObject jsonObject) {
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);
String role = workflowResultDto.getNextExecutorRoleIds(); String role = workflowResultDto.getNextExecutorRoleIds();
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName(); String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
...@@ -1094,7 +1094,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1094,7 +1094,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
// 更新代办 // 更新代办
TaskV2Model taskV2Model = updateAgency(jgUseRegistration); TaskV2Model taskV2Model = updateAgency(jgUseRegistration);
processMapData(sequenceNbr, mapData, jgUseRegistration, jgRegistrationHistory,registerInfo,taskV2Model); processMapData(sequenceNbr, mapData, jgUseRegistration, jgRegistrationHistory, registerInfo, taskV2Model, jsonObject);
// 生成证书管理表记录 // 生成证书管理表记录
generateRegistrationManage(jgUseRegistration,registerInfo); generateRegistrationManage(jgUseRegistration,registerInfo);
...@@ -1120,7 +1120,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1120,7 +1120,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
} }
private void processMapData(Long sequenceNbr, JSONObject mapData, JgUseRegistration jgUseRegistration, private void processMapData(Long sequenceNbr, JSONObject mapData, JgUseRegistration jgUseRegistration,
JgRegistrationHistory jgRegistrationHistory,IdxBizJgRegisterInfo registerInfo,TaskV2Model taskV2Model) { JgRegistrationHistory jgRegistrationHistory,IdxBizJgRegisterInfo registerInfo,TaskV2Model taskV2Model,JSONObject jsonObject) {
// 其他信息 // 其他信息
LambdaQueryWrapper<IdxBizJgOtherInfo> lambdaOth = new QueryWrapper<IdxBizJgOtherInfo>().lambda(); LambdaQueryWrapper<IdxBizJgOtherInfo> lambdaOth = new QueryWrapper<IdxBizJgOtherInfo>().lambda();
lambdaOth.eq(IdxBizJgOtherInfo::getRecord, String.valueOf(mapData.get("equipId"))); lambdaOth.eq(IdxBizJgOtherInfo::getRecord, String.valueOf(mapData.get("equipId")));
...@@ -1173,7 +1173,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1173,7 +1173,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
useInfo.setIsIntoManagement(Boolean.TRUE); useInfo.setIsIntoManagement(Boolean.TRUE);
useInfoMapper.updateById(useInfo); useInfoMapper.updateById(useInfo);
// 更新es // 更新es
updateEsData(usePlace, mapData, otherInfo, jgUseRegistration); updateEsData(usePlace, mapData, otherInfo, jgUseRegistration, jsonObject);
jgResumeInfoService.createWithModel(JgResumeInfoDto.builder() jgResumeInfoService.createWithModel(JgResumeInfoDto.builder()
.applyNo(jgUseRegistration.getApplyNo()) .applyNo(jgUseRegistration.getApplyNo())
.businessType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName()) .businessType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName())
...@@ -1242,7 +1242,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1242,7 +1242,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
return codeUtil.generateEquipmentCode(codeGenerateDto); return codeUtil.generateEquipmentCode(codeGenerateDto);
} }
public void updateEsData(String usePlace, JSONObject dataMap, IdxBizJgOtherInfo otherInfo, JgUseRegistration jgUseRegistration) { public void updateEsData(String usePlace, JSONObject dataMap, IdxBizJgOtherInfo otherInfo, JgUseRegistration jgUseRegistration,JSONObject jsonObject) {
// 属地监管部门拆分 // 属地监管部门拆分
String orgBranch = (String) dataMap.getOrDefault("orgBranchCode", "_"); String orgBranch = (String) dataMap.getOrDefault("orgBranchCode", "_");
String[] split = orgBranch.split("_"); String[] split = orgBranch.split("_");
...@@ -1258,6 +1258,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1258,6 +1258,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
param.put("STATUS", "已认领"); param.put("STATUS", "已认领");
param.put("EQU_STATE", 1); param.put("EQU_STATE", 1);
param.put("IS_INTO_MANAGEMENT", true); param.put("IS_INTO_MANAGEMENT", true);
param.put("USE_SITE_CODE", jsonObject.get("province") + "#" + jsonObject.get("city") + "#" + jsonObject.get("county") + "#" + jsonObject.get("factoryUseSiteStreet"));
param.put("USE_PLACE_CODE", String.valueOf(jsonObject.get("usePlace")));
param.put("ORG_BRANCH_CODE", split[0]); param.put("ORG_BRANCH_CODE", split[0]);
param.put("ORG_BRANCH_NAME", split[1]); param.put("ORG_BRANCH_NAME", split[1]);
param.put("EQU_CODE", dataMap.get("equCode")); param.put("EQU_CODE", dataMap.get("equCode"));
...@@ -1317,7 +1319,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1317,7 +1319,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 600000) @GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 600000)
public void flowExecute(Long id, String instanceId, String operate, String comment, String carNumber, String manageType, String nextTaskId) { public void flowExecute(Long id, String instanceId, String operate, String comment, String carNumber, String manageType, String nextTaskId, JSONObject jsonObject) {
String lockKey = CommonServiceImpl.buildJgExecuteLockKey(instanceId); String lockKey = CommonServiceImpl.buildJgExecuteLockKey(instanceId);
RLock lock = redissonClient.getLock(lockKey); RLock lock = redissonClient.getLock(lockKey);
try { try {
...@@ -1376,9 +1378,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1376,9 +1378,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
WorkflowResultDto workflowResultDto = resultDto.get(0); WorkflowResultDto workflowResultDto = resultDto.get(0);
// 按单位办理 // 按单位办理
if ("unit".equals(manageType)) { if ("unit".equals(manageType)) {
this.updateUseRegUnitData(jgUseRegistration.getSequenceNbr(), operate, workflowResultDto, false); this.updateUseRegUnitData(jgUseRegistration.getSequenceNbr(), operate, workflowResultDto, false, jsonObject);
} else { } else {
this.updateData(jgUseRegistration.getSequenceNbr(), operate, workflowResultDto, carNumber, false); this.updateData(jgUseRegistration.getSequenceNbr(), operate, workflowResultDto, carNumber, false, jsonObject);
} }
} }
this.clearDataForCheckEquipRepeatUsed(jgUseRegistration); this.clearDataForCheckEquipRepeatUsed(jgUseRegistration);
...@@ -2221,9 +2223,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -2221,9 +2223,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
workflowResultDto.setNextTaskId(jgUseRegistration.getNextTaskId()); workflowResultDto.setNextTaskId(jgUseRegistration.getNextTaskId());
workflowResultDto.setNextExecutorUserIds(jgUseRegistration.getNextExecuteUserIds()); workflowResultDto.setNextExecutorUserIds(jgUseRegistration.getNextExecuteUserIds());
if (jgUseRegistration.getManageType().equals("unit")) { if (jgUseRegistration.getManageType().equals("unit")) {
this.updateUseRegUnitData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, false); this.updateUseRegUnitData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, false, null);
} else { } else {
this.updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, null, false); this.updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, null, false, null);
} }
}); });
} }
......
...@@ -838,6 +838,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -838,6 +838,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
param.put("STATUS", "已认领"); param.put("STATUS", "已认领");
param.put("EQU_STATE", 1); param.put("EQU_STATE", 1);
param.put("IS_INTO_MANAGEMENT", true); param.put("IS_INTO_MANAGEMENT", true);
param.put("USE_SITE_CODE", "610000#" + jgVehicleInformation.getVehicleApanage());
param.put("ORG_BRANCH_CODE", jgVehicleInformation.getOrgBranchCode()); param.put("ORG_BRANCH_CODE", jgVehicleInformation.getOrgBranchCode());
param.put("ORG_BRANCH_NAME", jgVehicleInformation.getOrgBranchName()); param.put("ORG_BRANCH_NAME", jgVehicleInformation.getOrgBranchName());
param.put("EQU_CODE", dataMap.get("equCode")); param.put("EQU_CODE", dataMap.get("equCode"));
......
...@@ -286,5 +286,23 @@ ...@@ -286,5 +286,23 @@
"pageType": "look", "pageType": "look",
"name": "车用气瓶登记", "name": "车用气瓶登记",
"url": "/mixuap?appId=1742358052905971713&id=1770004751216308226&roleIds={roleIds}&userId={userId}&pageType=look" "url": "/mixuap?appId=1742358052905971713&id=1770004751216308226&roleIds={roleIds}&userId={userId}&pageType=look"
},
{
"type": "119",
"pageType": "draft",
"name": "车用气瓶变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1811028265452728322&roleIds={roleIds}&userId={userId}&pageType=edit"
},
{
"type": "119",
"pageType": "edit",
"name": "车用气瓶变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1811028630713692161&roleIds={roleIds}&userId={userId}&pageType=edit"
},
{
"type": "119",
"pageType": "look",
"name": "车用气瓶变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1811028630713692161&roleIds={roleIds}&userId={userId}&pageType=look"
} }
] ]
\ No newline at end of file
...@@ -133,8 +133,8 @@ public class DPStatisticsServiceImpl { ...@@ -133,8 +133,8 @@ public class DPStatisticsServiceImpl {
xDataList.add(firstDayOfPrevMonth.getMonthValue()+"月"); xDataList.add(firstDayOfPrevMonth.getMonthValue()+"月");
yDataList.add(null == inspectTimeCount ? 0 : inspectTimeCount); yDataList.add(null == inspectTimeCount ? 0 : inspectTimeCount);
} }
returnMap.put("xData",xDataList); returnMap.put("xdata",xDataList);
returnMap.put("yData",yDataList); returnMap.put("ydata",yDataList);
return returnMap; return returnMap;
} }
} }
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