From b42e88afc77b0d40ea8bbad87df6cc22d03414e1 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期一, 14 一月 2019 18:03:13 +0800 Subject: [PATCH] 后台订单统计 用户统计 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java | 123 +++++++++++++++++++++++++++++----------- 1 files changed, 88 insertions(+), 35 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 02763d3..0c1ad6a 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 @@ -228,8 +228,8 @@ * 2018-12-01 * @param out */ - @RequestMapping(value = "getOderChannelCharts") - public void getOderChannelCharts(String callback, String channelArray, Integer dateType, Integer type, + @RequestMapping(value = "get24HOderChannelCharts") + public void get24HOderChannelCharts(String callback, String channelArray, Integer dateType, String year, String startTime, String endTime, PrintWriter out) { String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime); @@ -283,14 +283,10 @@ List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year); JSONArray line_list = new JSONArray(); + for (String channel : channelList) { - List<Map<String, Object>> list = null; - if (type == 1) { - list = hongBaoService.count24HOderByChannel(channel, dateType, year, startTime, endTime); + List<Map<String, Object>> list = hongBaoV2CountService.count24HOderByChannel(channel, dateType, year, startTime, endTime); - } else if (type == 2) { - list = hongBaoService.countHistoryOderByChannel(channel, dateType, year, startTime, endTime); - } if ("all".equalsIgnoreCase(channel)) { channel = "鎬昏"; @@ -300,7 +296,7 @@ innerList.put("name", channel); if (dateType != 3) { - innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateList, list))); + innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, dateList, list))); } else { // 骞磋鍥� Map<String, Object> map = AdminUtils.yearsDataFactory(list); @@ -386,7 +382,7 @@ try { - JSONObject data = countHistoryHongBao(channelArray, dateType, state, year, startTime, endTime, 1); + JSONObject data = countHistoryHongBao(channelArray, dateType, state, year, startTime, endTime, 2); JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("绯荤粺寮傚父")); @@ -476,7 +472,7 @@ innerList.put("name", channel); if (dateType != 3) { - innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateList, list))); + innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, dateList, list))); } else { // 骞磋鍥� Map<String, Object> map = AdminUtils.yearsDataFactory(list); @@ -514,44 +510,101 @@ * @param endTime * @param out */ - @RequestMapping(value = "getTypeRate") - public void getTypeRate(String callback, Integer dateType, Integer type, String year, + @RequestMapping(value = "getTypeNumber") + public void getTypeNumber(String callback, Integer dateType, String typeArray, String year, String startTime, String endTime, PrintWriter out) { - if (StringUtil.isNullOrEmpty(startTime) || StringUtil.isNullOrEmpty(endTime)) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夋嫨姝g‘鏃堕棿鍖洪棿")); + String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime); + if (validateMsg != null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg)); return; } - if (type == null || dateType ==null) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("瑙嗗浘绫诲瀷銆佽鍗曠被鍨嬩笉鑳戒负绌�")); + if (dateType != 1 && (!StringUtil.isNullOrEmpty(startTime) || !StringUtil.isNullOrEmpty(endTime))) { + startTime = null; + endTime = null; + } + + + List<Integer> channelList = null; + if (typeArray != null && typeArray.trim().length() > 0) { + Gson gson = new Gson(); + channelList = gson.fromJson(typeArray, new TypeToken<ArrayList<Integer>>() {}.getType()); + } + + if (channelList == null || channelList.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璁㈠崟绫诲瀷涓嶈兘涓虹┖")); return; } + + + 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; + } + + Gson gson = new Gson(); + Object objectDate = null; + List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year); try { - List<Map<String, Object>> resultList = hongBaoV2CountService.getProportionByType(dateType, - type, year, startTime, endTime); - if (resultList == null) { - resultList = new ArrayList<Map<String, Object>>(); + JSONArray line_list = new JSONArray(); + for (Integer type : channelList) { + + List<Map<String, Object>> list = hongBaoV2CountService.countHongBaoType(dateType, + type, year, startTime, endTime); + + + JSONObject innerList = new JSONObject(); + if (type == 1) { + innerList.put("name", "杩斿埄璁㈠崟"); + } else if (type == 2) { + innerList.put("name", "鍒嗕韩璁㈠崟"); + } else if (type == 3) { + innerList.put("name", "閭�璇疯鍗�"); + } + + if (dateType != 3) { + innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, 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"))); + } + + line_list.add(innerList); } - JSONObject innerList = new JSONObject(); - if (type == 1) { - innerList.put("name", "杩斿埄璁㈠崟"); - } else if (type == 2) { - innerList.put("name", "鍒嗕韩璁㈠崟"); - } else if (type == 3) { - innerList.put("name", "閭�璇疯鍗�"); - } - innerList.put("data_list", resultList); - - JSONArray outList = new JSONArray(); - outList.add(innerList); - + JSONObject data = new JSONObject(); - data.put("result_list", outList); + 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)); -- Gitblit v1.8.0