| | |
| | | import java.math.BigDecimal;
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Calendar;
|
| | | import java.util.Date;
|
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | |
| | | 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.order.TeamOrderStatistic;
|
| | | 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;
|
| | |
| | | import com.yeshi.fanli.service.inter.order.CommonOrderService;
|
| | | import com.yeshi.fanli.service.inter.order.LostOrderService;
|
| | | import com.yeshi.fanli.service.inter.order.OrderService;
|
| | | import com.yeshi.fanli.service.inter.order.TeamOrderStatisticService;
|
| | | import com.yeshi.fanli.service.inter.order.dividents.TeamDividentsSourceOrderService;
|
| | | import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
|
| | | import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
|
| | | import com.yeshi.fanli.service.inter.user.UserInfoService;
|
| | |
| | | import com.yeshi.fanli.util.VersionUtil;
|
| | | import com.yeshi.fanli.util.account.UserUtil;
|
| | | import com.yeshi.fanli.vo.order.CommonOrderVO;
|
| | | import com.yeshi.fanli.vo.order.TeamOrderStatisticVO;
|
| | | import com.yeshi.fanli.vo.user.UserInfoExtraVO;
|
| | |
|
| | | import net.sf.json.JSONObject;
|
| | |
| | |
|
| | | @Resource
|
| | | private RedisManager redisManager;
|
| | |
|
| | | // @Resource
|
| | | private TeamOrderStatisticService teamOrderStatisticService;
|
| | |
|
| | | @Resource
|
| | | private TeamDividentsSourceOrderService teamDividentsSourceOrderService;
|
| | |
|
| | | /**
|
| | | * 订单列表
|
| | |
| | | goodsType = null; // 所有平台订单
|
| | | }
|
| | |
|
| | | List<Integer> listSource = new ArrayList<>();
|
| | | if (goodsType != null) {
|
| | | listSource.add(goodsType);
|
| | | }
|
| | |
|
| | | try {
|
| | | if (slotTime != null) {
|
| | | SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
|
| | |
| | | }
|
| | |
|
| | | String orderFindUrl = null;
|
| | | // 判断是否需要显示订单找回提示
|
| | | if (VersionUtil.greaterThan_2_0_2(acceptData.getPlatform(), acceptData.getVersion()))
|
| | | if (state ==null && page == 1) {
|
| | | if (redisManager.frequencyLimit("orderlist-" + acceptData.getDevice(), 8, 4)) {// 8秒内请求3次触发
|
| | | orderFindUrl = configService.get("order_find_notify_url");
|
| | | }
|
| | | }
|
| | |
|
| | | try {
|
| | | long count = 0;
|
| | |
| | |
|
| | | // 查询列表
|
| | | 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);
|
| | | }
|
| | |
|
| | | // 需要统计筛选信息 :未失效的总金额 以及订单
|
| | |
| | | todayMoney = new BigDecimal(0.00);
|
| | | }
|
| | |
|
| | | // 判断是否需要显示订单找回提示
|
| | | 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", configService.get("order_list_help"));
|
| | | data.put("helpUrl", configService.get(ConfigKeyEnum.orderListHelp.getKey()));
|
| | |
|
| | | if (type != null && type == 1) {
|
| | | data.put("todayMoney", "预估返利总额 ¥" + todayMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
|
| | |
| | |
|
| | | return startTime;
|
| | | }
|
| | |
|
| | | /**
|
| | | * 获取团队订单统计
|
| | | * @Title: getTeamOrderStatistic
|
| | | * @Description: |
| | | * @param acceptData
|
| | | * @param uid
|
| | | * @param out |
| | | * void 返回类型
|
| | | * @throws
|
| | | */
|
| | | @RequestMapping(value = "getTeamOrderStatistic")
|
| | | public void getTeamOrderStatistic(AcceptData acceptData, Long uid, PrintWriter out) {
|
| | | long now = System.currentTimeMillis();
|
| | | TeamOrderStatisticVO vo = new TeamOrderStatisticVO();
|
| | | Date minDate = new Date(TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now, "yyyyMMdd"), "yyyyMMdd"));
|
| | | Date maxDate = new Date(
|
| | | TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now + 1000 * 60 * 60 * 24L, "yyyyMMdd"), "yyyyMMdd"));
|
| | | List<Integer> countList = new ArrayList<>();
|
| | | // 统计今日
|
| | | TeamOrderStatistic statistic = teamOrderStatisticService.countByUidAndDate(uid, minDate, maxDate);
|
| | | if (statistic == null) {
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | } else {
|
| | | countList.add(statistic.getDirectOrderCount() == null ? 0 : statistic.getDirectOrderCount());
|
| | | countList.add(statistic.getInDirectOrderCount() == null ? 0 : statistic.getInDirectOrderCount());
|
| | | countList.add(statistic.getOtherOrderCount() == null ? 0 : statistic.getOtherOrderCount());
|
| | | }
|
| | |
|
| | | vo.setToday(countList);
|
| | |
|
| | | // 统计昨日
|
| | | minDate = new Date(
|
| | | TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now - 1000 * 60 * 60 * 24L, "yyyyMMdd"), "yyyyMMdd"));
|
| | | maxDate = new Date(TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now, "yyyyMMdd"), "yyyyMMdd"));
|
| | |
|
| | | countList = new ArrayList<>();
|
| | | statistic = teamOrderStatisticService.countByUidAndDate(uid, minDate, maxDate);
|
| | | if (statistic == null) {
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | } else {
|
| | | countList.add(statistic.getDirectOrderCount() == null ? 0 : statistic.getDirectOrderCount());
|
| | | countList.add(statistic.getInDirectOrderCount() == null ? 0 : statistic.getInDirectOrderCount());
|
| | | countList.add(statistic.getOtherOrderCount() == null ? 0 : statistic.getOtherOrderCount());
|
| | | }
|
| | |
|
| | | vo.setYesterday(countList);
|
| | |
|
| | | // 统计本月
|
| | |
|
| | | minDate = new Date(
|
| | | TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now - 1000 * 60 * 60 * 24L, "yyyyMM"), "yyyyMM"));
|
| | | Calendar ca = Calendar.getInstance();
|
| | | ca.setTimeInMillis(now);
|
| | |
|
| | | ca.add(Calendar.MONTH, 1);
|
| | |
|
| | | maxDate = new Date(
|
| | | TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyyMM"), "yyyyMM"));
|
| | |
|
| | | countList = new ArrayList<>();
|
| | | statistic = teamOrderStatisticService.countByUidAndDate(uid, minDate, maxDate);
|
| | | if (statistic == null) {
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | } else {
|
| | | countList.add(statistic.getDirectOrderCount() == null ? 0 : statistic.getDirectOrderCount());
|
| | | countList.add(statistic.getInDirectOrderCount() == null ? 0 : statistic.getInDirectOrderCount());
|
| | | countList.add(statistic.getOtherOrderCount() == null ? 0 : statistic.getOtherOrderCount());
|
| | | }
|
| | |
|
| | | vo.setThisMonth(countList);
|
| | |
|
| | | // 统计 累计
|
| | | minDate = new Date(0L);
|
| | | maxDate = new Date(now);
|
| | | countList = new ArrayList<>();
|
| | | statistic = teamOrderStatisticService.countByUidAndDate(uid, minDate, maxDate);
|
| | | if (statistic == null) {
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | countList.add(0);
|
| | | } else {
|
| | | countList.add(statistic.getDirectOrderCount() == null ? 0 : statistic.getDirectOrderCount());
|
| | | countList.add(statistic.getInDirectOrderCount() == null ? 0 : statistic.getInDirectOrderCount());
|
| | | countList.add(statistic.getOtherOrderCount() == null ? 0 : statistic.getOtherOrderCount());
|
| | | }
|
| | |
|
| | | vo.setTotal(countList);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 获取团队订单排行
|
| | | * @Title: getTeamOrderRank
|
| | | * @Description: |
| | | * @param acceptData
|
| | | * @param uid
|
| | | * @param type 1-今日 2-昨日 3-本月
|
| | | * @param out |
| | | * void 返回类型
|
| | | * @throws
|
| | | */
|
| | | @RequestMapping(value = "getTeamOrderRank")
|
| | | public void getTeamOrderRank(AcceptData acceptData, Long uid, int type, PrintWriter out) {
|
| | | // TODO 需求不明确
|
| | |
|
| | | }
|
| | |
|
| | | @RequestMapping(value = "searchOrderTeam")
|
| | | public void searchOrderTeam(AcceptData acceptData, String key, PrintWriter out) {
|
| | | // teamDividentsSourceOrderService.selectByOrderNoSourceType(orderNo, sourceType);
|
| | | }
|
| | |
|
| | | }
|