admin
2019-03-13 7e3d4837b8464c32c4c25f40eb01222a8759eeb9
删除PidOrder相关代码
6个文件已删除
21个文件已修改
2957 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/admin/DataAdminController.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java 597 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java 334 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/PidOrderMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/HongBaoOrderMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/order/PidOrderDao.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/activity/ActivityUser.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/activity/RecommendActivityTaoBaoGoods.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/taobao/PidOrder.java 329 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateCommonOrderJob.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateOrderJob.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/PidOrderMapper.xml 301 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/order/HongBaoOrderMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareServiceImpl.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoV2ServiceImpl.java 233 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/LostOrderServiceImpl.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/PidOrderServiceImpl.java 653 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareService.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/hongbao/HongBaoV2Service.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/HongBaoOrderService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/PidOrderService.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/admin/DataAdminController.java
@@ -10,17 +10,16 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.entity.admin.HistorySearchAdmin;
import com.yeshi.fanli.entity.admin.ScanHistoryAdmin;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.user.HistorySearchService;
import com.yeshi.fanli.service.inter.user.ScanHistoryService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.Utils;
import org.yeshi.utils.JsonUtil;
import net.sf.json.JSONObject;
@@ -40,34 +39,11 @@
    @Resource
    private HistorySearchService historySearchService;
    @Resource
    private PidOrderService pidOrderService;
    private final static int TOPSUM = 100;
    private final static String AWEEK = "1";
    private final static String HALFMONTH = "2";
    private final static String AMONTH = "3";
    private final static String THREEMONTH = "4";
    @RequestMapping(value = "getdatacount", method = RequestMethod.POST)
    public void getDataCount(PrintWriter out) {
        long startTime = TimeUtil.getNextDay(-1).getTime();
        long endTime = startTime + 86400000;
        long orderCount = orderService.getOrderCountByTime(startTime, endTime);
        long shareOrderCount = pidOrderService.getPidOrderNormalCount(new Date(startTime), new Date(endTime));
        long userCount = userInfoService.getUserCount();
        long historyCount = scanHistoryService.getScanHistory(startTime, endTime);
        List<ScanHistoryAdmin> scanHisoryList = scanHistoryService.getTop(startTime, endTime, TOPSUM);
        JSONObject data = new JSONObject();
        data.put("orderCount", orderCount);
        data.put("shareOrderCount", shareOrderCount);
        data.put("userCount", userCount);
        data.put("historyCount", historyCount);
        data.put("scanHisoryList", scanHisoryList);
        out.write(JsonUtil.loadTrueResult(data));
    }
    @RequestMapping(value = "getGoodsBrowseList", method = RequestMethod.POST)
    public void getGoodsBrowseList(String type, PrintWriter out) {
fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
@@ -1,7 +1,6 @@
package com.yeshi.fanli.controller.admin;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.net.URLDecoder;
import java.text.ParseException;
@@ -9,16 +8,11 @@
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -33,16 +27,9 @@
import com.yeshi.fanli.controller.admin.utils.AdminUtils;
import com.yeshi.fanli.entity.bus.user.Extract;
import com.yeshi.fanli.entity.bus.user.ExtractAuditRecord;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.OrderItem;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.common.AdminUser;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.ExtractException;
import com.yeshi.fanli.exception.NotExistObjectException;
import com.yeshi.fanli.exception.ObjectStateException;
@@ -54,7 +41,6 @@
import com.yeshi.fanli.service.inter.count.UserInfoCountService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.push.PushRecordService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
@@ -66,7 +52,9 @@
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
@Controller
@RequestMapping("admin/new/api/v1/extract")
@@ -107,10 +95,7 @@
    @Resource
    private OrderItemServcie orderItemServcie;
    @Resource
    private PidOrderService pidOrderService;
    @Resource
    private RedisManager redisManager;
@@ -859,580 +844,6 @@
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
            e.printStackTrace();
        }
    }
    /**
     * 根据用户id查询相应订单列表
     *
     * @param callback
     * @param pageIndex
     * @param key
     *            用户id
     * @param out
     */
    @RequestMapping(value = "getOrderRecordList")
    public void getOrderRecordList(String callback, Integer pageIndex, Integer pageSize, Long key, String startTime,
            String endTime, PrintWriter out) {
        try {
            if (key == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("未获取到用户id"));
                return;
            }
            if (!StringUtil.isNullOrEmpty(endTime)) {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                Date enddate = sdf.parse(endTime);
                Calendar c = Calendar.getInstance();
                c.setTime(enddate);
                c.add(Calendar.DAY_OF_MONTH, 1);// 今天+1天
                endTime = sdf.format(c.getTime());
            }
            if (pageIndex == null)
                pageIndex = 1;
            if (pageSize == null)
                pageSize = Constant.PAGE_SIZE;
            List<HongBao> list = hongBaoService.selectOrderByUid(pageIndex, pageSize, key, startTime, endTime);
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该用户无订单记录"));
                return;
            }
            Map<String, List<TaoBaoWeiQuanOrder>> wq = new HashMap<String, List<TaoBaoWeiQuanOrder>>();
            for (HongBao hongBao : list) {
                String orderId = hongBao.getOrderId();
                List<TaoBaoWeiQuanOrder> weiQuanList = taoBaoWeiQuanOrderService.getWeiQuanSuccessOrders(orderId);
                if (weiQuanList != null && weiQuanList.size() > 0) {
                    wq.put(orderId, weiQuanList);
                }
            }
            /* 验证网络: */
            StringBuffer auctionIdBuf = new StringBuffer();
            List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>();
            for (HongBao hongBao : list) {
                Map<String, Object> map = new HashMap<String, Object>();
                Long preGettime = hongBao.getPreGettime();
                Long getTime = hongBao.getGetTime();
                Integer state = hongBao.getState();
                Integer type = hongBao.getType();
                String orderId = hongBao.getOrderId();
                // 单笔收益金额
                BigDecimal money = hongBao.getMoney();
                map.put("getTime", getTime);
                // 子订单号
                String orderItemId = "";
                map.put("orderItemId", orderItemId);
                /* 订单状态判断:1 订单已付款 2、订单已结算 4、订单失效 */
                if (state == HongBao.STATE_SHIXIAO) {
                    map.put("orderState", 4); // 订单失效
                } else if (state == HongBao.STATE_BUKELINGQU) {
                    Integer orderState = null;
                    if (type == HongBao.TYPE_SHARE_GOODS) {
                        // 分享订单
                        Long hongbaoId = hongBao.getId();
                        PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                        String pidstate = pidOrder.getState();
                        if ("订单付款".equals(pidstate)) {
                            orderState = 1;
                        } else if ("订单结算".equals(pidstate)) {
                            orderState = 2;
                        } else if ("订单失效".equals(pidstate)) {
                            orderState = 4;
                        }
                    } else {
                        if (preGettime != null && preGettime > 0) {
                            orderState = 2; // 订单结算
                        } else {
                            orderState = 1; // 订单已付款
                        }
                    }
                    map.put("orderState", orderState);
                } else if (state == HongBao.STATE_KELINGQU || state == HongBao.STATE_YILINGQU) {
                    map.put("orderState", 2); // 订单结算
                }
                /* 订单返利状态: 2未到账 3已到账 4已失效 */
                if (HongBao.STATE_YILINGQU == state) {
                    map.put("moneyState", 3); // 已到账
                } else if (HongBao.STATE_BUKELINGQU == state || HongBao.STATE_KELINGQU == state) {
                    map.put("moneyState", 2); // 未到账
                } else {
                    map.put("moneyState", 4); // 已失效
                }
                /* 订单类型:1系统红包 2、自购订单 3、邀请订单 4 分享订单 */
                int rebateSource = 0;
                if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
                    // 3-活动红包 4-新人红包
                    rebateSource = 1;
                } else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
                    // 自购订单
                    rebateSource = 2;
                } else if (type == HongBao.TYPE_YAOQING || type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI
                        || type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
                    // 邀请人自购订单+邀请人分享订单
                    rebateSource = 3;
                } else if (type == HongBao.TYPE_SHARE_GOODS) {
                    // 分享订单
                    rebateSource = 4;
                }
                map.put("rebateSource", rebateSource);
                // 获取订单信息
                Map<String, Object> inMap = getOrderItem(hongBao);
                OrderItem orderItem = (OrderItem) inMap.get("orderItem");
                Long endtime = (Long) inMap.get("endtime");
                Long thirdCreateTime = (Long) inMap.get("thirdCreateTime");
                /* 初始化 空值 */
                if (orderItem == null) {
                    orderItem = new OrderItem();
                    map.put("goodsStae", "-1");
                }
                // 订单来源 0 无 1淘宝 2 京东
                map.put("orderSource", 1);
                // 当前实际返利金额
                orderItem.setFanMoney(money);
                String itemOrderId = orderItem.getOrderId();
                // 红包对应订单号
                if (StringUtil.isNullOrEmpty(itemOrderId))
                    orderItem.setOrderId(orderId);
                Long auctionId = orderItem.getAuctionId();
                if (auctionId != null) {
                    auctionIdBuf.append(auctionId + ",");
                } else {
                    if (!StringUtil.isNullOrEmpty(orderId)) {
                        List<TaoBaoOrder> taoBaoOrders = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
                        if (taoBaoOrders != null && taoBaoOrders.size() > 0) {
                            TaoBaoOrder taoBaoOrder = taoBaoOrders.get(0);
                            Long auctionId2 = taoBaoOrder.getAuctionId();
                            orderItem.setAuctionId(auctionId2);
                            auctionIdBuf.append(auctionId + ",");
                            orderItem.setPayMoney(taoBaoOrder.getPayment());
                            orderItem.setTitle(taoBaoOrder.getTitle());
                            String settlementTime = taoBaoOrder.getSettlementTime();
                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                            if (!StringUtil.isNullOrEmpty(settlementTime)) {
                                Date settleDate = sdf.parse(settlementTime);
                                endtime = settleDate.getTime();
                            }
                            String createTime = taoBaoOrder.getCreateTime();
                            if (!StringUtil.isNullOrEmpty(createTime)) {
                                Date createDate = sdf.parse(createTime);
                                thirdCreateTime = createDate.getTime();
                            }
                        }
                    }
                }
                map.put("orderItem", orderItem);
                // 收货时间
                map.put("endtime", endtime);
                // 下单时间
                map.put("thirdCreateTime", thirdCreateTime);
                listmap.add(map);
            }
            /* 验证网络: 获取商品链接 图片链接 */
            List<TaoBaoGoodsBrief> goodsBriefList = null;
            if (auctionIdBuf != null && auctionIdBuf.length() > 0) {
                String auctionIds = auctionIdBuf.toString();
                String ids = auctionIds.substring(0, auctionIds.length() - 1);
                try {
                    goodsBriefList = TaoKeApiUtil.getBatchGoodsInfos(ids);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            List<Map<String, Object>> listResult = new ArrayList<Map<String, Object>>();
            Iterator<Map<String, Object>> iterator = listmap.iterator();
            while (iterator.hasNext()) {
                Map<String, Object> map = iterator.next();
                int goodsStae = 1;
                String auctionUrl = ""; // 商品链接
                OrderItem orderItem = (OrderItem) map.get("orderItem");
                Long auctionId = orderItem.getAuctionId();
                if (auctionId != null) {
                    if (goodsBriefList != null && goodsBriefList.size() > 0) {
                        for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsBriefList) {
                            Long auctionIdTB = taoBaoGoodsBrief.getAuctionId();
                            if (auctionId.equals(auctionIdTB)) {
                                goodsStae = 0;// 在售
                                auctionUrl = taoBaoGoodsBrief.getAuctionUrl();
                                String pictUrl = taoBaoGoodsBrief.getPictUrl();
                                orderItem.setPicture(pictUrl);
                            }
                        }
                    }
                }
                map.put("goodsStae", goodsStae); //
                map.put("auctionUrl", auctionUrl); // 商品链接
                listResult.add(map);
            }
            int count = hongBaoService.countOrderByUid(key, startTime, endTime);
            int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
            // 该期间的总收益
            double countProfit = hongBaoService.countProfitByUid(key, startTime, endTime);
            JSONObject data = new JSONObject();
            data.put("pe", pe);
            data.put("countProfit", countProfit);
            data.put("listmap", listResult);
            out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
        } catch (Exception e) {
            e.printStackTrace();
            out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
        }
    }
    /**
     * 根据用户id查询相应订单列表
     *
     * @param callback
     * @param pageIndex
     * @param key
     *            用户id
     * @param out
     */
    @RequestMapping(value = "getOrderList")
    public void getOrderList(String callback, Integer pageIndex, Integer pageSize, Long key, String startTime,
            String endTime, PrintWriter out) {
        try {
            if (key == null) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("未获取到用户id"));
                return;
            }
            if (!StringUtil.isNullOrEmpty(endTime)) {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                Date enddate = sdf.parse(endTime);
                Calendar c = Calendar.getInstance();
                c.setTime(enddate);
                c.add(Calendar.DAY_OF_MONTH, 1);// 今天+1天
                endTime = sdf.format(c.getTime());
            }
            if (pageIndex == null)
                pageIndex = 1;
            if (pageSize == null)
                pageSize = Constant.PAGE_SIZE;
            List<HongBao> list = hongBaoService.selectOrderByUid(pageIndex, pageSize, key, startTime, endTime);
            if (list == null || list.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该用户无订单记录"));
                return;
            }
            /* 验证网络: */
            StringBuffer auctionIdBuf = new StringBuffer();
            List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>();
            for (HongBao hongBao : list) {
                Map<String, Object> map = new HashMap<String, Object>();
                Long preGettime = hongBao.getPreGettime();
                Long getTime = hongBao.getGetTime();
                Integer state = hongBao.getState();
                Integer type = hongBao.getType();
                String orderId = hongBao.getOrderId();
                Date balanceTime = hongBao.getBalanceTime();
                // 自购订单id
                Long orderItemId = hongBao.getOrderItemId();
                // 单笔收益金额
                BigDecimal money = hongBao.getMoney();
                map.put("getTime", getTime);
                map.put("orderItemId", orderItemId);
                if (state == HongBao.STATE_SHIXIAO) {
                    if (balanceTime != null) {
                        map.put("orderState", 1); // 维权成功
                    } else {
                        map.put("orderState", 2); // 订单失效
                    }
                } else if (state == HongBao.STATE_BUKELINGQU || state == HongBao.STATE_KELINGQU) {
                    if (preGettime != null && preGettime > 0) {
                        map.put("orderState", 0); // 订单结算
                    } else {
                        map.put("orderState", 3); // 订单付款中 未结算
                    }
                } else {
                    map.put("orderState", 0); // 订单已付款-已结算
                }
                if (HongBao.STATE_YILINGQU == state) {
                    map.put("moneyState", 3); // 已到账
                } else if (HongBao.STATE_BUKELINGQU == state || HongBao.STATE_KELINGQU == state) {
                    map.put("moneyState", 2); // 未到账
                } else {
                    map.put("moneyState", 4); // 已失效
                }
                /*
                 * 1-淘宝订单 2-京东订单 3-活动红包 4-新人红包 5.邀请好友红包(布心街的) 6.一级分销红包 7.二级分销红包
                 * 20-分享商品订单
                 */
                int rebateSource = 0;
                if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
                    /* 3-活动红包 4-新人红包 */
                    rebateSource = 1;
                } else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
                    /* 自购订单 */
                    rebateSource = 2;
                } else if (type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI || type == HongBao.TYPE_YAOQING
                        || type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
                    /* 邀请订单 分销红包对应的最上级红包 */
                    rebateSource = 3;
                } else if (type == HongBao.TYPE_SHARE_GOODS) {
                    /* 分享订单 */
                    rebateSource = 4;
                }
                map.put("rebateSource", rebateSource);
                // 获取订单信息
                Map<String, Object> inMap = getOrderItem(hongBao);
                OrderItem orderItem = (OrderItem) inMap.get("orderItem");
                Long endtime = (Long) inMap.get("endtime");
                Long thirdCreateTime = (Long) inMap.get("thirdCreateTime");
                /* 初始化 空值 */
                if (orderItem == null) {
                    orderItem = new OrderItem();
                    map.put("goodsStae", "-1");
                }
                // 订单来源 0 无 1淘宝 2 京东
                map.put("orderSource", 1);
                // 当前实际返利金额
                orderItem.setFanMoney(money);
                String itemOrderId = orderItem.getOrderId();
                // 红包对应订单号
                if (StringUtil.isNullOrEmpty(itemOrderId))
                    orderItem.setOrderId(orderId);
                Long auctionId = orderItem.getAuctionId();
                if (auctionId == null) {
                    if (!StringUtil.isNullOrEmpty(orderId)) {
                        List<TaoBaoOrder> taoBaoOrders = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
                        if (taoBaoOrders != null && taoBaoOrders.size() > 0) {
                            TaoBaoOrder taoBaoOrder = taoBaoOrders.get(0);
                            Long auctionId2 = taoBaoOrder.getAuctionId();
                            orderItem.setAuctionId(auctionId2);
                            auctionIdBuf.append(auctionId + ",");
                            orderItem.setPayMoney(taoBaoOrder.getPayment());
                            orderItem.setTitle(taoBaoOrder.getTitle());
                            String settlementTime = taoBaoOrder.getSettlementTime();
                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                            if (!StringUtil.isNullOrEmpty(settlementTime)) {
                                Date settleDate = sdf.parse(settlementTime);
                                endtime = settleDate.getTime();
                            }
                            String createTime = taoBaoOrder.getCreateTime();
                            if (!StringUtil.isNullOrEmpty(createTime)) {
                                Date createDate = sdf.parse(createTime);
                                thirdCreateTime = createDate.getTime();
                            }
                        }
                    }
                }
                map.put("orderItem", orderItem);
                // 收货时间
                map.put("endtime", endtime);
                // 下单时间
                map.put("thirdCreateTime", thirdCreateTime);
                listmap.add(map);
            }
            int count = hongBaoService.countOrderByUid(key, startTime, endTime);
            int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
            // 该期间的总收益
            double countProfit = hongBaoService.countProfitByUid(key, startTime, endTime);
            JSONObject data = new JSONObject();
            data.put("pe", pe);
            data.put("countProfit", countProfit);
            data.put("listmap", listmap);
            out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
        } catch (Exception e) {
            e.printStackTrace();
            out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
        }
    }
    public Map<String, Object> getOrderItem(HongBao hongBao) {
        OrderItem orderItem = null;
        Long endtime = new Long(0);
        Long thirdCreateTime = new Long(0);
        Map<String, Object> map = new HashMap<String, Object>();
        Integer type = hongBao.getType();
        if (type == null) {
            return map;
        }
        if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
            /* 3-活动红包 4-新人红包 */
        } else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
            /* 自购订单 */
            Long orderItemId = hongBao.getOrderItemId();
            orderItem = orderItemServcie.selectByPrimaryKey(orderItemId);
            // 下单时间
            Order order = hongBao.getOrder();
            if (order != null) {
                Date thirdCreateTime2 = order.getThirdCreateTime();
                if (thirdCreateTime2 != null) {
                    thirdCreateTime = thirdCreateTime2.getTime();
                }
            }
            if (orderItem != null) {
                // 结束时间
                Long settlementTime = orderItem.getSettlementTime();
                if (settlementTime != 0) {
                    endtime = settlementTime;
                }
                // 退款时间不为空 则已退款时间为结束时间
                Long refundTime = orderItem.getRefundTime();
                if (refundTime != 0) {
                    endtime = refundTime;
                }
            }
        } else if (type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI || type == HongBao.TYPE_YAOQING
                || type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
            /* 邀请订单 分销红包对应的最上级红包 */
            HongBao parent = hongBao.getParent();
            if (parent != null) {
                Long pid = parent.getId();
                HongBao phongbao = hongBaoService.selectByPrimaryKey(pid);
                Map<String, Object> map2 = getOrderItem(phongbao);
                return map2;
            }
        } else if (type == HongBao.TYPE_SHARE_GOODS) {
            /* 分享订单 */
            Long hongbaoId = hongBao.getId();
            PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
            if (pidOrder != null) {
                orderItem = new OrderItem();
                orderItem.setOrderId(pidOrder.getOrderId());
                orderItem.setTitle(pidOrder.getGoodsTitle());
                orderItem.setPayMoney(pidOrder.getPayMoney());
                orderItem.setAuctionId(pidOrder.getAuctionId());
                // 下单时间
                Date createTime = pidOrder.getCreateTime();
                if (createTime != null) {
                    thirdCreateTime = createTime.getTime();
                }
                // 结算时间
                Date balanceTime = pidOrder.getBalanceTime();
                if (balanceTime != null) {
                    endtime = balanceTime.getTime();
                }
                String param = hongBao.getParam();
                if (!StringUtil.isNullOrEmpty(param)) {
                    String picture = param.substring(11, param.length());
                    if (!StringUtil.isNullOrEmpty(picture)) {
                        orderItem.setPicture(picture.substring(0, picture.length() - 1));
                    }
                }
            }
        }
        map.put("orderItem", orderItem);
        map.put("endtime", endtime);
        map.put("thirdCreateTime", thirdCreateTime);
        return map;
    }
    /**
fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java
@@ -1,8 +1,5 @@
package com.yeshi.fanli.controller.admin;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
@@ -13,14 +10,7 @@
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -33,10 +23,8 @@
import com.yeshi.fanli.dto.money.AccountDetails;
import com.yeshi.fanli.entity.admin.UserInfoAdmin;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.Extract;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.MoneyRecord;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.ThreeSale;
@@ -44,7 +32,6 @@
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.UserRank;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.ScanHistory;
import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
import com.yeshi.fanli.service.inter.config.ConfigService;
@@ -54,7 +41,6 @@
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.user.BindingAccountService;
import com.yeshi.fanli.service.inter.user.ExtractService;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
@@ -69,9 +55,7 @@
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.GsonUtil;
import com.yeshi.fanli.util.HongBaoUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.factory.AccountDetailsFactory;
import net.sf.json.JSONArray;
@@ -109,9 +93,6 @@
    @Resource
    private ShareService shareService;
    @Resource
    private PidOrderService pidOrderService;
    @Resource
    private BindingAccountService bindingAccountService;
@@ -177,35 +158,6 @@
        JSONObject data = new JSONObject();
        data.put("pe", pe);
        data.put("threeSaleList", list);
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     *
     * 方法说明: 查询所有用户分享赚列表
     *
     * @author mawurui createTime 2018年4月24日 下午3:37:13
     * @param pageIndex
     * @param uid
     * @param out
     */
    @RequestMapping(value = "getShareMoneyList", method = RequestMethod.POST)
    public void getShareList(int pageIndex, PrintWriter out, String key) {
        // int totalCount = shareService.getShareMoneyCount();
        // PageEntity pageEntity = new PageEntity();
        // pageEntity.setPageIndex(pageIndex);
        // pageEntity.setPageSize(Constant.PAGE_SIZE);
        // pageEntity.setTotalCount(totalCount);
        int count = shareService.getCountByKey(key);
        int totalPage = count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE : count / Constant.PAGE_SIZE + 1;
        PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
        List<PidOrder> shareMoneyList = shareService.getShareMoneyList(pageIndex, key);
        JSONObject data = new JSONObject();
        data.put("pageEntity", pe);
        data.put("shareMoneyList", JsonUtil.getSimpleGsonWithDate().toJson(shareMoneyList));
        out.print(JsonUtil.loadTrueResult(data));
    }
