This commit is contained in:
hejinbo
2023-09-20 16:10:29 +08:00
10 changed files with 311 additions and 21 deletions
@@ -0,0 +1,32 @@
package com.ruoyi.wisdomarbitrate.domain;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
@Data
public class ArbitrateRecord extends BaseEntity {
private static final long serialVersionUID = 1L;
/** ID */
private Long id;
/** 案件申请id */
private Long caseAppliId;
/** 证据认定 */
private String evidenDetermi;
/** 认定事实 */
private String factDetermi;
/** 综上所述 */
private String caseSketch;
/** 本庭认为 */
private String arbitrateThink;
/** 裁决如下 */
private String rulingFollows;
/** 核验裁决书意见 */
private String verificaOpinion;
/** 审核裁决书意见 */
private String checkOpinion;
}
@@ -2,6 +2,8 @@ package com.ruoyi.wisdomarbitrate.domain;
import com.ruoyi.common.core.domain.BaseEntity;
import java.util.List;
public class Arbitrator extends BaseEntity {
private static final long serialVersionUID = 1L;
@@ -22,6 +24,16 @@ public class Arbitrator extends BaseEntity {
/** 联系电话 */
private String telephone;
List<Long> idList;
public List<Long> getIdList() {
return idList;
}
public void setIdList(List<Long> idList) {
this.idList = idList;
}
public String getArbitratorName() {
return arbitratorName;
}
@@ -54,8 +54,7 @@ public class CaseApplication extends BaseEntity {
private BigDecimal claimLiquidDamag;
/** 仲裁应缴费用 */
private BigDecimal feePayable;
/** 仲裁实缴费用 */
private BigDecimal paidExpenses;
/** 开始在线视频时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date beginVideoDate;
@@ -80,6 +79,37 @@ public class CaseApplication extends BaseEntity {
private int objectionAddEviden;
/** 是否需要开庭审理 */
private int openCourtHear;
/** 案件状态名称 */
private String caseStatusName;
public String getCaseStatusName() {
return caseStatusName;
}
public void setCaseStatusName(String caseStatusName) {
this.caseStatusName = caseStatusName;
}
/** 申请人名称 */
private String applicantName;
/** 被申请人名称 */
private String respondentName;
public String getApplicantName() {
return applicantName;
}
public void setApplicantName(String applicantName) {
this.applicantName = applicantName;
}
public String getRespondentName() {
return respondentName;
}
public void setRespondentName(String respondentName) {
this.respondentName = respondentName;
}
public int getObjectionAddEviden() {
return objectionAddEviden;
@@ -169,6 +199,17 @@ public class CaseApplication extends BaseEntity {
/** 案件仲裁员 */
private List<Arbitrator> arbitrators;
/** 仲裁记录 */
private ArbitrateRecord arbitrateRecord;
public ArbitrateRecord getArbitrateRecord() {
return arbitrateRecord;
}
public void setArbitrateRecord(ArbitrateRecord arbitrateRecord) {
this.arbitrateRecord = arbitrateRecord;
}
public List<Arbitrator> getArbitrators() {
return arbitrators;
}
@@ -424,13 +465,7 @@ public class CaseApplication extends BaseEntity {
this.feePayable = feePayable;
}
public BigDecimal getPaidExpenses() {
return paidExpenses;
}
public void setPaidExpenses(BigDecimal paidExpenses) {
this.paidExpenses = paidExpenses;
}
public Date getBeginVideoDate() {
return beginVideoDate;
@@ -0,0 +1,17 @@
package com.ruoyi.wisdomarbitrate.mapper;
import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
import java.util.List;
public interface ArbitrateRecordMapper {
int insertArbitrateRecord(ArbitrateRecord arbitrateRecord);
int updataArbitrateRecord(ArbitrateRecord arbitrateRecord);
ArbitrateRecord selectArbitrateRecord(ArbitrateRecord arbitrateRecord);
}
@@ -27,4 +27,6 @@ public interface ICaseApplicationService {
int pendingAppointArbotrar(CaseApplication caseApplication);
int pendTralCheck(CaseApplication caseApplication);
int pendTralSure(CaseApplication caseApplication);
}
@@ -2,11 +2,16 @@ package com.ruoyi.wisdomarbitrate.service.impl;
import com.ruoyi.common.constant.CaseApplicationConstants;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SmsUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
import com.ruoyi.wisdomarbitrate.domain.Arbitrator;
import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
import com.ruoyi.wisdomarbitrate.mapper.ArbitrateRecordMapper;
import com.ruoyi.wisdomarbitrate.mapper.ArbitratorMapper;
import com.ruoyi.wisdomarbitrate.mapper.CaseAffiliateMapper;
import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
@@ -15,10 +20,8 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
import static com.ruoyi.common.core.domain.AjaxResult.error;
@@ -33,6 +36,11 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
@Autowired
private CaseAffiliateMapper caseAffiliateMapper;
@Autowired
private ArbitratorMapper arbitratorMapper;
@Autowired
private ArbitrateRecordMapper arbitrateRecordMapper;
@Override
public List<CaseApplication> selectCaseApplicationList(CaseApplication caseApplication) {
@@ -98,9 +106,28 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
CaseAffiliate caseAffiliate = new CaseAffiliate();
caseAffiliate.setCaseAppliId(caseApplication.getId());
ArbitrateRecord arbitrateRecord = new ArbitrateRecord();
arbitrateRecord.setCaseAppliId(caseApplication.getId());
ArbitrateRecord arbitrateRecordselect = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecord);
List<CaseAffiliate> caseAffiliatListeselect = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);
if(caseApplicationselect!=null){
if(caseAffiliatListeselect!=null){
StringBuffer applicantName = new StringBuffer();
StringBuffer respondentName = new StringBuffer();
for (int i = 0; i < caseAffiliatListeselect.size(); i++){
CaseAffiliate caseAffiliateselect = caseAffiliatListeselect.get(i);
int identityType = caseAffiliateselect.getIdentityType();
if(identityType==1){
applicantName.append(caseAffiliateselect.getName()).append(",");;
}else if(identityType==2){
respondentName.append(caseAffiliateselect.getName()).append(",");;
}
}
caseApplicationselect.setApplicantName(applicantName.toString());
caseApplicationselect.setRespondentName(respondentName.toString());
caseApplicationselect.setCaseAffiliates(caseAffiliatListeselect);
caseApplicationselect.setArbitrateRecord(arbitrateRecordselect);
}
return caseApplicationselect;
}
@@ -231,6 +258,66 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
return rows;
}
@Override
@Transactional
public int pendTralSure(CaseApplication caseApplication) {
caseApplication.setCaseStatus(CaseApplicationConstants.CHECK_ARBITRATION_METHOD);
int rows = caseApplicationMapper.submitCaseApplication(caseApplication);
//发送短信通知
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
request.setTemplateId("1931000");
CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
String caseNum = caseApplicationselect.getCaseNum();
Date hearDate = caseApplicationselect.getHearDate();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String hearDatestr = dateFormat.format(hearDate);
String arbitratorId = caseApplicationselect.getArbitratorId();
List<Arbitrator> arbitratorList = new ArrayList<>();
if(StringUtils.isNotEmpty(arbitratorId)){
String[] idStrList = arbitratorId.split(",");
List<Long> idList = new ArrayList<>();
for(int i = 0;i < idStrList.length;i ++ ){
idList.add(Long.parseLong(idStrList[i]));
}
Arbitrator arbitrator = new Arbitrator();
arbitrator.setIdList(idList);
arbitratorList = arbitratorMapper.selectArbitratorList(arbitrator);
if(arbitratorList!=null) {
for (int i = 0; i < arbitratorList.size(); i++) {
Arbitrator arbitratorselect = arbitratorList.get(i);
//给仲裁员发送短信通知
request.setPhone(arbitratorselect.getTelephone());
// 1931000 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = arbitratorselect.getArbitratorName();
request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
SmsUtils.sendSms(request);
}
}
}
CaseAffiliate caseAffiliate = new CaseAffiliate();
caseAffiliate.setCaseAppliId(caseApplication.getId());
List<CaseAffiliate> caseAffiliatListeselect = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);
if(caseAffiliatListeselect!=null) {
for (int j = 0; j < caseAffiliatListeselect.size(); j++) {
CaseAffiliate caseAffiliateselect = caseAffiliatListeselect.get(j);
int identityType = caseAffiliateselect.getIdentityType();
//给申请人、被申请人发送短信通知
request.setPhone(caseAffiliateselect.getContactTelphone());
// 1931000 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
String name = caseAffiliateselect.getName();
request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
SmsUtils.sendSms(request);
}
}
return rows;
}
@Override
@Transactional
public int pendingAppointArbotrar(CaseApplication caseApplication) {