From 8ce7c720e4e7a604b0ff770349b5556f39d37759 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 13 九月 2021 11:44:38 +0800
Subject: [PATCH] 好省呗应用兼容

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java |  543 ++++++++++++++++++++++++++++++-----------------------
 1 files changed, 305 insertions(+), 238 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java
index 1e6d998..9ffd6f8 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java
@@ -1,238 +1,305 @@
-package com.yeshi.fanli.controller.admin.order;
-
-import com.google.gson.*;
-import com.yeshi.common.entity.PageEntity;
-import com.yeshi.fanli.entity.accept.AdminAcceptData;
-import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
-import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
-import com.yeshi.fanli.job.order.taobao.UpdateOrderJob;
-import com.yeshi.fanli.job.order.taobao.UpdateTBRelationAndSpecialOrderJob;
-import com.yeshi.fanli.service.inter.order.OrderProcessService;
-import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
-import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService;
-import com.yeshi.fanli.util.Constant;
-import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.ThreadUtil;
-import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
-import net.sf.json.JSONObject;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.multipart.commons.CommonsMultipartFile;
-import org.yeshi.utils.JsonUtil;
-import org.yeshi.utils.TimeUtil;
-
-import javax.annotation.Resource;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.lang.reflect.Type;
-import java.util.*;
-
-@Controller
-@RequestMapping("admin/new/api/v1/taobaoOrder")
-public class TaoBaoOrderController {
-
-    @Resource
-    private TaoBaoOrderService taoBaoOrderService;
-
-    @Resource
-    private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService;
-
-    @Resource
-    private UpdateTBRelationAndSpecialOrderJob updateRelationAndSpecialOrderJob;
-
-    @Resource
-    private UpdateOrderJob updateOrderJob;
-
-    @Resource
-    private OrderProcessService orderProcessService;
-
-    /**
-     * 鏌ヨ鍒楄〃 - 鏂板悗鍙�
-     *
-     * @param callback
-     * @param key       鏌ヨ璇� 鍚嶇О
-     * @param pageIndex
-     * @param out
-     */
-    @RequestMapping(value = "listTaoBaoOrder")
-    public void listTaoBaoOrder(AdminAcceptData acceptData, String callback, String key, Integer pageIndex, PrintWriter out) {
-
-        try {
-
-            if (pageIndex == null || pageIndex < 0) {
-                pageIndex = 1;
-            }
-
-            List<TaoBaoOrder> orderList = null;
-            Long count = null;
-
-            if (!StringUtil.isNullOrEmpty(key)) {
-                orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(key);
-                count = (long) orderList.size();
-            } else {
-                orderList = taoBaoOrderService.listAllOrder(pageIndex, Constant.PAGE_SIZE);
-                count = taoBaoOrderService.countAllOrder();
-            }
-
-            int pageSize = Constant.PAGE_SIZE;
-
-            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
-            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
-
-            Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
-                @Override
-                public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
-                    if (value == null) {
-                        return new JsonPrimitive("");
-                    } else {
-                        return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy-MM-dd HH:mm:ss"));
-                    }
-                }
-            }).create();
-
-            JSONObject data = new JSONObject();
-            data.put("pe", pe);
-            data.put("result_list", gson.toJson(orderList));
-
-            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
-
-        } catch (Exception e) {
-            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
-            e.printStackTrace();
-        }
-    }
-
-    @RequestMapping(value = "updateTaoBaoOrder")
-    public void updateTaoBaoOrder(AdminAcceptData acceptData, String callback, String ids, PrintWriter out) {
-        try {
-            if (StringUtil.isNullOrEmpty(ids)) {
-                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂笂浼犺鍗旾D"));
-                return;
-            }
-            net.sf.json.JSONArray idsArray = net.sf.json.JSONArray.fromObject(ids);
-
-            Set<String> orderIds = new HashSet<>();
-
-            for (int i = 0; i < idsArray.size(); i++) {
-                TaoBaoOrder taoBaoOrder = taoBaoOrderService.selectByPrimaryKey(idsArray.optLong(i));
-                orderIds.add(taoBaoOrder.getOrderId());
-            }
-
-            Long[] startTimes = new Long[orderIds.size()];
-            Long[] endTimes = new Long[orderIds.size()];
-
-            int p = 0;
-            for (Iterator<String> its = orderIds.iterator(); its.hasNext(); ) {
-                String orderId = its.next();
-                List<TaoBaoOrder> list = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
-                startTimes[p] = TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss") - 1000L;
-                endTimes[p] = TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss") + 1000L;
-                p++;
-            }
-
-            for (int i = 0; i < idsArray.size(); i++) {
-                updateRelationAndSpecialOrderJob.updateRelationAndSpecialOrder(startTimes[i], endTimes[i]);
-                updateOrderJob.updateOrder(startTimes[i], endTimes[i]);
-            }
-            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鏇存柊鎴愬姛"));
-        } catch (Exception e) {
-            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏇存柊澶辫触"));
-            e.printStackTrace();
-        }
-    }
-
-    @RequestMapping(value = "listTaoBaoWQOrder")
-    public void listTaoBaoWeiQuanOrder(AdminAcceptData acceptData, String callback, String key, Integer pageIndex, PrintWriter out) {
-        try {
-            if (pageIndex == null || pageIndex < 0) {
-                pageIndex = 1;
-            }
-            List<TaoBaoWeiQuanOrder> orderList = null;
-            Long count = null;
-            if (!StringUtil.isNullOrEmpty(key)) {
-                orderList = taoBaoWeiQuanOrderService.listByOrderId(key);
-                count = (long) orderList.size();
-            } else {
-                orderList = taoBaoWeiQuanOrderService.listByState(null, pageIndex, Constant.PAGE_SIZE);
-                count = taoBaoWeiQuanOrderService.countByState(null);
-            }
-
-            int pageSize = Constant.PAGE_SIZE;
-
-            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
-            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
-
-            Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
-                @Override
-                public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
-                    if (value == null) {
-                        return new JsonPrimitive("");
-                    } else {
-                        return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy-MM-dd HH:mm:ss"));
-                    }
-                }
-            }).create();
-
-            JSONObject data = new JSONObject();
-            data.put("pe", pe);
-            data.put("result_list", gson.toJson(orderList));
-
-            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
-
-        } catch (Exception e) {
-            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
-            e.printStackTrace();
-        }
-    }
-
-
-    /**
-     * 鏂板悗鍙扮 涓婁紶璁㈠崟鏂囦欢
-     *
-     * @param acceptData
-     * @param file
-     * @param out
-     */
-    @RequestMapping(value = "uploadWQOrderFile")
-    public void uploadWQOrderFile(AdminAcceptData acceptData, @RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
-
-        if (file == null) {
-            out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓嶈兘涓虹┖"));
-            return;
-        }
-
-        List<TaoBaoWeiQuanOrder> orderList = null;
-        try {
-            orderList = TaoBaoOrderUtil.parseWeiQuanOrder(
-                    file.getInputStream());
-            int pos = 0;
-            for (TaoBaoWeiQuanOrder order : orderList)
-                try {
-                    pos++;
-                    // if (pos == 19||pos == 26)
-                    taoBaoWeiQuanOrderService.addWeiQuanOrder(order);// 娣诲姞缁存潈璁㈠崟鍒版暟鎹簱
-                } catch (Exception e) {
-                    System.out.println("浣嶇疆:" + pos);
-                    e.printStackTrace();
-                }
-            // 澶勭悊缁存潈璁㈠崟
-            out.print(JsonUtil.loadTrueResult("涓婁紶鎴愬姛,绯荤粺姝e湪澶勭悊涓�..."));
-        } catch (IOException e) {
-            out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢澶辫触"));
-            e.printStackTrace();
-        }
-
-        final List<TaoBaoWeiQuanOrder> finalOrderList = orderList;
-
-        ThreadUtil.run(new Runnable() {
-            @Override
-            public void run() {
-                orderProcessService.weiQuanOrder(finalOrderList);
-            }
-        });
-
-    }
-}
+package com.yeshi.fanli.controller.admin.order;
+
+import com.google.gson.*;
+import com.yeshi.common.entity.PageEntity;
+import com.yeshi.fanli.dao.taobao.TaoBaoOrderBackUpDao;
+import com.yeshi.fanli.entity.accept.AdminAcceptData;
+import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
+import com.yeshi.fanli.entity.taobao.TaoBaoOrderBackUp;
+import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
+import com.yeshi.fanli.job.order.taobao.UpdateOrderJob;
+import com.yeshi.fanli.job.order.taobao.UpdateTBRelationAndSpecialOrderJob;
+import com.yeshi.fanli.service.inter.order.OrderProcessService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.ThreadUtil;
+import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
+import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil;
+import net.sf.json.JSONObject;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.multipart.commons.CommonsMultipartFile;
+import org.yeshi.utils.JsonUtil;
+import org.yeshi.utils.TimeUtil;
+
+import javax.annotation.Resource;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.lang.reflect.Type;
+import java.util.*;
+
+@Controller
+@RequestMapping("admin/new/api/v1/taobaoOrder")
+public class TaoBaoOrderController {
+
+    @Resource
+    private TaoBaoOrderService taoBaoOrderService;
+
+    @Resource
+    private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService;
+
+    @Resource
+    private UpdateTBRelationAndSpecialOrderJob updateRelationAndSpecialOrderJob;
+
+    @Resource
+    private UpdateOrderJob updateOrderJob;
+
+    @Resource
+    private OrderProcessService orderProcessService;
+
+    @Resource
+    private TaoBaoOrderBackUpDao taoBaoOrderBackUpDao;
+
+    /**
+     * 鏌ヨ鍒楄〃 - 鏂板悗鍙�
+     *
+     * @param callback
+     * @param key       鏌ヨ璇� 鍚嶇О
+     * @param pageIndex
+     * @param out
+     */
+    @RequestMapping(value = "listTaoBaoOrder")
+    public void listTaoBaoOrder(AdminAcceptData acceptData, String callback, String key, Integer pageIndex, PrintWriter out) {
+
+        try {
+
+            if (pageIndex == null || pageIndex < 0) {
+                pageIndex = 1;
+            }
+
+            List<TaoBaoOrder> orderList = null;
+            Long count = null;
+
+            if (!StringUtil.isNullOrEmpty(key)) {
+                orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(key);
+                count = (long) orderList.size();
+            } else {
+                orderList = taoBaoOrderService.listAllOrder(pageIndex, Constant.PAGE_SIZE);
+                count = taoBaoOrderService.countAllOrder();
+            }
+
+            int pageSize = Constant.PAGE_SIZE;
+
+            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
+            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
+
+            Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
+                @Override
+                public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
+                    if (value == null) {
+                        return new JsonPrimitive("");
+                    } else {
+                        return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy-MM-dd HH:mm:ss"));
+                    }
+                }
+            }).create();
+
+            JSONObject data = new JSONObject();
+            data.put("pe", pe);
+            data.put("result_list", gson.toJson(orderList));
+
+            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+        } catch (Exception e) {
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
+            e.printStackTrace();
+        }
+    }
+
+
+    @RequestMapping(value = "listTaoBaoOrderNoUpdate")
+    public void listTaoBaoOrderUnUpdate(AdminAcceptData acceptData, String callback, String key, Integer pageIndex, PrintWriter out) {
+
+        try {
+            if (pageIndex == null || pageIndex < 0) {
+                pageIndex = 1;
+            }
+
+            List<TaoBaoOrder> orderList = null;
+            Long count = null;
+
+            if (!StringUtil.isNullOrEmpty(key)) {
+                orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(key);
+                count = (long) orderList.size();
+            } else {
+                orderList = taoBaoOrderService.listAllOrder(pageIndex, Constant.PAGE_SIZE);
+                count = taoBaoOrderService.countAllOrder();
+            }
+
+            int pageSize = Constant.PAGE_SIZE;
+
+            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
+            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
+
+            Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
+                @Override
+                public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
+                    if (value == null) {
+                        return new JsonPrimitive("");
+                    } else {
+                        return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy-MM-dd HH:mm:ss"));
+                    }
+                }
+            }).create();
+
+            JSONObject data = new JSONObject();
+            data.put("pe", pe);
+            data.put("result_list", gson.toJson(orderList));
+
+            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+        } catch (Exception e) {
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
+            e.printStackTrace();
+        }
+    }
+
+
+    @RequestMapping(value = "updateTaoBaoOrder")
+    public void updateTaoBaoOrder(AdminAcceptData acceptData, String callback, String ids, PrintWriter out) {
+        try {
+            if (StringUtil.isNullOrEmpty(ids)) {
+                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂笂浼犺鍗旾D"));
+                return;
+            }
+            net.sf.json.JSONArray idsArray = net.sf.json.JSONArray.fromObject(ids);
+
+            Set<String> orderIds = new HashSet<>();
+
+            for (int i = 0; i < idsArray.size(); i++) {
+                orderIds.add(idsArray.optString(i));
+            }
+
+            int p = 0;
+            for (Iterator<String> its = orderIds.iterator(); its.hasNext(); ) {
+                String orderId = its.next();
+                List<TaoBaoOrder> list = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
+                try {
+                    //濡傛灉鍒涘缓鏃堕棿瓒呰繃浜�90澶╃殑鎶涘嚭寮傚父
+                    if (list.size() == 0 || TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss") < System.currentTimeMillis() - 1000 * 60 * 60L * 24 * 90)
+                        throw new Exception("闇�瑕佹湰鍦版洿鏂�");
+                    long startTime = TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss") - 1000L;
+                    long endTime = TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss") + 1000L;
+                    updateRelationAndSpecialOrderJob.updateRelationAndSpecialOrder(startTime, endTime);
+                    updateOrderJob.updateOrder(startTime, endTime);
+                } catch (Exception e) {
+                    //浠庢湰鍦板浠芥嬁鍑鸿鍗�
+                    List<String> tradeIds = new ArrayList<>();
+                    for (TaoBaoOrder order : list) {
+                        tradeIds.add(order.getTradeId());
+                    }
+                    List<TaoBaoOrderBackUp> orderBackUps = taoBaoOrderBackUpDao.listByIds(tradeIds);
+                    List<TaoBaoOrder> orderList = new ArrayList<>();
+                    for (TaoBaoOrderBackUp backUp : orderBackUps) {
+                        orderList.add(TaoKeOrderApiUtil.parseTaoBaoOrderNew(JSONObject.fromObject(backUp.getContent())));
+                    }
+                    updateOrderJob.addOrder(orderList);
+                }
+            }
+
+            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鏇存柊鎴愬姛"));
+        } catch (Exception e) {
+
+
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏇存柊澶辫触"));
+            e.printStackTrace();
+        }
+    }
+
+    @RequestMapping(value = "listTaoBaoWQOrder")
+    public void listTaoBaoWeiQuanOrder(AdminAcceptData acceptData, String callback, String key, Integer pageIndex, PrintWriter out) {
+        try {
+            if (pageIndex == null || pageIndex < 0) {
+                pageIndex = 1;
+            }
+            List<TaoBaoWeiQuanOrder> orderList = null;
+            Long count = null;
+            if (!StringUtil.isNullOrEmpty(key)) {
+                orderList = taoBaoWeiQuanOrderService.listByOrderId(key);
+                count = (long) orderList.size();
+            } else {
+                orderList = taoBaoWeiQuanOrderService.listByState(null, pageIndex, Constant.PAGE_SIZE);
+                count = taoBaoWeiQuanOrderService.countByState(null);
+            }
+
+            int pageSize = Constant.PAGE_SIZE;
+
+            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
+            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
+
+            Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
+                @Override
+                public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
+                    if (value == null) {
+                        return new JsonPrimitive("");
+                    } else {
+                        return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy-MM-dd HH:mm:ss"));
+                    }
+                }
+            }).create();
+
+            JSONObject data = new JSONObject();
+            data.put("pe", pe);
+            data.put("result_list", gson.toJson(orderList));
+
+            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+        } catch (Exception e) {
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
+            e.printStackTrace();
+        }
+    }
+
+
+    /**
+     * 鏂板悗鍙扮 涓婁紶璁㈠崟鏂囦欢
+     *
+     * @param acceptData
+     * @param file
+     * @param out
+     */
+    @RequestMapping(value = "uploadWQOrderFile")
+    public void uploadWQOrderFile(AdminAcceptData acceptData, @RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
+
+        if (file == null) {
+            out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓嶈兘涓虹┖"));
+            return;
+        }
+
+        List<TaoBaoWeiQuanOrder> orderList = null;
+        try {
+            orderList = TaoBaoOrderUtil.parseWeiQuanOrder(
+                    file.getInputStream());
+            int pos = 0;
+            for (TaoBaoWeiQuanOrder order : orderList)
+                try {
+                    pos++;
+                    // if (pos == 19||pos == 26)
+                    taoBaoWeiQuanOrderService.addWeiQuanOrder(order);// 娣诲姞缁存潈璁㈠崟鍒版暟鎹簱
+                } catch (Exception e) {
+                    System.out.println("浣嶇疆:" + pos);
+                    e.printStackTrace();
+                }
+            // 澶勭悊缁存潈璁㈠崟
+            out.print(JsonUtil.loadTrueResult("涓婁紶鎴愬姛,绯荤粺姝e湪澶勭悊涓�..."));
+        } catch (IOException e) {
+            out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢澶辫触"));
+            e.printStackTrace();
+        }
+
+        final List<TaoBaoWeiQuanOrder> finalOrderList = orderList;
+
+        ThreadUtil.run(new Runnable() {
+            @Override
+            public void run() {
+                orderProcessService.weiQuanOrder(finalOrderList);
+            }
+        });
+
+    }
+}

--
Gitblit v1.8.0