diff --git a/db/20230905标准法规库.sql b/db/20230905标准法规库.sql index 3c49d3f7..5e2871c5 100644 --- a/db/20230905标准法规库.sql +++ b/db/20230905标准法规库.sql @@ -270,4 +270,38 @@ CREATE TABLE `laws_asms_open_api` alter table laws_asms_open_api comment '汽车标准数字化平台ASMS开放API接口管理'; +DROP TABLE IF EXISTS `laws_asms_domestic`; +CREATE TABLE `laws_asms_domestic` +( + `id` varchar(100) NOT NULL PRIMARY KEY COMMENT '主键ID', + `code` varchar(100) COMMENT '标准法规编号/标准号', + `name` varchar(100) COMMENT '标准法规名称/标准名称', + `english_name` varchar(100) COMMENT '法规英文名称', + `type` varchar(100) COMMENT '标准法规类别/标准类别', + `applicable_certification_list_string` varchar(100) COMMENT '适用认证', + `applicable_models_list_string` varchar(100) COMMENT '适用车型拼接名称', + `degree_adoption` varchar(100) COMMENT '采标程度', + `drafting_people` varchar(500) COMMENT '起草人', + `drafting_unit` varchar(500) COMMENT '起草单位', + `focal_point_name` varchar(100) COMMENT '标准领域名称', + `implementation_date` varchar(100) COMMENT '实施日期', + `international_standard` varchar(100) COMMENT '采用国际标准号', + `new_car_implementation_date` varchar(100) COMMENT '新车实施日期', + `new_register_car_implementation_date` varchar(100) COMMENT '新注册车实施日期', + `power_type_list_string` varchar(100) COMMENT '动力类型', + `production_car_implementation_date` varchar(100) COMMENT '在产车实施日期', + `proposing_department` varchar(100) COMMENT '提出部门', + `publish_date` varchar(100) COMMENT '发布日期', + `replace_code` varchar(100) COMMENT '代替标准号', + `scope_application` varchar(100) COMMENT '适用范围', + `standard_nature` varchar(100) COMMENT '标准性质', + `standard_status` varchar(100) COMMENT '标准状态', + `subcommittee` varchar(100) COMMENT '分标委', + `create_time` varchar(100) COMMENT '创建时间', + `update_time` varchar(100) COMMENT '更新时间', + `is_sync` varchar(5) COMMENT '是否同步(0未同步,1已同步)' +) COMMENT = 'ASMS国内法规'; +alter table laws_asms_domestic + comment 'ASMS国内法规'; + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java deleted file mode 100644 index 10f52ece..00000000 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/AsmsController.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.jero.modules.docking.asms.controller; - -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.jero.common.api.vo.Result; -import com.jero.modules.docking.asms.util.AsmsPostUtil; -import com.jero.modules.laws.common.constant.FieldCommon; -import io.swagger.annotations.Api; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -import java.util.Map; - -/** - * @Author: liao - * @Date: 2023/10/17 17:36 - * @Description: - */ -@Api(tags="国内法规标准") -@RestController -@RequestMapping("/asms") -public class AsmsController { - @Autowired - private AsmsPostUtil asmsPostUtil; - @GetMapping(value = "/getInfo") - public Result getInfo(String uri, Map map) { - List> mapList = asmsPostUtil.sendGetReq(uri, map); - return Result.OK(mapList); - } -} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsOpenApiController.java similarity index 95% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsOpenApiController.java index bd118ca8..93190ae7 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/controller/LawsAsmsOpenApiController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/controller/LawsAsmsOpenApiController.java @@ -1,16 +1,14 @@ -package com.jero.modules.docking.asms.api.controller; +package com.jero.modules.docking.asms.controller; import java.util.Arrays; -import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; import com.jero.common.api.vo.Result; -import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; -import com.jero.modules.docking.asms.api.service.ILawsAsmsOpenApiService; +import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi; +import com.jero.modules.docking.asms.service.ILawsAsmsOpenApiService; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.modules.docking.asms.util.AsmsPostUtil; import lombok.extern.slf4j.Slf4j; @@ -18,7 +16,6 @@ import com.jero.common.system.base.controller.JeroController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import com.jero.common.aspect.annotation.AutoLog; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/entity/LawsAsmsOpenApi.java similarity index 98% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/entity/LawsAsmsOpenApi.java index a93b5c06..a9c37f54 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/entity/LawsAsmsOpenApi.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/entity/LawsAsmsOpenApi.java @@ -1,4 +1,4 @@ -package com.jero.modules.docking.asms.api.entity; +package com.jero.modules.docking.asms.entity; import java.io.Serializable; import java.io.UnsupportedEncodingException; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/LawsAsmsOpenApiMapper.java similarity index 83% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/LawsAsmsOpenApiMapper.java index 44c8bd94..e4b8ea69 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/LawsAsmsOpenApiMapper.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/LawsAsmsOpenApiMapper.java @@ -1,7 +1,7 @@ -package com.jero.modules.docking.asms.api.mapper; +package com.jero.modules.docking.asms.mapper; import org.apache.ibatis.annotations.Mapper; -import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; +import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/xml/LawsAsmsOpenApiMapper.xml similarity index 86% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/xml/LawsAsmsOpenApiMapper.xml index 95a5c436..2af1a939 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/mapper/xml/LawsAsmsOpenApiMapper.xml +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/mapper/xml/LawsAsmsOpenApiMapper.xml @@ -1,7 +1,7 @@ - - + + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsOpenApiService.java similarity index 93% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsOpenApiService.java index 78ae49bb..d40898c8 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/ILawsAsmsOpenApiService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/ILawsAsmsOpenApiService.java @@ -1,6 +1,6 @@ -package com.jero.modules.docking.asms.api.service; +package com.jero.modules.docking.asms.service; -import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; +import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi; import com.baomidou.mybatisplus.extension.service.IService; import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.metadata.IPage; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java similarity index 94% rename from laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java rename to laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java index 75735135..94cae187 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/api/service/impl/LawsAsmsOpenApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/service/impl/LawsAsmsOpenApiServiceImpl.java @@ -1,13 +1,11 @@ -package com.jero.modules.docking.asms.api.service.impl; +package com.jero.modules.docking.asms.service.impl; import com.alibaba.fastjson.JSON; 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.jero.common.api.vo.Result; -import com.jero.modules.docking.asms.api.entity.LawsAsmsOpenApi; -import com.jero.modules.docking.asms.api.mapper.LawsAsmsOpenApiMapper; -import com.jero.modules.docking.asms.api.service.ILawsAsmsOpenApiService; +import com.jero.modules.docking.asms.entity.LawsAsmsOpenApi; +import com.jero.modules.docking.asms.mapper.LawsAsmsOpenApiMapper; +import com.jero.modules.docking.asms.service.ILawsAsmsOpenApiService; import com.jero.modules.docking.asms.util.AsmsPostUtil; import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.service.ISysDictItemService; @@ -20,7 +18,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.jero.common.exception.JeroBootException; -import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Objects; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java index 74fa4127..4ca7ab9e 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/asms/util/AsmsPostUtil.java @@ -3,6 +3,8 @@ package com.jero.modules.docking.asms.util; import com.jero.common.api.vo.Result; import com.jero.common.exception.JeroBootException; import com.jero.common.util.RedisUtil; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -13,10 +15,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import org.springframework.web.client.RestTemplate; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; /** * @Author: liao @@ -24,6 +23,7 @@ import java.util.Objects; * @Description: 远程调用 */ @Component +@Slf4j public class AsmsPostUtil { @Autowired @@ -62,6 +62,7 @@ public class AsmsPostUtil { token = resultMap.get("token"); // 将新获取的token存入redis redisUtil.set(ASMS_SYSTEM_AUTH_TOKEN, token, expire * 60 * 60); + log.info("new token is creating: {}", token); } return token; } @@ -75,9 +76,10 @@ public class AsmsPostUtil { **/ public List> sendGetReq(String uri, Map map) { // 准备请求头 + String token = getToken(); HttpHeaders headers = new HttpHeaders(); headers.set("Content-Type", "application/x-www-form-urlencoded"); - headers.set("X-Access-Token", getToken()); + headers.set("X-Access-Token", token); if (StringUtils.isBlank(uri)) { throw new JeroBootException("url不能为空"); @@ -91,19 +93,32 @@ public class AsmsPostUtil { url += "?" + s.substring(1); } - ResponseEntity responseEntity = restTemplate.exchange(url.toString(), - HttpMethod.GET, new HttpEntity<>(null, headers), Result.class); + ResponseEntity responseEntity; + try { + log.info("request url : {}", url); + responseEntity = restTemplate.exchange(url.toString(), + HttpMethod.GET, new HttpEntity<>(null, headers), Result.class); + } catch (Exception e) { + log.info("old token is deleting: {}", token); + redisUtil.del(ASMS_SYSTEM_AUTH_TOKEN); + e.printStackTrace(); + throw new JeroBootException("操作失败,请稍后重试"); + } if (!responseEntity.getBody().isSuccess()) { throw new JeroBootException("汽车标准数字化平台:请求发送失败"); } Map resultMap = (Map) responseEntity.getBody().getResult(); + if (Objects.isNull(resultMap)) { + throw new JeroBootException("返回数据为空"); + } List> mapList = (List>) resultMap.get("records"); - mapList.forEach(eMap -> { - StringBuilder sb = new StringBuilder(); - eMap.forEach((k, v) -> sb.append(k + ":" + v + ",")); - System.out.println(sb); - }); + if (CollectionUtils.isEmpty(mapList)) { + mapList = new ArrayList<>(); + Map result = (Map) responseEntity.getBody().getResult(); + mapList.add(result); + } + log.info("返回{}条数据", mapList.size()); return mapList; } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java index 5751fe6f..9add1b25 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java @@ -89,6 +89,19 @@ public class WorkCenterController { return Result.OK(sentList); } + @ApiOperation(value = "查询全部流程") + @GetMapping("/getAllList") + public Result getAllList(ProcessAll processAll, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = getProcessAllQueryWrapper(processAll); + + Page page = new Page<>(pageNo, pageSize); + IPage sentList = processAllService.getAllList(page, queryWrapper); + return Result.OK(sentList); + } + @NotNull private QueryWrapper getProcessAllQueryWrapper(ProcessAll processAll) { String prcName = processAll.getPrcName(); @@ -105,7 +118,7 @@ public class WorkCenterController { return queryWrapper; } - @ApiOperation(value = "撤销流程") + @ApiOperation(value = "强制撤销") @PostMapping("/delete") public Result delete(@RequestBody Map map) { String processInstanceId = map.get("processInstanceId"); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java b/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java index 928af1fc..ccc9e67c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java @@ -1,5 +1,6 @@ package com.jero.modules.activiti.enums; +import com.jero.modules.activiti.process.esInitChange.service.impl.ProcessEsInitChangeServiceImpl; import lombok.AllArgsConstructor; import lombok.Getter; @@ -13,11 +14,13 @@ public enum ProcessTypeEnum { /** * A */ - A("企标制修订流程", 1,"Process_17bj7d9"); + A("企标制修订流程", 1, "com.jero.modules.activiti.process.esInitChange.service.impl.ProcessEsInitChangeServiceImpl"), + B("企标立项变更流程",2, "com.jero.modules.activiti.process.esInitChange.service.impl.ProcessEsInitChangeServiceImpl"), + ; private String name; private Integer value; - private String key; + private String implClass; public static String getNameByValue(Integer value) { for (ProcessTypeEnum enumObject : values()) { @@ -28,9 +31,18 @@ public enum ProcessTypeEnum { return null; } - public static Integer getValueByKey(String key) { + public static String getClassByValue(Integer value) { for (ProcessTypeEnum enumObject : values()) { - if (enumObject.getKey().equals(key)) { + if (enumObject.getValue().equals(value)) { + return enumObject.getImplClass(); + } + } + return null; + } + + public static Integer getValueByName(String name) { + for (ProcessTypeEnum enumObject : values()) { + if (enumObject.getName().equals(name)) { return enumObject.getValue(); } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/listener/StartListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/listener/StartListener.java index aad51627..0204a165 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/listener/StartListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/listener/StartListener.java @@ -1,24 +1,16 @@ package com.jero.modules.activiti.listener; -import java.util.List; - import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.util.SpringContextUtil; -import org.activiti.bpmn.model.ActivitiListener; -import org.activiti.bpmn.model.FlowElement; import org.activiti.engine.*; import org.activiti.engine.delegate.DelegateExecution; -import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.ExecutionListener; -import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.repository.ProcessDefinition; -import org.activiti.engine.runtime.NativeProcessInstanceQuery; -import org.activiti.engine.runtime.ProcessInstance; /** * @author liJiaRao @@ -45,7 +37,7 @@ public class StartListener implements ExecutionListener { //新增流程总表信息(剩余的内容在启动流程时填充) ProcessAll processAll = new ProcessAll(); processAll.setProcessInstanceId(processInstanceId); - processAll.setPrcType(ProcessTypeEnum.getValueByKey(key)); + processAll.setPrcType(ProcessTypeEnum.getValueByName(name)); processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); processAllService.save(processAll); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/ProcessAllMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/ProcessAllMapper.java index 0c0f713b..8b59f312 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/ProcessAllMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/ProcessAllMapper.java @@ -19,4 +19,6 @@ public interface ProcessAllMapper extends BaseMapper { IPage getCompletedList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); IPage getSentList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + IPage getAllList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml index 10965435..cf491696 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml @@ -17,7 +17,7 @@ ${ew.customSqlSegment} ) p left join process_approval_record par on p.process_instance_id = par.process_instance_id - WHERE par.finish_flag = 0 + WHERE par.finish_flag = 0 or par.id is null group by p.process_instance_id @@ -30,7 +30,20 @@ ${ew.customSqlSegment} ) p left join process_approval_record par on p.process_instance_id = par.process_instance_id - WHERE par.finish_flag = 0 + WHERE par.finish_flag = 0 or par.id is null + group by p.process_instance_id + + + \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java index a6c862d9..1d550e4e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; import org.activiti.engine.RuntimeService; import org.springframework.stereotype.Service; @@ -46,13 +47,29 @@ public class ProcessAllService extends ServiceImpl } public void delete(String processInstanceId) { - runtimeService.deleteProcessInstance(processInstanceId,"撤销"); - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(ProcessAll::getProcessInstanceId,processInstanceId); - this.remove(wrapper); - + //activiti撤销 + runtimeService.deleteProcessInstance(processInstanceId,"强制撤销"); + //获得流程总表 + ProcessAll processAll = getByProcessInstanceId(processInstanceId); + //删除流程总表 + this.removeById(processAll.getId()); + //删除审批表 LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); wrapper1.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); processApprovalRecordMapper.delete(wrapper1); + //业务表修改为草稿 + Integer prcType = processAll.getPrcType(); + WorkCenterService classByValue = null; + try { + classByValue = (WorkCenterService) Class.forName(ProcessTypeEnum.getClassByValue(prcType)).newInstance(); + }catch (Exception e) { + log.error(e.getMessage(),e); + } + classByValue.changeToDraft(processAll.getProjectId()); + //todo 同步删除操作到统一待办 + } + + public IPage getAllList(Page page, QueryWrapper queryWrapper) { + return processAllMapper.getAllList(page,queryWrapper); } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/WorkCenterService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/WorkCenterService.java new file mode 100644 index 00000000..d25f0f5a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/WorkCenterService.java @@ -0,0 +1,13 @@ +package com.jero.modules.activiti.service; + +/** + * @author liJiaRao + * @date 2023-10-19 15:22 + */ +public interface WorkCenterService { + /** + * 更改业务表为草稿 + * @param id + */ + void changeToDraft(String id); +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java index 2149018a..7d424e74 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java @@ -115,4 +115,17 @@ public class FieldCommon { // 稽查内容 public static final String CHECK_LIST = "checkList"; + // 发布稿(原文) + public static final String FILE_PUBLISH_OF_ORIGINAL = "publish_of_original"; + // 修改单 + public static final String FILE_MODIFICATION_LIST = "modification_list"; + // 报批稿 + public static final String FILE_DRAFT_FOR_REVIEW = "draft_for_review"; + // 送审稿 + public static final String FILE_DRAFT_FOR_APPROVAL = "draft_for_approval"; + // 征求意见稿 + public static final String FILE_DRAFT_FOR_COMMENT = "draft_for_comment"; + // 草案 + public static final String FILE_DRAFT = "draft"; + } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java index 1cf09101..1dabcd9d 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java @@ -34,6 +34,8 @@ import com.jero.modules.personal.entity.LawsBrowsingHistory; import com.jero.modules.personal.entity.LawsStandardCollection; import com.jero.modules.personal.service.ILawsBrowsingHistoryService; import com.jero.modules.personal.service.ILawsStandardCollectionService; +import com.jero.modules.split.entity.SarFileSplitInfoEO; +import com.jero.modules.split.service.ISarFileSplitInfoService; import com.jero.modules.system.entity.SysDepart; import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.entity.SysUser; @@ -123,6 +125,8 @@ public class LawsCommonServiceImpl implements ILawsCommonService { private EnterpriseStandardAuthUserService esAuthUserService; @Resource private WaterMarkUtil waterMarkUtil; + @Autowired + private ISarFileSplitInfoService sarFileSplitInfoService; /** * @Author: liao @@ -165,11 +169,54 @@ public class LawsCommonServiceImpl implements ILawsCommonService { } // 是否收藏判断标识 collectionFlag(infoPage.getRecords()); + // 标准拆分标识 + splitFlag(infoPage.getRecords()); // 待处理 return infoPage; } + /** + * @Author: liao + * @Date: 2023/10/19 15:36 + * @Description: 标准拆分标识 + **/ + private void splitFlag(List> records) { + // 获取全部id集合 + List ids = records.stream().map(kv -> + String.valueOf(kv.get("id"))).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(ids)) return; + + // 查询标准拆分表 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(SarFileSplitInfoEO::getStandardId, ids); + queryWrapper.isNotNull(SarFileSplitInfoEO::getPublishBeforeId); + queryWrapper.isNotNull(SarFileSplitInfoEO::getFileType); + List sarFileSplitInfoEOList = sarFileSplitInfoService.list(queryWrapper); + + if (CollectionUtils.isEmpty(sarFileSplitInfoEOList)) { + return; + } + + Map flagMap = new HashMap<>(); + sarFileSplitInfoEOList.forEach(e -> flagMap.put(e.getStandardId() + "," + e.getFileType(), e.getId())); + records.forEach(map -> { + String id = (String) map.get("id"); + map.put(FieldCommon.FILE_PUBLISH_OF_ORIGINAL + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_PUBLISH_OF_ORIGINAL)); + map.put(FieldCommon.FILE_MODIFICATION_LIST + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_MODIFICATION_LIST)); + map.put(FieldCommon.FILE_DRAFT_FOR_REVIEW + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_DRAFT_FOR_REVIEW)); + map.put(FieldCommon.FILE_DRAFT_FOR_APPROVAL + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_DRAFT_FOR_APPROVAL)); + map.put(FieldCommon.FILE_DRAFT_FOR_COMMENT + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_DRAFT_FOR_COMMENT)); + map.put(FieldCommon.FILE_DRAFT + FieldCommon._STANDARD_SPLIT, + flagMap.get(id + "," + FieldCommon.FILE_DRAFT)); + }); + } + @Override public IPage> getExportData(Map parameterMap, List fieldList) { // 获取操作模块