From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 25 二月 2025 16:41:22 +0800
Subject: [PATCH] 淘宝转链接口更新

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java |   52 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 44 insertions(+), 8 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
index 8d1f26f..1213d00 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
@@ -7,11 +7,7 @@
 import java.net.URLEncoder;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -19,6 +15,8 @@
 
 import com.yeshi.fanli.entity.SystemEnum;
 import com.yeshi.fanli.entity.accept.AdminAcceptData;
+import com.yeshi.fanli.entity.order.CommonOrder;
+import com.yeshi.fanli.service.inter.order.CommonOrderService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -86,6 +84,9 @@
 
     @Resource
     private CommonOrderCountService commonOrderCountService;
+
+    @Resource
+    private CommonOrderService commonOrderService;
 
     @Resource
     private UserInfoService userInfoService;
@@ -482,12 +483,47 @@
         // 鏌ヨ鍚屽簵閾哄晢鍝侊紝鍚屽晢鍝佽鍗曡秴杩囦竴瀹氭暟閲忕殑
         List<Integer> typeList = new ArrayList<>();
         typeList.add(HongBaoV2.TYPE_ZIGOU);
-        long sameGoodsOrderCount = commonOrderCountService.countSameGoodsOrderByUidAndHongBaoType(typeList, uid,
+
+        List<Long> goodsIds = commonOrderCountService.listSameGoodsIdByUidAndHongBaoType(typeList, uid,
                 Integer.parseInt(configService.getValue(ConfigKeyEnum.adminMinSameGoodsOrderCount.getKey(), acceptData.getSystem())));
+        int sameGoodsDangerCount = 0;
+        if (goodsIds.size() > 0) {
+            for (int i = 0; i < goodsIds.size(); i++) {
+                long goodsId = goodsIds.get(i);
+                Date minDate = new Date(System.currentTimeMillis() - 1000 * 60 * 60L * 24 * 365L);
+                List<CommonOrder> commonOrdersList = commonOrderService.listByGoodsIdAndUidAndMinThirdCreateTime(goodsId, uid, minDate);
+                Map<String, Date> cmap = new HashMap<>();
+                if (commonOrdersList != null)
+                    for (CommonOrder co : commonOrdersList) {
+                        if (co.getState() == CommonOrder.STATE_FK || co.getState() == CommonOrder.STATE_JS || co.getState() == CommonOrder.STATE_WQ)
+                            cmap.put(co.getOrderNo(), co.getThirdCreateTime());
+                    }
+                List<Date> dateList = new ArrayList<>();
+                for (Iterator<String> its = cmap.keySet().iterator(); its.hasNext(); ) {
+                    String orderNo = its.next();
+                    dateList.add(cmap.get(orderNo));
+                }
+                Collections.sort(dateList);
+                Date lastDate = null;
+
+                for (Date date : dateList) {
+                    if (lastDate != null) {
+                        if (Math.abs(date.getTime() - lastDate.getTime()) < 1000 * 60 * 60 * 24L * 15) {
+                            sameGoodsDangerCount++;
+                            break;
+                        }
+                    } else {
+                        lastDate = date;
+                    }
+                }
+            }
+        }
+
+
         long sameShopOrderCount = commonOrderCountService.countSameShopOrderByUidAndHongBaoType(typeList, uid,
                 Integer.parseInt(configService.getValue(ConfigKeyEnum.adminMinSameShopOrderCount.getKey(), acceptData.getSystem())));
-        if (sameGoodsOrderCount > 0 || sameShopOrderCount > 0) {
-            String text = (String.format("鍚屽簵閾�:%s 鍚屽晢鍝�:%s", sameShopOrderCount, sameGoodsOrderCount));
+        if (sameGoodsDangerCount>0 || sameShopOrderCount > 0) {
+            String text = (String.format("鍚屽簵閾�:%s 鍚屽晢鍝�:%s", sameShopOrderCount, sameGoodsDangerCount));
             JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(text));
             return;
         }

--
Gitblit v1.8.0