@@ -300,145 +252,6 @@
    /**
     * 
     * 方法说明: 查询用户-红包详情列表
     *
     * @author mawurui createTime 2018年5月10日 上午11:48:58
     * @param pageIndex
     * @param uid
     * @param out
     */
    @RequestMapping(value = "getHongBaoList", method = RequestMethod.POST)
    public void getHongBaoList(int pageIndex, long uid, PrintWriter out) {
        JSONObject data = new JSONObject();
        List<HongBao> list = hongBaoService.getHongBaoList(pageIndex, uid);
        if (list.size() != 0 || list != null) {
            for (HongBao hb : list) {
                int hbType = hb.getType();
                if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
                    Long hongbaoId = hb.getId();
                    PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                    Order order = new Order();
                    order.setThirdCreateTime(pidOrder.getOrderCreateTime());
                    order.setOrderId(pidOrder.getOrderId());
                    order.setThirdState(pidOrder.getState());
                    order.setMoney(pidOrder.getPayMoney());
                    hb.setOrder(order);
                } else if (hbType == HongBao.TYPE_SHARE_YIJI || hbType == HongBao.TYPE_SHARE_ERJI) {
                    Long hongbaoId = hb.getParent().getId();
                    PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                    Order order = new Order();
                    order.setThirdCreateTime(pidOrder.getOrderCreateTime());
                    order.setOrderId(pidOrder.getOrderId());
                    order.setThirdState(pidOrder.getState());
                    order.setMoney(pidOrder.getPayMoney());
                    hb.setOrder(order);
                } else if (hbType == HongBao.TYPE_XINREN) {
                    Order order = new Order();
                    Long createtime = hb.getCreatetime();
                    if (createtime != null) {
                        Date ThirdCreateTime = new Date(createtime);
                        order.setThirdCreateTime(ThirdCreateTime);
                    }
                    hb.setOrder(order);
                } else if (hb.getParent() != null) {
                    hb.setOrder(hb.getParent().getOrder());
                }
            }
        }
        int count = hongBaoService.getCount(uid);
        PageEntity pe = new PageEntity();
        pe.setPageIndex(pageIndex);
        pe.setPageSize(Constant.PAGE_SIZE);
        pe.setTotalCount(count);
        data.put("pe", pe);
        data.put("list", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(list));
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     *
     * 方法说明: 查询 分享赚页面列表
     *
     * @author mawurui createTime 2018年4月16日 上午9:54:39
     * @param pageIndex
     * @param uid
     * @param out
     */
    @RequestMapping(value = "getShareList", method = RequestMethod.POST)
    public void getShareList(int pageIndex, long uid, PrintWriter out) {
        int totalCount = shareService.getCount(uid);
        PageEntity pageEntity = new PageEntity();
        pageEntity.setPageIndex(pageIndex);
        pageEntity.setPageSize(Constant.PAGE_SIZE);
        pageEntity.setTotalCount(totalCount);
        List<HongBao> shareList = shareService.getShareList(pageIndex, uid);
        if (shareList.size() != 0 || shareList != null) {
            for (HongBao hb : shareList) {
                int hbType = hb.getType();
                if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
                    Long hongbaoId = hb.getId();
                    PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                    Order order = new Order();
                    order.setThirdCreateTime(pidOrder.getCreateTime());
                    order.setThirdState(pidOrder.getState());
                    hb.setOrder(order);
                } else if (hb.getParent() != null) {
                    hb.setOrder(hb.getParent().getOrder());
                }
            }
        }
        JSONObject data = new JSONObject();
        data.put("pageEntity", pageEntity);
        data.put("shareList", GsonUtil.toJsonExpose(shareList));
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     *
     * 方法说明: 查询 邀请赚页面列表
     *
     * @author mawurui createTime 2018年4月16日 上午9:54:39
     * @param pageIndex
     * @param uid
     * @param out
     */
    @RequestMapping(value = "getInviteList", method = RequestMethod.POST)
    public void getInviteList(int pageIndex, long uid, PrintWriter out) {
        int totalCount = shareService.getInviteCount(uid);
        PageEntity pageEntity = new PageEntity();
        pageEntity.setPageIndex(pageIndex);
        pageEntity.setPageSize(Constant.PAGE_SIZE);
        pageEntity.setTotalCount(totalCount);
        List<HongBao> inviteList = shareService.getInviteList(pageIndex, uid);
        if (inviteList.size() != 0 || inviteList != null) {
            for (HongBao hb : inviteList) {
                int hbType = hb.getType();
                if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
                    Long hongbaoId = hb.getId();
                    PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                    Order order = new Order();
                    order.setThirdCreateTime(pidOrder.getCreateTime());
                    order.setThirdState(pidOrder.getState());
                    hb.setOrder(order);
                } else if (hb.getParent() != null) {
                    hb.setOrder(hb.getParent().getOrder());
                }
            }
        }
        JSONObject data = new JSONObject();
        data.put("pageEntity", pageEntity);
        data.put("inviteList", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(inviteList));
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     *
     * 方法说明: 清除用户手势密码
     * 
     * @author mawurui createTime 2018年5月4日 下午4:47:29
