From 92c681fabac989d1a9f16fa13202d7f5ccac52d9 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期一, 14 一月 2019 10:22:22 +0800 Subject: [PATCH] 订单优化 + 后台提现曲线图 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java | 248 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 170 insertions(+), 78 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java index 97c11df..54bd45d 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java @@ -1,7 +1,6 @@ package com.yeshi.fanli.controller.admin; import java.io.PrintWriter; -import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -26,10 +25,12 @@ import com.yeshi.fanli.service.inter.order.CommonOrderCountService; import com.yeshi.fanli.service.inter.order.CommonOrderService; import com.yeshi.fanli.service.inter.order.OrderService; +import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.vo.order.CommonOrderVO; +import com.yeshi.fanli.vo.order.TaoBaoOrderVO; @Controller @RequestMapping("admin/new/api/v1/order") @@ -50,6 +51,10 @@ @Resource private CommonOrderService commonOrderService; + @Resource + private TaoBaoOrderService taoBaoOrderService; + + @RequestMapping(value = "getOrderList", method = RequestMethod.POST) public void getOrderList(int pageIndex, String key, PrintWriter out) { @@ -61,6 +66,89 @@ data.put("pe", pe); data.put("orderList", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(orderAdminList)); out.print(JsonUtil.loadTrueResult(data)); + } + + + /** + * 娣樺疂璁㈠崟 + * @param callback + * @param pageIndex + * @param pageSize + * @param uid + * @param state + * @param type + * @param orderState + * @param orderNo + * @param startTime + * @param endTime + * @param out + */ + @RequestMapping(value = "getTBOrder") + public void getTBOrder(String callback, Integer pageIndex, Integer keyType, + String key, Integer state, String startTime, String endTime, PrintWriter out) { + + if (pageIndex == null || pageIndex < 1) { + pageIndex = 1; + } + + if (state != null && state == 0) { + state = null;// 鎵�鏈夌姸鎬� + } + + if (endTime != null && endTime.trim().length() > 0) { + endTime += " 23:59:59"; + } + + try { + + long count = 0; + int pageSize = Constant.PAGE_SIZE; + List<TaoBaoOrderVO> listVO = null; + + if (key != null && key.trim().length() > 0 && keyType == 2) { + + // 鏌ヨ鍒楄〃 + List<CommonOrderVO> list = commonOrderService.listQueryByUid((pageIndex - 1) * pageSize, pageSize , + Long.parseLong(key), state, null, null, null, startTime, endTime, null); + + if (list == null || list.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); + return; + } + + // 缁熻鎬绘暟 + count = commonOrderService.countQueryByUid(Long.parseLong(key), state, null, null, null, startTime, endTime, null); + + } else { + + List<TaoBaoOrderVO> listQuery = taoBaoOrderService.listQuery((pageIndex - 1) * pageSize, pageSize, key, startTime, endTime, state); + + if (listQuery == null || listQuery.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); + return; + } + + count= taoBaoOrderService.countQuery(key, startTime, endTime, state); + + } + + + + int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); + PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage); + + JSONObject data = new JSONObject(); + data.put("pe", pe); + data.put("result_list", listVO); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + + } catch (CommonOrderException e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg())); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); + e.printStackTrace(); + } } @@ -87,6 +175,10 @@ if (type != null && type == 0) { type = null; // 鎵�鏈夌被鍨嬭鍗� + } + + if (endTime != null && endTime.trim().length() > 0) { + endTime += " 23:59:59"; } try { @@ -137,110 +229,110 @@ * 2018-12-01 * @param out */ - @RequestMapping(value = "getHistoryOderByChannel") - public void getHistoryOderByChannel(String callback, String channelArray, Integer dateType, Integer type, + @RequestMapping(value = "getOderChannelCharts") + public void getOderChannelCharts(String callback, String channelArray, Integer dateType, Integer type, String year, String startTime, String endTime, PrintWriter out) { - if (StringUtil.isNullOrEmpty(channelArray)) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夋嫨缁熻瀵瑰簲鍚嶇О")); + String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime); + if (validateMsg != null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg)); return; } - - if (dateType == null) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夋嫨鎺掑垪鏂瑰紡")); - return; - } - - if (dateType == 1 && (StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime))) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夋嫨鏃堕棿鍖洪棿")); - return; - } - - if (!StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夌粨鏉熸棩鏈�")); - return; - } - - if (StringUtil.isNullOrEmpty(startTime) && !StringUtil.isNullOrEmpty(endTime)) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夎捣濮嬫棩鏈�")); - return; - } - + if (dateType != 1 && (!StringUtil.isNullOrEmpty(startTime) || !StringUtil.isNullOrEmpty(endTime))) { startTime = null; endTime = null; } + + List<String> channelList = null; + if (channelArray != null && channelArray.trim().length() > 0) { + Gson gson = new Gson(); + channelList = gson.fromJson(channelArray, new TypeToken<ArrayList<String>>() {}.getType()); + } + + if (channelList == null || channelList.size() == 0) { + channelList = new ArrayList<String>(); + channelList.add("all"); + } + + + if (dateType == 1 && year != null) { + year = null; // 璁剧疆涓虹┖ + } else if (dateType == 2) { + if (startTime != null) + startTime = null; + + if (endTime != null) + endTime = null; + + } else if (dateType == 3) { + if (year != null) + year = null; + + if (startTime != null) + startTime = null; + + if (endTime != null) + endTime = null; + } + try { Gson gson = new Gson(); - List<String> list = gson.fromJson(channelArray, new TypeToken<ArrayList<String>>() { - }.getType()); + Object objectDate = null; + List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year); - if (list == null || list.size() == 0) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍙傛暟鏍煎紡涓嶆纭�")); - return; - } - - JSONArray array = new JSONArray(); - - for (String channel : list) { - JSONObject channelData = new JSONObject(); - List<Object> resultList = null; + JSONArray line_list = new JSONArray(); + for (String channel : channelList) { + List<Map<String, Object>> list = null; if (type == 1) { - resultList = hongBaoService.count24HOderByChannel(channel, dateType, year, startTime, endTime); + list = hongBaoService.count24HOderByChannel(channel, dateType, year, startTime, endTime); } else if (type == 2) { - resultList = hongBaoService.countHistoryOderByChannel(channel, dateType, year, startTime, endTime); + list = hongBaoService.countHistoryOderByChannel(channel, dateType, year, startTime, endTime); } + + if ("all".equalsIgnoreCase(channel)) { + channel = "鎬昏"; + } + + JSONObject innerList = new JSONObject(); + innerList.put("name", channel); - if (resultList == null) { - resultList = new ArrayList<Object>(); + if (dateType != 3) { + innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateList, list))); + } else { + // 骞磋鍥� + Map<String, Object> map = AdminUtils.yearsDataFactory(list); + + if (objectDate == null) { + objectDate = map.get("date"); + } + innerList.put("data", gson.toJson(map.get("value"))); } - channelData.put("name", channel); - channelData.put("data_list", resultList); - array.add(channelData); + + line_list.add(innerList); } - JSONObject data = new JSONObject(); - data.put("result_list", array); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + JSONObject data = new JSONObject(); + if (objectDate != null) { + data.put("xAxis_list", gson.toJson(objectDate)); + } else { + data.put("xAxis_list", gson.toJson(dateList)); + } + + data.put("line_list", line_list); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); e.printStackTrace(); } } - /** - * 楠岃瘉缁熻淇℃伅鍙傛暟 - * @param shwoType - * @param startTime - * @param endTime - * @return - */ - public String validateParams(Integer shwoType, String startTime, String endTime) { - - if (shwoType == null) { - return "璇烽�夋嫨瑙嗗浘绫诲瀷"; - } - - if (shwoType == 1 && (StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime))) { - return "璇烽�夋嫨鏃堕棿鍖洪棿"; - } - - if (!StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) { - return "璇烽�夌粨鏉熸棩鏈�"; - } - - if (StringUtil.isNullOrEmpty(startTime) && !StringUtil.isNullOrEmpty(endTime)) { - return "璇烽�夎捣濮嬫棩鏈�"; - } - - return null; - } - - /** * 缁熻鎻愮幇鐢宠鎬绘鏁� @@ -257,7 +349,7 @@ public void getHongBaoNum(String callback,String channelArray, Integer dateType, Integer state, String year, String startTime, String endTime, PrintWriter out) { - String validateMsg = validateParams(dateType, startTime, endTime); + String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime); if (validateMsg != null) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg)); return; -- Gitblit v1.8.0