Commit ed60cacd 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 c588147d b6ef5f71
package com.yeejoin.amos.boot.module.jg.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.typroject.tyboot.core.rdbms.model.BaseModel;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JgCertificateChangeRecordDto", description="")
public class JgCertificateChangeRecordDto extends BaseModel {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "申请编号")
private String applyNo;
@ApiModelProperty(value = "接收机构")
private String receiveOrgName;
@ApiModelProperty(value = "办理日期")
private Date auditPassDate;
@ApiModelProperty(value = "登记类别")
private String regType;
@ApiModelProperty(value = "申请日期")
private Date regDate;
@ApiModelProperty(value = "变更内容")
private String changeContent;
@ApiModelProperty(value = "创建人ID")
private String createUserId;
@ApiModelProperty(value = "创建时间")
private Date createDate;
@ApiModelProperty(value = "使用登记编号")
private String useRegistrationCode;
@ApiModelProperty(value = "接收机构公司代码")
private String receiveCompanyCode;
@ApiModelProperty(value = "登记证书唯一码")
private String certificateNo;
}
package com.yeejoin.amos.boot.module.jg.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.typroject.tyboot.core.rdbms.model.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="JgUseRegistrationManageDto", description="")
public class JgUseRegistrationManageDto extends BaseModel {
public class JgUseRegistrationManageDto extends BaseDto {
private static final long serialVersionUID = 1L;
......@@ -28,20 +26,20 @@ public class JgUseRegistrationManageDto extends BaseModel {
@ApiModelProperty(value = "申请编号")
private String applyNo;
@ApiModelProperty(value = "使用登记证状态(登记,注销)")
@ApiModelProperty(value = "使用登记证状态(已登记,已注销)")
private String certificateStatus;
@ApiModelProperty(value = "接收机构")
private String receiveOrgName;
@ApiModelProperty(value = "办理日期")
private Date auditPassDate;
private String auditPassDate;
@ApiModelProperty(value = "登记类别")
private String regType;
@ApiModelProperty(value = "申请日期")
private Date regDate;
private String regDate;
@ApiModelProperty(value = "设备种类")
private String equList;
......@@ -52,6 +50,15 @@ public class JgUseRegistrationManageDto extends BaseModel {
@ApiModelProperty(value = "设备品种")
private String equDefine;
@ApiModelProperty(value = "设备种类编码")
private String equListCode;
@ApiModelProperty(value = "设备类别编码")
private String equCategoryCode;
@ApiModelProperty(value = "设备品种编码")
private String equDefineCode;
@ApiModelProperty(value = "备注")
private String remark;
......@@ -59,7 +66,7 @@ public class JgUseRegistrationManageDto extends BaseModel {
private String createUserId;
@ApiModelProperty(value = "创建时间")
private Date createDate;
private String createDate;
@ApiModelProperty(value = "使用登记编号")
private String useRegistrationCode;
......@@ -70,16 +77,16 @@ public class JgUseRegistrationManageDto extends BaseModel {
@ApiModelProperty(value = "接收机构公司代码")
private String receiveCompanyCode;
@ApiModelProperty(value = "使用登记证书参数")
private String useRegistrationCertificateParam;
@ApiModelProperty(value = "登记证书编号")
private String certificateNo;
@ApiModelProperty(value = "使用标志参数")
private String useFlagCertificateParam;
@ApiModelProperty(value = "数据类型:监管/行政审批局,企业")
private String dataType;
@ApiModelProperty(value = "设备使用地址")
private String equUseAddress;
@ApiModelProperty(value = "使用单位统一信用代码-搜索使用")
private String useUnitCreditCodeForSearch;
}
package com.yeejoin.amos.boot.module.jg.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tzs_jg_certificate_change_record")
public class JgCertificateChangeRecord extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 申请编号
*/
@TableField("apply_no")
private String applyNo;
/**
* 接收机构
*/
@TableField("receive_org_name")
private String receiveOrgName;
/**
* 办理日期
*/
@TableField("audit_pass_date")
private Date auditPassDate;
/**
* 登记类别
*/
@TableField("reg_type")
private String regType;
/**
* 申请日期
*/
@TableField("reg_date")
private Date regDate;
/**
* 变更内容
*/
@TableField("change_content")
private String changeContent;
/**
* 创建人ID
*/
@TableField("create_user_id")
private String createUserId;
/**
* 创建时间
*/
@TableField("create_date")
private Date createDate;
/**
* 使用登记编号
*/
@TableField("use_registration_code")
private String useRegistrationCode;
/**
* 接收机构公司代码
*/
@TableField("receive_company_code")
private String receiveCompanyCode;
/**
* 登记证书唯一码
*/
@TableField("certificate_no")
private String certificateNo;
}
......@@ -36,7 +36,7 @@ public class JgUseRegistrationManage extends BaseEntity {
private String applyNo;
/**
* 使用登记证状态(登记,注销)
* 使用登记证状态(已登记,已注销)
*/
@TableField("certificate_status")
private String certificateStatus;
......@@ -83,6 +83,25 @@ public class JgUseRegistrationManage extends BaseEntity {
@TableField("equ_define")
private String equDefine;
/**
* 设备种类编码
*/
@TableField("equ_list_code")
private String equListCode;
/**
* 设备类别编码
*/
@TableField("equ_category_code")
private String equCategoryCode;
/**
* 设备品种编码
*/
@TableField("equ_define_code")
private String equDefineCode;
/**
* 备注
*/
......@@ -120,21 +139,15 @@ public class JgUseRegistrationManage extends BaseEntity {
private String receiveCompanyCode;
/**
* 使用登记证书参数
*/
@TableField("use_registration_certificate_param")
private String useRegistrationCertificateParam;
/**
* 登记证书唯一标识
*/
@TableField("certificate_no")
private String certificateNo;
/**
* 使用标志参数
* 设备使用地址
*/
@TableField("use_flag_certificate_param")
private String useFlagCertificateParam;
@TableField("equ_use_address")
private String equUseAddress;
}
package com.yeejoin.amos.boot.module.jg.api.mapper;
import com.yeejoin.amos.boot.module.jg.api.entity.JgCertificateChangeRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* Mapper 接口
*
* @author system_generator
* @date 2024-07-03
*/
public interface JgCertificateChangeRecordMapper extends BaseMapper<JgCertificateChangeRecord> {
}
......@@ -69,4 +69,5 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> {
List<CompanyEquipCountDto> queryForFlowingEquipList();
Map<String,String> getEquTypeByUseRegSeq(@Param("sequenceNbr")String sequenceNbr);
Map<String,String> getEquTypeByVehSeq(@Param("sequenceNbr")String sequenceNbr);
}
package com.yeejoin.amos.boot.module.jg.api.service;
/**
* 接口类
*
* @author system_generator
* @date 2024-07-03
*/
public interface IJgCertificateChangeRecordService {}
......@@ -119,4 +119,14 @@ public interface WorkFlowFeignService {
@DeleteMapping(value = "/v2/task/stopProcess/{processInstanceId}")
FeignClientResult<ProcessInstanceDTO> stopProcess(@PathVariable("processInstanceId") String processInstanceId, @RequestParam(required = false, value = "stopReason") String stopReason) throws Exception;
/**
* 处理审批错误历史数据
*
* @param processInstanceId processInstanceId
* @return ProcessTaskDTO
*/
@RequestMapping(value = "/v2/task/error/history/data/{processInstanceId}", method = RequestMethod.GET)
FeignClientResult<ProcessTaskDTO> handleErrorForm(@PathVariable("processInstanceId") String processInstanceId,
@RequestParam(value = "receiveCompanyCode") String receiveCompanyCode);
}
<?xml version="1.0" encoding="UTF-8"?>
<!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.JgCertificateChangeRecordMapper">
</mapper>
......@@ -4,29 +4,28 @@
<sql id="page_list">
select
tjurm.sequence_nbr AS sequence_nbr,
tjurm.use_unit_name AS use_unit_name,
tjurm.apply_no AS apply_no,
tjurm.certificate_status AS certificate_status,
tjurm.receive_org_name AS receive_org_name,
tjurm.audit_pass_date AS audit_pass_date,
tjurm.reg_type AS reg_type,
DATE_FORMAT(tjurm.reg_date,'%Y-%m-%d') AS reg_date,
tjurm.equ_list AS equ_list,
tjurm.equ_define AS equ_define,
tjurm.sequence_nbr AS sequenceNbr,
tjurm.use_unit_name AS useUnitName,
tjurm.apply_no AS applyNo,
tjurm.certificate_status AS certificateStatus,
tjurm.receive_org_name AS receiveOrgName,
DATE_FORMAT(tjurm.audit_pass_date,'%Y-%m-%d') AS auditPassDate,
tjurm.reg_type AS regType,
DATE_FORMAT(tjurm.reg_date,'%Y-%m-%d') AS regDate,
tjurm.equ_list AS equList,
tjurm.equ_define AS equDefine,
tjurm.remark AS remark,
tjurm.rec_user_id AS rec_user_id,
DATE_FORMAT(tjurm.rec_date,'%Y-%m-%d') AS rec_date,
tjurm.create_user_id AS create_user_id,
DATE_FORMAT(tjurm.create_date,'%Y-%m-%d') AS create_date,
tjurm.rec_user_name AS rec_user_name,
tjurm.use_registration_code AS use_registration_code,
tjurm.use_unit_credit_code AS use_unit_credit_code,
tjurm.receive_company_code AS receive_company_code,
tjurm.use_registration_certificate_param AS use_registration_certificate_param,
tjurm.certificate_no AS certificate_no,
tjurm.use_flag_certificate_param AS use_flag_certificate_param,
tjurm.equ_category AS equ_category
tjurm.rec_user_id AS recUserId,
DATE_FORMAT(tjurm.rec_date,'%Y-%m-%d') AS recDate,
tjurm.create_user_id AS createUserId,
DATE_FORMAT(tjurm.create_date,'%Y-%m-%d') AS createDate,
tjurm.rec_user_name AS recUserName,
tjurm.use_registration_code AS useRegistrationCode,
tjurm.use_unit_credit_code AS useUnitCreditCode,
tjurm.receive_company_code AS receiveCompanyCode,
tjurm.certificate_no AS certificateNo,
tjurm.equ_category AS equCategory,
tjurm.equ_use_address AS equUseAddress
</sql>
......@@ -46,6 +45,41 @@
from tzs_jg_use_registration_manage tjurm
<where>
tjurm.is_delete = 0
<if test="dto.equList != null and dto.equList != ''">
and tjurm.equ_list = #{dto.equList}
</if>
<if test="dto.equListCode != null and dto.equListCode != ''">
and tjurm.equ_list_code = #{dto.equListCode}
</if>
<if test="dto.equCategory != null and dto.equCategory != ''">
and tjurm.equ_category = #{dto.equCategory}
</if>
<if test="dto.equCategoryCode != null and dto.equCategoryCode != ''">
and tjurm.equ_category_code = #{dto.equCategoryCode}
</if>
<if test="dto.equDefineCode != null and dto.equDefineCode != ''">
and tjurm.equ_define = #{dto.equDefineCode}
</if>
<if test="dto.equDefineCode != null and dto.equDefineCode != ''">
and tjurm.equ_define_code = #{dto.equDefineCode}
</if>
-- 使用登记证编号
<if test="dto.useRegistrationCode != null and dto.useRegistrationCode != ''">
and tjurm.use_registration_code like #{dto.useRegistrationCode}
</if>
-- 申请单号
<if test="dto.applyNo != null and dto.applyNo != ''">
and tjurm.apply_no like #{dto.applyNo}
</if>
<if test="dto.auditPassDate != null and dto.auditPassDate != ''">
and tjurm.audit_pass_date like concat('%',DATE_FORMAT(#{dto.auditPassDate},'%Y-%m-%d'),'%')
</if>
<if test="dto.certificateStatus != null and dto.certificateStatus != ''">
and tjurm.certificate_status = #{dto.certificateStatus}
</if>
<if test="dto.useUnitCreditCodeForSearch != null and dto.useUnitCreditCodeForSearch != ''">
and tjurm.use_unit_credit_code = #{dto.useUnitCreditCodeForSearch}
</if>
-- 企业根据企业统一信用代码匹配
<if test="dto.dataType == 'company' ">
AND tjurm.use_unit_credit_code = #{dto.useUnitCreditCode}
......
......@@ -532,11 +532,29 @@
<select id="getEquTypeByUseRegSeq" resultType="java.util.Map">
select ur.sequence_nbr as sequenceNbr,
GROUP_CONCAT(DISTINCT (SELECT name from tz_equipment_category where code = jri.EQU_LIST)) as equList,
jri.EQU_LIST as equListCode,
GROUP_CONCAT(DISTINCT (SELECT name from tz_equipment_category where code = jri.EQU_CATEGORY)) as equCategory,
GROUP_CONCAT(DISTINCT (SELECT name from tz_equipment_category where code = jri.EQU_DEFINE)) as equDefine
jri.EQU_CATEGORY as equCategoryCode,
GROUP_CONCAT(DISTINCT (SELECT name from tz_equipment_category where code = jri.EQU_DEFINE)) as equDefine,
jri.EQU_DEFINE as equDefineCode
from tzs_jg_use_registration ur
LEFT JOIN tzs_jg_use_registration_eq re on ur.sequence_nbr = re.equip_transfer_id
LEFT JOIN idx_biz_jg_register_info jri on re.equ_id = jri.RECORD
where ur.sequence_nbr = #{sequenceNbr}
</select>
<select id="getEquTypeByVehSeq" resultType="java.util.Map">
SELECT
ur.sequence_nbr AS sequenceNbr,
GROUP_CONCAT ( DISTINCT ( SELECT NAME FROM tz_equipment_category WHERE code = jri.EQU_LIST ) ) AS equList,
jri.EQU_LIST as equListCode,
GROUP_CONCAT ( DISTINCT ( SELECT NAME FROM tz_equipment_category WHERE code = jri.EQU_CATEGORY ) ) AS equCategory,
jri.EQU_CATEGORY as equCategoryCode,
GROUP_CONCAT ( DISTINCT ( SELECT NAME FROM tz_equipment_category WHERE code = jri.EQU_DEFINE ) ) AS equDefine,
jri.EQU_DEFINE as equDefineCode
FROM
tzs_jg_vehicle_information ur
LEFT JOIN tzs_jg_vehicle_information_eq re ON ur.sequence_nbr = re.vehicle_id
LEFT JOIN idx_biz_jg_register_info jri ON re.equ_id = jri.RECORD
where ur.sequence_nbr = #{sequenceNbr}
</select>
</mapper>
package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.dto.JgCertificateChangeRecordDto;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.JgCertificateChangeRecordServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import java.util.List;
/**
*
* @author system_generator
* @date 2024-07-03
*/
@RestController
@Api(tags = "Api")
@RequestMapping(value = "/jg-certificate-change-record")
public class JgCertificateChangeRecordController extends BaseController {
@Autowired
JgCertificateChangeRecordServiceImpl jgCertificateChangeRecordServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<JgCertificateChangeRecordDto> save(@RequestBody JgCertificateChangeRecordDto dto) {
dto = jgCertificateChangeRecordServiceImpl.createWithModel(dto);
return ResponseHelper.buildResponse(dto);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<JgCertificateChangeRecordDto> updateBySequenceNbrJgCertificateChangeRecord(@RequestBody JgCertificateChangeRecordDto dto,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
dto.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(jgCertificateChangeRecordServiceImpl.updateWithModel(dto));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(jgCertificateChangeRecordServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<JgCertificateChangeRecordDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(jgCertificateChangeRecordServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询")
public ResponseModel<Page<JgCertificateChangeRecordDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam
(value = "size") int size) {
Page<JgCertificateChangeRecordDto> page = new Page<JgCertificateChangeRecordDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(jgCertificateChangeRecordServiceImpl.queryForJgCertificateChangeRecordPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<JgCertificateChangeRecordDto>> selectForList() {
return ResponseHelper.buildResponse(jgCertificateChangeRecordServiceImpl.queryForJgCertificateChangeRecordList());
}
}
......@@ -247,4 +247,20 @@ public class JgUseRegistrationController extends BaseController {
jgUseRegistrationServiceImpl.correctWrongData(applayNoList);
return ResponseHelper.buildResponse("ok");
}
/**
* 使用登记流程错误数据处理
* @param sequenceNbr sequenceNbr
* @return s
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/yunWei/handleErrorForm")
@ApiOperation(httpMethod = "POST", value = "使用登记流程错误数据处理", notes = "使用登记流程错误数据处理")
public ResponseModel<Object> handleErrorForm(@RequestParam("sequenceNbr") Long sequenceNbr,
@RequestParam("nextTaskId") String nextTaskId,
@RequestParam("instanceId") String instanceId
) {
jgUseRegistrationServiceImpl.handleErrorForm(sequenceNbr, instanceId, nextTaskId);
return ResponseHelper.buildResponse("ok");
}
}
package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.yeejoin.amos.boot.module.jg.api.dto.JgCertificateChangeRecordDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgCertificateChangeRecord;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgCertificateChangeRecordMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgCertificateChangeRecordService;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 服务实现类
*
* @author system_generator
* @date 2024-07-03
*/
@Service
public class JgCertificateChangeRecordServiceImpl extends BaseService<JgCertificateChangeRecordDto,JgCertificateChangeRecord,JgCertificateChangeRecordMapper> implements IJgCertificateChangeRecordService {
/**
* 分页查询
*/
public Page<JgCertificateChangeRecordDto> queryForJgCertificateChangeRecordPage(Page<JgCertificateChangeRecordDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<JgCertificateChangeRecordDto> queryForJgCertificateChangeRecordList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
......@@ -107,8 +107,6 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
private static final String DEFINITION_KEY = "useRegistration";
private final List<String> NOT_FLOWING_STATE = Arrays.asList("使用单位待提交", "一级受理已驳回", "使用单位已撤回", "已作废");
@Autowired
WorkFlowFeignService workFlowFeginService;
@Autowired
RedisUtils redisUtils;
@Autowired
TzsServiceFeignClient tzsServiceFeignClient;
......@@ -138,6 +136,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
@Autowired
CodeUtil codeUtil;
@Autowired
WorkFlowFeignService workFlowFeignService;
@Autowired
private IdxBizJgUseInfoMapper useInfoMapper;
@Autowired
private InspectionDetectionInfoMapper inspectionDetectionInfoMapper;
......@@ -215,6 +215,25 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
}
}
/**
* 将 年月日 日期转为 年月 格式返回
*
* @param originalDateStr
* @return
*/
private static String timeToMonths(String originalDateStr) {
if (StringUtils.isEmpty(originalDateStr)) {
return "";
}
// 定义输入的日期格式
DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
// 将字符串解析为LocalDate对象
LocalDate date = LocalDate.parse(originalDateStr, inputFormatter);
// 定义输出的日期格式
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM", Locale.CHINA);
// 将LocalDate对象格式化为所需的字符串
return date.format(outputFormatter);
}
public Page<Map<String, Object>> getList(JgUseRegistrationDto dto, String sort, Page<Map<String, Object>> page, List<String> roleIds) {
SortVo sortMap = commonServiceImpl.sortFieldConversion(sort);
......@@ -1650,26 +1669,6 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
}
/**
* 将 年月日 日期转为 年月 格式返回
*
* @param originalDateStr
* @return
*/
private static String timeToMonths(String originalDateStr) {
if (StringUtils.isEmpty(originalDateStr)){
return "";
}
// 定义输入的日期格式
DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
// 将字符串解析为LocalDate对象
LocalDate date = LocalDate.parse(originalDateStr, inputFormatter);
// 定义输出的日期格式
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM", Locale.CHINA);
// 将LocalDate对象格式化为所需的字符串
return date.format(outputFormatter);
}
/**
* 气瓶数据
*
* @return
......@@ -2067,4 +2066,76 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
});
}
@Transactional(rollbackFor = Exception.class)
@GlobalTransactional(rollbackFor = Exception.class)
public void handleErrorForm(Long sequenceNbr, 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("当前流程已经被执行!请重新打开页面查看并执行!");
}
// 流程执行时,状态及权限校验
commonService.checkForExecuteFlow(nextTaskId, instanceId);
JgUseRegistration jgUseRegistration = this.getBaseMapper().selectById(sequenceNbr);
ProcessTaskDTO complete = workFlowFeignService.handleErrorForm(jgUseRegistration.getInstanceId(), jgUseRegistration.getReceiveCompanyCode()).getResult();
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);
String role = workflowResultDto.getNextExecutorRoleIds();
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
if (!ObjectUtils.isEmpty(workflowResultDto.getNextTaskCode())) {
taskCode = workflowResultDto.getNextTaskCode();
}
jgUseRegistration.setNextTaskId(workflowResultDto.getNextTaskId());
jgUseRegistration.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
jgUseRegistration.setNextExecuteIds(role);
jgUseRegistration.setInstanceStatus(
Optional.ofNullable(jgUseRegistration.getInstanceStatus())
.map(status -> String.join(",", status, role))
.orElse(role)
);
jgUseRegistration.setStatus(Objects.requireNonNull(WorkFlowStatusEnum.getMessage(taskCode)).getPass());
jgUseRegistration.setPromoter(workflowResultDto.getStartUserId());
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", jgUseRegistration.getInstanceId());
params.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
params.put("flowStatusLabel", jgUseRegistration.getStatus());
params.put("taskStatus", commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
params.put("taskStatusLabel", jgUseRegistration.getStatus());
TaskV2Model taskV2Model = commonServiceImpl.updateTaskModel(params);
// 创建新的代办
if (!ObjectUtils.isEmpty(taskV2Model)) {
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(jgUseRegistration, taskMessageDto);
taskModelDto.setModel(taskMessageDto);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setStartUserId(workflowResultDto.getExecutorId());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
taskModelDto.setFlowCode(workflowResultDto.getNextTaskId());
commonServiceImpl.buildTaskModel(Collections.singletonList(taskModelDto));
} else {
workflowResultDto.setInstanceId(jgUseRegistration.getInstanceId());
buildTask(jgUseRegistration, workflowResultDto);
}
}
this.getBaseMapper().updateById(jgUseRegistration);
this.clearDataForCheckEquipRepeatUsed(jgUseRegistration);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
if (lock.isHeldByCurrentThread()) {
lock.unlock();
}
}
}
}
\ No newline at end of file
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