admin
2019-07-16 013a3a80d8b91506307995e282337143c7b09783
添加淘宝订单后台查询功能
7个文件已修改
383 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ShareController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/taobao/TaoBaoOrderMapper.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/taobao/TaoBaoOrderMapper.xml 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderRepairServiceImpl.java 209 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoOrderServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TaoBaoOrderService.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/spring.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ShareController.java
@@ -205,7 +205,7 @@
            data.put("clickUrl", url);
            data.put("token", taoBaoLink.getTaoToken());
            data.put("rule", configService.getConfig("share_single_goods_rule"));
            data.put("rule", configService.get("share_single_goods_rule"));
            data.put("pictUrl", TbImgUtil.getTBSizeImg(taoBaoLink.getGoods().getPictUrl(), 500));
            String shareText = "";
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/taobao/TaoBaoOrderMapper.java
@@ -19,10 +19,10 @@
    // 通过订单号获取订单列表
    List<TaoBaoOrder> selectTaoBaoOrderByOrderId(String orderId);
    // 通过交易ID获取订单
    TaoBaoOrder selectTaoBaoOrderByTradeId(String tradeId);
    List<TaoBaoOrder> listByTradeId(String tradeId);
    int updateByPrimaryKeySelective(TaoBaoOrder record);
@@ -31,57 +31,75 @@
    // 根据订单号删除数据
    int deleteByOrderId(String orderId);
    /**
     * 统计--订单类型区分
     *
     * @return
     */
    Map<String, Object> countByOdrerType();
    /**
     * 统计今日订单
     *
     * @return
     */
    int countToday();
    /**
     * 统计昨日订单
     *
     * @return
     */
    int countYesterday();
    /**
     * 统计当日预估收益
     * @param date  2018-09-01
     *
     * @param date
     *            2018-09-01
     * @return
     */
    double countEstimate(@Param("date")String date);
    List<TaoBaoOrder> getStateByOrderIdAndPayment(@Param("orderId")String orderId, @Param("payment")String payment);
    double countEstimate(@Param("date") String date);
    List<TaoBaoOrder> getStateByOrderIdAndPayment(@Param("orderId") String orderId, @Param("payment") String payment);
    TaoBaoOrder selectLatestByAuctionId(long auctionId);
    /**
     *  统计所有订单
     * 统计所有订单
     *
     * @param channel
     * @return
     */
    List<Map<String, Object>> countOrderNumber( @Param("dateType") Integer dateType, @Param("year") String year,
            @Param("startTime")String startTime, @Param("endTime")String endTime);
    List<Map<String, Object>> countOrderNumber(@Param("dateType") Integer dateType, @Param("year") String year,
            @Param("startTime") String startTime, @Param("endTime") String endTime);
    /**
     * 获取长期未更新的订单
     *
     * @param start
     * @param count
     * @return
     */
    List<TaoBaoOrder> listLongTimeNoUpdateOrders(@Param("start")long start,@Param("count")int count);
    List<TaoBaoOrder> listLongTimeNoUpdateOrders(@Param("start") long start, @Param("count") int count);
    /**
     * 获取所有订单列表
     *
     * @param orderNo
     * @param start
     * @param count
     * @return
     */
    List<TaoBaoOrder> listAllOrder(@Param("orderNo") String orderNo, @Param("start") long start,
            @Param("count") int count);
    /**
     * 所有订单数量
     *
     * @param orderNo
     * @return
     */
    long countAllOrder(@Param("orderNo") String orderNo);
}
fanli/src/main/java/com/yeshi/fanli/mapping/taobao/TaoBaoOrderMapper.xml
@@ -74,28 +74,54 @@
        from yeshi_ec_taobao_order where to_auction_id = #{0} order by to_id
        desc limit 1
    </select>
    <select id="selectTaoBaoOrderByTradeId" resultMap="BaseResultMap"
        parameterType="java.lang.String">
        select
        <include refid="Base_Column_List" />
        from yeshi_ec_taobao_order where to_trade_id = #{0}  for update
        from yeshi_ec_taobao_order where to_trade_id = #{0} for update
    </select>
    <select id="listLongTimeNoUpdateOrders" resultMap="BaseResultMap">
        SELECT * FROM yeshi_ec_taobao_order t WHERE t.`to_order_state`='订单付款' AND UNIX_TIMESTAMP(t.`to_create_time`) <![CDATA[  <  ]]> UNIX_TIMESTAMP()-60*60*24*15 AND (t.`to_latest_updatetime` IS NULL OR UNIX_TIMESTAMP(t.`to_latest_updatetime`)<![CDATA[ < ]]>  UNIX_TIMESTAMP()-60*60*24*2) ORDER BY t.`to_create_time` DESC  limit #{start},#{count}
        SELECT * FROM yeshi_ec_taobao_order t WHERE t.`to_order_state`='订单付款'
        AND UNIX_TIMESTAMP(t.`to_create_time`) <![CDATA[  <  ]]>
        UNIX_TIMESTAMP()-60*60*24*15 AND (t.`to_latest_updatetime` IS NULL OR
        UNIX_TIMESTAMP(t.`to_latest_updatetime`)<![CDATA[ < ]]>
        UNIX_TIMESTAMP()-60*60*24*2) ORDER BY t.`to_create_time` DESC limit
        #{start},#{count}
    </select>
    <select id="listByTradeId" resultMap="BaseResultMap" parameterType="java.lang.String">
      select * from yeshi_ec_taobao_order where to_trade_id=#{0}
    <select id="listByTradeId" resultMap="BaseResultMap"
        parameterType="java.lang.String">
        select * from yeshi_ec_taobao_order where
        to_trade_id=#{0}
    </select>
    <select id="listAllOrder" resultMap="BaseResultMap">
        select * from yeshi_ec_taobao_order
        <if test="orderNo!=null">
            where to_order_id=#{orderNo}
        </if>
        order by to_create_time desc
        limit #{start},#{count}
    </select>
    <select id="countAllOrder" resultType="java.lang.Long">
        select count(to_id) from yeshi_ec_taobao_order
        <if test="orderNo!=null">
            where to_order_id=#{orderNo}
        </if>
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from
        yeshi_ec_taobao_order where to_id = #{id,jdbcType=BIGINT}</delete>
        yeshi_ec_taobao_order where to_id = #{id,jdbcType=BIGINT}
    </delete>
    <delete id="deleteByOrderId" parameterType="java.lang.String">delete from
        yeshi_ec_taobao_order where to_order_id = #{0}</delete>
        yeshi_ec_taobao_order where to_order_id = #{0}
    </delete>
    <insert id="insert" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoOrder"
        useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_taobao_order
        (to_id,to_create_time,to_click_time,to_title,to_auction_id,to_manager_wangwang,to_shop,to_count,to_price,to_order_state,to_order_type,to_iratio,to_sratio,to_payment,to_estimate,to_settlement,to_eIncome,to_settlement_time,to_tk_rate,to_tk_money,to_technology_support_percent,to_subsidy_ratio,to_subsidy,to_subsidy_type,to_transaction_platform,to_third_service,to_order_id,to_class_name,to_source_media_id,to_source_media_name,to_ad_position_id,to_ad_position_name,to_latest_updatetime,to_orderby,to_relation_id,to_special_id,to_trade_id)
