From a340aad437a1a3853bc887f69881597b0e44a12b Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 09 十月 2023 19:07:25 +0800
Subject: [PATCH] 优化 代码

---
 service-job/src/main/java/com/java110/job/adapt/fee/OweFeeCallableAdapt.java |  134 +++++++++++++++++++++++++++++---------------
 1 files changed, 89 insertions(+), 45 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/adapt/fee/OweFeeCallableAdapt.java b/service-job/src/main/java/com/java110/job/adapt/fee/OweFeeCallableAdapt.java
index 27e6ae6..220dda9 100644
--- a/service-job/src/main/java/com/java110/job/adapt/fee/OweFeeCallableAdapt.java
+++ b/service-job/src/main/java/com/java110/job/adapt/fee/OweFeeCallableAdapt.java
@@ -92,54 +92,66 @@
         String oweUrl = "";
         OweFeeCallablePo updateOweFeeCallablePo = null;
         OwnerAppUserDto ownerAppUserDto = null;
-        for (OweFeeCallablePo oweFeeCallablePo : oweFeeCallablePos) {
-
-            if (StringUtil.isEmpty(oweFeeCallablePo.getOwnerId()) || oweFeeCallablePo.getOwnerId().startsWith("-")) {
-                updateOweFeeCallablePo = new OweFeeCallablePo();
-                updateOweFeeCallablePo.setOfcId(oweFeeCallablePo.getOfcId());
-                updateOweFeeCallablePo.setCommunityId(oweFeeCallablePo.getCommunityId());
-                updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_FAIL);
-                updateOweFeeCallablePo.setRemark(oweFeeCallablePo.getRemark() + "-涓氫富涓嶅瓨鍦�");
-                oweFeeCallableV1InnerServiceSMOImpl.updateOweFeeCallable(updateOweFeeCallablePo);
-                continue;
-            }
-            ownerAppUserDto = new OwnerAppUserDto();
-            ownerAppUserDto.setMemberId(oweFeeCallablePo.getOwnerId());
-            ownerAppUserDto.setCommunityId(oweFeeCallablePo.getCommunityId());
-            ownerAppUserDto.setAppType(OwnerAppUserDto.APP_TYPE_WECHAT);
-            List<OwnerAppUserDto> ownerAppUserDtos = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsers(ownerAppUserDto);
-            if (ownerAppUserDtos == null || ownerAppUserDtos.size() < 1) {
-                updateOweFeeCallablePo = new OweFeeCallablePo();
-                updateOweFeeCallablePo.setOfcId(oweFeeCallablePo.getOfcId());
-                updateOweFeeCallablePo.setCommunityId(oweFeeCallablePo.getCommunityId());
-                updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_FAIL);
-                updateOweFeeCallablePo.setRemark(oweFeeCallablePo.getRemark() + "-涓氫富鏈粦瀹�");
-                oweFeeCallableV1InnerServiceSMOImpl.updateOweFeeCallable(updateOweFeeCallablePo);
-                continue;
-            }
-
-            oweUrl = FeeDto.PAYER_OBJ_TYPE_ROOM.equals(oweFeeCallablePo.getPayerObjType()) ? oweRoomUrl : oweCarUrl;
-            content = new JSONObject();
-            content.put("feeTypeName", oweFeeCallablePo.getFeeName());
-            content.put("payerObjName", oweFeeCallablePo.getPayerObjName());
-            content.put("billAmountOwed", oweFeeCallablePo.getAmountdOwed());
-            content.put("date", DateUtil.dateTimeToDate(oweFeeCallablePo.getStartTime()) + "~" + DateUtil.dateTimeToDate(oweFeeCallablePo.getEndTime()));
-            content.put("url", oweUrl);
+        String userId = "";
+        List<JSONObject> contents = null;
+        for (int roomIndex = 0; roomIndex < roomIds.size(); roomIndex++) {
+            contents = new ArrayList<>();
             String notifyWay = MsgNotifyFactory.NOTIFY_WAY_WECHAT;
-            if (OweFeeCallableDto.CALLABLE_WAY_SMS.equals(oweFeeCallablePo.getCallableWay())) {
-                notifyWay = MsgNotifyFactory.NOTIFY_WAY_ALI;
+            for (OweFeeCallablePo oweFeeCallablePo : oweFeeCallablePos) {
+                if (StringUtil.isEmpty(oweFeeCallablePo.getOwnerId()) || oweFeeCallablePo.getOwnerId().startsWith("-")) {
+                    updateOweFeeCallablePo = new OweFeeCallablePo();
+                    updateOweFeeCallablePo.setOfcId(oweFeeCallablePo.getOfcId());
+                    updateOweFeeCallablePo.setCommunityId(oweFeeCallablePo.getCommunityId());
+                    updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_FAIL);
+                    updateOweFeeCallablePo.setRemark(oweFeeCallablePo.getRemark() + "-涓氫富涓嶅瓨鍦�");
+                    oweFeeCallableV1InnerServiceSMOImpl.updateOweFeeCallable(updateOweFeeCallablePo);
+                    continue;
+                }
+                ownerAppUserDto = new OwnerAppUserDto();
+                ownerAppUserDto.setMemberId(oweFeeCallablePo.getOwnerId());
+                ownerAppUserDto.setCommunityId(oweFeeCallablePo.getCommunityId());
+                ownerAppUserDto.setAppType(OwnerAppUserDto.APP_TYPE_WECHAT);
+                List<OwnerAppUserDto> ownerAppUserDtos = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsers(ownerAppUserDto);
+                if (ownerAppUserDtos != null && ownerAppUserDtos.size() > 0) {
+                    userId = ownerAppUserDtos.get(0).getUserId();
+                }
+
+                oweUrl = FeeDto.PAYER_OBJ_TYPE_ROOM.equals(oweFeeCallablePo.getPayerObjType()) ? oweRoomUrl : oweCarUrl;
+                content = new JSONObject();
+                content.put("feeTypeName", oweFeeCallablePo.getFeeName());
+                content.put("payerObjName", oweFeeCallablePo.getPayerObjName());
+                content.put("billAmountOwed", oweFeeCallablePo.getAmountdOwed());
+                content.put("date", DateUtil.dateTimeToDate(oweFeeCallablePo.getStartTime()) + "~" + DateUtil.dateTimeToDate(oweFeeCallablePo.getEndTime()));
+                content.put("url", oweUrl + oweFeeCallablePo.getPayerObjId());
+
+                if (OweFeeCallableDto.CALLABLE_WAY_SMS.equals(oweFeeCallablePo.getCallableWay())) {
+                    notifyWay = MsgNotifyFactory.NOTIFY_WAY_ALI;
+                }
+                contents.add(content);
+
             }
-            ResultVo resultVo = MsgNotifyFactory.sendOweFeeMsg(data.getString("communityId"), ownerAppUserDtos.get(0).getUserId(), content, notifyWay);
-            updateOweFeeCallablePo = new OweFeeCallablePo();
-            updateOweFeeCallablePo.setOfcId(oweFeeCallablePo.getOfcId());
-            updateOweFeeCallablePo.setCommunityId(oweFeeCallablePo.getCommunityId());
-            if (resultVo.getCode() != ResultVo.CODE_OK) {
-                updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_FAIL);
-                updateOweFeeCallablePo.setRemark(oweFeeCallablePo.getRemark() + "-" + resultVo.getMsg());
-            } else {
-                updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_COMPLETE);
+
+            if (contents.size() < 1) {
+                continue;
             }
