调解系统后端服务

FixSelectFlowDetailUtils.java 29KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457
  1. package com.ruoyi.wisdomarbitrate.utils;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.google.gson.Gson;
  5. import com.google.gson.JsonArray;
  6. import com.google.gson.JsonObject;
  7. import com.ruoyi.common.constant.FileTransformation;
  8. import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
  9. import com.ruoyi.common.enums.AnnexTypeEnum;
  10. import com.ruoyi.common.exception.EsignDemoException;
  11. import com.ruoyi.common.utils.file.SaaSAPIFileUtils;
  12. import com.ruoyi.system.domain.entity.flow.MsCaseFlow;
  13. import com.ruoyi.system.mapper.flow.MsCaseFlowMapper;
  14. import com.ruoyi.wisdomarbitrate.domain.dto.dept.DeptIdentify;
  15. import com.ruoyi.wisdomarbitrate.domain.dto.dept.SealManage;
  16. import com.ruoyi.wisdomarbitrate.domain.dto.mscase.SealSignRecord;
  17. import com.ruoyi.wisdomarbitrate.domain.entity.dept.MsSealSignRecord;
  18. import com.ruoyi.wisdomarbitrate.domain.entity.mscase.MsCaseApplication;
  19. import com.ruoyi.wisdomarbitrate.domain.entity.mscase.MsCaseAttach;
  20. import com.ruoyi.wisdomarbitrate.mapper.dept.DeptIdentifyMapper;
  21. import com.ruoyi.wisdomarbitrate.mapper.dept.MsSealSignRecordMapper;
  22. import com.ruoyi.wisdomarbitrate.mapper.dept.SealManageMapper;
  23. import com.ruoyi.wisdomarbitrate.mapper.mscase.MsCaseApplicationMapper;
  24. import com.ruoyi.wisdomarbitrate.mapper.mscase.MsCaseAttachMapper;
  25. import org.springframework.beans.factory.annotation.Autowired;
  26. import org.springframework.scheduling.annotation.Scheduled;
  27. import org.springframework.stereotype.Component;
  28. import org.springframework.transaction.annotation.Transactional;
  29. import java.io.File;
  30. import java.io.IOException;
  31. import java.time.LocalDate;
  32. import java.util.ArrayList;
  33. import java.util.List;
  34. import java.util.UUID;
  35. import java.util.stream.Collectors;
  36. import static com.google.common.io.Files.getFileExtension;
  37. @Component
  38. public class FixSelectFlowDetailUtils {
  39. @Autowired
  40. private MsCaseAttachMapper caseAttachMapper;
  41. @Autowired
  42. private DeptIdentifyMapper deptIdentifyMapper;
  43. @Autowired
  44. private SealManageMapper sealManageMapper;
  45. @Autowired
  46. private MsSealSignRecordMapper sealSignRecordMapper;
  47. @Autowired
  48. MsCaseApplicationMapper msCaseApplicationMapper;
  49. @Autowired
  50. MsCaseFlowMapper caseFlowMapper;
  51. @Autowired
  52. private MsCaseApplicationMapper caseApplicationMapper;
  53. /**
  54. * 定时查询企业认证状态
  55. *
  56. * @throws Exception
  57. */
  58. @Scheduled(cron = "*/30 * * * * *")
  59. @Transactional
  60. public void fixExecuteSelectDeptIndentifyUtils() throws Exception {
  61. Gson gson = new Gson();
  62. DeptIdentify deptIdentify = new DeptIdentify();
  63. List<DeptIdentify> deptIdentifysnew = deptIdentifyMapper.selectDeptIdentify(deptIdentify);
  64. if (deptIdentifysnew != null && deptIdentifysnew.size() > 0) {
  65. for (int i = 0; i < deptIdentifysnew.size(); i++) {
  66. DeptIdentify deptIdentify1 = deptIdentifysnew.get(i);
  67. Integer identifyStatus = deptIdentify1.getIdentifyStatus();
  68. if (identifyStatus!=1){
  69. String authFlowId = deptIdentify1.getAuthFlowId();
  70. if (authFlowId != null) {
  71. EsignHttpResponse identifyInfo = SignAward.getDeptIdentifyInfo(deptIdentify1);
  72. JsonObject identifyInfoJsonObject = gson.fromJson(identifyInfo.getBody(), JsonObject.class);
  73. int code = identifyInfoJsonObject.get("code").getAsInt();
  74. if (code == 0) {
  75. JsonObject identifyInfoData = identifyInfoJsonObject.getAsJsonObject("data");
  76. int realnameStatus = identifyInfoData.get("realnameStatus").getAsInt();
  77. if (realnameStatus == 1) {
  78. String orgId = identifyInfoData.get("orgId").getAsString();
  79. //查询企业内部印章
  80. EsignHttpResponse response = SignAward.deptIdentifySealList(orgId);
  81. JsonObject jsonObject = gson.fromJson(response.getBody(), JsonObject.class);
  82. int code1 = jsonObject.get("code").getAsInt();
  83. if (code1 == 0) {
  84. JsonObject data = jsonObject.getAsJsonObject("data");
  85. JsonArray seals = data.get("seals").getAsJsonArray();
  86. if (seals.size() > 0) {
  87. for (int j = 0; j < seals.size(); j++) {
  88. //保存印章信息到数据库
  89. JsonObject asJsonObject = seals.get(j).getAsJsonObject();
  90. SealManage sealManage = new SealManage();
  91. String sealName = asJsonObject.get("sealName").toString();
  92. String sealId = asJsonObject.get("sealId").toString();
  93. String url = asJsonObject.get("sealImageDownloadUrl").toString();
  94. LocalDate now = LocalDate.now();
  95. String year = Integer.toString(now.getYear());
  96. String month = String.format("%02d", now.getMonthValue());
  97. String day = String.format("%02d", now.getDayOfMonth());
  98. String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
  99. String fileName = UUID.randomUUID().toString().replace("-", "") + ".jpg";
  100. String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  101. String savePath = "/home/ruoyi/uploadPath/upload/";
  102. // 创建日期目录
  103. File saveFolder = new File(saveFolderPath);
  104. if (!saveFolder.exists()) {
  105. saveFolder.mkdirs();
  106. }
  107. String resultFilePath = saveFolderPath + "/" + fileName;
  108. File resultFilePathFile = new File(resultFilePath);
  109. if (!resultFilePathFile.exists()) {
  110. resultFilePathFile.createNewFile();
  111. }
  112. String fileDownloadUrlnew = url.substring(1, url.length() - 1);
  113. boolean downLoadFile = FileTransformation.downLoadFileByUrl(fileDownloadUrlnew, resultFilePath);
  114. if (downLoadFile) {
  115. MsCaseAttach caseAttach = new MsCaseAttach();
  116. caseAttach.setAnnexType(AnnexTypeEnum.SEAL_PICTURE.getCode()); //10代表印章图片
  117. caseAttach.setAnnexPath(savePath);
  118. caseAttach.setAnnexName(saveName);
  119. caseAttach.setSuffix(getFileExtension(caseAttach.getAnnexPath()));
  120. int i1 = caseAttachMapper.save(caseAttach);
  121. if (i1 > 0) {
  122. //将印章信息保存到公章管理表里
  123. String sealName1 = sealName.substring(1, sealName.length() - 1);
  124. String sealId1 = sealId.substring(1, sealId.length() - 1);
  125. Long annexId1 = caseAttach.getAnnexId();
  126. sealManage.setAnnexId(annexId1);
  127. sealManage.setSealId(sealId1);
  128. sealManage.setSealName(sealName1);
  129. sealManage.setIdentifyId(deptIdentify1.getId());
  130. sealManage.setSealStatus(1);
  131. sealManage.setIsUse(1);
  132. sealManageMapper.insertSealManage(sealManage);
  133. }
  134. }
  135. }
  136. }
  137. }
  138. //将orgId保存到数据库里
  139. deptIdentify1.setOrgId(orgId);
  140. deptIdentify1.setIdentifyStatus(1);
  141. deptIdentify1.setIsUse(0); //默认机构为未启用
  142. int row = deptIdentifyMapper.updateDeptIdentify(deptIdentify1);
  143. }
  144. }else {
  145. deptIdentify1.setIdentifyStatus(2);
  146. deptIdentifyMapper.updateDeptIdentify(deptIdentify1);
  147. }
  148. }
  149. }
  150. }
  151. }
  152. }
  153. /**
  154. * 定时查询印章审核状态
  155. */
  156. // @Scheduled(cron = "0/30 * * * * ?")
  157. @Transactional
  158. public void searchForInstitutionalSeal() {
  159. try {
  160. SealManage sealManage = new SealManage();
  161. sealManage.setSealStatus(0);
  162. List<SealManage> sealManageList = sealManageMapper.selectSealList(sealManage);
  163. if (sealManageList != null && sealManageList.size() > 0) {
  164. for (SealManage sealManage1 : sealManageList) {
  165. //查询企业内部印章
  166. Long annexId = sealManage1.getAnnexId();
  167. String sealId = sealManage1.getSealId();
  168. DeptIdentify deptIdentify = new DeptIdentify();
  169. deptIdentify.setId(sealManage1.getIdentifyId());
  170. List<DeptIdentify> deptIdentifies = deptIdentifyMapper.selectDeptIdentify(deptIdentify);
  171. if (deptIdentifies != null && deptIdentifies.size() > 0) {
  172. DeptIdentify deptIdentify1 = deptIdentifies.get(0);
  173. String orgId = deptIdentify1.getOrgId();
  174. if (orgId == null) {
  175. continue;
  176. }
  177. if (annexId == null) {
  178. //说明之前没有下载过
  179. EsignHttpResponse response = SignAward.getOrgSeal(orgId, sealId);
  180. JSONObject jsonObject = JSONObject.parseObject(response.getBody());
  181. int code = jsonObject.getIntValue("code");
  182. if (code == 0) {
  183. JSONObject data = jsonObject.getJSONObject("data");
  184. int sealStatus = data.getIntValue("sealStatus");
  185. if (sealStatus == 1) {//印章状态 1已启用,2待审核,3审核不通过,4 挂起
  186. //已启用证明审核通过,下载到数据库
  187. String sealImageDownloadUrl = data.getString("sealImageDownloadUrl");
  188. LocalDate now = LocalDate.now();
  189. String year = Integer.toString(now.getYear());
  190. String month = String.format("%02d", now.getMonthValue());
  191. String day = String.format("%02d", now.getDayOfMonth());
  192. String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
  193. String fileName = UUID.randomUUID().toString().replace("-", "") + ".jpg";
  194. String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  195. String savePath = "/home/ruoyi/uploadPath/upload/";
  196. // 创建日期目录
  197. File saveFolder = new File(saveFolderPath);
  198. if (!saveFolder.exists()) {
  199. saveFolder.mkdirs();
  200. }
  201. String resultFilePath = saveFolderPath + "/" + fileName;
  202. File resultFilePathFile = new File(resultFilePath);
  203. if (!resultFilePathFile.exists()) {
  204. resultFilePathFile.createNewFile();
  205. }
  206. boolean downLoadFile = FileTransformation.downLoadFileByUrl(sealImageDownloadUrl, resultFilePath);
  207. if (downLoadFile) {
  208. MsCaseAttach caseAttach = new MsCaseAttach();
  209. caseAttach.setAnnexType(AnnexTypeEnum.SEAL_PICTURE.getCode()); //10代表印章图片
  210. caseAttach.setAnnexPath(savePath);
  211. caseAttach.setAnnexName(saveName);
  212. int i1 = caseAttachMapper.save(caseAttach);
  213. caseAttach.setSuffix(getFileExtension(caseAttach.getAnnexPath()));
  214. if (i1 > 0) {
  215. //将附件id保存到公章管理表里
  216. Long annexId1 = caseAttach.getAnnexId();
  217. sealManage1.setAnnexId(annexId1);
  218. sealManage1.setSealStatus(1);
  219. sealManage1.setIsUse(0);
  220. sealManageMapper.updateSealManage(sealManage1);
  221. }
  222. }
  223. }
  224. }
  225. }
  226. }
  227. }
  228. }
  229. } catch (EsignDemoException e) {
  230. e.printStackTrace();
  231. } catch (IOException e) {
  232. e.printStackTrace();
  233. }
  234. }
  235. /*
  236. 定时查询签署流程详情
  237. */
  238. // @Scheduled(cron = "0/10 * * * * ?")
  239. @Transactional
  240. public void fixExecuteSelectFlowDetailUtils() {
  241. Gson gson = new Gson();
  242. List<MsSealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecordbyStat();
  243. try {
  244. if (sealSignRecords != null && sealSignRecords.size() > 0) {
  245. for (int i = 0; i < sealSignRecords.size(); i++) {
  246. MsSealSignRecord mssealSignRecord = sealSignRecords.get(i);
  247. SealSignRecord sealSignRecord = new SealSignRecord();
  248. BeanUtil.copyProperties(mssealSignRecord, sealSignRecord);
  249. sealSignRecord.setSignFlowid(mssealSignRecord.getSignFlowId());
  250. EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
  251. JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(), JsonObject.class);
  252. JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
  253. JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
  254. List<Integer> psnsignStatusList = new ArrayList<>();
  255. Integer psnsignStatus = null;
  256. Integer orgsignStatus = null;
  257. for (int j = 0; j < signersArray.size(); j++) {
  258. JsonObject signerObject = (JsonObject) signersArray.get(j);
  259. if (!(signerObject.get("psnSigner").toString()).equals("null")) {
  260. JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
  261. if (psnSignerData != null) {
  262. psnsignStatus = signerObject.get("signStatus").getAsInt();
  263. psnsignStatusList.add(psnsignStatus);
  264. }
  265. }
  266. if (!(signerObject.get("orgSigner").toString()).equals("null")) {
  267. JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
  268. if (orgSignerData != null) {
  269. orgsignStatus = signerObject.get("signStatus").getAsInt();
  270. }
  271. }
  272. }
  273. List<Integer> psnsignStatusListnew = psnsignStatusList.stream().distinct().collect(Collectors.toList());
  274. MsCaseApplication caseApplicationselect = msCaseApplicationMapper.selectByPrimaryKey(sealSignRecord.getCaseAppliId());
  275. // Integer isReconci = caseApplicationselect.getIsReconci();
  276. Integer mediaResult = caseApplicationselect.getMediaResult();
  277. if(mediaResult!=null){
  278. if(mediaResult.intValue()==5){
  279. if (( psnsignStatusListnew.size()==1 && (psnsignStatusListnew.get(0).intValue() == 2))) {
  280. //更新立案申请状态为待送达
  281. // MsCaseApplication caseApplicationselect = msCaseApplicationMapper.selectByPrimaryKey(sealSignRecord.getCaseAppliId());
  282. if ((mssealSignRecord.getSignFlowStatus() != null) && (mssealSignRecord.getSignFlowStatus().intValue() == 1)) {
  283. MsCaseFlow nextFlow = caseFlowMapper.nextFlow1(caseApplicationselect.getCaseFlowId().intValue());
  284. MsCaseApplication application = new MsCaseApplication();
  285. application.setId(caseApplicationselect.getId());
  286. application.setCaseFlowId(nextFlow.getId());
  287. application.setCaseStatusName(nextFlow.getCaseStatusName());
  288. caseApplicationMapper.updateByPrimaryKeySelective(application);
  289. //修改"签署用印记录表"的状态为完成
  290. mssealSignRecord.setSignFlowStatus(3);
  291. sealSignRecordMapper.updateByPrimaryKeySelective(mssealSignRecord);
  292. //下载审核完成的调解书
  293. String signFlowId = sealSignRecord.getSignFlowid();
  294. EsignHttpResponse fileDownload = SaaSAPIFileUtils.fileDownloadUrl(signFlowId);
  295. JsonObject fileDownloadJsonObject = gson.fromJson(fileDownload.getBody(), JsonObject.class);
  296. JsonObject fileDownloadData = fileDownloadJsonObject.getAsJsonObject("data");
  297. JsonArray filesArray = fileDownloadData.get("files").getAsJsonArray();
  298. if (filesArray != null && filesArray.size() > 0) {
  299. JsonObject fileObject = (JsonObject) filesArray.get(0);
  300. String fileDownloadUrl = fileObject.get("downloadUrl").toString();
  301. LocalDate now = LocalDate.now();
  302. String year = Integer.toString(now.getYear());
  303. String month = String.format("%02d", now.getMonthValue());
  304. String day = String.format("%02d", now.getDayOfMonth());
  305. String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
  306. String fileName = UUID.randomUUID().toString().replace("-", "") + ".pdf";
  307. // String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  308. // String savePath = "/home/ruoyi/uploadPath/upload/";
  309. String saveName = fileName;
  310. String savePath = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  311. // 创建日期目录
  312. File saveFolder = new File(saveFolderPath);
  313. if (!saveFolder.exists()) {
  314. saveFolder.mkdirs();
  315. }
  316. String resultFilePath = saveFolderPath + "/" + fileName;
  317. File resultFilePathFile = new File(resultFilePath);
  318. if (!resultFilePathFile.exists()) {
  319. resultFilePathFile.createNewFile();
  320. }
  321. String fileDownloadUrlnew = fileDownloadUrl.substring(1, fileDownloadUrl.length() - 1);
  322. boolean downLoadFile = FileTransformation.downLoadFileByUrl(fileDownloadUrlnew, resultFilePath);
  323. if (downLoadFile) {
  324. Long caseAppliId = sealSignRecord.getCaseAppliId();
  325. MsCaseAttach caseAttach = new MsCaseAttach();
  326. caseAttach.setCaseAppliId(caseAppliId);
  327. caseAttach.setAnnexType(7);
  328. caseAttach.setAnnexPath(savePath);
  329. caseAttach.setAnnexName(saveName);
  330. caseAttachMapper.updateCaseAttachBycaseid(caseAttach);
  331. }
  332. }
  333. }
  334. }
  335. }else if(mediaResult.intValue()==1){
  336. if (( psnsignStatusListnew.size()==1 && (psnsignStatusListnew.get(0).intValue() == 2)) && (orgsignStatus.intValue() == 1)) {
  337. //更新立案申请状态为待用印
  338. // MsCaseApplication caseApplicationselect = msCaseApplicationMapper.selectByPrimaryKey(sealSignRecord.getCaseAppliId());
  339. if ((mssealSignRecord.getSignFlowStatus() != null) && (mssealSignRecord.getSignFlowStatus().intValue() == 1)) {
  340. // 根据流程id查找下一个流程节点
  341. MsCaseFlow nextFlow = caseFlowMapper.nextFlow(caseApplicationselect.getCaseFlowId().intValue());
  342. MsCaseApplication application = new MsCaseApplication();
  343. application.setId(caseApplicationselect.getId());
  344. application.setCaseFlowId(nextFlow.getId());
  345. application.setCaseStatusName(nextFlow.getCaseStatusName());
  346. caseApplicationMapper.updateByPrimaryKeySelective(application);
  347. //修改"签署用印记录表"的状态为待用印
  348. mssealSignRecord.setSignFlowStatus(2);
  349. sealSignRecordMapper.updateByPrimaryKeySelective(mssealSignRecord);
  350. }
  351. }
  352. if (( psnsignStatusListnew.size()==1 && (psnsignStatusListnew.get(0).intValue() == 2)) && (orgsignStatus.intValue() == 2)) {
  353. //更新立案申请状态为待送达
  354. // MsCaseApplication caseApplicationselect = msCaseApplicationMapper.selectByPrimaryKey(sealSignRecord.getCaseAppliId());
  355. if ((mssealSignRecord.getSignFlowStatus() != null) && (mssealSignRecord.getSignFlowStatus().intValue() == 2)) {
  356. //修改"签署用印记录表"的状态为签署完成
  357. mssealSignRecord.setSignFlowStatus(3);
  358. sealSignRecordMapper.updateByPrimaryKeySelective(mssealSignRecord);
  359. // 根据流程id查找下一个流程节点
  360. MsCaseFlow nextFlow = caseFlowMapper.nextFlow(caseApplicationselect.getCaseFlowId().intValue());
  361. MsCaseApplication application = new MsCaseApplication();
  362. application.setId(caseApplicationselect.getId());
  363. application.setCaseFlowId(nextFlow.getId());
  364. application.setCaseStatusName(nextFlow.getCaseStatusName());
  365. caseApplicationMapper.updateByPrimaryKeySelective(application);
  366. //下载审核完成的调解书
  367. String signFlowId = sealSignRecord.getSignFlowid();
  368. EsignHttpResponse fileDownload = SaaSAPIFileUtils.fileDownloadUrl(signFlowId);
  369. JsonObject fileDownloadJsonObject = gson.fromJson(fileDownload.getBody(), JsonObject.class);
  370. JsonObject fileDownloadData = fileDownloadJsonObject.getAsJsonObject("data");
  371. JsonArray filesArray = fileDownloadData.get("files").getAsJsonArray();
  372. if (filesArray != null && filesArray.size() > 0) {
  373. JsonObject fileObject = (JsonObject) filesArray.get(0);
  374. String fileDownloadUrl = fileObject.get("downloadUrl").toString();
  375. LocalDate now = LocalDate.now();
  376. String year = Integer.toString(now.getYear());
  377. String month = String.format("%02d", now.getMonthValue());
  378. String day = String.format("%02d", now.getDayOfMonth());
  379. String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
  380. String fileName = UUID.randomUUID().toString().replace("-", "") + ".pdf";
  381. // String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  382. // String savePath = "/home/ruoyi/uploadPath/upload/";
  383. String saveName = fileName;
  384. String savePath = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
  385. // 创建日期目录
  386. File saveFolder = new File(saveFolderPath);
  387. if (!saveFolder.exists()) {
  388. saveFolder.mkdirs();
  389. }
  390. String resultFilePath = saveFolderPath + "/" + fileName;
  391. File resultFilePathFile = new File(resultFilePath);
  392. if (!resultFilePathFile.exists()) {
  393. resultFilePathFile.createNewFile();
  394. }
  395. String fileDownloadUrlnew = fileDownloadUrl.substring(1, fileDownloadUrl.length() - 1);
  396. boolean downLoadFile = FileTransformation.downLoadFileByUrl(fileDownloadUrlnew, resultFilePath);
  397. if (downLoadFile) {
  398. Long caseAppliId = sealSignRecord.getCaseAppliId();
  399. MsCaseAttach caseAttach = new MsCaseAttach();
  400. caseAttach.setCaseAppliId(caseAppliId);
  401. caseAttach.setAnnexType(7);
  402. caseAttach.setAnnexPath(savePath);
  403. caseAttach.setAnnexName(saveName);
  404. caseAttachMapper.updateCaseAttachBycaseid(caseAttach);
  405. }
  406. }
  407. }
  408. }
  409. }
  410. }
  411. }
  412. }
  413. } catch (EsignDemoException | IOException e) {
  414. e.printStackTrace();
  415. }
  416. }
  417. }