From 58f63e3a124680d0b1f571f5d0a1e3ed308d43be Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期五, 20 三月 2026 14:45:34 +0800
Subject: [PATCH] 质押合同页面重构

---
 fzzy-igdss-core/src/main/java/com/fzzy/igds/timer/JobWarnService.java |   51 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 40 insertions(+), 11 deletions(-)

diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/timer/JobWarnService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/timer/JobWarnService.java
index 729763a..d8bdf0a 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/timer/JobWarnService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/timer/JobWarnService.java
@@ -2,6 +2,7 @@
 
 import com.fzzy.igds.constant.Constant;
 import com.fzzy.igds.data.BaseResp;
+import com.fzzy.igds.data.PledgeReminders;
 import com.fzzy.igds.domain.Depot;
 import com.fzzy.igds.domain.FoodPrice;
 import com.fzzy.igds.domain.PledgeContract;
@@ -19,6 +20,7 @@
 import javax.annotation.Resource;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description 璀﹀憡淇℃伅瀹氭椂缁熻锛氳繕娆炬彁閱�
@@ -26,7 +28,6 @@
  * @Date 2026/1/23 9:14
  */
 @Slf4j
-
 @Service
 public class JobWarnService {
 
@@ -39,34 +40,37 @@
     @Resource
     private BizWorkService workService;
 
+
     /**
      * 姣忓ぉ涓ょ偣鎵ц锛氳繕娆炬彁閱�
      */
-//    @Scheduled(cron = "0 0 2 * * ?")
-    @Scheduled(cron = "0 6 10 * * ?")
+    @Scheduled(cron = "0 0 2 * * ?")
     public void timer() {
-        doExe();
+        doExe(null);
     }
 
     /**
      * 寮�濮嬭川鎶煎悎鍚屾牳绠�
      */
-    public void doExe() {
-
-        List<PledgeContract> contractList = contractService.getContractByPledge(new Date());
+    public void doExe(String bankId) {
+        List<PledgeContract> contractList = contractService.getContractByPledge(new Date(), bankId);
         if (null == contractList || contractList.isEmpty()) {
             log.error("-----褰撳墠娌℃湁鏈夋晥鏈熺殑璐ㄦ娂鍚堝悓锛屼笉鎵ц鎻愰啋鏍哥畻-----");
             return;
         }
-
         Depot depot;
         FoodPrice foodPrice;
         WorkOrderConf conf;
+
         double sumMoney = 0.0;
         double per = 0.0;
         double backMoney = 0.0;
         for (PledgeContract pledgeContract : contractList) {
             log.info("-----寮�濮嬪鐞嗚川鎶煎悎鍚岋細{}-----", pledgeContract.getName());
+//            List<PledgeReminders> remindersList = new ArrayList<>();
+
+            Map<String,PledgeReminders> remindersMap = new java.util.HashMap<>();
+
 
             //璁$畻寰呰繕娆鹃噾棰�
             backMoney = pledgeContract.getContractAmount() - pledgeContract.getRepaidAmount();
@@ -113,14 +117,39 @@
                 }
 
                 sumMoney += depot.getStorageReal() * foodPrice.getPrice();
+                //鎸夊搧绉�+鍗曚环鐢熸垚key锛屾潵浣滀负鍞竴鏍囪瘑锛岀粺璁$伯椋熷搧绉嶇殑搴撳瓨閲忎互鍙婄伯椋熷搧绉嶄俊鎭�
+                String key=depot.getFoodVariety()+foodPrice.getPrice();
+                PledgeReminders pledgeReminders = remindersMap.get(key);
+                if (null == pledgeReminders) {
+                    pledgeReminders = new PledgeReminders();
+                    pledgeReminders.setFoodVariety(depot.getFoodVariety());
+                    pledgeReminders.setFoodVarietyName(depot.getFoodVarietyName());
+                    pledgeReminders.setFoodPrice(foodPrice.getPrice());
+                    pledgeReminders.setStorageReal(pledgeReminders.getStorageReal()+depot.getStorageReal());
+
+                }else{
+                    pledgeReminders.setStorageReal(pledgeReminders.getStorageReal()+depot.getStorageReal());
+                }
+                remindersMap.put(key,pledgeReminders);
+//                PledgeReminders reminders = new PledgeReminders();
+//                reminders.setDepotId(depot.getId());
+//                reminders.setDepotName(depot.getName());
+//                reminders.setFoodVariety(depot.getFoodVariety());
+//                reminders.setFoodVarietyName(depot.getFoodVarietyName());
+//                reminders.setFoodPrice(foodPrice.getPrice());
+//                reminders.setStorageReal(depot.getStorageReal());
+//                remindersList.add(reminders);
+                log.info("-----褰撳墠鍚堝悓={}涓嬩粨搴�={}锛氬搴旂殑瀹為檯鍌ㄩ噺={}锛屽搴旂伯椋熷崟浠�={}-----", pledgeContract.getName(), depot.getName(), depot.getStorageReal(), foodPrice.getPrice());
             }
 
             per = sumMoney / backMoney;
 
-            if (per > 1.2) {
-                log.error("-----褰撳墠鍚堝悓={}涓嬭川鎶间粨搴�={}搴撳瓨鏈埌寰呰繕娆剧殑120%锛屼笉鐢熸垚杩樻鎻愰啋宸ュ崟-----", pledgeContract.getName(), pledgeContract.getDepotNames());
+            if (per > 1.1) {
+                //璐у彲浠ユ姷璐锋
+                log.error("-----褰撳墠鍚堝悓={}涓嬭川鎶间粨搴�={}搴撳瓨鏈埌寰呰繕娆剧殑110%锛宻umMoney={}锛宐ackMoney={}锛屼笉鐢熸垚杩樻鎻愰啋宸ュ崟-----", pledgeContract.getName(), pledgeContract.getDepotNames(), sumMoney, backMoney);
                 continue;
             }
+            //璐т笉瓒充互鎶佃捶娆� ,鎻愰啋浼佷笟琛ラ挶
 
             //鎵ц娴佺▼
             conf = workService.getConfByDeptId(pledgeContract.getPledgeDept(), WorkBizType.TYPE_50);
@@ -130,7 +159,7 @@
                 continue;
             }
 
-            BaseResp resp = workService.startByBackMoney(pledgeContract, conf);
+            BaseResp resp = workService.startByBackMoney(pledgeContract, conf,remindersMap);
             log.info("---------褰撳墠鍚堝悓={}鍚姩杩樻鎻愰啋宸ュ崟娴佺▼------{}", pledgeContract.getName(), resp);
         }
     }

--
Gitblit v1.9.3