yujian
2020-05-06 a338d86bcaf17f2ba9296a601cdbda4d3e9baae0
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserOrderController.java
@@ -4,8 +4,6 @@
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -30,6 +28,7 @@
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.log.LogHelper;
@@ -45,6 +44,7 @@
import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.CMQManager;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.VersionUtil;
@@ -87,6 +87,9 @@
   @Resource
   private LostOrderService lostOrderService;
   @Resource
   private RedisManager redisManager;
   /**
    * 订单列表
@@ -169,7 +172,13 @@
      } else if (goodsType != null && goodsType == 0) {
         goodsType = null; // 所有平台订单
      }
      List<Integer> listSource = new ArrayList<>();
      if (goodsType != null) {
         listSource.add(goodsType);
      }
      try {
         if (slotTime != null) {
            SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
@@ -184,6 +193,9 @@
         endTime += " 23:59:59";
      }
      String orderFindUrl = null;
      try {
         long count = 0;
         long totalValid = 0;
@@ -194,12 +206,12 @@
         // 查询列表
         List<CommonOrderVO> list = commonOrderService.getOrderByUid(acceptData, page, uid, state, type, orderState,
               orderNo, startTime, endTime, dateType, goodsType);
               orderNo, startTime, endTime, dateType, listSource);
         if (list != null && list.size() > 0) {
            // 统计总数
            count = commonOrderService.countGroupOrderNoByUid(uid, state, type, orderState, orderNo, startTime,
                  endTime, dateType, goodsType);
                  endTime, dateType, listSource);
         }
         // 需要统计筛选信息 :未失效的总金额 以及订单
@@ -227,14 +239,19 @@
         if (todayMoney == null) {
            todayMoney = new BigDecimal(0.00);
         }
         String helpUrl = configService.get("order_list_help");
         // 判断是否需要显示订单找回提示
         if (VersionUtil.greaterThan_2_0_2(acceptData.getPlatform(), acceptData.getVersion()))
            if (state ==null && page == 1) {
               if (redisManager.frequencyLimit("orderlist-" + acceptData.getDevice(), 8, 4)||count==0L) {// 8秒内请求3次触发
                  orderFindUrl = configService.get(ConfigKeyEnum.orderFindNotifyUrl.getKey());
               }
            }
         JSONObject data = new JSONObject();
         data.put("count", count);
         data.put("result_list", JsonUtil.getApiCommonGson().toJson(list));
         data.put("helpUrl", helpUrl);
         data.put("helpUrl", configService.get(ConfigKeyEnum.orderListHelp.getKey()));
         if (type != null && type == 1) {
            data.put("todayMoney", "预估返利总额 ¥" + todayMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
@@ -248,16 +265,15 @@
         data.put("totalValid", totalValid); // 有效数量
         data.put("totalProces", totalProces); // 维权数量
         data.put("totalInvite", totalInvite); // 失效数量
         if (orderFindUrl != null)
            data.put("findOrderHelpUrl", orderFindUrl);
         out.print(JsonUtil.loadTrueResult(data));
      } catch (CommonOrderException e) {
         out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult(1, "查询失败"));
         e.printStackTrace();
         LogHelper.errorDetailInfo(e);
      }
   }
   /**
@@ -518,7 +534,7 @@
            Date maxGetTime = new Date(nowTime);
            inviteMoney = hongBaoV2CountService.sumAlreadyGetMoneyByUid(uid, inviteTypes, minGetTime, maxGetTime);
            inviteCount = hongBaoV2CountService.countAlreadyGetMoneyByUid(uid, inviteTypes, minGetTime, maxGetTime);
            sharemoney = hongBaoV2CountService.sumAlreadyGetMoneyByUid(uid, shareTypes, minGetTime, maxGetTime);
            shareCount = hongBaoV2CountService.countAlreadyGetMoneyByUid(uid, shareTypes, minGetTime, maxGetTime);