From 4e134e61ede1f8574189af45c810ca365c7c7f9a Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 12 五月 2022 18:33:14 +0800
Subject: [PATCH] 优化代码

---
 service-job/src/main/java/com/java110/job/adapt/payment/receipt/PayFeeReceiptAdapt.java |   94 +++++++++++++++++++++++++++++------------------
 1 files changed, 58 insertions(+), 36 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/adapt/payment/receipt/PayFeeReceiptAdapt.java b/service-job/src/main/java/com/java110/job/adapt/payment/receipt/PayFeeReceiptAdapt.java
index cc592c3..8608df0 100644
--- a/service-job/src/main/java/com/java110/job/adapt/payment/receipt/PayFeeReceiptAdapt.java
+++ b/service-job/src/main/java/com/java110/job/adapt/payment/receipt/PayFeeReceiptAdapt.java
@@ -7,6 +7,7 @@
 import com.java110.core.smo.IComputeFeeSMO;
 import com.java110.dto.fee.FeeDetailDto;
 import com.java110.dto.fee.FeeDto;
+import com.java110.dto.logSystemError.LogSystemErrorDto;
 import com.java110.dto.owner.OwnerDto;
 import com.java110.entity.order.Business;
 import com.java110.intf.community.ICommunityInnerServiceSMO;
@@ -22,11 +23,14 @@
 import com.java110.po.fee.PayFeeDetailPo;
 import com.java110.po.feeReceipt.FeeReceiptPo;
 import com.java110.po.feeReceiptDetail.FeeReceiptDetailPo;
+import com.java110.po.logSystemError.LogSystemErrorPo;
+import com.java110.service.smo.ISaveSystemErrorSMO;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.ExceptionUtil;
 import com.java110.utils.util.StringUtil;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import com.java110.core.log.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -47,6 +51,8 @@
     @Autowired
     private ICommunityInnerServiceSMO communityInnerServiceSMO;
 
+    @Autowired
+    private ISaveSystemErrorSMO saveSystemErrorSMOImpl;
 
     @Autowired
     private IFeeReceiptInnerServiceSMO feeReceiptInnerServiceSMOImpl;
@@ -83,6 +89,10 @@
     @Override
     public void execute(Business business, List<Business> businesses) {
         JSONObject data = business.getData();
+
+        if(data != null){
+            logger.debug("璇锋眰鏃ュ織:{}",data);
+        }
         JSONArray businessPayFeeDetails = null;
         if (data == null) {
             FeeDetailDto feeDetailDto = new FeeDetailDto();
@@ -104,7 +114,10 @@
                 businessPayFeeDetails = (JSONArray) bObj;
             }
         } else {
-            return;
+            if (data instanceof JSONObject) {
+                businessPayFeeDetails = new JSONArray();
+                businessPayFeeDetails.add(data);
+            }
         }
 
         if (businessPayFeeDetails == null) {
@@ -117,46 +130,55 @@
     }
 
     private void doPayFeeDetail(Business business, JSONObject businessPayFeeDetail) {
-        //鏌ヨ缂磋垂鏄庣粏
-        PayFeeDetailPo payFeeDetailPo = BeanConvertUtil.covertBean(businessPayFeeDetail, PayFeeDetailPo.class);
-        FeeDto feeDto = new FeeDto();
-        feeDto.setFeeId(payFeeDetailPo.getFeeId());
-        feeDto.setCommunityId(payFeeDetailPo.getCommunityId());
-        List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
+        try {
+            //鏌ヨ缂磋垂鏄庣粏
+            PayFeeDetailPo payFeeDetailPo = BeanConvertUtil.covertBean(businessPayFeeDetail, PayFeeDetailPo.class);
+            FeeDto feeDto = new FeeDto();
+            feeDto.setFeeId(payFeeDetailPo.getFeeId());
+            feeDto.setCommunityId(payFeeDetailPo.getCommunityId());
+            List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
 
-        Assert.listOnlyOne(feeDtos, "鏈煡璇㈠埌璐圭敤淇℃伅");
+            Assert.listOnlyOne(feeDtos, "鏈煡璇㈠埌璐圭敤淇℃伅");
 
-        feeDto = feeDtos.get(0);
+            feeDto = feeDtos.get(0);
 
-        //鏌ヨ涓氫富淇℃伅
-        OwnerDto ownerDto = computeFeeSMOImpl.getFeeOwnerDto(feeDto);
+            //鏌ヨ涓氫富淇℃伅
+            OwnerDto ownerDto = computeFeeSMOImpl.getFeeOwnerDto(feeDto);
 
-        //娣诲姞鍗曞厓淇℃伅
-        FeeReceiptPo feeReceiptPo = new FeeReceiptPo();
-        FeeReceiptDetailPo feeReceiptDetailPo = new FeeReceiptDetailPo();
+            //娣诲姞鍗曞厓淇℃伅
+            FeeReceiptPo feeReceiptPo = new FeeReceiptPo();
+            FeeReceiptDetailPo feeReceiptDetailPo = new FeeReceiptDetailPo();
 
-        feeReceiptDetailPo.setAmount(businessPayFeeDetail.getString("receivedAmount"));
-        feeReceiptDetailPo.setCommunityId(feeDto.getCommunityId());
-        feeReceiptDetailPo.setCycle(businessPayFeeDetail.getString("cycles"));
-        feeReceiptDetailPo.setDetailId(businessPayFeeDetail.getString("detailId"));
-        feeReceiptDetailPo.setEndTime(businessPayFeeDetail.getString("endTime"));
-        feeReceiptDetailPo.setFeeId(feeDto.getFeeId());
-        feeReceiptDetailPo.setFeeName(StringUtil.isEmpty(feeDto.getImportFeeName()) ? feeDto.getFeeName() : feeDto.getImportFeeName());
-        feeReceiptDetailPo.setStartTime(businessPayFeeDetail.getString("startTime"));
-        feeReceiptDetailPo.setReceiptId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_receiptId));
-        computeFeeSMOImpl.freshFeeReceiptDetail(feeDto, feeReceiptDetailPo);
-        feeReceiptPo.setAmount(feeReceiptDetailPo.getAmount());
-        feeReceiptPo.setCommunityId(feeReceiptDetailPo.getCommunityId());
-        feeReceiptPo.setReceiptId(feeReceiptDetailPo.getReceiptId());
-        feeReceiptPo.setObjType(feeDto.getPayerObjType());
-        feeReceiptPo.setObjId(feeDto.getPayerObjId());
-        feeReceiptPo.setObjName(computeFeeSMOImpl.getFeeObjName(feeDto));
-        feeReceiptPo.setPayObjId(ownerDto.getOwnerId());
-        feeReceiptPo.setPayObjName(ownerDto.getName());
+            feeReceiptDetailPo.setAmount(businessPayFeeDetail.getString("receivedAmount"));
+            feeReceiptDetailPo.setCommunityId(feeDto.getCommunityId());
+            feeReceiptDetailPo.setCycle(businessPayFeeDetail.getString("cycles"));
+            feeReceiptDetailPo.setDetailId(businessPayFeeDetail.getString("detailId"));
+            feeReceiptDetailPo.setEndTime(businessPayFeeDetail.getString("endTime"));
+            feeReceiptDetailPo.setFeeId(feeDto.getFeeId());
+            feeReceiptDetailPo.setFeeName(StringUtil.isEmpty(feeDto.getImportFeeName()) ? feeDto.getFeeName() : feeDto.getImportFeeName());
+            feeReceiptDetailPo.setStartTime(businessPayFeeDetail.getString("startTime"));
+            feeReceiptDetailPo.setReceiptId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_receiptId));
+            computeFeeSMOImpl.freshFeeReceiptDetail(feeDto, feeReceiptDetailPo);
+            feeReceiptPo.setAmount(feeReceiptDetailPo.getAmount());
+            feeReceiptPo.setCommunityId(feeReceiptDetailPo.getCommunityId());
+            feeReceiptPo.setReceiptId(feeReceiptDetailPo.getReceiptId());
+            feeReceiptPo.setObjType(feeDto.getPayerObjType());
+            feeReceiptPo.setObjId(feeDto.getPayerObjId());
+            feeReceiptPo.setObjName(computeFeeSMOImpl.getFeeObjName(feeDto));
+            feeReceiptPo.setPayObjId(ownerDto.getOwnerId());
+            feeReceiptPo.setPayObjName(ownerDto.getName());
 
