From 0cef2791d6fd2faa979c7fa1d66374563e3bbf3d Mon Sep 17 00:00:00 2001 From: 18792927508 <1322446236@qq.com> Date: Thu, 23 Nov 2023 20:39:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A1=88=E4=BB=B6=E8=AE=B0=E5=BD=95=E9=99=84?= =?UTF-8?q?=E4=BB=B6=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wisdomarbitrate/domain/CaseAttach.java | 4 + .../mapper/CaseAffiliateMapper.java | 6 ++ .../mapper/CaseAttachLogMapper.java | 30 ++++++ .../mapper/CaseAttachMapper.java | 7 ++ .../impl/CaseApplicationLogServiceImpl.java | 42 +++++++- .../impl/CaseApplicationServiceImpl.java | 24 ++++- .../wisdomarbitrate/CaseAffiliateMapper.xml | 3 + .../wisdomarbitrate/CaseAttachLogMapper.xml | 101 ++++++++++++++++++ .../wisdomarbitrate/CaseAttachMapper.xml | 5 + 9 files changed, 215 insertions(+), 7 deletions(-) create mode 100644 ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachLogMapper.java create mode 100644 ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachLogMapper.xml diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAttach.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAttach.java index c7d7541..9911399 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAttach.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseAttach.java @@ -18,6 +18,10 @@ public class CaseAttach { * 案件申请id */ private Long caseAppliId; + /** + * 案件记录id + */ + private Long caseAppliLogId; /** * 附件名称 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAffiliateMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAffiliateMapper.java index 28b9fd8..d934a3c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAffiliateMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAffiliateMapper.java @@ -35,4 +35,10 @@ public interface CaseAffiliateMapper { * @param affiliateLogList */ void updateCaseAffiliateByCaseId(@Param("caseAppliId")Long caseAppliId,@Param("list") List affiliateLogList); + + /** + * 根据案件id删除 + * @param caseId + */ + void deleteByCaseId(@Param("caseAppliId") Long caseId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachLogMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachLogMapper.java new file mode 100644 index 0000000..9ea2b54 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachLogMapper.java @@ -0,0 +1,30 @@ +package com.ruoyi.wisdomarbitrate.mapper; + +import com.ruoyi.wisdomarbitrate.domain.CaseApplication; +import com.ruoyi.wisdomarbitrate.domain.CaseAttach; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface CaseAttachLogMapper { + int save(CaseAttach caseAttach); + + List queryAnnexPathByCaseId(Long id); + + List queryCaseAttachList(CaseApplication caseApplication); + + + int updateCaseAttach(CaseAttach caseAttach); + + int updateCaseAttachBycaseid(CaseAttach caseAttach); + + int deleteByFileIds(@Param("ids") List fileIds); + + List getCaseAttachByCaseIdAndType(CaseAttach caseAttach); + + CaseAttach queryAnnexById(Integer annexId); + + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachMapper.java index f15d694..872f6db 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachMapper.java @@ -25,4 +25,11 @@ public interface CaseAttachMapper { List getCaseAttachByCaseIdAndType(CaseAttach caseAttach); CaseAttach queryAnnexById(Integer annexId); + + /** + * 根据案件id和附件类型删除 + * @param caseAppliId + * @param annexType + */ + void deleteByCasedIdAndType(@Param("caseAppliId")Long caseAppliId,@Param("annexType") int annexType); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationLogServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationLogServiceImpl.java index e94045b..fbf2cf8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationLogServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationLogServiceImpl.java @@ -9,6 +9,7 @@ import com.ruoyi.common.utils.ObjectFieldUtils; import com.ruoyi.common.utils.SmsUtils; import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate; import com.ruoyi.wisdomarbitrate.domain.CaseApplication; +import com.ruoyi.wisdomarbitrate.domain.CaseAttach; import com.ruoyi.wisdomarbitrate.domain.SmsSendRecord; import com.ruoyi.wisdomarbitrate.domain.vo.CompareCaseVO; import com.ruoyi.wisdomarbitrate.domain.vo.UpdateSubmitVO; @@ -42,6 +43,10 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService @Autowired private CaseAffiliateMapper caseAffiliateMapper; @Autowired + private CaseAttachMapper caseAttachMapper; + @Autowired + private CaseAttachLogMapper caseAttachLogMapper; + @Autowired private SmsRecordMapper smsRecordMapper; @Override public int insert(CaseApplication caseApplicationLog) { @@ -123,8 +128,24 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService // 更新相关人员主表 if(CollectionUtil.isNotEmpty(affiliateLogList)){ + caseAffiliateMapper.deleteByCaseId(vo.getCaseId()); for (CaseAffiliate caseAffiliate : affiliateLogList) { - caseAffiliateMapper.updataCaseAffiliate(caseAffiliate); + caseAffiliate.setCaseAppliId(vo.getCaseId()); + + } + caseAffiliateMapper.batchCaseAffiliate(affiliateLogList); + } + // // 根据caseLogId查询案件记录附件表 + CaseApplication caseApplication = new CaseApplication(); + caseApplication.setCaseLogId(caseApplicationLog.getCaseLogId()); + caseApplication.setAnnexType(2); + List attachLogList = caseAttachLogMapper.queryCaseAttachList(caseApplication); + // 更新记录附件表 + if(CollectionUtil.isNotEmpty(attachLogList)){ + caseAttachMapper.deleteByCasedIdAndType(vo.getCaseId(), 2); + for (CaseAttach caseAttach : attachLogList) { + caseAttach.setCaseAppliId(vo.getCaseId()); + caseAttachMapper.save(caseAttach); } } // caseAffiliateMapper.updateCaseAffiliateByCaseId(caseApplicationLog.getCaseAppliId(), affiliateLogList); @@ -330,13 +351,30 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService // 根据caseLogId查询相关人员表 List affiliateLogList = caseAffiliateLogMapper.selectCaseAffiliate(caseApplicationLog.getCaseLogId()); + // 更新案件主表 caseApplicationMapper.updataCaseApplication(caseApplicationLog); // 更新相关人员主表 if(CollectionUtil.isNotEmpty(affiliateLogList)){ + caseAffiliateMapper.deleteByCaseId(vo.getCaseId()); for (CaseAffiliate caseAffiliate : affiliateLogList) { - caseAffiliateMapper.updataCaseAffiliate(caseAffiliate); + caseAffiliate.setCaseAppliId(vo.getCaseId()); + + } + caseAffiliateMapper.batchCaseAffiliate(affiliateLogList); + } + // // 根据caseLogId查询案件记录附件表 + CaseApplication caseApplication = new CaseApplication(); + caseApplication.setCaseLogId(caseApplicationLog.getCaseLogId()); + caseApplication.setAnnexType(2); + List attachLogList = caseAttachLogMapper.queryCaseAttachList(caseApplication); + // 更新记录附件表 + if(CollectionUtil.isNotEmpty(attachLogList)){ + caseAttachMapper.deleteByCasedIdAndType(vo.getCaseId(), 2); + for (CaseAttach caseAttach : attachLogList) { + caseAttach.setCaseAppliId(vo.getCaseId()); + caseAttachMapper.save(caseAttach); } } // caseAffiliateMapper.updateCaseAffiliateByCaseId(caseApplicationLog.getCaseAppliId(), affiliateLogList); 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 03f8bfd..f47b6d1 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 @@ -116,6 +116,8 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { private CaseApplicationLogMapper caseApplicationLogMapper; @Autowired private CaseAffiliateLogMapper caseAffiliateLogMapper; + @Autowired + private CaseAttachLogMapper caseAttachLogMapper; // 手机号正则 private static final Pattern TELEPHONE_REGX = Pattern.compile("^1(3\\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\\d|9[0-35-9])\\d{8}$"); @@ -1072,7 +1074,9 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { } List caseAttachList = caseApplication.getCaseAttachList(); - if (caseAttachList != null && caseAttachList.size() > 0) { + // 立案申请状态直接修改主表信息 + if (caseAttachList != null && caseAttachList.size() > 0 + && caseApplication.getCaseStatus()!=null && caseApplication.getCaseStatus().equals(CaseApplicationConstants.CASE_APPLICATION)) { for (CaseAttach caseAttach : caseAttachList) { caseAttach.setCaseAppliId(caseApplication.getId()); caseAttachMapper.updateCaseAttach(caseAttach); @@ -1094,10 +1098,20 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService { ThreadPoolUtil.execute(() -> { caseApplication.setCaseAppliId(caseApplication.getId()); int insertRow = caseApplicationLogMapper.insert(caseApplication); - if (insertRow != 0 && CollectionUtil.isNotEmpty(caseAffiliates)) { - caseAffiliates.forEach(caseAffiliate -> caseAffiliate.setCaseAppliLogId(caseApplication.getId())); - // 插入案件日志人员相关表 - caseAffiliateLogMapper.batchCaseAffiliate(caseAffiliates); + if (insertRow != 0 ) { + if( CollectionUtil.isNotEmpty(caseAffiliates)) { + caseAffiliates.forEach(caseAffiliate -> caseAffiliate.setCaseAppliLogId(caseApplication.getId())); + // 插入案件日志人员相关表 + caseAffiliateLogMapper.batchCaseAffiliate(caseAffiliates); + } + if(CollectionUtil.isNotEmpty(caseAttachList)) { + // 插入日志附件表 + for (CaseAttach caseAttach : caseAttachList) { + caseAttach.setCaseAppliLogId(caseApplication.getId()); + caseAttachLogMapper.updateCaseAttach(caseAttach); + } + + } } }); diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml index 13e463a..6bed4f0 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAffiliateMapper.xml @@ -150,6 +150,9 @@ #{item} + + delete from case_affiliate where case_appli_id = #{caseAppliId} + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachLogMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachLogMapper.xml new file mode 100644 index 0000000..668977f --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachLogMapper.xml @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + INSERT INTO case_attach_log (case_appli_log_id, annex_name, annex_path , annex_type,note,use_id,use_account,seal_status) + VALUES (#{caseAppliLogId}, #{annexName}, #{annexPath},#{annexType},#{note},#{userId},#{userName},#{sealStatus}) + + + delete from case_attach_log + where annex_id in + + #{id} + + + + + + + + + + + + update case_attach_log + set + case_appli_log_id= #{caseAppliLogId} + where annex_id = #{annexId} + + + + update case_attach_log + + annex_name = #{annexName}, + annex_path = #{annexPath} + + + + AND case_appli_log_id = #{caseAppliLogId} + + + AND annex_type = #{annexType} + + + + + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachMapper.xml b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachMapper.xml index 6901b84..631a11e 100644 --- a/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachMapper.xml @@ -25,6 +25,11 @@ #{id} + + delete from case_attach + where case_appli_id = #{caseAppliId} + and annex_type = #{annexType} +