| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- package com.ruoyi.wisdomarbitrate.utils;
-
- import com.google.gson.Gson;
- import com.google.gson.JsonArray;
- import com.google.gson.JsonObject;
- import com.ruoyi.common.constant.CaseApplicationConstants;
- import com.ruoyi.common.constant.FileTransformation;
- import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
- import com.ruoyi.common.exception.EsignDemoException;
- import com.ruoyi.common.utils.file.SaaSAPIFileUtils;
- import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
- import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
- import com.ruoyi.wisdomarbitrate.domain.DeptIdentify;
- import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
- import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
- import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper;
- import com.ruoyi.wisdomarbitrate.mapper.DeptIdentifyMapper;
- import com.ruoyi.wisdomarbitrate.mapper.SealSignRecordMapper;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.scheduling.annotation.Scheduled;
- import org.springframework.stereotype.Component;
- import org.springframework.transaction.annotation.Transactional;
-
- import java.time.LocalDate;
- import java.util.List;
- import java.util.UUID;
-
- @Component
- public class FixSelectFlowDetailUtils {
-
- @Autowired
- private CaseApplicationMapper caseApplicationMapper;
- @Autowired
- private SealSignRecordMapper sealSignRecordMapper;
- @Autowired
- private CaseAttachMapper caseAttachMapper;
- @Autowired
- private DeptIdentifyMapper deptIdentifyMapper;
-
- @Scheduled(cron = "0/3 * * * * ?")
- @Transactional
- public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
- Gson gson = new Gson();
-
- SealSignRecord sealSignRecordselect = new SealSignRecord();
- // sealSignRecordselect.setSignFlowStatus(1);
- List<SealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecordbyStat(sealSignRecordselect);
- if(sealSignRecords!=null&&sealSignRecords.size()>0){
- for (int i = 0; i < sealSignRecords.size(); i++) {
- SealSignRecord sealSignRecord = sealSignRecords.get(i);
- EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
- JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
- JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
- JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
- Integer psnsignStatus = null;
- Integer orgsignStatus = null;
- for (int j = 0; j < signersArray.size(); j++) {
- JsonObject signerObject = (JsonObject)signersArray.get(j);
-
- if(!(signerObject.get("psnSigner").toString()).equals("null")){
- JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
- if(psnSignerData!=null){
- psnsignStatus = signerObject.get("signStatus").getAsInt();
- }
- }
- if(!(signerObject.get("orgSigner").toString()).equals("null")){
- JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
- if(orgSignerData!=null){
- orgsignStatus = signerObject.get("signStatus").getAsInt();
- }
- }
-
- }
- if((psnsignStatus.intValue()==2)&&(orgsignStatus.intValue()==1)){
- //更新立案申请状态为待用印
- CaseApplication caseApplication = new CaseApplication();
- caseApplication.setId(sealSignRecord.getCaseAppliId());
-
- CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
- if((caseApplicationselect.getCaseStatus()!=null)&&(caseApplicationselect.getCaseStatus().intValue()==CaseApplicationConstants.SIGN_ARBITRATION)){
- caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
- caseApplicationMapper.submitCaseApplication(caseApplication);
-
- //修改"签署用印记录表"的状态为待用印
- sealSignRecord.setSignFlowStatus(2);
- sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
- }
- }
- if((psnsignStatus.intValue()==2)&&(orgsignStatus.intValue()==2)){
- //更新立案申请状态为待送达
- CaseApplication caseApplication = new CaseApplication();
- caseApplication.setId(sealSignRecord.getCaseAppliId());
-
- CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
- if((caseApplicationselect.getCaseStatus()!=null)&&(caseApplicationselect.getCaseStatus().intValue()==CaseApplicationConstants.ARBITRATED_SEAL)){
- caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
- //下载审核完成的裁决书,
- 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();
- //修改"签署用印记录表"的状态为签署完成
- sealSignRecord.setSignFlowStatus(3);
- sealSignRecord.setFileDownloadUrl(fileDownloadUrl.substring(1,fileDownloadUrl.length()-1));
- sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
- String filearbitraUrl = fileDownloadUrl.substring(1,fileDownloadUrl.length()-1);
- caseApplication.setFilearbitraUrl(filearbitraUrl);
- caseApplicationMapper.submitCaseApplication(caseApplication);
-
- }
- }
-
- }
- }
-
- }
-
-
-
- }
-
-
- @Scheduled(cron = "0/10 * * * * ?")
- @Transactional
- public void fixExecuteSelectDeptIndentifyUtils() throws EsignDemoException {
- Gson gson = new Gson();
- DeptIdentify deptIdentify = new DeptIdentify();
- deptIdentify.setIdentifyStatus(0);
- List<DeptIdentify> deptIdentifysnew = deptIdentifyMapper.selectDeptIdentifylist(deptIdentify);
- if(deptIdentifysnew!=null&&deptIdentifysnew.size()>0){
- for (int i = 0; i < deptIdentifysnew.size(); i++) {
- EsignHttpResponse identifyInfo = SignAward.getDeptIdentifyInfo(deptIdentifysnew.get(i));
- JsonObject identifyInfoJsonObject = gson.fromJson(identifyInfo.getBody(), JsonObject.class);
- JsonObject identifyInfoData = identifyInfoJsonObject.getAsJsonObject("data");
- int realnameStatus = identifyInfoData.get("realnameStatus").getAsInt();
- String orgId = identifyInfoData.get("orgId").getAsString();
- if(realnameStatus==1){
- EsignHttpResponse identifyInfo1 = SignAward.deptIdentifySealList(orgId);
- JsonObject identifyInfoJsonObject1 = gson.fromJson(identifyInfo1.getBody(), JsonObject.class);
- JsonObject identifyInfoData1 = identifyInfoJsonObject1.getAsJsonObject("data");
- JsonArray sealArray = identifyInfoData1.get("seals").getAsJsonArray();
- String sealNames = "";
- if(sealArray.size()>0){
- for (int j = 0; j < sealArray.size(); j++) {
- JsonObject sealObject = (JsonObject)sealArray.get(j);
- String sealName = sealObject.get("sealName").toString();
- String sealNamenew = sealName.substring(1,sealName.length()-1);
- sealNames += sealNamenew +",";
- }
- }
- String sealName = sealNames.substring(0,sealNames.length()-1);
- DeptIdentify deptIdentifynew = deptIdentifysnew.get(i);
- deptIdentifynew.setIdentifyStatus(1);
- deptIdentifynew.setSealName(sealName);
- int row = deptIdentifyMapper.updateDeptIdentify(deptIdentifynew);
- }
-
- }
-
- }
-
- }
-
-
-
-
-
-
- }
|