@@ -103,7 +129,8 @@
        (#{id,jdbcType=BIGINT},#{createTime,jdbcType=VARCHAR},#{clickTime,jdbcType=VARCHAR},#{title,jdbcType=VARCHAR},#{auctionId,jdbcType=BIGINT},#{managerWangWang,jdbcType=VARCHAR},#{shop,jdbcType=VARCHAR},#{count,jdbcType=INTEGER},#{price,jdbcType=DECIMAL},#{orderState,jdbcType=VARCHAR},#{orderType,jdbcType=VARCHAR},#{iRatio,jdbcType=DECIMAL},#{sRatio,jdbcType=DECIMAL},#{payment,jdbcType=DECIMAL},#{estimate,jdbcType=DECIMAL},#{settlement,jdbcType=DECIMAL},#{eIncome,jdbcType=DECIMAL},#{settlementTime,jdbcType=VARCHAR},#{tkRate,jdbcType=DECIMAL},#{tkMoney,jdbcType=DECIMAL},#{technologySupportPercent,jdbcType=DECIMAL},#{subsidyRatio,jdbcType=DECIMAL},#{subsidy,jdbcType=DECIMAL},#{subsidyType,jdbcType=VARCHAR},#{transactionPlatform,jdbcType=VARCHAR},#{thirdService,jdbcType=VARCHAR},#{orderId,jdbcType=VARCHAR},#{className,jdbcType=VARCHAR},#{sourceMediaId,jdbcType=VARCHAR},#{sourceMediaName,jdbcType=VARCHAR},#{adPositionId,jdbcType=VARCHAR},#{adPositionName,jdbcType=VARCHAR},
        #{latestUpdateTime,jdbcType=TIMESTAMP},#{orderBy,jdbcType=INTEGER},
        #{relationId,jdbcType=VARCHAR},#{specialId,jdbcType=VARCHAR}
        ,#{tradeId,jdbcType=VARCHAR})</insert>
        ,#{tradeId,jdbcType=VARCHAR})
    </insert>
    <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoOrder"
        useGeneratedKeys="true" keyProperty="id">
        insert into yeshi_ec_taobao_order
@@ -332,7 +359,8 @@
        `to_order_state` = '订单成功' THEN 1 ELSE 0 END),0) AS countSettlement,
        IFNULL(SUM(CASE WHEN `to_order_state` = '订单付款' THEN 1 ELSE 0 END),0)
        AS countPayment, IFNULL(SUM(CASE WHEN `to_order_state` = '订单失效' THEN 1
        ELSE 0 END),0) AS countInvalid FROM `yeshi_ec_taobao_order`</select>
        ELSE 0 END),0) AS countInvalid FROM `yeshi_ec_taobao_order`
    </select>
    <select id="countToday" resultType="java.lang.Integer">SELECT
        COUNT(DISTINCT(tb.to_order_id)) FROM `yeshi_ec_taobao_order` tb WHERE <![CDATA[tb.`to_order_state`<>'订单失效'  AND TO_DAYS(tb.`to_create_time`) = TO_DAYS(NOW())]]>
    </select>
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderRepairServiceImpl.java
@@ -19,6 +19,7 @@
import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
import com.yeshi.fanli.dao.mybatis.money.ExtractCheckCompensateMapper;
import com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper;
import com.yeshi.fanli.dao.mybatis.order.CommonOrderMapper;
import com.yeshi.fanli.dao.mybatis.order.CommonOrderTradeIdMapMapper;
@@ -27,6 +28,7 @@
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.money.ExtractCheckCompensate;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.CommonOrderGoods;
@@ -34,21 +36,27 @@
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.OrderRepairHistory;
import com.yeshi.fanli.entity.order.ShareGoodsActivityOrder;
import com.yeshi.fanli.entity.push.PushInfo;
import com.yeshi.fanli.entity.push.PushInfo.PushTypeEnum;
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.HongBaoException;
import com.yeshi.fanli.exception.PushException;
import com.yeshi.fanli.exception.money.UserMoneyDetailException;
import com.yeshi.fanli.exception.push.PushInfoException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.service.inter.order.OrderRepairHistoryService;
import com.yeshi.fanli.service.inter.order.OrderRepairService;
import com.yeshi.fanli.service.inter.order.ShareGoodsActivityOrderService;
import com.yeshi.fanli.service.inter.push.PushInfoService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
@@ -64,6 +72,8 @@
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import net.sf.json.JSONObject;
@Service
public class OrderRepairServiceImpl implements OrderRepairService {
@@ -127,6 +137,15 @@
    @Resource
    private UserMoneyService userMoneyService;
    @Resource
    private PushInfoService pushInfoService;
    @Resource
    private UserMoneyMsgNotificationService userMoneyMsgNotificationService;
    @Resource
    private ExtractCheckCompensateMapper extractCheckCompensateMapper;
    @Transactional
    @Override
@@ -880,6 +899,7 @@
    @Transactional(propagation = Propagation.REQUIRED)
    private void deleteByCommonOrderId(Long commonOrderId) {
        commonOrderMapper.deleteByPrimaryKey(commonOrderId);
        HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrderId);
        if (hongBaoOrder == null || hongBaoOrder.getHongBaoV2() == null)
            return;
@@ -890,7 +910,7 @@
            }
        hongBaoV2Mapper.deleteByPrimaryKey(hongBaoOrder.getHongBaoV2().getId());
        hongBaoOrderMapper.deleteByPrimaryKey(hongBaoOrder.getId());
        commonOrderMapper.deleteByPrimaryKey(commonOrderId);
    }
    @Transactional
