From bde135f621ac9debc6a15b3087a42e3050a6bc04 Mon Sep 17 00:00:00 2001 From: 18792927508 <1322446236@qq.com> Date: Mon, 22 Jan 2024 10:00:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E8=A7=A3=E7=94=B3=E8=AF=B7=E4=B9=A6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/template/TemplateManageMapper.java | 7 ++ .../impl/MsCaseApplicationServiceImpl.java | 87 ++++++++++++++----- .../template/TemplateManageMapper.xml | 4 + 3 files changed, 77 insertions(+), 21 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/template/TemplateManageMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/template/TemplateManageMapper.java index 222193c..c196cc8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/template/TemplateManageMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/template/TemplateManageMapper.java @@ -14,4 +14,11 @@ public interface TemplateManageMapper { int updateTemplateManage(TemplateManage templateManage); TemplateManage selectById(@Param("id") String id); + + /** + * 根据模板类型查找模板 + * @param type 模板类型(1-调解书,2-调解申请书) + * @return + */ + TemplateManage selectByType(@Param("type") int type); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java index 3b86f49..1cdbe33 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java @@ -182,28 +182,14 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { if (caseApplication.getId() == null) { caseApplication.setId(IdWorkerUtil.getId()); } - // 根据用户查询角色 - LoginUser loginUser = SecurityUtils.getLoginUser(); - List roles = loginUser.getUser().getRoles(); - if (CollectionUtil.isEmpty(roles)) { - throw new ServiceException("该用户未指定角色"); - } - // 根据角色查询关联的案件状态 - Example example = new Example(MsCaseFlowRoleRelated.class); - example.createCriteria().andIn("roleid", roles.stream().map(SysRole::getRoleId).collect(Collectors.toList())); - List caseFlowRoleRelatedList = caseFlowRoleRelatedMapper.selectByExample(example); - if (CollectionUtil.isEmpty(caseFlowRoleRelatedList)) { + // 根据角色获取案件流程 + List caseFlows= selectCaseFlows(); + if (CollectionUtil.isEmpty(caseFlows)) { throw new ServiceException("该角色为绑定案件流程"); } - Example flowExample = new Example(MsCaseFlow.class); - flowExample.setOrderByClause("sort asc"); - flowExample.createCriteria().andIn("id", caseFlowRoleRelatedList.stream().map(MsCaseFlowRoleRelated::getFlowId).collect(Collectors.toList())); - List caseFlows = caseFlowMapper.selectByExample(flowExample); MsCaseFlow caseFlow = caseFlows.get(0); - if (CollectionUtil.isNotEmpty(caseFlows)) { - caseApplication.setCaseStatusName(caseFlow.getCaseStatusName()); - caseApplication.setCaseFlowId(caseFlow.getId()); - } + caseApplication.setCaseStatusName(caseFlow.getCaseStatusName()); + caseApplication.setCaseFlowId(caseFlow.getId()); caseApplication.setCreateTime(new Date()); // 计算仲裁费用 setFeePayableMethod(caseApplication); @@ -256,6 +242,23 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { } affiliate.setCaseAppliId(caseApplication.getId()); msCaseAffiliateMapper.insert(affiliate); + // 生成调解申请书 + // 查询调解申请书模板id + TemplateManage templateManage=templateManageMapper.selectByType(2); + if(templateManage!=null) { + // 批量生成调解申请书 + MsCaseApplicationReq req = new MsCaseApplicationReq(); + req.setCaseFlowId(caseFlow.getId()); + if(!caseApplication.isImportFlag()) { + req.setId(caseApplication.getId()); + }else { + // 压缩包导入 + req.setBatchNumber(caseApplication.getBatchNumber()); + } + req.setTemplateId(String.valueOf(templateManage.getId())); + generateApplication(req); + + } } // 保存案件附件 @@ -285,6 +288,33 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { return 0; } + /** + * 查询案件流程 + * @return + */ + + private List selectCaseFlows() { + + // 根据用户查询角色 + LoginUser loginUser = SecurityUtils.getLoginUser(); + List roles = loginUser.getUser().getRoles(); + if (CollectionUtil.isEmpty(roles)) { + throw new ServiceException("该用户未指定角色"); + } + // 根据角色查询关联的案件状态 + Example example = new Example(MsCaseFlowRoleRelated.class); + example.createCriteria().andIn("roleid", roles.stream().map(SysRole::getRoleId).collect(Collectors.toList())); + List caseFlowRoleRelatedList = caseFlowRoleRelatedMapper.selectByExample(example); + if (CollectionUtil.isEmpty(caseFlowRoleRelatedList)) { + throw new ServiceException("该角色为绑定案件流程"); + } + Example flowExample = new Example(MsCaseFlow.class); + flowExample.setOrderByClause("sort asc"); + flowExample.createCriteria().andIn("id", caseFlowRoleRelatedList.stream().map(MsCaseFlowRoleRelated::getFlowId).collect(Collectors.toList())); + List caseFlows = caseFlowMapper.selectByExample(flowExample); + return caseFlows; + } + /** * 计算仲裁费用 * @@ -471,6 +501,21 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { } if(caseCount>0) { + +// // 查询调解申请书模板id +// TemplateManage templateManage=templateManageMapper.selectByType(2); +// if(templateManage!=null) { +// List caseFlows = selectCaseFlows(); +// // 批量生成调解申请书 +// MsCaseApplicationReq req = new MsCaseApplicationReq(); +// if (CollectionUtil.isNotEmpty(caseFlows)) { +// MsCaseFlow caseFlow = caseFlows.get(0); +// req.setCaseFlowId(caseFlow.getId()); +// req.setBatchNumber(batchNumber); +// req.setTemplateId(String.valueOf(templateManage.getId())); +// generateApplication(req); +// } +// } return AjaxResult.success(); }else { return AjaxResult.error("请检查压缩包!"); @@ -1109,9 +1154,9 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { // todo String saveFolderPath = RuoYiConfig.getUploadPath()+"/"+ year + "/" + month + "/" + day; Integer annexType = AnnexTypeEnum.MEDIATION_APPLICATION.getCode(); - String orgFileName = "调解申请书"; + String orgFileName = "调解申请书.docx"; if(templateType!=null&&templateType==1) { - orgFileName = "调解书"; + orgFileName = "调解书.docx"; annexType=AnnexTypeEnum.MEDIATE_BOOK.getCode(); } String fileName = UUID.randomUUID().toString().replace("-", "")+orgFileName + ".docx"; diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/template/TemplateManageMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/template/TemplateManageMapper.xml index ca1e7bc..481f0c1 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/template/TemplateManageMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/template/TemplateManageMapper.xml @@ -85,4 +85,8 @@ + + \ No newline at end of file -- 2.54.0