feat(流程): 标准解读流程基础代码
This commit is contained in:
+36
@@ -0,0 +1,36 @@
|
||||
package com.jero.modules.activiti.process.common.utility;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @ClassName: FlowUtility
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 16:08
|
||||
* @Version: 1.0
|
||||
**/
|
||||
public class FlowUtility {
|
||||
|
||||
/**
|
||||
* 将Map中值为List类型的元素转换为以逗号分隔的字符串。
|
||||
* 这个方法遍历输入的Map,如果发现任何值是List类型,则将这个List转换为一个以逗号分隔的字符串。
|
||||
* 这样做可以简化Map的表示,尤其是当List中包含许多元素时。
|
||||
*
|
||||
* @param map 原始的Map,可能包含值为List类型的元素。
|
||||
* @return 返回一个新的Map,其中所有值为List类型的元素都被转换为字符串。
|
||||
*/
|
||||
public static Map<String, Object> listToString(Map<String, Object> map) {
|
||||
// 使用流式编程来处理Map的每个条目
|
||||
return map.entrySet().stream().map(v -> {
|
||||
// 检查当前条目的值是否为List类型
|
||||
if (v.getValue() instanceof List) {
|
||||
// 如果是List类型,则将其转换为以逗号分隔的字符串
|
||||
v.setValue(String.join(",", (List<String>) v.getValue()));
|
||||
}
|
||||
// 返回转换后的条目
|
||||
return v;
|
||||
}).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
|
||||
}
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.common;
|
||||
|
||||
/**
|
||||
* @ClassName: standardInterpret
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 15:08
|
||||
* @Version: 1.0
|
||||
**/
|
||||
public class standardInterpret {
|
||||
private standardInterpret(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 标准解读流程key
|
||||
*/
|
||||
public static final String KEY = "standard_interpret";
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.controller;
|
||||
|
||||
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretClauseService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表(ProcessStandardInterpretClause)表控制层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:46:05
|
||||
*/
|
||||
@RestController("/processStandardInterpretClause")
|
||||
@RequiredArgsConstructor
|
||||
public class ProcessStandardInterpretClauseController {
|
||||
|
||||
private ProcessStandardInterpretClauseService processStandardInterpretClauseService;
|
||||
}
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.controller;
|
||||
|
||||
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretClauseSublistService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表_子表(ProcessStandardInterpretClauseSublist)表控制层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:47:59
|
||||
*/
|
||||
@RestController("/processStandardInterpretClauseSublist")
|
||||
@RequiredArgsConstructor
|
||||
public class ProcessStandardInterpretClauseSublistController {
|
||||
|
||||
private ProcessStandardInterpretClauseSublistService processStandardInterpretClauseSublistService;
|
||||
|
||||
}
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.controller;
|
||||
|
||||
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 标准解读流程(ProcessStandardInterpret)表控制层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:41:16
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@RestController("/processStandardInterpret")
|
||||
public class ProcessStandardInterpretController {
|
||||
|
||||
private ProcessStandardInterpretService processStandardInterpretService;
|
||||
|
||||
}
|
||||
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.controller;
|
||||
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.util.MessageUtils;
|
||||
import com.jero.common.util.SnowflakeUtils;
|
||||
import com.jero.modules.activiti.process.standardinterpret.dto.StandardInterpretFlowDTO;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.StandardInterpretFlowService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.poi.ss.formula.functions.T;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* @ClassName: 标准解读流程
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 15:06
|
||||
* @Version: 1.0
|
||||
**/
|
||||
@Api(tags="标准解读流程")
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/process/standardInterpretFlow")
|
||||
public class StandardInterpretFlowController {
|
||||
|
||||
private StandardInterpretFlowService standardInterpretFlowService;
|
||||
|
||||
/**
|
||||
* 标准解读流程-生成项目id
|
||||
* @return 项目id
|
||||
*/
|
||||
@AutoLog(value = "标准解读流程-生成项目id", operateType = CommonConstant.OPERATE_TYPE_1)
|
||||
@ApiOperation(value="标准解读流程-生成项目id", notes="标准解读流程-生成项目id")
|
||||
@GetMapping(value = "/getProjectId")
|
||||
public String getProjectId() {
|
||||
return String.valueOf(SnowflakeUtils.snowflake());
|
||||
}
|
||||
|
||||
/**
|
||||
* 标准解读流程-流程发起
|
||||
* @param standardInterpretFlowDTO 企标稽查计划流程VO对象
|
||||
* @return 结果对象
|
||||
*/
|
||||
@AutoLog(value = "标准解读流程-流程发起")
|
||||
@ApiOperation(value="标准解读流程-流程发起", notes="标准解读流程-流程发起")
|
||||
@PostMapping(value = "/flowStart")
|
||||
public Result<T> flowStart(@RequestBody StandardInterpretFlowDTO standardInterpretFlowDTO) {
|
||||
standardInterpretFlowService.flowStart(standardInterpretFlowDTO);
|
||||
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
|
||||
}
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.dto;
|
||||
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName: StandardInterpretDTO
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 15:29
|
||||
* @Version: 1.0
|
||||
**/
|
||||
@Data
|
||||
public class StandardInterpretDTO implements Serializable {
|
||||
/**标准解读流程*/
|
||||
@ApiModelProperty(value = "流程信息")
|
||||
private ProcessStandardInterpret processStandardInterpret;
|
||||
|
||||
/**标准解读流程_条款中间表*/
|
||||
@ApiModelProperty(value = "标准解读流程_条款中间表")
|
||||
private List<ProcessStandardInterpretClause> processStandardInterpretClauseList;
|
||||
}
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.dto;
|
||||
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @ClassName: StandardInterpretDTO
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 15:17
|
||||
* @Version: 1.0
|
||||
**/
|
||||
@Data
|
||||
public class StandardInterpretFlowDTO implements Serializable {
|
||||
|
||||
/**流程信息*/
|
||||
@ApiModelProperty(value = "流程信息")
|
||||
private ProcessAll processAll;
|
||||
|
||||
/**流程审批信息*/
|
||||
@ApiModelProperty(value = "流程审批信息")
|
||||
private ProcessApprovalRecord processApprovalRecord;
|
||||
|
||||
/**业务信息*/
|
||||
@ApiModelProperty(value = "业务信息")
|
||||
private StandardInterpretDTO data;
|
||||
|
||||
/**map(参数)*/
|
||||
@ApiModelProperty(value = "map(参数)")
|
||||
private Map<String, Object> map;
|
||||
}
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.entity;
|
||||
|
||||
|
||||
import com.jero.modules.laws.documenttool.entity.BaseEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 标准解读流程(ProcessStandardInterpret)表实体类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:41:18
|
||||
*/
|
||||
@Data
|
||||
public class ProcessStandardInterpret extends BaseEntity {
|
||||
/**主解读人*/
|
||||
@ApiModelProperty(value = "主解读人")
|
||||
private String masterInterpretId;
|
||||
/**父id*/
|
||||
@ApiModelProperty(value = "父id")
|
||||
private String parentId;
|
||||
/**标准id*/
|
||||
@ApiModelProperty(value = "标准id")
|
||||
private String standardId;
|
||||
/**项目id*/
|
||||
@ApiModelProperty(value = "项目id")
|
||||
private String projectId;
|
||||
/**分解单来源(字典)*/
|
||||
@ApiModelProperty(value = "分解单来源(字典)")
|
||||
private String decompositionSource;
|
||||
/**是否下发(字典:1:是,2:否)*/
|
||||
@ApiModelProperty(value = "是否下发(字典:1:是,2:否)")
|
||||
private String isDistribute;
|
||||
/**会签人员*/
|
||||
@ApiModelProperty(value = "会签人员")
|
||||
private String countersignPersonIds;
|
||||
/**审核人员*/
|
||||
@ApiModelProperty(value = "审核人员")
|
||||
private String uploader;
|
||||
/**批准人员*/
|
||||
@ApiModelProperty(value = "批准人员")
|
||||
private String approvePersonId;
|
||||
}
|
||||
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.entity;
|
||||
|
||||
|
||||
import com.jero.modules.laws.documenttool.entity.BaseEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表(ProcessStandardInterpretClause)表实体类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:46:07
|
||||
*/
|
||||
@Data
|
||||
public class ProcessStandardInterpretClause extends BaseEntity {
|
||||
/**标准解读流程id*/
|
||||
@ApiModelProperty(value = "标准解读流程id")
|
||||
private String standardInterpretId;
|
||||
/**条款id/标准id*/
|
||||
@ApiModelProperty(value = "条款id/标准id")
|
||||
private String clauseId;
|
||||
/**各涉及部门解读人*/
|
||||
@ApiModelProperty(value = "各涉及部门解读人")
|
||||
private String interpretPersonIds;
|
||||
/**分解单来源(字典)*/
|
||||
@ApiModelProperty(value = "分解单来源(字典)")
|
||||
private String decompositionSource;
|
||||
}
|
||||
|
||||
+113
@@ -0,0 +1,113 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.entity;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表_子表(ProcessStandardInterpretClauseSublist)表实体类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:47:59
|
||||
*/
|
||||
@Data
|
||||
public class ProcessStandardInterpretClauseSublist extends Model<ProcessStandardInterpretClauseSublist> {
|
||||
/**标准解读流程_条款中间表id*/
|
||||
@ApiModelProperty(value = "标准解读流程_条款中间表id")
|
||||
private String standardInterpretClauseId;
|
||||
/**条款id*/
|
||||
@ApiModelProperty(value = "条款id")
|
||||
private String clauseId;
|
||||
/**解读人*/
|
||||
@ApiModelProperty(value = "解读人")
|
||||
private String interpretPersonId;
|
||||
/**译文*/
|
||||
@ApiModelProperty(value = "译文")
|
||||
private String translation;
|
||||
/**是否与上一版相同(字典:1:是,0:否)*/
|
||||
@ApiModelProperty(value = "是否与上一版相同(字典:1:是,0:否)")
|
||||
private String isSameAsPrevVersion;
|
||||
/**变化点说明*/
|
||||
@ApiModelProperty(value = "变化点说明")
|
||||
private String changeDescription;
|
||||
/**法规注释*/
|
||||
@ApiModelProperty(value = "法规注释")
|
||||
private String regulatoryNotes;
|
||||
/**关键词*/
|
||||
@ApiModelProperty(value = "关键词")
|
||||
private String keywords;
|
||||
/**适用零部件*/
|
||||
@ApiModelProperty(value = "适用零部件")
|
||||
private String applicableComponents;
|
||||
/**责任部门*/
|
||||
@ApiModelProperty(value = "责任部门")
|
||||
private String responsibleDepartment;
|
||||
/**责任部门专业模块*/
|
||||
@ApiModelProperty(value = "责任部门专业模块")
|
||||
private String responsibleModule;
|
||||
/**关联部门*/
|
||||
@ApiModelProperty(value = "关联部门")
|
||||
private String relatedDepartment;
|
||||
/**关联部门专业模块*/
|
||||
@ApiModelProperty(value = "关联部门专业模块")
|
||||
private String relatedModule;
|
||||
/**适用车型*/
|
||||
@ApiModelProperty(value = "适用车型")
|
||||
private String applications;
|
||||
/**动力类型*/
|
||||
@ApiModelProperty(value = "动力类型")
|
||||
private String powerType;
|
||||
/**专业领域*/
|
||||
@ApiModelProperty(value = "专业领域")
|
||||
private String domainArea;
|
||||
/**配置需求*/
|
||||
@ApiModelProperty(value = "配置需求")
|
||||
private String configurationRequirements;
|
||||
/**新认证实施日期*/
|
||||
@ApiModelProperty(value = "新认证实施日期")
|
||||
private String newCerImplementDate;
|
||||
/**新生产车实施日期*/
|
||||
@ApiModelProperty(value = "新生产车实施日期")
|
||||
private String newProductionImplementation;
|
||||
/**注册日期*/
|
||||
@ApiModelProperty(value = "注册日期")
|
||||
private String registrationDate;
|
||||
/**企业标准*/
|
||||
@ApiModelProperty(value = "企业标准")
|
||||
private String enterpriseStandard;
|
||||
/**技术规范/设计指南*/
|
||||
@ApiModelProperty(value = "技术规范/设计指南")
|
||||
private String technicalSpecificationDesignGuide;
|
||||
/**图纸模板*/
|
||||
@ApiModelProperty(value = "图纸模板")
|
||||
private String drawingTemplate;
|
||||
/**技术协议模板*/
|
||||
@ApiModelProperty(value = "技术协议模板")
|
||||
private String technicalAgreementTemplate;
|
||||
/**校验报告模块/checklist*/
|
||||
@ApiModelProperty(value = "校验报告模块/checklist")
|
||||
private String verificationReportTemplateChecklist;
|
||||
/**DVP模板*/
|
||||
@ApiModelProperty(value = "DVP模板")
|
||||
private String dvpTemplate;
|
||||
/**DFEMA*/
|
||||
@ApiModelProperty(value = "DFEMA")
|
||||
private String dfema;
|
||||
/**关键技术分解表*/
|
||||
@ApiModelProperty(value = "关键技术分解表")
|
||||
private String keyTechnologyDecompositionTable;
|
||||
/**其他文件或模板*/
|
||||
@ApiModelProperty(value = "其他文件或模板")
|
||||
private String otherDocumentsTemplates;
|
||||
/**p3*/
|
||||
@ApiModelProperty(value = "p3")
|
||||
private String p3;
|
||||
/**p5*/
|
||||
@ApiModelProperty(value = "p5")
|
||||
private String p5;
|
||||
/**备注*/
|
||||
@ApiModelProperty(value = "备注")
|
||||
private String remarks;
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表(ProcessStandardInterpretClause)表数据库访问层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:46:05
|
||||
*/
|
||||
public interface ProcessStandardInterpretClauseMapper extends BaseMapper<ProcessStandardInterpretClause> {
|
||||
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClauseSublist;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表_子表(ProcessStandardInterpretClauseSublist)表数据库访问层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:47:59
|
||||
*/
|
||||
public interface ProcessStandardInterpretClauseSublistMapper extends BaseMapper<ProcessStandardInterpretClauseSublist> {
|
||||
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
|
||||
|
||||
/**
|
||||
* 标准解读流程(ProcessStandardInterpret)表数据库访问层
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:41:17
|
||||
*/
|
||||
public interface ProcessStandardInterpretMapper extends BaseMapper<ProcessStandardInterpret> {
|
||||
|
||||
}
|
||||
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
<?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.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretClauseMapper">
|
||||
|
||||
</mapper>
|
||||
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
<?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.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretClauseSublistMapper">
|
||||
|
||||
</mapper>
|
||||
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
<?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.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretMapper">
|
||||
|
||||
</mapper>
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表(ProcessStandardInterpretClause)表服务接口
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:46:07
|
||||
*/
|
||||
public interface ProcessStandardInterpretClauseService extends IService<ProcessStandardInterpretClause> {
|
||||
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClauseSublist;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表_子表(ProcessStandardInterpretClauseSublist)表服务接口
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:47:59
|
||||
*/
|
||||
public interface ProcessStandardInterpretClauseSublistService extends IService<ProcessStandardInterpretClauseSublist> {
|
||||
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
|
||||
|
||||
/**
|
||||
* 标准解读流程(ProcessStandardInterpret)表服务接口
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:41:19
|
||||
*/
|
||||
public interface ProcessStandardInterpretService extends IService<ProcessStandardInterpret> {
|
||||
|
||||
}
|
||||
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service;
|
||||
|
||||
import com.jero.modules.activiti.process.standardinterpret.dto.StandardInterpretFlowDTO;
|
||||
|
||||
/**
|
||||
* @InterfaceName: StandardInterpretFlowServicce
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 16:04
|
||||
* @Version: 1.0
|
||||
**/
|
||||
public interface StandardInterpretFlowService {
|
||||
/**
|
||||
* standardInterpretFlowDTO
|
||||
* @param standardInterpretFlowDTO
|
||||
*/
|
||||
void flowStart(StandardInterpretFlowDTO standardInterpretFlowDTO);
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
import com.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretClauseMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretClauseService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表(ProcessStandardInterpretClause)表服务实现类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:46:07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class ProcessStandardInterpretClauseServiceImpl
|
||||
extends ServiceImpl<ProcessStandardInterpretClauseMapper, ProcessStandardInterpretClause>
|
||||
implements ProcessStandardInterpretClauseService {
|
||||
|
||||
}
|
||||
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretClauseSublistMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClauseSublist;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretClauseSublistService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 标准解读流程_条款中间表_子表(ProcessStandardInterpretClauseSublist)表服务实现类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:48:00
|
||||
*/
|
||||
@Service
|
||||
public class ProcessStandardInterpretClauseSublistServiceImpl
|
||||
extends ServiceImpl<ProcessStandardInterpretClauseSublistMapper, ProcessStandardInterpretClauseSublist>
|
||||
implements ProcessStandardInterpretClauseSublistService {
|
||||
|
||||
|
||||
}
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.activiti.process.standardinterpret.mapper.ProcessStandardInterpretMapper;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 标准解读流程(ProcessStandardInterpret)表服务实现类
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2024-06-24 14:41:19
|
||||
*/
|
||||
@Service
|
||||
public class ProcessStandardInterpretServiceImpl
|
||||
extends ServiceImpl<ProcessStandardInterpretMapper, ProcessStandardInterpret>
|
||||
implements ProcessStandardInterpretService {
|
||||
|
||||
}
|
||||
|
||||
+137
@@ -0,0 +1,137 @@
|
||||
package com.jero.modules.activiti.process.standardinterpret.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.SnowflakeUtils;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||
import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
||||
import com.jero.modules.activiti.process.common.enums.ProcessType;
|
||||
import com.jero.modules.activiti.process.common.utility.FlowUtility;
|
||||
import com.jero.modules.activiti.process.standardinterpret.common.standardInterpret;
|
||||
import com.jero.modules.activiti.process.standardinterpret.dto.StandardInterpretDTO;
|
||||
import com.jero.modules.activiti.process.standardinterpret.dto.StandardInterpretFlowDTO;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretClauseService;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretService;
|
||||
import com.jero.modules.activiti.process.standardinterpret.service.StandardInterpretFlowService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.runtime.ProcessInstance;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @ClassName: StandardInterpretFlowServiceImpl
|
||||
* @Description:
|
||||
* @Author: yjz
|
||||
* @Date: 2024-06-24 16:04
|
||||
* @Version: 1.0
|
||||
**/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class StandardInterpretFlowServiceImpl implements StandardInterpretFlowService {
|
||||
|
||||
private RuntimeService runtimeService;
|
||||
private TaskService taskService;
|
||||
private ProcessAllService processAllService;
|
||||
private ProcessApprovalRecordService processApprovalRecordService;
|
||||
private ProcessNodeLinkService processNodeLinkService;
|
||||
private ProcessStandardInterpretService processStandardInterpretService;
|
||||
private ProcessStandardInterpretClauseService processStandardInterpretClauseService;
|
||||
|
||||
@Override
|
||||
public void flowStart(StandardInterpretFlowDTO standardInterpretFlowDTO) {
|
||||
log.info("标准解读流程-流程发起 开始");
|
||||
// 流程信息
|
||||
ProcessAll processAll = standardInterpretFlowDTO.getProcessAll();
|
||||
// 流程审批信息
|
||||
ProcessApprovalRecord processApprovalRecord = standardInterpretFlowDTO.getProcessApprovalRecord();
|
||||
// map(参数)
|
||||
Map<String, Object> map = standardInterpretFlowDTO.getMap();
|
||||
|
||||
// 根据流程key启动流程,设置流程变量,更新流程总表信息,更新流程审批信息,返回任务信息
|
||||
Task task = startProcessInstanceByKey(standardInterpret.KEY, map, processAll, processApprovalRecord);
|
||||
|
||||
// 处理业务信息
|
||||
handleBusinessData(standardInterpretFlowDTO);
|
||||
|
||||
// 自动完成第一个节点
|
||||
taskService.complete(task.getId());
|
||||
log.info("标准解读流程-流程发起 结束");
|
||||
}
|
||||
|
||||
private void handleBusinessData(StandardInterpretFlowDTO standardInterpretFlowDTO) {
|
||||
StandardInterpretDTO data = standardInterpretFlowDTO.getData();
|
||||
// 标准解读流程
|
||||
ProcessStandardInterpret processStandardInterpret = data.getProcessStandardInterpret();
|
||||
processStandardInterpretService.saveOrUpdate(processStandardInterpret);
|
||||
|
||||
// 标准解读流程_条款中间表
|
||||
List<ProcessStandardInterpretClause> processStandardInterpretClauseList =
|
||||
data.getProcessStandardInterpretClauseList();
|
||||
for (ProcessStandardInterpretClause processStandardInterpretClause : processStandardInterpretClauseList) {
|
||||
processStandardInterpretClause.setId(String.valueOf(SnowflakeUtils.snowflake()));
|
||||
processStandardInterpretClause.setStandardInterpretId(processStandardInterpret.getId());
|
||||
}
|
||||
processStandardInterpretClauseService.saveOrUpdateBatch(processStandardInterpretClauseList);
|
||||
}
|
||||
|
||||
private Task startProcessInstanceByKey(String key, Map<String, Object> map, ProcessAll processAll,
|
||||
ProcessApprovalRecord processApprovalRecord) {
|
||||
// 启动流程
|
||||
ProcessInstance processInstance = runtimeService
|
||||
.startProcessInstanceByKey(key);
|
||||
// 设置流程变量
|
||||
runtimeService.setVariables(processInstance.getId(), map);
|
||||
|
||||
// 更新流程总表信息
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_REPORT.getValue()));
|
||||
DateTime date = DateUtil.date();
|
||||
processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN));
|
||||
processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue());
|
||||
processAll.setCreateUserId(loginUser.getId());
|
||||
processAllService.update(processAll,
|
||||
new LambdaUpdateWrapper<ProcessAll>()
|
||||
.eq(ProcessAll::getProcessInstanceId, processInstance.getId()));
|
||||
|
||||
// 根据流程实例id查询任务信息
|
||||
Task task = taskService.createTaskQuery()
|
||||
.processInstanceId(processInstance.getId())
|
||||
.singleResult();
|
||||
|
||||
// 更新流程审批信息
|
||||
processApprovalRecord.setUserId(loginUser.getId());
|
||||
processApprovalRecord.setProjectId(processAll.getProjectId());
|
||||
processApprovalRecord.setFinishFlag(FinishFlagEnum.COMPLETE.getValue());
|
||||
processApprovalRecord.setEndTime(new Date());
|
||||
processApprovalRecordService.update(processApprovalRecord,
|
||||
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, task.getId()));
|
||||
|
||||
// 新增流程实例节点关联用户表信息
|
||||
processNodeLinkService.saveNodeUserLink(processInstance.getProcessDefinitionId(), processInstance.getId()
|
||||
, FlowUtility.listToString(map));
|
||||
|
||||
// 返回任务信息
|
||||
return task;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user