@@ -940,8 +960,12 @@
        return orderInfoMap.get(orderId);
    }
    @Transactional
    @Override
    public void repireFirstAndSecondLevel(String orderId) throws Exception {
        repireFirstShare(orderId);
        if (1 > 0)
            return;
        OrderInfo info = getOrderInfo(orderId);
        Map<Long, BigDecimal> oldMoneyMap = new HashMap<>();
        if (info.getFirstUid() != null)
@@ -964,6 +988,8 @@
            for (CommonOrder commonOrder : list) {
                HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId());
                if (hongBaoOrder == null)
                    continue;
                HongBaoV2 hongBao = hongBaoOrder.getHongBaoV2();
                Long firstUid = info.getFirstUid();
                Long secondUid = info.getSecondUid();
@@ -1098,6 +1124,118 @@
    }
    private void repireFirstShare(String orderId) throws Exception {
        OrderInfo info = getOrderInfo(orderId);
        Long firstUid = info.getFirstUid();
        Map<Long, BigDecimal> oldMoneyMap = new HashMap<>();
        if (info.getFirstUid() != null)
            oldMoneyMap.put(info.getFirstUid(), info.getFirstUidMoney());
        if (info.getSecondUid() != null)
            oldMoneyMap.put(info.getSecondUid(), info.getSecondUidMoney());
        if (info != null) {
            List<CommonOrder> list = commonOrderMapper.listBySourceTypeAndOrderNo(Constant.SOURCE_TYPE_TAOBAO,
                    info.getOrderId());
            // 查询是否有子红包
            for (CommonOrder commonOrder : list) {
                HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId());
                if (hongBaoOrder == null)
                    continue;
                List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listChildrenById(hongBaoOrder.getHongBaoV2().getId());
                if (hongBaoList != null && hongBaoList.size() > 0)// 有子红包就不处理了
                    return;
            }
            for (CommonOrder commonOrder : list) {
                if (commonOrder.getState() == CommonOrder.STATE_SX || commonOrder.getState() == CommonOrder.STATE_WQ)
                    continue;
                // 分享赚
                HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId());
                if (hongBaoOrder == null)
                    continue;
                HongBaoV2 hongBao = hongBaoOrder.getHongBaoV2();
                // 4月17日后才有一级分享赚
                if (commonOrder.getThirdCreateTime().getTime() > TimeUtil.convertToTimeTemp("2019-04-17",
                        "yyyy-MM-dd")) {
                    UserInfo boss = null;
                    if (firstUid != null)
                        boss = userInfoService.selectByPKey(firstUid);
                    if (boss != null) {
                        BigDecimal firstLevelRate = hongBaoManageService.getFirstShareRate(1,
                                commonOrder.getThirdCreateTime().getTime());
                        HongBaoV2 child = new HongBaoV2();
                        child.setBeizhu("2019年7月批量修改");
                        child.setParent(hongBao);
                        child.setType(HongBaoV2.TYPE_SHARE_YIJI);
                        if (commonOrder.getState() == CommonOrder.STATE_FK) {
                            child.setState(HongBaoV2.STATE_BUKELINGQU);
                            child.setMoney(MoneyBigDecimalUtil.mul(commonOrder.getEstimate(),
                                    firstLevelRate.divide(new BigDecimal(100))));
                        } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
                            child.setState(HongBaoV2.STATE_KELINGQU);
                            child.setMoney(MoneyBigDecimalUtil.mul(commonOrder.geteIncome(),
                                    firstLevelRate.divide(new BigDecimal(100))));
                            Calendar calendar = Calendar.getInstance();
                            calendar.setTime(commonOrder.getSettleTime());
                            calendar.add(Calendar.MONTH, 1);
                            child.setPreGetTime(new Date(TimeUtil.convertToTimeTemp(
                                    calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-25",
                                    "yyyy-M-dd")));
                            if (child.getPreGetTime().getTime() < System.currentTimeMillis()) {
                                child.setGetTime(child.getPreGetTime());
                                child.setState(HongBaoV2.STATE_YILINGQU);
                            }
                        }
                        child.setUserInfo(boss);
                        child.setUrank(boss.getRank());
                        child.setVersion(2);
                        child.setCreateTime(new Date());
                        hongBaoV2Mapper.insertSelective(child);
                    }
                }
            }
        }
        // 统计修改后的资金
        List<CommonOrder> newCommonOrderList = commonOrderMapper.listBySourceTypeAndOrderNo(Constant.SOURCE_TYPE_TAOBAO,
                orderId);
        Map<Long, BigDecimal> newMap = new HashMap<>();
        if (newCommonOrderList != null)
            for (CommonOrder co : newCommonOrderList) {
                HongBaoOrder newHongBaoOrder = hongBaoOrderService.selectDetailByCommonOrderId(co.getId());
                if (newHongBaoOrder == null)
                    continue;
                HongBaoV2 hongBao = newHongBaoOrder.getHongBaoV2();
                List<HongBaoV2> children = hongBaoV2Service.listChildrenById(hongBao.getId());
                if (children != null)
                    for (HongBaoV2 child : children) {
                        if (newMap.get(child.getUserInfo().getId()) == null)
                            newMap.put(child.getUserInfo().getId(), new BigDecimal(0));
                        if (child.getState() == HongBaoV2.STATE_YILINGQU)
                            newMap.put(child.getUserInfo().getId(),
                                    newMap.get(child.getUserInfo().getId()).add(child.getMoney()));
                    }
            }
        for (Iterator<Long> its = newMap.keySet().iterator(); its.hasNext();) {
            Long uid = its.next();
            BigDecimal beforeGetMoney = oldMoneyMap.get(uid);
            BigDecimal afterGetMoney = newMap.get(uid);
            OrderRepairHistory history = new OrderRepairHistory();
            history.setAfterGetMoney(afterGetMoney);
            history.setBeforeGetMoney(beforeGetMoney);
            history.setOrderId(orderId);
            history.setUid(uid);
            orderRepairHistoryService.addOrderRepairHistory(history);
        }
    }
    class OrderInfo {
        private String orderId;
        private Long firstUid;
@@ -1156,22 +1294,85 @@
    @Override
    public void doMoney(Long uid) {
        List<OrderRepairHistory> historyList = listByUid(uid);
        for (int i = 0; i < historyList.size(); i++) {
            if (historyList.get(i).getCreateTime().getTime() < TimeUtil.convertToTimeTemp("2019-07-15 17:00:38",
                    "yyyy-MM-dd HH:mm:ss")) {
                historyList.remove(i);
                i--;
            }
        }
        BigDecimal money = new BigDecimal(0);
        String orders = "";
        for (OrderRepairHistory history : historyList) {
            money.add(history.getAfterGetMoney().subtract(history.getBeforeGetMoney()));
            money = money.add(history.getAfterGetMoney().subtract(history.getBeforeGetMoney()));
            orders += history.getOrderId() + ",";
        }
        if (money.compareTo(new BigDecimal(0)) > 0)// 资金需要增加
        {
            try {
                UserMoneyDetail detail = UserMoneyDetailFactory.createSystemEqualize(null, money, new UserInfo(uid));
                UserMoneyDetail detail = UserMoneyDetailFactory.createSystemEqualize("订单统计异常修复", money,
                        new UserInfo(uid));
                // 系统补齐
                // 加资金
                userMoneyService.addUserMoney(uid, money, detail);
                pushMsg(uid, "关于近期订单与资金异常的排查与修复结果通知",
                        "尊敬的用户,经仔细核对您账户中的订单,发现您账户中有未统计或错误统计的订单,我们已经为您补齐资金,对应资金已经存入您的账户余额中,敬请查收注查收。感谢信任,返利券App终将成为您最信任的购物省钱助手。");
                userMoneyMsgNotificationService.systemEqualize(uid, "订单统计异常修复", money, userInfoService.getBalance(uid));
            } catch (UserMoneyDetailException e) {
                e.printStackTrace();
            }
        } else {// 资金需要减少
        } else {// 资金需要减少,不要扣钱
            pushMsg(uid, "关于近期订单与资金异常的排查与修复结果通知",
                    "尊敬的用户,经仔细核对您账户中的订单,发现您账户中有错误统计的订单,我们已经为您恢复正常,所涉及订单多统计出来的资金,不会被扣除,即您账户中的资金将保持不变,已提现的资金,也不会收回,敬请知晓。感谢信任,返利券App终将成为您最信任的购物省钱助手。");
            // userMoneyMsgNotificationService.systemEqualize(uid, "订单统计异常修复",
            // money, userInfoService.getBalance(uid));
            // 加入提现审核异常保护中
            ExtractCheckCompensate check = new ExtractCheckCompensate();
            check.setBeiZhu("7月订单异常系统处理:" + orders);
            check.setCreateTime(new Date());
            check.setMoney(money);
            check.setUserInfo(new UserInfo(uid));
            check.setUpdateTime(new Date());
            extractCheckCompensateMapper.insertSelective(check);
        }
    }
    private void pushMsg(Long uid, String title, String content) {
        PushInfo pushInfo = new PushInfo();
        pushInfo.setTitle(title);
        pushInfo.setContent(content);
        pushInfo.setUids(uid + "");
        JSONObject jsonData = new JSONObject();
        jsonData.put("url", "");
        jsonData.put("ios", "全推");
        jsonData.put("android", "全推");
        pushInfo.setJsonData(jsonData.toString());
        pushInfo.setType(PushTypeEnum.ZNX);
        pushInfo.setArrayAndroid("[全推]");
        pushInfo.setArrayIOS("[全推]");
        pushInfo.setCreateTime(new Date());
        try {
            pushInfoService.save(pushInfo);
        } catch (PushInfoException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
        try {
            pushInfoService.handPush(pushInfo.getId());
        } catch (PushInfoException e) {
            e.printStackTrace();
        } catch (PushException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoOrderServiceImpl.java
@@ -178,4 +178,19 @@
        return taoBaoOrderMapper.selectTaoBaoOrderByTradeId(tradeId);
    }
    @Override
    public List<TaoBaoOrder> listAllOrder(int page, int pageSize) {
        return taoBaoOrderMapper.listAllOrder(null, (page - 1) * pageSize, pageSize);
    }
    @Override
    public long countAllOrder() {
        return taoBaoOrderMapper.countAllOrder(null);
    }
    @Override
    public TaoBaoOrder selectByPrimaryKey(Long id) {
        return taoBaoOrderMapper.selectByPrimaryKey(id);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TaoBaoOrderService.java
@@ -54,14 +54,37 @@
     * @param realtionId
     */
    public void bindSpecialIdAndRealtionId(String tradeId, String specialId, String realtionId);
    /**
     * 根据交易ID获取订单号
     *
     * @param tradeId
     * @return
     */
    public TaoBaoOrder selectByTradeId(String tradeId);
    /**
     * 检索所有订单列表
     *
     * @param page
     * @param pageSize
     * @return
     */
    public List<TaoBaoOrder> listAllOrder(int page, int pageSize);
    /**
     * 订单总量
     *
     * @return
     */
    public long countAllOrder();
    /**
     * 根据主键检索
     *
     * @param id
     * @return
     */
    public TaoBaoOrder selectByPrimaryKey(Long id);
}
fanli/src/main/resource/spring.xml
@@ -142,8 +142,8 @@
    <!-- 事物 -->
    <bean id="transactionManager"
        class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>
    <tx:annotation-driven transaction-manager="transactionManager"