diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java index a97e2c6..d7f5f69 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java @@ -11,6 +11,113 @@ import java.util.Date; public class OverallService { public static OverallService me = new OverallService(); + /* +/overall/stat?token= +{ + "code": 200, + "data": { + "ordercluster": { + "before_month_total_weight": 446.00, // 前月配额重量 + "before_day_total_weight": 693.00, // 前日配额重量 + "month_total_weight": 7930.00, // 当月配额重量 + "day_total_weight": 160.00, // 当日配额重量 + "total_weight": 8376.00 // 总配额重量 + }, + "ordercluster_truck": [ + { + "month_cnt": 49, // 当月分配车次 + "day_cnt": 0, // 当日分配车次 + "cnt": 53, // 总分配车次 + "before_month_cnt": 4, // 前月分配车次 + "before_day_cnt": 0 // 前日分配撤职 + } + ], + "by_supermarket": [ + { + "supermarket_id": 1, + "supermarket_name": "竹瓦", + "supermarket_name2": "竹瓦", + + "total_price": 43826.40, // 超市总销售额 + "weight": 486.96, // 超市总销售重量 + "truck_cnt": 18, // 超市总运输车次 + + "month_total_price": 43826.40, // 当月超市总销售额 + "month_weight": 486.96, // 当月超市销售重量 + "month_truck_cnt": 18, // 当月超市运输车次 + "day_total_price": 0.00, // 当日超市销售总额 + "day_weight": 0.00, // 当日超市销售重量 + "day_truck_cnt": 0 // 当日超市运输车次 + + "before_month_total_price": 0.00, // 前月超市总销售额 + "before_month_weight": 0.00, // 前月超市总销售重量 + "before_month_truck_cnt": 0, // 前月超市运输车次 + "before_day_total_price": 1796.40, // 前日超市销售总额 + "before_day_weight": 19.96, // 前日超市销售重量 + "before_day_truck_cnt": 2, // 前日超市运输车次 + }, + ], + "by_customer": [ + { + "total_price": 41310.00, + "month_total_price": 41310.00, + "before_day_truck_cnt": 0, + "month_truck_cnt": 14, + "truck_cnt": 14, + "day_total_price": 0.00, + "weight": 459.00, + "before_day_total_price": 0.00, + "month_weight": 459.00, + "before_month_total_price": 0.00, + "before_month_weight": 0.00, + "day_weight": 0.00, + "before_month_truck_cnt": 0, + "customer_name": "零散客户", + "before_day_weight": 0.00, + "day_truck_cnt": 0 + }, + { + "total_price": 3330.00, + "month_total_price": 3330.00, + "before_day_truck_cnt": 0, + "month_truck_cnt": 1, + "truck_cnt": 1, + "day_total_price": 0.00, + "weight": 37.00, + "before_day_total_price": 0.00, + "month_weight": 37.00, + "before_month_total_price": 0.00, + "before_month_weight": 0.00, + "day_weight": 0.00, + "before_month_truck_cnt": 0, + "customer_name": "中铁十六局集团有限公司黄黄高铁项目部(一标)", + "customer_id": 8, + "before_day_weight": 0.00, + "day_truck_cnt": 0 + }, + { + "total_price": 3690.00, + "month_total_price": 3690.00, + "before_day_truck_cnt": 0, + "month_truck_cnt": 3, + "truck_cnt": 3, + "day_total_price": 0.00, + "weight": 41.00, + "before_day_total_price": 0.00, + "month_weight": 41.00, + "before_month_total_price": 0.00, + "before_month_weight": 0.00, + "day_weight": 0.00, + "before_month_truck_cnt": 0, + "customer_name": "湖北碁润商砼有限公司", + "customer_id": 12, + "before_day_weight": 0.00, + "day_truck_cnt": 0 + } + ] + } +} + */ public Record stat(){ long st = System.currentTimeMillis(); Record out = new Record(); @@ -49,34 +156,54 @@ public class OverallService { " left join ordercluster c on c.id = t.ordercluster_id\n" + " where c.state < ?", OrderStateEnum.INVALID.getStateid())); - out.set("by_supermarket", Db.find("\n" + - "select\n" + - " t.supermarket_id,\n" + - " sum(t.weight) weight,\n" + - " sum(t.total_price) total_price,\n" + - " count(*) truck_cnt,\n" + - " count(distinct t.truck_license) truck_cnt_only,\n" + - " \n" + - " ifnull(sum(case when t.create_time like '" + nowmonttm +"%' then t.weight end), 0) month_weight,\n" + - " ifnull(sum(case when t.create_time like '" + nowdaytm + "%' then t.weight end), 0) day_weight,\n" + - " \n" + - " ifnull(sum(case when t.create_time like '" + nowmonttm +"%' then t.total_price end), 0) month_total_price,\n" + - " ifnull(sum(case when t.create_time like '" + nowdaytm + "%' then t.total_price end), 0) day_total_price,\n" + - " \n" + - " count(case when t.create_time like '" + nowmonttm +"%' then t.sn end) month_truck_cnt,\n" + - " count(case when t.create_time like '" + nowdaytm + "%' then t.sn end) day_truck_cnt,\n" + - " \n" + - " ifnull(sum(case when t.create_time like '" + premonthtm + "%' then t.weight end), 0) before_month_weight,\n" + - " ifnull(sum(case when t.create_time like '" + predaytm + "%' then t.weight end), 0) before_day_weight,\n" + - " \n" + - " ifnull(sum(case when t.create_time like '" + premonthtm + "%' then t.total_price end), 0) before_month_total_price,\n" + - " ifnull(sum(case when t.create_time like '" + predaytm + "%' then t.total_price end), 0) before_day_total_price,\n" + - " \n" + - " count(case when t.create_time like '" + premonthtm + "%' then t.sn end) before_month_truck_cnt,\n" + - " count(case when t.create_time like '" + predaytm + "%' then t.sn end) before_day_truck_cnt\n" + - " from order_temp t\n" + - " where t.state = ?\n" + - " group by t.supermarket_id", OrderStateEnum.RECEIVED.getStateid())); + out.set("by_supermarket", Db.find(" select \n" + + " s.id supermarket_id,\n" + + " s.name supermarket_name,\n" + + " s.name2 supermarket_name2,\n" + + " ifnull(a.total_price, 0) total_price,\n" + + " ifnull(a.month_total_price, 0) month_total_price,\n" + + " ifnull(a.before_day_truck_cnt, 0) before_day_truck_cnt,\n" + + " ifnull(a.month_truck_cnt, 0) month_truck_cnt,\n" + + " ifnull(a.truck_cnt, 0) truck_cnt,\n" + + " ifnull(a.day_total_price, 0) day_total_price,\n" + + " ifnull(a.weight, 0) weight,\n" + + " ifnull(a.before_day_total_price, 0) before_day_total_price,\n" + + " ifnull(a.month_weight, 0) month_weight,\n" + + " ifnull(a.before_month_total_price, 0) before_month_total_price,\n" + + " ifnull(a.before_month_weight, 0) before_month_weight,\n" + + " ifnull(a.day_weight, 0) day_weight,\n" + + " ifnull(a.before_month_truck_cnt, 0) before_month_truck_cnt,\n" + + " ifnull(a.before_day_weight, 0) before_day_weight,\n" + + " ifnull(a.day_truck_cnt, 0) day_truck_cnt" + + " from supermarket s\n" + + " left join (\n" + + " select\n" + + " t.supermarket_id,\n" + + " sum(t.weight) weight,\n" + + " sum(t.total_price) total_price,\n" + + " count(*) truck_cnt,\n" + + " \n" + + " ifnull(sum(case when t.create_time like '" + nowmonttm +"%' then t.weight end), 0) month_weight,\n" + + " ifnull(sum(case when t.create_time like '" + nowdaytm + "%' then t.weight end), 0) day_weight,\n" + + " \n" + + " ifnull(sum(case when t.create_time like '" + nowmonttm +"%' then t.total_price end), 0) month_total_price,\n" + + " ifnull(sum(case when t.create_time like '" + nowdaytm + "%' then t.total_price end), 0) day_total_price,\n" + + " \n" + + " count(case when t.create_time like '" + nowmonttm +"%' then t.sn end) month_truck_cnt,\n" + + " count(case when t.create_time like '" + nowdaytm + "%' then t.sn end) day_truck_cnt,\n" + + " \n" + + " ifnull(sum(case when t.create_time like '" + premonthtm + "%' then t.weight end), 0) before_month_weight,\n" + + " ifnull(sum(case when t.create_time like '" + predaytm + "%' then t.weight end), 0) before_day_weight,\n" + + " \n" + + " ifnull(sum(case when t.create_time like '" + premonthtm + "%' then t.total_price end), 0) before_month_total_price,\n" + + " ifnull(sum(case when t.create_time like '" + predaytm + "%' then t.total_price end), 0) before_day_total_price,\n" + + " \n" + + " count(case when t.create_time like '" + premonthtm + "%' then t.sn end) before_month_truck_cnt,\n" + + " count(case when t.create_time like '" + predaytm + "%' then t.sn end) before_day_truck_cnt\n" + + " from order_temp t\n" + + " where t.state = ?\n" + + " group by t.supermarket_id\n" + + " ) a on a.supermarket_id = s.id;", OrderStateEnum.RECEIVED.getStateid())); out.set("by_customer", Db.find("\n" + "select\n" + @@ -85,7 +212,6 @@ public class OverallService { " sum(t.weight) weight,\n" + " sum(t.total_price) total_price,\n" + " count(*) truck_cnt,\n" + - " count(distinct t.truck_license) truck_cnt_only,\n" + " \n" + " ifnull(sum(case when t.create_time like '" + nowmonttm +"%' then t.weight end), 0) month_weight,\n" + " ifnull(sum(case when t.create_time like '" + nowdaytm + "%' then t.weight end), 0) day_weight,\n" +