فهرست منبع

保存撤销的结算信息

yeguodong 2 ماه پیش
والد
کامیت
7018477333
1فایلهای تغییر یافته به همراه45 افزوده شده و 0 حذف شده
  1. 45 0
      src/main/java/thyyxxk/simzfeeoprnsystm/service/SiMzFeeService.java

+ 45 - 0
src/main/java/thyyxxk/simzfeeoprnsystm/service/SiMzFeeService.java

@@ -764,6 +764,51 @@ public class SiMzFeeService {
         }
         if (infcode == 0) {
             afterRevokeSetl(p.getPatNo(), p.getTimes(), input.getString("msgid"));
+
+            try {
+                // 撤销也要保存撤销的结算信息记录
+                JSONObject logOutput = result.getJSONObject("output");
+                JSONObject setlinfoLog = logOutput.getJSONObject("setlinfo");
+                SiSetlinfo setlinfoEntity = JSONObject.parseObject(setlinfoLog.toJSONString(), SiSetlinfo.class);
+                setlinfoEntity.setPatNo(setlinfo.getPatNo());
+                setlinfoEntity.setTimes(setlinfo.getTimes());
+                setlinfoEntity.setLedgerSn(setlinfo.getLedgerSn());
+                setlinfoEntity.setStaffId(p.getStaffId());
+                setlinfoEntity.setRevoked(1);
+                setlinfoEntity.setSetlType(setlinfo.getSetlType());
+                setlinfoEntity.setInsuplcAdmdvs(setlinfo.getInsuplcAdmdvs());
+                setlinfoEntity.setPsnName(setlinfo.getPsnName());
+                setlinfoEntity.setPsnNo(setlinfo.getPsnNo());
+                setlinfoEntity.setPsnCertType(setlinfo.getPsnCertType());
+                setlinfoEntity.setCertno(setlinfo.getCertno());
+                setlinfoEntity.setGend(setlinfo.getGend());
+                setlinfoEntity.setNaty(setlinfo.getNaty());
+                setlinfoEntity.setBrdy(setlinfo.getBrdy());
+                setlinfoEntity.setAge(setlinfo.getAge());
+                setlinfoEntity.setInsutype(setlinfo.getInsutype());
+                setlinfoEntity.setPsnType(setlinfo.getPsnType());
+                setlinfoEntity.setCvlservFlag(setlinfo.getCvlservFlag());
+                setlinfoEntity.setMdtrtCertType(setlinfo.getMdtrtCertType());
+                setlinfoEntity.setMedType(setlinfo.getMedType());
+                setlinfoEntity.setClrWay(setlinfo.getClrWay());
+                setlinfoEntity.setClrType(setlinfo.getClrType());
+
+                setlinfoDao.insert(setlinfoEntity);
+
+                JSONArray setldetail = logOutput.getJSONArray("setldetail");
+                for (int j = 0; j < setldetail.size(); j++) {
+                    SiSetldetail setldetailEntity = JSONObject.parseObject(setldetail.getJSONObject(j).toJSONString(), SiSetldetail.class);
+                    setldetailEntity.setSetlId(setlinfoEntity.getSetlId());
+                    setldetailEntity.setSortNo(j + 1);
+                    setldetailEntity.setPatNo(setlinfo.getPatNo());
+                    setldetailEntity.setTimes(setlinfo.getTimes());
+                    setldetailEntity.setLedgerSn(setlinfo.getLedgerSn());
+                    setldetailDao.insert(setldetailEntity);
+                }
+            } catch (Exception e) {
+                log.error("存撤销的结算信息出错", e);
+            }
+
             return getFundDetailFromSetlinfo(setlinfo);
         }
         return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, result.getString(ERROR_MESSAGE));