From 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 26 四月 2024 18:02:17 +0800
Subject: [PATCH] 唯品会链接解析升级

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/order/TaoBaoOrderController.java |  638 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 400 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..347f94b 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,400 @@
-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.mybatis.HongBaoV2Mapper;
+import com.yeshi.fanli.dao.mybatis.order.CommonOrderMapper;
+import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper;
+import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoOrderMapper;
+import com.yeshi.fanli.dao.taobao.TaoBaoOrderBackUpDao;
+import com.yeshi.fanli.entity.accept.AdminAcceptData;
+import com.yeshi.fanli.entity.bus.user.HongBaoV2;
+import com.yeshi.fanli.entity.order.CommonOrder;
+import com.yeshi.fanli.entity.order.HongBaoOrder;
+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.TaoBaoOrderUpdateJob;
+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.BeanUtil;
+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.math.BigDecimal;
+import java.util.*;
+
+@Controller
+@RequestMapping("admin/new/api/v1/taobaoOrder")
+public class TaoBaoOrderController {
+
+    @Resource
+    private TaoBaoOrderService taoBaoOrderService;
+
+    @Resource
+    private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService;
+
+    @Resource
+    private OrderProcessService orderProcessService;
+
+    @Resource
+    private TaoBaoOrderUpdateJob taoBaoOrderUpdateJob;
+
+
+    @Resource
+    private CommonOrderMapper commonOrderMapper;
+    @Resource
+    private HongBaoOrderMapper hongBaoOrderMapper;
+    @Resource
+    private HongBaoV2Mapper hongBaoV2Mapper;
+
+    /**
+     * 鏌ヨ鍒楄〃 - 鏂板悗鍙�
+     *
+     * @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();
+                taoBaoOrderUpdateJob.updateTaoBaoOrder(orderId);
+            }
+
+            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);
+            }
+        });
+
+    }
+
+    /**
+     * @return void
+     * @author hxh
+     * @description 杩濊璁㈠崟澶勭悊
+     * @date 15:06 2021/10/23
+     * @param: acceptData
+     * @param: content
+     * @param: out
+     **/
+    @RequestMapping(value = "weiGui")
+    public void weiGuiOrder(AdminAcceptData acceptData, String content, String callback, PrintWriter out) {
+
+        if (StringUtil.isNullOrEmpty(content)) {
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂笂浼犺鍗曞彿"));
+            return;
+        }
+
+        List<String> orderIdList = new ArrayList<>();
+        Scanner scanner = new Scanner(content);
+        while (scanner.hasNextLine()) {
+            String line = scanner.nextLine();
+            if (!StringUtil.isNullOrEmpty(line))
+                orderIdList.add(line.trim());
+        }
+        scanner.close();
+
+        if (orderIdList.size() == 0) {
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂笂浼犺鍗曞彿"));
+            return;
+        }
+
+        BigDecimal fanliMoney = new BigDecimal(0);
+        BigDecimal unFanliMoney = new BigDecimal(0);
+        BigDecimal childFanliMoney = new BigDecimal(0);
+        int validCount = 0;
+        int inValidCount = 0;
+        Set<Long> uids = new HashSet<>();
+        try {
+            for (int c = 0; c < orderIdList.size(); c++) {
+                String orderId = orderIdList.get(c);
+                List<CommonOrder> orderList = commonOrderMapper.listBySourceTypeAndOrderNo(Constant.SOURCE_TYPE_TAOBAO,
+                        orderId);
+                if (orderList.size() > 0) {
+                    validCount++;
+                    for (CommonOrder commonOrder : orderList) {
+                        uids.add(commonOrder.getUserInfo().getId());
+                        HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId());
+                        if (hongBaoOrder != null) {
+                            HongBaoV2 v2 = hongBaoOrder.getHongBaoV2();
+                            if (v2.getState() == 3) {
+                                fanliMoney = fanliMoney.add(v2.getMoney());
+                                // 鏌ヨ涓婄骇鏄惁鍒拌处
+                                List<HongBaoV2> children = hongBaoV2Mapper.listChildrenById(v2.getId());
+                                if (children != null && children.size() > 0) {
+                                    for (HongBaoV2 hongBao : children) {
+                                        if (hongBao.getState() == HongBaoV2.STATE_BUKELINGQU
+                                                || hongBao.getState() == HongBaoV2.STATE_KELINGQU) {
+                                            HongBaoV2 updateHongBao = new HongBaoV2(hongBao.getId());
+                                            updateHongBao.setState(HongBaoV2.STATE_SHIXIAO);
+                                            updateHongBao.setBeizhu("鑱旂洘杩濊");
+                                            updateHongBao.setUpdateTime(new Date());
+                                            hongBaoV2Mapper.updateByPrimaryKeySelective(updateHongBao);
+                                        } else {//
+                                            childFanliMoney = childFanliMoney.add(hongBao.getMoney());
+                                        }
+                                    }
+                                }
+                            } else if (v2.getState() == 1 || v2.getState() == 2) {
+                                unFanliMoney = unFanliMoney.add(v2.getMoney());
+                                HongBaoV2 update = new HongBaoV2(v2.getId());
+                                update.setState(HongBaoV2.STATE_SHIXIAO);
+                                update.setBeizhu("鑱旂洘杩濊");
+                                update.setUpdateTime(new Date());
+                                hongBaoV2Mapper.updateByPrimaryKeySelective(update);
+                                // 鍙戠幇瀛愯鍗�
+                                List<HongBaoV2> children = hongBaoV2Mapper.listChildrenById(v2.getId());
+                                if (children != null && children.size() > 0) {
+                                    for (HongBaoV2 hongBao : children) {
+                                        HongBaoV2 updateHongBao = new HongBaoV2(hongBao.getId());
+                                        updateHongBao.setState(HongBaoV2.STATE_SHIXIAO);
+                                        updateHongBao.setBeizhu("鑱旂洘杩濊");
+                                        updateHongBao.setUpdateTime(new Date());
+                                        hongBaoV2Mapper.updateByPrimaryKeySelective(updateHongBao);
+                                    }
+                                }
+                            }
+                        }
+                    }
+                } else
+                    inValidCount++;
+            }
+
+            System.out.println(
+                    validCount + "-" + inValidCount + "-" + fanliMoney + "-" + unFanliMoney + "-" + childFanliMoney);
+            Iterator<Long> its = uids.iterator();
+            while (its.hasNext()) {
+                System.out.println(its.next());
+            }
+            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("澶勭悊鎴愬姛"));
+        } catch (Exception e) {
+            e.printStackTrace();
+            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("澶勭悊鍑洪敊锛�" + e.getMessage()));
+        }
+    }
+
+}

--
Gitblit v1.8.0