-            oweFeeCallableV1InnerServiceSMOImpl.updateOweFeeCallable(updateOweFeeCallablePo);
+
+            //todo 鍌即
+            ResultVo resultVo = MsgNotifyFactory.sendOweFeeMsg(data.getString("communityId"), userId, oweFeeCallablePos.get(0).getOwnerId(), contents, notifyWay);
+            for (OweFeeCallablePo oweFeeCallablePo : oweFeeCallablePos) {
+                if (StringUtil.isEmpty(oweFeeCallablePo.getOwnerId()) || oweFeeCallablePo.getOwnerId().startsWith("-")) {
+                    continue;
+                }
+                updateOweFeeCallablePo = new OweFeeCallablePo();
+                updateOweFeeCallablePo.setOfcId(oweFeeCallablePo.getOfcId());
+                updateOweFeeCallablePo.setCommunityId(oweFeeCallablePo.getCommunityId());
+                if (resultVo.getCode() != ResultVo.CODE_OK) {
+                    updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_FAIL);
+                    updateOweFeeCallablePo.setRemark(oweFeeCallablePo.getRemark() + "-" + resultVo.getMsg());
+                } else {
+                    updateOweFeeCallablePo.setState(OweFeeCallableDto.STATE_COMPLETE);
+                }
+                oweFeeCallableV1InnerServiceSMOImpl.updateOweFeeCallable(updateOweFeeCallablePo);
+            }
         }
     }
 
@@ -167,6 +179,11 @@
         OweFeeCallablePo oweFeeCallablePo = null;
 
         for (ReportOweFeeDto reportOweFeeDto : feeDtos) {
+
+            // todo  鏍¢獙 鏃堕棿鑼冨洿
+            if (!hasInTime(reportOweFeeDto, data)) {
+                continue;
+            }
             oweFeeCallablePo = new OweFeeCallablePo();
 
             oweFeeCallablePo.setAmountdOwed(reportOweFeeDto.getAmountOwed());
@@ -247,5 +264,32 @@
 
     }
 
+    private boolean hasInTime(ReportOweFeeDto tempFeeDto, JSONObject reqJson) {
+        if (!reqJson.containsKey("startTime") || !reqJson.containsKey("endTime")) {
+            return true;
+        }
+
+        String startTime = reqJson.getString("startTime");
+        String endTime = reqJson.getString("endTime");
+
+        if (StringUtil.isEmpty(startTime) || StringUtil.isEmpty(endTime)) {
+            return true;
+        }
+        if (StringUtil.isEmpty(tempFeeDto.getDeadlineTime())) {
+            return true;
+        }
+        if (StringUtil.isEmpty(tempFeeDto.getEndTime())) {
+            return true;
+        }
+
+        if (DateUtil.getDateFromStringB(tempFeeDto.getEndTime()).before(DateUtil.getDateFromStringB(startTime))
+                && DateUtil.getDateFromStringB(tempFeeDto.getDeadlineTime()).after(DateUtil.getDateFromStringB(endTime))
+        ) {
+            return true;
+        }
+
+        return false;
+    }
+
 
 }

--
Gitblit v1.8.0