This commit is contained in:
hejinbo
2023-11-28 15:35:40 +08:00
9 changed files with 100 additions and 75 deletions
@@ -439,5 +439,16 @@ public class CaseApplicationController extends BaseController {
return caseApplicationService.uploadCaseZipFile(file); return caseApplicationService.uploadCaseZipFile(file);
} }
/**
* 根据附件id修改案件id
* @param caseAttach
* @return
*/
@PostMapping("/updateCaseIdByAnnexId")
public AjaxResult updateCaseIdByAnnexId(@RequestBody CaseAttach caseAttach) {
if(caseAttach.getAnnexId()==null || caseAttach.getCaseAppliId()==null){
return error("参数校验失败");
}
return caseApplicationService.updateCaseIdByAnnexId(caseAttach);
}
} }
@@ -101,17 +101,14 @@ public class CaseEvidenceController extends BaseController {
/** /**
* 查询当前用户案件列表 * 查询当前用户案件列表
* *
* @param identityNum * @param caseStatus
* @return * @return
*/ */
@GetMapping("/all") @GetMapping("/all")
public TableDataInfo getCaseListAll(@RequestParam(required = false) String identityNum) { public AjaxResult getCaseListAll(@RequestParam("caseStatus") Integer caseStatus) {
startPage();
List<CaseEvidenceVO> list = caseEvidenceService.getCaseListAll(identityNum); return success(caseEvidenceService.getCaseListAll(caseStatus));
if (list != null) {
return getDataTable(list);
}
return getDataTable(new ArrayList<>());
} }
/** /**
@@ -1,8 +1,11 @@
package com.ruoyi.wisdomarbitrate.domain.vo; package com.ruoyi.wisdomarbitrate.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
public class CaseEvidenceVO { public class CaseEvidenceVO {
/** /**
@@ -25,4 +28,13 @@ public class CaseEvidenceVO {
* 案件状态 * 案件状态
*/ */
private Integer caseStatus; private Integer caseStatus;
/**
* 房间号
*/
private Long roomId;
/**
* 开庭时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date scheduleStartTime;
} }
@@ -114,4 +114,10 @@ public interface ICaseApplicationService {
AjaxResult uploadCaseZipFile(MultipartFile file); AjaxResult uploadCaseZipFile(MultipartFile file);
/**
* 根据附件id修改案件id
* @param caseAttach
* @return
*/
AjaxResult updateCaseIdByAnnexId(CaseAttach caseAttach);
} }
@@ -17,7 +17,7 @@ public interface ICaseEvidenceService {
AjaxResult uploadEvidence(MultipartFile file, Integer annexType, Long id,String userName,Long userId); AjaxResult uploadEvidence(MultipartFile file, Integer annexType, Long id,String userName,Long userId);
List<CaseEvidenceVO> getCaseListAll(String identityNum); List<CaseEvidenceVO> getCaseListAll(Integer caseStatus);
AjaxResult evidenceConfirmation(CaseApplication caseApplication); AjaxResult evidenceConfirmation(CaseApplication caseApplication);
@@ -184,7 +184,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
|| "部门长".equals(role.getRoleName())) { || "部门长".equals(role.getRoleName())) {
List<Integer> caseStatusList = new ArrayList<>(); List<Integer> caseStatusList = new ArrayList<>();
caseStatusList.add(CaseApplicationConstants.CONFIRMDED_PENDING_TRIAL); caseStatusList.add(CaseApplicationConstants.CONFIRMDED_PENDING_TRIAL);
caseStatusList.add(CaseApplicationConstants.ARBITRATED_SEAL); // caseStatusList.add(CaseApplicationConstants.ARBITRATED_SEAL);
caseApplication.setDeptHeadStatus(caseStatusList); caseApplication.setDeptHeadStatus(caseStatusList);
caseApplication.setIsOtherRole(1); caseApplication.setIsOtherRole(1);
} }
@@ -260,7 +260,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
|| "部门长".equals(role.getRoleName())) { || "部门长".equals(role.getRoleName())) {
caseApplication.setIsOtherRole(1); caseApplication.setIsOtherRole(1);
caseStatusList.add(CaseApplicationConstants.CONFIRMDED_PENDING_TRIAL); caseStatusList.add(CaseApplicationConstants.CONFIRMDED_PENDING_TRIAL);
caseStatusList.add(CaseApplicationConstants.ARBITRATED_SEAL); // caseStatusList.add(CaseApplicationConstants.ARBITRATED_SEAL);
caseApplication.setDeptHeadStatus(caseStatusList); caseApplication.setDeptHeadStatus(caseStatusList);
} }
if ("仲裁员".equals(role.getRoleName())) { if ("仲裁员".equals(role.getRoleName())) {
@@ -279,7 +279,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
caseApplication.setDeptIds(deptIds); caseApplication.setDeptIds(deptIds);
} }
if ("申请人".equals(role.getRoleName())) { if ("申请人".equals(role.getRoleName())) {
// caseApplication.setIsOtherRole(1); caseApplication.setIsOtherRole(1);
// 查询角色有关的用户部门 // 查询角色有关的用户部门
caseApplication.setApplicationOrganId(String.valueOf(sysUser.getDeptId())); caseApplication.setApplicationOrganId(String.valueOf(sysUser.getDeptId()));
} }
@@ -2127,14 +2127,11 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
caseApplication.setId(messageVO.getId()); caseApplication.setId(messageVO.getId());
CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication); CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
String returnResult = "短信发送成功"; String returnResult = "短信发送成功";
//todo 需要申请模板,申请人,被申请人发送短信通知 // 需要申请模板,申请人,被申请人发送短信通知
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest(); SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
String startFormat = ""; String startFormat = "";
String endFormat = ""; String endFormat = "";
// 创建房间短信通知 // 创建房间短信通知
if (messageVO.getScheduleStartTime() == null) {
request.setTemplateId("1983692");
} else {
String format = "yyyy/MM/dd HH:mm:ss"; // 目标格式 String format = "yyyy/MM/dd HH:mm:ss"; // 目标格式
Date startDate = messageVO.getScheduleStartTime(); Date startDate = messageVO.getScheduleStartTime();
Date endDate = messageVO.getScheduleEndTime(); Date endDate = messageVO.getScheduleEndTime();
@@ -2143,20 +2140,15 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
endFormat = sdf.format(endDate); endFormat = sdf.format(endDate);
// 预约会议短信模板 // 预约会议短信模板
request.setTemplateId("1983711"); request.setTemplateId("1983711");
}
for (CaseAffiliate caseAffiliate : caseAffiliates) { for (CaseAffiliate caseAffiliate : caseAffiliates) {
request.setPhone(caseAffiliate.getContactTelphone()); request.setPhone(caseAffiliate.getContactTelphone());
request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo() + caseAffiliate.getUserId()}); request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo() + caseAffiliate.getUserId()});
// 1952136 普通短信 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请在浏览器打开https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 请知晓,如非本人操作,请忽略本短信。
String userId = (null == caseAffiliate.getUserId() ? "" : caseAffiliate.getUserId()); String userId = (null == caseAffiliate.getUserId() ? "" : caseAffiliate.getUserId());
if (messageVO.getScheduleStartTime() == null) { // 1983711 开庭审理预约会议短信通知 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},会议时间为{4},请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。
// 1983692 开庭审理创建会议通知 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。 request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo() , startFormat + "-" + endFormat});
request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo() + userId});
} else {
// 1983711 开庭审理预约会议短信通知 尊敬的{1}用户,您的{2}仲裁案件,开庭审理房间号为{3},会议时间为{4},请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。
request.setTemplateParamSet(new String[]{caseAffiliate.getName(), caseApplicationselect.getCaseNum(), messageVO.getRoomNo() + userId, startFormat + "-" + endFormat});
}
Boolean aBoolean = SmsUtils.sendSms(request); Boolean aBoolean = SmsUtils.sendSms(request);
//保存短信发送记录 //保存短信发送记录
SmsSendRecord smsSendRecord = new SmsSendRecord(); SmsSendRecord smsSendRecord = new SmsSendRecord();
@@ -2164,13 +2156,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum()); smsSendRecord.setCaseNum(caseApplicationselect.getCaseNum());
smsSendRecord.setPhone(request.getPhone()); smsSendRecord.setPhone(request.getPhone());
smsSendRecord.setSendTime(new Date()); smsSendRecord.setSendTime(new Date());
String content = ""; String content = "尊敬的" + caseAffiliate.getName() + "用户,您的" + caseApplicationselect.getCaseNum() + "仲裁案件,开庭审理房间号为" + messageVO.getRoomNo() + "会议时间为" + startFormat + "-" + endFormat + ",请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。";
if (messageVO.getScheduleStartTime() == null) {
content = "尊敬的" + caseAffiliate.getName() + "用户,您的" + caseApplicationselect.getCaseNum() + "仲裁案件,开庭审理房间号为" + messageVO.getRoomNo() + userId + ",请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。";
} else {
content = "尊敬的" + caseAffiliate.getName() + "用户,您的" + caseApplicationselect.getCaseNum() + "仲裁案件,开庭审理房间号为" + messageVO.getRoomNo() + userId + "会议时间为" + startFormat + "-" + endFormat + ",请点击https://txroom.xayunmei.com/#/home, 请知晓,如非本人操作,请忽略本短信。";
}
smsSendRecord.setSendContent(content); smsSendRecord.setSendContent(content);
String userName; String userName;
@@ -2972,6 +2958,17 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
return null; return null;
} }
/**
* 根据附件id修改案件id
* @param caseAttach
* @return
*/
@Override
public AjaxResult updateCaseIdByAnnexId(CaseAttach caseAttach) {
caseAttachMapper.updateCaseAttach(caseAttach);
return success();
}
public static List<String> findAndConvertPDF(File directory) { public static List<String> findAndConvertPDF(File directory) {
List<String> pdfPaths = new ArrayList<>(); List<String> pdfPaths = new ArrayList<>();
if (directory.isFile()) { if (directory.isFile()) {
@@ -147,10 +147,10 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
IdentityAuthenticationMapper identityAuthenticationMapper; IdentityAuthenticationMapper identityAuthenticationMapper;
@Override @Override
public List<CaseEvidenceVO> getCaseListAll(String identityNum) { public List<CaseEvidenceVO> getCaseListAll(Integer caseStatus) {
// 是否为超级管理员 // 是否为超级管理员
int adMinFlag=0; int adMinFlag=0;
if (StringUtils.isBlank(identityNum)) { String identityNum = "";
IdentityAuthentication authentication = new IdentityAuthentication(); IdentityAuthentication authentication = new IdentityAuthentication();
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
// 查询该用户的角色 // 查询该用户的角色
@@ -175,8 +175,8 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
identityNum = authentication1.getIdentityNo(); identityNum = authentication1.getIdentityNo();
} }
} }
}
List<Integer> caseStatusList = Arrays.asList(CaseApplicationConstants.CASE_CROSSEXAMI); List<Integer> caseStatusList = Arrays.asList(caseStatus);
return getCaseEvidenceVOList(identityNum, caseStatusList, 2); return getCaseEvidenceVOList(identityNum, caseStatusList, 2);
} }
@@ -430,6 +430,7 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
private List<CaseEvidenceVO> getCaseEvidenceVOList(String identityNum, List<Integer> caseStatusList, Integer identityType) { private List<CaseEvidenceVO> getCaseEvidenceVOList(String identityNum, List<Integer> caseStatusList, Integer identityType) {
List<CaseEvidenceVO> caseListByRespondent = caseEvidenceMapper.getCaseListByRespondent(identityNum, caseStatusList, identityType); List<CaseEvidenceVO> caseListByRespondent = caseEvidenceMapper.getCaseListByRespondent(identityNum, caseStatusList, identityType);
// todo 返回房间号和开庭时间
if (caseListByRespondent != null && caseListByRespondent.size() > 0) { if (caseListByRespondent != null && caseListByRespondent.size() > 0) {
for (CaseEvidenceVO caseEvidenceVO : caseListByRespondent) { for (CaseEvidenceVO caseEvidenceVO : caseListByRespondent) {
//根据案件id查询姓名 //根据案件id查询姓名
@@ -305,7 +305,7 @@
WHERE case_appli_id = c.id WHERE case_appli_id = c.id
) )
WHERE WHERE
ca.identity_type=1 and c.case_status in (1,5,11,15,16,17,31) ca.identity_type=1 and c.case_status in (1,5,11,14,15,16,17,31)
<if test="caseStatusList != null and caseStatusList.size() > 0"> <if test="caseStatusList != null and caseStatusList.size() > 0">
and c.case_status in and c.case_status in
<foreach item="caseStatus" collection="caseStatusList" open="(" separator="," close=")"> <foreach item="caseStatus" collection="caseStatusList" open="(" separator="," close=")">
@@ -676,13 +676,11 @@
<!-- </foreach> )--> <!-- </foreach> )-->
<!-- </if>--> <!-- </if>-->
<!--申请人--> <!--申请人-->
<!-- <if test="applicationOrganId != null and applicationOrganId != ''">--> <if test="applicationOrganId != null and applicationOrganId != ''">
<!-- or ( t.application_organ_id = #{applicationOrganId} AND t.identity_type=1--> or ( t.application_organ_id = #{applicationOrganId} AND t.identity_type=1
<!-- &lt;!&ndash;暂时改为可以查询到生成裁决书之前所有的案件状态&ndash;&gt;--> and t.case_status in (0,2,17))
<!-- and (t.case_status &lt;= 10 or t.case_status=31))-->
<!-- &lt;!&ndash; and t.case_status in (0,2,17))&ndash;&gt;-->
<!-- </if>--> </if>
<!--部门长--> <!--部门长-->
<if test="deptHeadStatus != null and deptHeadStatus.size() > 0"> <if test="deptHeadStatus != null and deptHeadStatus.size() > 0">
or (t.identity_type=1 and t.case_status in or (t.identity_type=1 and t.case_status in
@@ -708,37 +706,37 @@
</where> </where>
union union
</if> </if>
<if test="applicationOrganId != null and applicationOrganId != ''"> <!-- <if test="applicationOrganId != null and applicationOrganId != ''">-->
<!--申请人案件--> <!-- &lt;!&ndash;申请人案件&ndash;&gt;-->
select l.case_appli_id id , <!-- select l.case_appli_id id ,-->
c.case_status,ca.application_organ_id, <!-- c.case_status,ca.application_organ_id,-->
c.arbitrator_id,ca.identity_num , ca.identity_type <!-- c.arbitrator_id,ca.identity_num , ca.identity_type-->
from case_application c <!-- from case_application c-->
JOIN case_application_log l ON c.id = l.case_appli_id <!-- JOIN case_application_log l ON c.id = l.case_appli_id-->
JOIN case_affiliate_log ca ON ca.case_appli_log_id = l.id AND ca.identity_type = 1 and c.version=l.version <!-- JOIN case_affiliate_log ca ON ca.case_appli_log_id = l.id AND ca.identity_type = 1 and c.version=l.version-->
<where> <!-- <where>-->
(c.case_status &lt;= 10 or c.case_status=31) AND ca.identity_type=1 <!-- (c.case_status &lt;= 10 or c.case_status=31) AND ca.identity_type=1-->
<if test="applicationOrganId != null and applicationOrganId != ''"> <!-- <if test="applicationOrganId != null and applicationOrganId != ''">-->
AND ca.application_organ_id = #{applicationOrganId} <!-- AND ca.application_organ_id = #{applicationOrganId}-->
</if> <!-- </if>-->
<if test="caseStatus != null"> <!-- <if test="caseStatus != null">-->
AND c.case_status = #{caseStatus} <!-- AND c.case_status = #{caseStatus}-->
</if> <!-- </if>-->
<if test="caseNum != null and caseNum != ''"> <!-- <if test="caseNum != null and caseNum != ''">-->
AND c.case_num = #{caseNum} <!-- AND c.case_num = #{caseNum}-->
</if> <!-- </if>-->
<if test="nameId != null and nameId != ''"> <!-- <if test="nameId != null and nameId != ''">-->
AND ca.application_organ_id=#{nameId} <!-- AND ca.application_organ_id=#{nameId}-->
</if> <!-- </if>-->
<if test="lockStatus != null"> <!-- <if test="lockStatus != null">-->
AND c.lock_status = #{lockStatus} <!-- AND c.lock_status = #{lockStatus}-->
</if> <!-- </if>-->
</where> <!-- </where>-->
union <!-- union-->
</if> <!-- </if>-->
<!--秘书案件--> <!--秘书案件-->
<if test="deptIds != null and deptIds.size() > 0"> <if test="deptIds != null and deptIds.size() > 0">
@@ -757,7 +755,7 @@
WHERE case_appli_id = c.id WHERE case_appli_id = c.id
) )
WHERE WHERE
ca.identity_type=1 and c.case_status in (1,5,11,15,16,17,31) ca.identity_type=1 and c.case_status in (1,5,11,14,15,16,17,31)
<if test="deptIds != null and deptIds.size() > 0"> <if test="deptIds != null and deptIds.size() > 0">
and ca.application_organ_id in and ca.application_organ_id in
<foreach item="item" collection="deptIds" open="(" separator="," close=")"> <foreach item="item" collection="deptIds" open="(" separator="," close=")">
@@ -7,10 +7,13 @@
<id property="id" column="id" /> <id property="id" column="id" />
<result property="caseNum" column="case_num" /> <result property="caseNum" column="case_num" />
<result property="caseStatus" column="case_status" /> <result property="caseStatus" column="case_status" />
<result property="roomId" column="room_id" />
<result property="scheduleStartTime" column="schedule_start_time" />
</resultMap> </resultMap>
<select id="getCaseListByRespondent" resultType="CaseEvidenceVO" resultMap="CaseEvidenceVOResult"> <select id="getCaseListByRespondent" resultType="CaseEvidenceVO" resultMap="CaseEvidenceVOResult">
select DISTINCT(c.id) id, c.case_num,c.case_status select DISTINCT(c.id) id, c.case_num,c.case_status,rc.room_id,rc.schedule_start_time
from case_application as c ,case_affiliate as d from case_application as c join case_affiliate as d on c.id = d.case_appli_id
left join reserved_conference rc on rc.case_id=c.id
where c.id = d.case_appli_id where c.id = d.case_appli_id
<if test="identityNum != null and identityNum != ''"> <if test="identityNum != null and identityNum != ''">
and d.identity_num = #{identityNum} and d.identity_num = #{identityNum}