@@ -473,153 +286,6 @@
        data.put("freeze", freeze);
        data.put("can", canAssets);
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     *
     * 方法说明: Excel表格下载
     *
     * @author mawurui createTime 2018年5月21日 下午2:14:44
     * @param uid
     * @param response
     */
    @SuppressWarnings("unused")
    @RequestMapping(value = "downDetailedExcel", produces = { "application/vnd.ms-excel;charset=UTF-8" })
    public void downDetailedExcel(long uid, HttpServletResponse response) {
        try {
            List<HongBao> list = hongBaoService.getHongBaoListAll(uid);
            if (list.size() != 0 || list != null) {
                for (HongBao hb : list) {
                    int hbType = hb.getType();
                    if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
                        Long hongbaoId = hb.getId();
                        PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                        Order order = new Order();
                        order.setOrderId(pidOrder.getOrderId());
                        order.setMoney(pidOrder.getPayMoney());
                        order.setThirdCreateTime(pidOrder.getCreateTime());
                        order.setThirdState(pidOrder.getState());
                        hb.setOrder(order);
                    } else if (hbType == HongBao.TYPE_SHARE_ERJI || hbType == HongBao.TYPE_SHARE_YIJI) { // type
                                                                                                            // ==
                        Long hongbaoId = hb.getParent().getId();
                        PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
                        Order order = new Order();
                        order.setOrderId(pidOrder.getOrderId());
                        order.setMoney(pidOrder.getPayMoney());
                        order.setThirdCreateTime(pidOrder.getCreateTime());
                        order.setThirdState(pidOrder.getState());
                        hb.setOrder(order);
                    } else if (hb.getParent() != null) {
                        hb.setOrder(hb.getParent().getOrder());
                    }
                }
            }
            File desc = new File(this.getClass().getResource("/muban.xls").toURI());
            InputStream inStream = new FileInputStream(desc);
            Workbook wb = new HSSFWorkbook(inStream);
            Sheet sheet = wb.getSheetAt(0);
            int i = 1;
            for (; i <= list.size(); i++) {
                Row row = sheet.createRow(i);
                for (int c = 1; c < 10; c++) {
                    row.createCell(c);
                }
                Cell cell = row.createCell(1);
                HongBao hongBao = list.get(i - 1);
                long createtime = hongBao.getCreatetime();
                String create = TimeUtil.getWholeTime(createtime);
                cell.setCellValue(create);
                Cell cell2 = row.getCell(2);
                String title = HongBaoUtil.getHongBaoTitle(hongBao.getType());
                cell2.setCellValue(title);
                Order order = hongBao.getOrder();
                if (order != null) {
                    Cell cell3 = row.getCell(3);
                    Integer orderType = order.getOrderType();
                    if (orderType == null) {
                        orderType = 1;
                    }
                    cell3.setCellValue(orderType == 1 ? "淘宝" : "其他");
                    String orderId = order.getOrderId();
                    if (orderId == null) {
                        orderId = "";
                    }
                    Cell cell4 = row.getCell(4);
                    cell4.setCellValue(orderId);
                    Cell cell5 = row.getCell(5);
                    // List<Order>
                    // orderItemService.findByOrderId(order.getId());
                    cell5.setCellValue(order.getMoney().doubleValue());
                    Cell cell6 = row.getCell(6);
                    String stateStr = order.getThirdState();
                    cell6.setCellValue(stateStr);
                    /*
                     * Cell cell11 = row.getCell(11); //下单时间 long orderTime =
                     * order.getCreatetime(); String oTime =
                     * TimeUtil.getWholeTime(orderTime);
                     * cell11.setCellValue(oTime);
                     */
                } else if (order == null) {
                    Cell cell3 = row.getCell(3);
                    cell3.setCellValue("淘宝");
                    Cell cell4 = row.getCell(4);
                    cell4.setCellValue("");
                    Cell cell5 = row.getCell(5);
                    cell5.setCellValue("");
                    Cell cell6 = row.getCell(6);
                    cell6.setCellValue("");
                } else if (hongBao.getParent() != null) {// 属于分销红包
                    String orderId = "";
                    if (hongBao.getParent().getParent() != null) {
                        orderId = hongBao.getParent().getParent().getOrder().getOrderId();
                    } else {
                        orderId = hongBao.getParent().getOrder().getOrderId();
                    }
                    Cell cell4 = row.getCell(4);
                    cell4.setCellValue(orderId);
                }
                Cell cell7 = row.getCell(7);
                cell7.setCellValue(hongBao.getMoney().doubleValue());
                Cell cell8 = row.getCell(8);
                cell8.setCellValue(HongBaoUtil.convertState(hongBao.getState()));
                Cell cell9 = row.getCell(9);
                if (hongBao.getGetTime() != 0) {
                    cell9.setCellValue(TimeUtil.getWholeTime(hongBao.getGetTime()));
                }
            }
            List<Extract> extractList = extractService.getExtractInfoByUid(uid);
            int ii = i;
            for (int m = 0; m < extractList.size(); m++, ii++) {
                Row row = sheet.createRow(ii);
                for (int c = 1; c < 10; c++) {
                    row.createCell(c);
                }
                Cell cell = row.getCell(1);
                Extract extract = extractList.get(m);
                cell.setCellValue(TimeUtil.getWholeTime(extract.getExtractTime()));
                Cell cell2 = row.getCell(2);
                cell2.setCellValue("提现");
                Cell cell7 = row.getCell(7);
                cell7.setCellValue(-extract.getMoney().doubleValue());
            }
            CellRangeAddress cellRangeAddress = new CellRangeAddress(0, sheet.getLastRowNum(), 1, 9);
            sheet.setAutoFilter(cellRangeAddress);
            wb.write(response.getOutputStream());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    /**
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java
@@ -112,11 +112,10 @@
    @Resource
    private MonitorService monitorService;
    @Resource(name = "taskExecutor")
    private TaskExecutor executor;
    /**
     * 获取主类目
     * 
@@ -125,24 +124,24 @@
     */
    @RequestMapping(value = "getgoodsclass", method = RequestMethod.POST)
    public void getGoodsClass(AcceptData acceptData, PrintWriter out) {
        try {
            System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
            if (system == null) {
                out.print(JsonUtil.loadFalseResult("系统不存在"));
                return;
            }
            List<GoodsClass> goodsClassList = goodsClassService.getListClassCache(system.getId());
            if (goodsClassList == null || goodsClassList.size() == 0) {
                out.print(JsonUtil.loadFalseResult("暂无数据"));
                return;
            }
            JSONObject data = new JSONObject();
            data.put("count", goodsClassList.size());
            data.put("goodsClassList", goodsClassList);
            out.print(JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            out.print(JsonUtil.loadFalseResult("获取失败"));
@@ -152,7 +151,7 @@
                e1.printStackTrace();
            }
        }
    }
    /**
@@ -182,7 +181,7 @@
            data.put("count", goodsSubClassList.size());
            data.put("goodsSecondClassList", JsonUtil.getApiCommonGson().toJson(goodsSubClassList));
            out.print(JsonUtil.loadTrueResult(data));
            // 更新分类点击次数
            executor.execute(new Runnable() {
                @Override
@@ -533,8 +532,8 @@
                // 设置SearchFilter
                taoKeGoodsService.setSearchFilter(searchfilter, filter, order, startprice, endprice, fastFilter,
                        totalSales);
                // 用户未输入最高价格时    最高价格限制99999
                // 用户未输入最高价格时 最高价格限制99999
                if (searchfilter.getEndPrice() == null) {
                    searchfilter.setEndPrice(new BigDecimal(99999));
                }
@@ -646,6 +645,11 @@
            } else {
                taoBaoGoodsBrief.setSalesCount(biz30day + "");
            }
            // 白底图测试
            // if
            // (!StringUtil.isNullOrEmpty(taoBaoGoodsBrief.getPictUrlWhite()))
            // taoBaoGoodsBrief.setPictUrl(taoBaoGoodsBrief.getPictUrlWhite());
            array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null)));
        }
@@ -816,10 +820,10 @@
     */
    private void setTaoBaoCouponHongBao(List<TaoBaoCoupon> taoBaoCoupons) {
        if (taoBaoCoupons.size() > 0) {
            BigDecimal proportion= hongBaoManageService.getFanLiRate();
            BigDecimal proportion = hongBaoManageService.getFanLiRate();
            for (TaoBaoCoupon taoBaoCoupon : taoBaoCoupons) {
                BigDecimal hb = TaoBaoUtil.getCouponHongBaoInfo(taoBaoCoupon,proportion);
                BigDecimal hb = TaoBaoUtil.getCouponHongBaoInfo(taoBaoCoupon, proportion);
                taoBaoCoupon.setHongbao(hb);
            }
        }
@@ -837,14 +841,14 @@
            List<Map<String, Object>> listCache = goodsClassService.getClassListAllCache(system.getId());
            if (listCache == null) {
                listCache = new ArrayList<Map<String,Object>>();
                listCache = new ArrayList<Map<String, Object>>();
            }
            JSONObject data = new JSONObject();
            data.put("categoryList", listCache);
            out.print(JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
            out.print(JsonUtil.loadFalseResult("获取失败"));
            try {
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/PidOrderMapper.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/HongBaoOrderMapper.java
@@ -43,4 +43,14 @@
     */
    Long countFanLiOrder(Long uid);
    /**
     * 根据订单号与红包类型计算订单数量
     *
     * @param orderNo
     * @param type
     * @return
     */
    long countByOrderNoAndHongBaoType(@Param("orderNo") String orderNo, @Param("type") int type,
            @Param("sourceType") int sourceType);
}
fanli/src/main/java/com/yeshi/fanli/dao/order/PidOrderDao.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/entity/bus/activity/ActivityUser.java
@@ -1,5 +1,6 @@
package com.yeshi.fanli.entity.bus.activity;
import java.io.Serializable;
import java.util.Date;
import com.google.gson.annotations.Expose;
@@ -13,7 +14,12 @@
 *
 */
@Table("yeshi_ec_activity_user")
public class ActivityUser {
public class ActivityUser implements Serializable{
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    public ActivityUser() {
    }
fanli/src/main/java/com/yeshi/fanli/entity/bus/activity/RecommendActivityTaoBaoGoods.java
@@ -1,5 +1,6 @@
package com.yeshi.fanli.entity.bus.activity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@@ -15,7 +16,11 @@
 *
 */
@Table("yeshi_ec_activity_goods_taobao")
public class RecommendActivityTaoBaoGoods {
public class RecommendActivityTaoBaoGoods implements Serializable{
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    public final static int STATE_NORMAL = 0;// 正常状态
    public final static int STATE_UNSHELVE = 1;// 下架
fanli/src/main/java/com/yeshi/fanli/entity/taobao/PidOrder.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/job/UpdateCommonOrderJob.java
@@ -20,7 +20,6 @@
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
@@ -48,9 +47,6 @@
    @Resource
    private HongBaoService hongBaoService;
    @Resource
    private PidOrderService pidOrderService;
    @Resource
    private OrderProcessService orderProcessService;
fanli/src/main/java/com/yeshi/fanli/job/UpdateOrderJob.java
@@ -24,7 +24,6 @@
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
@@ -52,9 +51,6 @@
    @Resource
    private HongBaoService hongBaoService;
    @Resource
    private PidOrderService pidOrderService;
    @Resource
    private OrderProcessService orderProcessService;
fanli/src/main/java/com/yeshi/fanli/mapping/PidOrderMapper.xml
File was deleted
fanli/src/main/java/com/yeshi/fanli/mapping/order/HongBaoOrderMapper.xml
@@ -89,6 +89,15 @@
    </select>
    <select id="countByOrderNoAndHongBaoType" resultType="java.lang.Long">
        SELECT
        COUNT(ho.`ho_id`) FROM yeshi_ec_hongbao_order ho LEFT JOIN
        yeshi_ec_hongbao_v2 v ON ho.`ho_hongbao_id`=v.`hb_id` LEFT JOIN
        yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id` WHERE
        co.`co_order_no`=#{orderNo} and v.`hb_type`=#{type} and
        co.`co_source_type`=#{sourceType}
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareServiceImpl.java
@@ -10,14 +10,11 @@
import com.yeshi.fanli.dao.hongbao.HongBaoDao;
import com.yeshi.fanli.dao.mybatis.share.ShareMapper;
import com.yeshi.fanli.dao.order.PidOrderDao;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.ShareTaoPassword;
import com.yeshi.fanli.service.inter.goods.ShareService;
import com.yeshi.fanli.util.Constant;
import org.yeshi.utils.NumberUtil;
@Service
public class ShareServiceImpl implements ShareService {
@@ -27,9 +24,6 @@
    
    @Resource
    private HongBaoDao hongBaoDao;
    @Resource
    private PidOrderDao pidOrderDao;
    
    @Override
    public String getRandomPid() {
@@ -78,27 +72,6 @@
    public int getCount(long uid) {
        return shareMapper.getCount(uid);
    }
    @Override
    public int getCountByKey(String key) {
        if (NumberUtil.isNumeric(key)) {
            if (key.trim().length() < 18) {
                long lk = Long.parseLong(key);
                return (int) pidOrderDao.getCount(
                        "select count(*) from PidOrder po where po.userInfo.id = ?  ",
                        new Serializable[] {lk});
            } else {
                return (int) pidOrderDao.getCount("select count(*) from PidOrder po where po.orderId like ? ",
                        new Serializable[] { "%" + key + "%" });
            }
        } else {
            return (int) pidOrderDao.getCount("select count(*) from PidOrder po where po.userInfo.nickName like ?  ",
                    new Serializable[] { "%" + key + "%" });
        }
    }
    @Override
    public List<HongBao> getShareList(int pageIndex, long uid) {
@@ -124,27 +97,4 @@
        return shareMapper.getShareMoneyCount();
    }
    
    @Override
    public List<PidOrder> getShareMoneyList(int pageIndex, String key) {
        if(NumberUtil.isNumeric(key)) {
            if(key.length() < 18 ) {
                long uid = Long.parseLong(key);
                List<PidOrder> shareMoneyList = pidOrderDao.list("from PidOrder po where po.userInfo.id = ? order by po.orderCreateTime desc",
                        (pageIndex - 1) * Constant.PAGE_SIZE, Constant.PAGE_SIZE, new Serializable[] {uid});
                return shareMoneyList;
            } else {
                List<PidOrder> shareMoneyList = pidOrderDao.list("from PidOrder po where po.orderId like ? order by po.orderCreateTime desc",
                        (pageIndex - 1) * Constant.PAGE_SIZE, Constant.PAGE_SIZE, new Serializable[] {"%" + key + "%"});
                return shareMoneyList;
            }
        }
            List<PidOrder> shareMoneyList = pidOrderDao.list("from PidOrder po where po.userInfo.nickName like ? order by po.orderCreateTime desc",
                    (pageIndex - 1) * Constant.PAGE_SIZE, Constant.PAGE_SIZE, new Serializable[] {"%" + key + "%"});
            return shareMoneyList;
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoV2ServiceImpl.java
@@ -2,8 +2,6 @@
import java.math.BigDecimal;
import java.util.Calendar;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
@@ -18,7 +16,6 @@
import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
import com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper;
import com.yeshi.fanli.dao.mybatis.order.CommonOrderMapper;
@@ -37,9 +34,7 @@
import com.yeshi.fanli.entity.order.CommonOrderGoods;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.ShareGoodsActivityOrder;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.HongBaoException;
import com.yeshi.fanli.exception.order.ShareGoodsActivityOrderException;
import com.yeshi.fanli.exception.share.UserShareGoodsRecordException;
@@ -61,7 +56,6 @@
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
@Service
public class HongBaoV2ServiceImpl implements HongBaoV2Service {
@@ -102,8 +96,6 @@
    @Resource
    private UserShareGoodsGroupService userShareGoodsGroupService;
    @Resource
    private PidOrderMapper pidOrderMapper;
    @Resource
    private HongBaoManageService hongBaoManageService;
@@ -162,229 +154,6 @@
        return hongBaoV2Mapper.selectByPrimaryKey(id);
    }
    private HongBaoV2 getHongBaoV2(HongBao hb) {
        int type = hb.getType().intValue();
        HongBaoV2 v2 = new HongBaoV2(hb.getId());
        v2.setCreateTime(new Date(hb.getCreatetime()));
        if (hb.getGetTime() == null || hb.getGetTime() == 0)
            v2.setGetTime(null);
        else
            v2.setGetTime(new Date(hb.getGetTime()));
        v2.setMoney(hb.getMoney());
        if (hb.getParent() != null)
            v2.setParent(new HongBaoV2(hb.getParent().getId()));
        if (hb.getType() == HongBao.TYPE_SHARE_GOODS) {
            if (hb.getBalanceTime() != null)
                v2.setPreGetTime(new Date(hb.getPreGettime()));
            else
                v2.setPreGetTime(null);
        } else {
            if (hb.getPreGettime() == null || hb.getPreGettime() == 0)
                v2.setPreGetTime(null);
            else
                v2.setPreGetTime(new Date(hb.getPreGettime()));
        }
        v2.setState(hb.getState());
        if (hb.getState() == 1 && hb.getBalanceTime() != null) {
            v2.setState(HongBaoV2.STATE_KELINGQU);
        }
        v2.setType(type);
        v2.setUpdateTime(new Date(hb.getCreatetime()));
        v2.setUrank(hb.getUrank());
        v2.setUserInfo(hb.getUserInfo());
        v2.setVersion(hb.getVersion());
        return v2;
    }
    @Transactional
    @Override
    public void convert(HongBao hb) {
        if (hb == null || hb.getParent() != null)
            return;
        int type = hb.getType().intValue();
        if (type == HongBao.TYPE_TAOBAO || type == HongBao.TYPE_SHARE_GOODS) {// 自购与分享赚需要查询出所有的订单
            // 属于返利订单
            String orderId = "";
            if (hb.getOrder() != null) {
                orderId = hb.getOrder().getOrderId();
                // 查询同一订单号的非子红包
            } else
                orderId = hb.getOrderId();
            int count = commonOrderMapper.countByOrderNOAndOrderType(orderId, Constant.SOURCE_TYPE_TAOBAO);
            // 已经插入订单
            if (count > 0)
                return;
            //
            if (hb.getVersion() == 1) {// 很老版本的处理方式,已hongbao为主
                if (hongBaoV2Mapper.selectByPrimaryKey(hb.getId()) != null)
                    return;
                HongBaoV2 hongBaoV2 = getHongBaoV2(hb);
                hongBaoV2.setBeizhu("订单号:" + orderId);
                hongBaoV2Mapper.insert(hongBaoV2);
                if (hb.getHasChild())// 存在子红包
                {
                    List<HongBao> children = hongBaoMapper.selectChildHongBaoByPid(hb.getId());
                    if (children != null)
                        for (HongBao hongBao : children) {
                            HongBaoV2 child = getHongBaoV2(hongBao);
                            hongBaoV2Mapper.insert(child);
                        }
                }
            } else {// 新版本处理方式
                List<HongBao> list = hongBaoMapper.selectByOrderId(orderId);
                if (list.size() == 0)
                    list = hongBaoMapper.selectByOid(hb.getOrder().getId());
                if (list != null)
                    // 删除子红包
                    for (int i = 0; i < list.size(); i++) {
                    if (list.get(i).getParent() != null) {
                    list.remove(i);
                    i--;
                    }
                    }
                if (list.size() <= 0)
                    return;
                if (list.get(0).getType() == 20)
                    for (HongBao hb1 : list) {
                        PidOrder pidOrder = pidOrderMapper.getPidOrderByHongBaoId(hb1.getId());
                        if (pidOrder != null)
                            hb1.setAuctionId(pidOrder.getAuctionId());
                    }
                List<TaoBaoOrder> orderList = taoBaoOrderMapper.selectTaoBaoOrderByOrderId(orderId);
                if (orderList == null || orderList.size() < list.size()) {
                    System.out.println("红包数与订单数不对应");
                    return;
                }
                // 加入排序值
                for (int i = 0; i < orderList.size(); i++) {
                    orderList.get(i).setOrderBy(i + 1);
                }
                // 按照auctionId,payMoney排序
                Comparator<HongBao> cm = new Comparator<HongBao>() {
                    @Override
                    public int compare(HongBao o1, HongBao o2) {
                        if (o1.getAuctionId().longValue() < o2.getAuctionId().longValue())
                            return -3;
                        else if (o1.getAuctionId().longValue() > o2.getAuctionId().longValue()) {
                            return 3;
                        } else {
                            if (o1.getState() - o2.getState() > 0)
                                return 2;
                            else if (o1.getState() - o2.getState() < 0)
                                return -2;
                            else {
                                if (o1.getPayMoney().compareTo(o2.getPayMoney()) >= 0)
                                    return 1;
                                else
                                    return -1;
                            }
                        }
                    }
                };
                Collections.sort(list, cm);
                Comparator<TaoBaoOrder> cmOrder = new Comparator<TaoBaoOrder>() {
                    @Override
                    public int compare(TaoBaoOrder o1, TaoBaoOrder o2) {
                        if (o1.getAuctionId().longValue() < o2.getAuctionId().longValue())
                            return -3;
                        else if (o1.getAuctionId().longValue() > o2.getAuctionId().longValue()) {
                            return 3;
                        } else {
                            if (o1.getPayment().compareTo(o2.getPayment()) < 0)
                                return 2;
                            else
                                return -2;
                        }
                    }
                };
                Collections.sort(orderList, cmOrder);
                for (TaoBaoOrder t : orderList)
                    System.out.println(t.getAuctionId());
                for (int i = 0; i < list.size(); i++) {
                    CommonOrder commonOrder = TaoBaoOrderUtil.convert(orderList.get(i));
                    CommonOrderGoods goods = new CommonOrderGoods();
                    goods.setGoodsId(orderList.get(i).getAuctionId() + "");
                    goods.setGoodsType(Constant.SOURCE_TYPE_TAOBAO);
                    // 商品是否已经插入
                    List<CommonOrderGoods> commonGoodsList = commonOrderGoodsMapper
                            .listByGoodsIdAndGoodsType(goods.getGoodsId(), goods.getGoodsType());
                    if (commonGoodsList.size() <= 0)// 不存在就插入商品
                        commonOrderGoodsMapper.insertSelective(goods);
                    else
                        goods.setId(commonGoodsList.get(commonGoodsList.size() - 1).getId());
                    commonOrder.setCommonOrderGoods(goods);
                    commonOrder.setUserInfo(list.get(i).getUserInfo());
                    commonOrder.setCreateTime(new Date(list.get(i).getCreatetime()));
                    // TODO 维权判断
                    List<TaoBaoWeiQuanOrder> weiQuanList = taoBaoWeiQuanOrderMapper.selectListByOrderIdAndState(orderId,
                            "维权成功");
                    if (weiQuanList != null && weiQuanList.size() > 0)
                        commonOrder.setState(CommonOrder.STATE_WQ);
                    commonOrderMapper.insertSelective(commonOrder);
                    // 插入红包
                    HongBaoV2 hongBaoV2 = getHongBaoV2(list.get(i));
                    hongBaoV2.setId(list.get(i).getId());
                    hongBaoV2Mapper.insert(hongBaoV2);
                    HongBaoOrder ho = new HongBaoOrder();
                    ho.setCommonOrder(commonOrder);
                    ho.setCreateTime(new Date());
                    ho.setHongBaoV2(hongBaoV2);
                    hongBaoOrderMapper.insertSelective(ho);
                    if (list.get(i).getHasChild())// 存在子红包
                    {
                        List<HongBao> children = hongBaoMapper.selectChildHongBaoByPid(list.get(i).getId());
                        if (children != null)
                            for (HongBao hongBao : children) {
                                HongBaoV2 child = getHongBaoV2(hongBao);
                                hongBaoV2Mapper.insert(child);
                            }
                    }
                }
            }
        } else {// 直接插入
            if (type != HongBao.TYPE_ERJI && type != HongBao.TYPE_YIJI && type != HongBao.TYPE_SHARE_YIJI
                    && type != HongBao.TYPE_SHARE_ERJI) {
                if (hongBaoV2Mapper.selectByPrimaryKey(hb.getId()) == null)
                    hongBaoV2Mapper.insert(getHongBaoV2(hb));
            }
        }
    }
    @Transactional
    @Override
@@ -542,7 +311,7 @@
                hongBao.setPreGetTime(new Date(commonOrder.getSettleTime().getTime() + 1000 * 60 * 60 * 24 * 15L));
                if (mianDan)
                    hongBao.setMoney(commonOrder.getSettlement().compareTo(commonOrder.getPayment()) <= 0
                            ? commonOrder.getSettlement() : commonOrder.getPayment());//返利结算与付款较小的金额
                            ? commonOrder.getSettlement() : commonOrder.getPayment());// 返利结算与付款较小的金额
            } else if (commonOrder.getState() == CommonOrder.STATE_SX) {
                hongBao.setState(HongBaoV2.STATE_SHIXIAO);
                hongBao.setMoney(new BigDecimal(0));
fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java
@@ -9,6 +9,7 @@
import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.util.Constant;
@Service
public class HongBaoOrderServiceImpl implements HongBaoOrderService {
@@ -57,4 +58,9 @@
        return count == null ? 0 : count;
    }
    @Override
    public long countByOrderNoAndHongBaoType(String orderNo, int type) {
        return hongBaoOrderMapper.countByOrderNoAndHongBaoType(orderNo, type, Constant.SOURCE_TYPE_TAOBAO);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/LostOrderServiceImpl.java
@@ -14,9 +14,11 @@
import com.yeshi.fanli.dao.mybatis.order.LostOrderMapper;
import com.yeshi.fanli.dao.order.LostOrderDao;
import com.yeshi.fanli.dao.order.PidOrderDao;
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.LostOrder;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.service.inter.order.LostOrderService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.util.Constant;
@@ -29,10 +31,10 @@
    private OrderService orderService;
    @Resource
    private LostOrderDao lostOrderDao;
    private HongBaoOrderService hongBaoOrderService;
    @Resource
    private PidOrderDao pidOrderDao;
    private LostOrderDao lostOrderDao;
    @Resource
    private LostOrderMapper lostOrderMapper;
@@ -65,7 +67,7 @@
        }
        // 查询是否为分享赚订单
        if (pidOrderDao.list("from PidOrder p where p.orderId=?", new Serializable[] { orderId }).size() > 0)
        if (hongBaoOrderService.countByOrderNoAndHongBaoType(orderId, HongBaoV2.TYPE_SHARE_GOODS) > 0)
            return -5;
        WriteLock lostOrderwriteLock = lostOrderLock.writeLock();
@@ -277,19 +279,17 @@
    public long countQuery(String key, Integer state, Integer handleType) {
        return lostOrderMapper.countQuery(key, state, handleType);
    }
    @Override
    public List<Map<String, Object>> countLostNum( Integer dateType, Integer resultCode,
            String year, String startTime, String endTime) throws Exception {
    public List<Map<String, Object>> countLostNum(Integer dateType, Integer resultCode, String year, String startTime,
            String endTime) throws Exception {
        return lostOrderMapper.countLostNum(dateType, resultCode, year, startTime, endTime);
    }
    @Override
    public List<Map<String, Object>> countAppealMoney( Integer dateType, String year, String startTime,
            String endTime) throws Exception {
    public List<Map<String, Object>> countAppealMoney(Integer dateType, String year, String startTime, String endTime)
            throws Exception {
        return lostOrderMapper.countAppealMoney(dateType, year, startTime, endTime);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
@@ -21,7 +21,6 @@
import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper;
import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
import com.yeshi.fanli.dao.mybatis.ThreeSaleGiftMapper;
import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
@@ -39,7 +38,6 @@
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
@@ -61,7 +59,6 @@
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.PidOrderService;
import com.yeshi.fanli.service.inter.push.PushService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
@@ -79,9 +76,6 @@
public class OrderProcessServiceImpl implements OrderProcessService {
    @Resource
    private PidOrderMapper pidOrderMapper;
    @Resource
    private OrderMapper orderMapper;
    @Resource
@@ -92,9 +86,6 @@
    @Resource
    private OrderItemServcie orderItemService;
    @Resource
    private PidOrderService pidOrderService;
    @Resource
    private UserInfoMapper userInfoMapper;
@@ -172,7 +163,6 @@
        // 分离出返利订单与分享赚订单
        Iterator<String> its = orders.keySet().iterator();
        Map<String, List<TaoBaoOrder>> fanliOrderMap = new HashMap<>();
        Map<String, List<PidOrder>> sharePidOrderMap = new HashMap<>();
        Map<String, List<TaoBaoOrder>> shareOrderMap = new HashMap<>();
        while (its.hasNext()) {
            String orderId = its.next();
@@ -561,7 +551,6 @@
        } catch (ObjectStateException e) {
            e.printStackTrace();
        }
        pidOrderService.weiQuan(order.getOrderId());
    }
    @Override
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderServiceImpl.java
@@ -20,30 +20,30 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.yeshi.utils.NumberUtil;
import com.yeshi.fanli.dao.mybatis.ThreeSaleGiftMapper;
import com.yeshi.fanli.dao.mybatis.order.OrderItemMapper;
import com.yeshi.fanli.dao.mybatis.order.OrderMapper;
import com.yeshi.fanli.dao.order.OrderDao;
import com.yeshi.fanli.dao.order.PidOrderDao;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.OrderItem;
import com.yeshi.fanli.entity.bus.user.ThreeSaleGift;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.ObjectStateException;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleGiftService;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.user.ShareManageService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.Utils;
import org.yeshi.utils.NumberUtil;
@Service
public class OrderServiceImpl implements OrderService {
@@ -79,7 +79,7 @@
    private OrderItemMapper orderItemMapper;
    @Resource
    private PidOrderDao pidOrderDao;
    private HongBaoOrderService hongBaoOrderService;
    @Resource
    private ThreeSaleGiftMapper threeSaleGiftMapper;
@@ -114,10 +114,7 @@
                return false;
            }
            // 查找是否存在分享赚订单
            List<PidOrder> orderList = pidOrderDao.list("from PidOrder p where p.orderId=?",
                    new Serializable[] { order.getOrderId() });
            if (orderList != null && orderList.size() > 0)
            if (hongBaoOrderService.countByOrderNoAndHongBaoType(order.getOrderId(), HongBaoV2.TYPE_SHARE_GOODS) > 0)
                return false;
            orderDao.save(order);
fanli/src/main/java/com/yeshi/fanli/service/impl/order/PidOrderServiceImpl.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
@@ -23,7 +23,6 @@
import com.yeshi.fanli.dao.mybatis.AccountMessageMapper;
import com.yeshi.fanli.dao.mybatis.BindingAccountMapper;
import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
import com.yeshi.fanli.dao.mybatis.UserConnectHistoryMapper;
import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
@@ -42,7 +41,6 @@
import com.yeshi.fanli.entity.bus.user.UserConnectHistory;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.WeiXinUser;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.exception.UserAccountException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
@@ -84,9 +82,6 @@
    @Resource
    private ThreeSaleSerivce threeSaleSerivce;
    @Resource
    private PidOrderMapper pidOrderMapper;
    @Resource
    private HongBaoService hongBaoService;
@@ -898,8 +893,6 @@
        // 备份邀请关系
        List<ThreeSale> threeSaleList = new ArrayList<>();
        // 备份分享赚
        List<PidOrder> pidOrderList = pidOrderMapper.selectByUid(uid);
        FileWriter fw = null;
        try {
@@ -921,8 +914,6 @@
            fw.write("#ThreeSale" + "\r\n");
            fw.write(JsonUtil.getSimpleGsonWithDate().toJson(threeSaleList) + "\r\n");
            fw.write("#PidOrder" + "\r\n");
            fw.write(JsonUtil.getSimpleGsonWithDate().toJson(pidOrderList) + "\r\n");
            fw.close();
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareService.java
@@ -3,7 +3,6 @@
import java.util.List;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.ShareTaoPassword;
@@ -71,23 +70,6 @@
     * @return
     */
    int getShareMoneyCount();
    /**
     *
     * 方法说明: 查询所有用户分享赚列表数据
     * @author mawurui
     * createTime 2018年4月24日 下午3:45:32
     * @param pageIndex
     * @return
     */
    List<PidOrder> getShareMoneyList(int pageIndex, String key);
    /**
     * 根据查询条件统计条数
     * @param key
     * @return
     */
    int getCountByKey(String key);
    
fanli/src/main/java/com/yeshi/fanli/service/inter/hongbao/HongBaoV2Service.java
@@ -37,12 +37,6 @@
     */
    public void addHongBao(List<CommonOrder> commonOrder, int type) throws HongBaoException;
    /**
     * 将老版本的红包对象转为新版本的对象
     *
     * @param hb
     */
    public void convert(HongBao hb);
    /**
     * 奖金列表(1.4.9之前的版本)
fanli/src/main/java/com/yeshi/fanli/service/inter/order/HongBaoOrderService.java
@@ -36,4 +36,14 @@
     * @return
     */
    public long countFanLiOrder(Long uid);
    /**
     * 根据订单号和订单来源获取数量
     *
     * @param orderNo
     * @param type
     * @return
     */
    public long countByOrderNoAndHongBaoType(String orderNo, int type);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/order/PidOrderService.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java
@@ -18,12 +18,12 @@
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.methods.GetMethod;
import org.springframework.stereotype.Component;
import org.yeshi.utils.HttpUtil;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.OrderItem;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
@@ -39,7 +39,6 @@
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import org.yeshi.utils.HttpUtil;
import jxl.Sheet;
import jxl.Workbook;
@@ -596,23 +595,6 @@
    }
    /**
     * 解析商品分享订单
     *
     * @param in
     * @return
     */
    public static List<PidOrder> parsePidOrder(InputStream in) {
        List<TaoBaoOrder> orderList = parseOrder(in);
        if (orderList != null && orderList.size() > 0) {
            List<PidOrder> pidOrderList = new ArrayList<>();
            for (TaoBaoOrder order : orderList) {
                pidOrderList.add(convertToPidOrder(order));
            }
            return pidOrderList;
        }
        return new ArrayList<PidOrder>();
    }
    /**
     * 解析维权订单
@@ -724,74 +706,6 @@
        return orderItem;
    }
    public static List<PidOrder> getPidOrderList(int day, TaoBaoUnionConfig config) {
        String cookie1 = getTaoBaoCookie(config.getAccount());
        LogHelper.cookieLog("账号为:" + config.getAccount() + ",cookie为:" + cookie1);
        String[] cookies = new String[] { cookie1 };
        List<PidOrder> list = new ArrayList<PidOrder>();
        int i = 0;
        for (String cookie : cookies) {
            if (com.yeshi.fanli.util.StringUtil.isNullOrEmpty(cookie)) {
                i++;
                continue;
            }
            // 原始为30
            String startTime = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * day,
                    "yyyy-MM-dd");
            String endTime = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd");
            String url = String.format(
                    "http://pub.alimama.com/report/getTbkPaymentDetails.json?spm=a219t.7664554.1998457203.85.9pFBtK&queryType=1&payStatus=&DownloadID=DOWNLOAD_REPORT_INCOME_NEW&startTime=%s&endTime=%s",
                    startTime, endTime);
            HttpClient client = new HttpClient();
            // client.getHostConfiguration().setProxy("192.168.1.200", 8888);
            GetMethod gm = new GetMethod(url);
            gm.setRequestHeader("Cookie", cookie);
            gm.setRequestHeader("User-Agent",
                    "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36");
            InputStream inputStream = null;
            try {
                client.executeMethod(gm);
                System.out.println(gm.getStatusCode());
                if (gm.getStatusCode() == 200) {
                    System.out.println(gm.getResponseHeader("Content-Type").getValue());
                    if (!gm.getResponseHeader("Content-Type").getValue().contains("excel")) {
                        if (i == 0) {
                            reportCookieInvalid(config.getAccount());
                        }
                        continue;
                    }
                    inputStream = gm.getResponseBodyAsStream();
                    list.addAll(parsePidOrder(inputStream));
                    // String path =
                    // TaoBaoOrderUtil.class.getClassLoader().getResource("/").getPath();
                    // String yyyyMMddHHmmss =
                    // TimeUtil.yyyyMMddHHmmss(System.currentTimeMillis());
                    // FileUtils.copyInputStreamToFile(inputStream, new
                    // File(path+"/excel/"+yyyyMMddHHmmss+"."+"xls"));
                }
            } catch (HttpException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                i++;
                if (inputStream != null) {
                    try {
                        inputStream.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }
        }
        return list;
    }
    /**
     * 将淘宝订单按照订单号归类
     * 
@@ -808,37 +722,6 @@
            map.get(order.getOrderId()).add(order);
        }
        return map;
    }
    /**
     * 订单转换
     *
     * @param taoBaoOrder
     * @return
     */
    public static PidOrder convertToPidOrder(TaoBaoOrder taoBaoOrder) {
        PidOrder pidOrder = new PidOrder();
        pidOrder.setOrderCreateTime(new Date(TimeUtil.convertDateToTemp2(taoBaoOrder.getCreateTime())));
        pidOrder.setGoodsTitle(taoBaoOrder.getTitle());
        pidOrder.setAuctionId(taoBaoOrder.getAuctionId());
        pidOrder.setGoodsNum(taoBaoOrder.getCount());
        pidOrder.setPrice(taoBaoOrder.getPrice());
        pidOrder.setState(taoBaoOrder.getOrderState());
        pidOrder.setOrderType(taoBaoOrder.getOrderType());
        pidOrder.setRate(taoBaoOrder.getiRatio());
        pidOrder.setPayMoney(taoBaoOrder.getPayment());
        if ("订单结算".equalsIgnoreCase(taoBaoOrder.getOrderState()))
            pidOrder.setPreMoney(taoBaoOrder.geteIncome());
        else
            pidOrder.setPreMoney(taoBaoOrder.getEstimate());
        pidOrder.setFinalMoney(taoBaoOrder.getSettlement());
        if (!StringUtil.isNullOrEmpty(taoBaoOrder.getSettlementTime()))
            pidOrder.setBalanceTime(new Date(TimeUtil.convertDateToTemp2(taoBaoOrder.getSettlementTime())));
        pidOrder.setOrderId(taoBaoOrder.getOrderId());
        pidOrder.setTypeName(taoBaoOrder.getClassName());
        pidOrder.setSrcMediaId(taoBaoOrder.getSourceMediaId());
        pidOrder.setAdzoneId(taoBaoOrder.getAdPositionId());
        return pidOrder;
    }
    /**