-        //杩欓噷鍙槸鍐欏叆 鏀舵嵁琛紝鏆備笉鑰冭檻 浜嬪姟涓�鑷存�ч棶棰橈紝灏辩畻鍐欏叆澶辫触 涔熷彧鏄奖鍝� 鏀舵嵁鎵撳嵃锛屽鏋� 璐靛叕鍙稿 鏀舵嵁瑕佹眰 姣旇緝楂橈紝涓嶈兘鏈夊け璐ョ殑鎯呭喌 璇峰姞鍏ヤ簨鍔$鐞�
-        feeReceiptDetailInnerServiceSMOImpl.saveFeeReceiptDetail(feeReceiptDetailPo);
-        feeReceiptInnerServiceSMOImpl.saveFeeReceipt(feeReceiptPo);
+            //杩欓噷鍙槸鍐欏叆 鏀舵嵁琛紝鏆備笉鑰冭檻 浜嬪姟涓�鑷存�ч棶棰橈紝灏辩畻鍐欏叆澶辫触 涔熷彧鏄奖鍝� 鏀舵嵁鎵撳嵃锛屽鏋� 璐靛叕鍙稿 鏀舵嵁瑕佹眰 姣旇緝楂橈紝涓嶈兘鏈夊け璐ョ殑鎯呭喌 璇峰姞鍏ヤ簨鍔$鐞�
+            feeReceiptDetailInnerServiceSMOImpl.saveFeeReceiptDetail(feeReceiptDetailPo);
+            feeReceiptInnerServiceSMOImpl.saveFeeReceipt(feeReceiptPo);
+        }catch (Exception e){
+            LogSystemErrorPo logSystemErrorPo = new LogSystemErrorPo();
+            logSystemErrorPo.setErrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_errId));
+            logSystemErrorPo.setErrType(LogSystemErrorDto.ERR_TYPE_NOTICE);
+            logSystemErrorPo.setMsg(ExceptionUtil.getStackTrace(e));
+            saveSystemErrorSMOImpl.saveLog(logSystemErrorPo);
+            logger.error("閫氱煡寮傚父", e);
+        }
     }
 
 

--
Gitblit v1.8.0