调解书签收

This commit is contained in:
qitz
2024-01-20 15:39:13 +08:00
parent 8260767ef2
commit f3f89065a5
6 changed files with 116 additions and 2 deletions
@@ -89,6 +89,19 @@ public class MsSignSealController extends BaseController {
return msSignSealService.msCaseFile(dto.getIds());
}
/**
* 签收
* @param dto
* @return
*/
@PostMapping("/msCaseSign")
public AjaxResult msCaseSign(@RequestBody MsSignSealDTO dto){
if (dto.getCaseId() == null) {
return error("参数校验失败");
}
return msSignSealService.msCaseSign(dto);
}
@@ -2,6 +2,7 @@ package com.ruoyi.wisdomarbitrate.domain.dto.mscase;
import lombok.Data;
import javax.persistence.Column;
import java.util.List;
@Data
@@ -22,6 +23,15 @@ public class MsSignSealDTO {
private List<Long> ids;
/**
* 申请人是否签收
*/
private Integer isSignApply;
/**
* 被申请人是否签收
*/
private Integer isSignRespon;
}
@@ -127,4 +127,15 @@ public class MsCaseAffiliate {
*/
@Column(name = "respondent_track_num")
private String respondentTrackNum;
/**
* 申请人是否签收
*/
@Column(name = "is_sign_apply")
private Integer isSignApply;
/**
* 被申请人是否签收
*/
@Column(name = "is_sign_respon")
private Integer isSignRespon;
}
@@ -24,4 +24,6 @@ public interface MsSignSealService {
List<MsCaseLogRecordVO> selectCaseLogRecordList(MsSignSealDTO dto);
AjaxResult msCaseFile(List<Long> ids);
AjaxResult msCaseSign(MsSignSealDTO dto);
}
@@ -601,6 +601,41 @@ public class MsSignSealServiceImpl implements MsSignSealService {
return AjaxResult.success("归档成功");
}
@Override
@Transactional
public AjaxResult msCaseSign(MsSignSealDTO dto) {
Long caseId = dto.getCaseId();
MsCaseAffiliate caseAffiliate = msCaseAffiliateMapper.selectByPrimaryKey(caseId);
MsCaseApplication caseApplicationselect = msCaseApplicationMapper.selectByPrimaryKey(caseId);
if (dto.getIsSignApply() != null && dto.getIsSignApply().intValue() == 1) {
caseAffiliate.setIsSignApply(1);
msCaseAffiliateMapper.updateByPrimaryKeySelective(caseAffiliate);
if (caseAffiliate.getIsSignRespon() != null && caseAffiliate.getIsSignRespon().intValue() == 1) {
// 根据流程id查找下一个流程节点
MsCaseFlow nextFlow = caseFlowMapper.nextFlow(caseApplicationselect.getCaseFlowId());
caseApplicationselect.setCaseFlowId(nextFlow.getId());
caseApplicationselect.setCaseStatusName(nextFlow.getCaseStatusName());
caseApplicationMapper.updateByPrimaryKeySelective(caseApplicationselect);
CaseLogUtils.insertCaseLog(caseApplicationselect.getId(), nextFlow.getNodeId(), nextFlow.getCaseStatusName(),"签收");
}
}
if (dto.getIsSignRespon() != null && dto.getIsSignRespon().intValue() == 1) {
caseAffiliate.setIsSignRespon(1);
msCaseAffiliateMapper.updateByPrimaryKeySelective(caseAffiliate);
if (caseAffiliate.getIsSignApply() != null && caseAffiliate.getIsSignApply().intValue() == 1) {
// 根据流程id查找下一个流程节点
MsCaseFlow nextFlow = caseFlowMapper.nextFlow(caseApplicationselect.getCaseFlowId());
caseApplicationselect.setCaseFlowId(nextFlow.getId());
caseApplicationselect.setCaseStatusName(nextFlow.getCaseStatusName());
caseApplicationMapper.updateByPrimaryKeySelective(caseApplicationselect);
CaseLogUtils.insertCaseLog(caseApplicationselect.getId(), nextFlow.getNodeId(), nextFlow.getCaseStatusName(),"签收");
}
}
return AjaxResult.success("签收成功");
}
/**
* 通过邮件发送裁决书文件
*
@@ -244,7 +244,7 @@ public class FixSelectFlowDetailUtils {
/*
定时查询签署流程详情
*/
// @Scheduled(cron = "0/10 * * * * ?")
@Scheduled(cron = "0/10 * * * * ?")
@Transactional
public void fixExecuteSelectFlowDetailUtils() {
Gson gson = new Gson();
@@ -319,12 +319,55 @@ public class FixSelectFlowDetailUtils {
application.setCaseFlowId(nextFlow.getId());
application.setCaseStatusName(nextFlow.getCaseStatusName());
caseApplicationMapper.updateByPrimaryKeySelective(application);
//下载审核完成的调解书
String signFlowId = sealSignRecord.getSignFlowid();
EsignHttpResponse fileDownload = SaaSAPIFileUtils.fileDownloadUrl(signFlowId);
JsonObject fileDownloadJsonObject = gson.fromJson(fileDownload.getBody(), JsonObject.class);
JsonObject fileDownloadData = fileDownloadJsonObject.getAsJsonObject("data");
JsonArray filesArray = fileDownloadData.get("files").getAsJsonArray();
if (filesArray != null && filesArray.size() > 0) {
JsonObject fileObject = (JsonObject) filesArray.get(0);
String fileDownloadUrl = fileObject.get("downloadUrl").toString();
LocalDate now = LocalDate.now();
String year = Integer.toString(now.getYear());
String month = String.format("%02d", now.getMonthValue());
String day = String.format("%02d", now.getDayOfMonth());
String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
String fileName = UUID.randomUUID().toString().replace("-", "") + ".pdf";
String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
String savePath = "/home/ruoyi/uploadPath/upload/";
// 创建日期目录
File saveFolder = new File(saveFolderPath);
if (!saveFolder.exists()) {
saveFolder.mkdirs();
}
String resultFilePath = saveFolderPath + "/" + fileName;
File resultFilePathFile = new File(resultFilePath);
if (!resultFilePathFile.exists()) {
resultFilePathFile.createNewFile();
}
String fileDownloadUrlnew = fileDownloadUrl.substring(1, fileDownloadUrl.length() - 1);
boolean downLoadFile = FileTransformation.downLoadFileByUrl(fileDownloadUrlnew, resultFilePath);
if (downLoadFile) {
Long caseAppliId = sealSignRecord.getCaseAppliId();
MsCaseAttach caseAttach = new MsCaseAttach();
caseAttach.setCaseAppliId(caseAppliId);
caseAttach.setAnnexType(3);
caseAttach.setAnnexPath(savePath);
caseAttach.setAnnexName(saveName);
caseAttachMapper.updateCaseAttachBycaseid(caseAttach);
}
}
}
}
}
}
} catch (EsignDemoException e) {
} catch (EsignDemoException | IOException e) {
e.printStackTrace();
}