From 62878cb969eb0df163944b2fe227dc43efae7ef3 Mon Sep 17 00:00:00 2001 From: 18792927508 <1322446236@qq.com> Date: Mon, 9 Oct 2023 14:38:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=A1=88=E4=BB=B6=E6=88=96?= =?UTF-8?q?=E8=80=85=E6=89=B9=E9=87=8F=E5=AF=BC=E5=85=A5=E6=97=B6=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E7=94=9F=E6=88=90=E6=A1=88=E4=BB=B6=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/CaseApplication.java | 2 +- .../mapper/CaseApplicationMapper.java | 9 +++ .../impl/CaseApplicationServiceImpl.java | 61 ++++++++++--------- .../wisdomarbitrate/CaseApplicationMapper.xml | 7 ++- 4 files changed, 47 insertions(+), 32 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseApplication.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseApplication.java index b6af0ff..e54db68 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseApplication.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseApplication.java @@ -13,7 +13,7 @@ public class CaseApplication extends BaseEntity { /** ID */ private Long id; /** 案件编号 */ - @Excel(name = "案件编号") +// @Excel(name = "案件编号") private String caseNum; /** 案件标的 */ @Excel(name = "案件标的") diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseApplicationMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseApplicationMapper.java index 6b22045..7e9e4e1 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseApplicationMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseApplicationMapper.java @@ -2,6 +2,7 @@ package com.ruoyi.wisdomarbitrate.mapper; import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate; import com.ruoyi.wisdomarbitrate.domain.CaseApplication; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -22,4 +23,12 @@ public interface CaseApplicationMapper { CaseApplication selectCaseApplication(CaseApplication caseApplication); CaseApplication selectCaseApplicationConfirm(CaseApplication caseApplication); + + /** + * 查询最大编号 + * @param caseNum + * @param length + * @return + */ + Integer selectCaseNumLike(@Param("caseNum") String caseNum, @Param("length") int length); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java index 39b0328..dbac33a 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.wisdomarbitrate.service.impl; + import com.ruoyi.common.constant.CaseApplicationConstants; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DateUtils; @@ -12,16 +13,11 @@ import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; - -import java.lang.reflect.Field; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; -import static com.ruoyi.common.core.domain.AjaxResult.error; -import static java.util.stream.Collectors.collectingAndThen; -import static java.util.stream.Collectors.toCollection; @Service public class CaseApplicationServiceImpl implements ICaseApplicationService { @@ -58,7 +54,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { BigDecimal feeRate = new BigDecimal(0.01); BigDecimal feePayable = caseApplication.getCaseSubjectAmount().multiply(feeRate).setScale(2,BigDecimal.ROUND_HALF_UP); caseApplication.setFeePayable(feePayable); - + // 获取自动编码 String caseNum = generateCaseNum(); caseApplication.setCaseNum(caseNum); @@ -83,15 +79,21 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { return rows; } + /** + * 获取自动编码 + * @return + */ + private String generateCaseNum() { - String currentday = DateUtils.dateTime(); - String caseNum = "zc"+ currentday; - //查询出当天的案件编号的最大值 ,如等于1 - Integer caseNumMax = 1; - if(caseNumMax!=null){ - //根据查询到的caseNumMax拼接一个案件编号 + // 自动编码格式 zc+yyyyMMdd+001 + String currentDay = DateUtils.dateTime(); + String caseNum = "zc"+ currentDay; + //查询出当天的案件编号的最大值 + Integer maxCaseNum = caseApplicationMapper.selectCaseNumLike(caseNum,caseNum.length()); + if(null == maxCaseNum){ + caseNum = caseNum + "001"; }else { - caseNum += "001"; + caseNum = caseNum + String.format("%03d", maxCaseNum); } return caseNum; @@ -224,28 +226,29 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { List caseAffiliatesnew = new ArrayList<>(); assignmentCaseAffiliates(caseApplication,caseAffiliatesnew); - int caseApplicationCount = selectCaseApplicationCount(caseApplication); - if(caseApplicationCount>0){ - failureNum++; - failureMsg.append("
" + failureNum + "、立案编号 " + caseApplication.getCaseNum() + " 已存在"); - }else { - caseApplicationListinsert.add(caseApplication); - } +// int caseApplicationCount = selectCaseApplicationCount(caseApplication); +// if(caseApplicationCount>0){ +// failureNum++; +// failureMsg.append("
" + failureNum + "、立案编号 " + caseApplication.getCaseNum() + " 已存在"); +// }else { +// caseApplicationListinsert.add(caseApplication); +// } + caseApplicationListinsert.add(caseApplication); } if(caseApplicationListinsert!=null&&caseApplicationListinsert.size()>0){ - List caseApplicationListinsertDiffer = caseApplicationListinsert.stream().collect( - collectingAndThen( - toCollection(() -> new TreeSet<>(Comparator.comparing(CaseApplication::getCaseNum))), - ArrayList::new)); +// List caseApplicationListinsertDiffer = caseApplicationListinsert.stream().collect( +// collectingAndThen( +// toCollection(() -> new TreeSet<>(Comparator.comparing(CaseApplication::getCaseNum))), +// ArrayList::new)); //对不重复的立案对象集合的立案对象重新组装对应的案件关联人信息 - if(caseApplicationListinsertDiffer!=null&&caseApplicationListinsertDiffer.size()>0){ +// if(caseApplicationListinsertDiffer!=null&&caseApplicationListinsertDiffer.size()>0){ List caseApplicationNewList = null; - for (int i = 0; i < caseApplicationListinsertDiffer.size(); i++){ + for (int i = 0; i < caseApplicationListinsert.size(); i++){ caseApplicationNewList = new ArrayList<>(); - CaseApplication caseApplicationinsertDiffer = caseApplicationListinsertDiffer.get(i); + CaseApplication caseApplicationinsertDiffer = caseApplicationListinsert.get(i); List caseAffiliatesnew = new ArrayList<>(); CaseApplication caseApplicationNew = new CaseApplication(); copyCaseApplication(caseApplicationinsertDiffer,caseApplicationNew); @@ -267,6 +270,8 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { CaseApplication caseApplicationItera = caseApplicationNewList.get(k); // 新增立案信息 caseApplicationItera.setCaseStatus(CaseApplicationConstants.CASE_APPLICATION); + // 设置自动编码 + caseApplicationItera.setCaseNum(generateCaseNum()); int rows = caseApplicationMapper.insertCaseApplication(caseApplicationItera); List caseAffiliates = caseApplicationItera.getCaseAffiliates(); if(caseAffiliates!=null&&caseAffiliates.size()>0){ @@ -279,7 +284,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { successMsg.append("
" + successNum + "、立案编号 " + caseApplicationItera.getCaseNum() + " 导入成功"); } - } +// } } diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml index 3875dca..9e8a59b 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml @@ -237,9 +237,10 @@ AND c.id = #{id} - - - + \ No newline at end of file