소스 검색

提交销售统计图

hhq 4 년 전
부모
커밋
2257715881

+ 44 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/RealtimeSalesDetectionController.java

@@ -0,0 +1,44 @@
+package com.kmall.admin.controller;
+
+import com.kmall.admin.entity.RealtimeSalesDetection;
+import com.kmall.admin.service.RealtimeSalesDetectionService;
+import com.kmall.admin.utils.ParamUtils;
+import com.kmall.common.utils.PageUtils;
+import com.kmall.common.utils.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author hhq
+ * @version 1.0.0
+ * 2020/6/16
+ */
+@RestController
+public class RealtimeSalesDetectionController {
+
+    @Autowired
+    RealtimeSalesDetectionService realtimeSalesDetectionService;
+
+    @RequestMapping("realtimeSalesDetection/query")
+    public R queryRSD(@RequestParam Map<String, Object> r){
+        RealtimeSalesDetection realtimeSalesDetection = realtimeSalesDetectionService.queryRealtimeSales(r);
+
+
+        ParamUtils.setQueryPowerByRoleType(r, "storeKey", "merchSn", "thirdPartyMerchCode");
+//        List<GoodsEntity> goodsList = goodsService.queryList(query);
+//        int total = goodsService.queryTotal(query);
+        int total = 1;
+        List<RealtimeSalesDetection> list = new ArrayList<>();
+        list.add(realtimeSalesDetection);
+        PageUtils pageUtil = new PageUtils(list, total, 10, 1);
+
+        return R.ok().put("page", pageUtil);
+    }
+}

+ 4 - 0
kmall-admin/src/main/java/com/kmall/admin/dao/OrderDao.java

@@ -3,6 +3,7 @@ package com.kmall.admin.dao;
 import com.kmall.admin.dto.OrderRecognitionDto;
 import com.kmall.admin.dto.SendTempDto;
 import com.kmall.admin.entity.OrderEntity;
+import com.kmall.admin.entity.RealtimeSalesDetection;
 import com.kmall.api.entity.OrderVo;
 import org.apache.ibatis.annotations.Param;
 import com.kmall.manager.dao.BaseDao;
@@ -105,4 +106,7 @@ public interface OrderDao extends BaseDao<OrderEntity> {
 
     int saveOrderVo(OrderVo orderVo);
 
+    //实时销售监测
+    RealtimeSalesDetection queryRealtimeSales(Map realtimeSalesDetection);
+
 }

+ 15 - 0
kmall-admin/src/main/java/com/kmall/admin/service/RealtimeSalesDetectionService.java

@@ -0,0 +1,15 @@
+package com.kmall.admin.service;
+
+import com.kmall.admin.entity.RealtimeSalesDetection;
+
+import java.util.Map;
+
+/**
+ * @author hhq
+ * @version 1.0.0
+ * 2020/6/16
+ */
+public interface RealtimeSalesDetectionService {
+    //实时销售监测
+    RealtimeSalesDetection queryRealtimeSales(Map realtimeSalesDetection);
+}

+ 38 - 0
kmall-admin/src/main/java/com/kmall/admin/service/impl/RealtimeSalesDetectionServiceImpl.java

@@ -0,0 +1,38 @@
+package com.kmall.admin.service.impl;
+
+import com.kmall.admin.dao.OrderDao;
+import com.kmall.admin.entity.RealtimeSalesDetection;
+import com.kmall.admin.service.RealtimeSalesDetectionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.Map;
+
+/**
+ * @author hhq
+ * @version 1.0.0
+ * 2020/6/16
+ */
+@Service
+public class RealtimeSalesDetectionServiceImpl implements RealtimeSalesDetectionService {
+    @Autowired
+    OrderDao orderDao;
+
+    @Override
+    public RealtimeSalesDetection queryRealtimeSales(Map realtimeSalesDetection) {
+        RealtimeSalesDetection r = orderDao.queryRealtimeSales(realtimeSalesDetection);
+        if(r!=null){
+            //计算优惠损失
+            r.setPreferentialLoss(r.getActualSales().subtract(r.getActualSales()));
+            //计算毛利和率
+            if(null != r.getTotalCost()){
+                r.setGrossProfit(r.getActualSales().subtract(r.getTotalCost()));
+                r.setGrossProfitRatio(r.getTotalCost().divide(r.getActualSales()));
+            }
+            //计算客单价
+            r.setGuestUnitPrice(r.getActualSales().divide(new BigDecimal(r.getGuestNumber()),2));
+        }
+        return r;
+    }
+}

+ 1 - 1
kmall-admin/src/main/java/com/kmall/admin/task/OrderRemindsTask.java

@@ -25,7 +25,7 @@ public class OrderRemindsTask {
 
 
 
-    @Scheduled(cron = "0/30 * * * * ?")
+//    @Scheduled(cron = "0/30 * * * * ?")
     public void orderReminds() {
         logger.info("订货提醒查询-----------------" );
         try {

+ 1 - 1
kmall-admin/src/main/java/com/kmall/admin/task/ShippingRemindsTask.java

@@ -24,7 +24,7 @@ public class ShippingRemindsTask {
 
 
 
-    @Scheduled(cron = "0/30 * * * * ?")
+//    @Scheduled(cron = "0/30 * * * * ?")
     public void shippingReminds() {
         logger.info("出货提醒查询-----------------" );
         try {

+ 28 - 0
kmall-admin/src/main/resources/mybatis/mapper/OrderDao.xml

@@ -1574,6 +1574,34 @@
             INNER JOIN mall_user u ON o.user_id = u.id
             where o.id = #{value}
 	</select>
+    <select id="queryRealtimeSales" resultType="com.kmall.admin.entity.RealtimeSalesDetection">
+		select
+          s.id as storeId,
+		  o.merch_sn as merchSn,
+          m.merch_name as merchName,
+		  count(0) as guestNumber,
+		  sum(o.order_price) as totalSales,
+		  sum(o.actual_price) as actualSales,
+		  s.store_name as storeName,
+		  max(o.add_time) as lastSalesTime
+        from
+          mall_order o
+          left join mall_store s on o.store_id = s.id
+          left join mall_merch m on o.merch_sn = m.merch_sn
+        where 1=1
+        <if test="storeId != null and storeId.trim() != ''">
+            and o.store_id=#{storeId}
+        </if>
+        <if test="salesDate != null and salesDate != ''">
+            and ( datediff ( o.add_time , #{salesDate} ) = 0 )
+        </if>
+        <if test="merchSn != null and merchSn.trim() != ''">
+            and o.merch_sn=#{merchSn}
+        </if>
+
+	</select>
+
+
 
 
 

+ 64 - 51
kmall-admin/src/main/webapp/WEB-INF/page/sale/realtimeSalesDetection.html

@@ -6,78 +6,91 @@
     #parse("sys/header.html")
 </head>
 <body>
-<div id="app">
+<div id="rrapp">
     <header class="main-header">
         <div class="container-fluid">
             <div class="row" style="border:0;margin-bottom:10px">
-                <div class="col-md-12 logodiv">
+                <div class="col-md-12 selectDiv">
 
-                        日期:<input type="date" name="date" id="date" v-model="date" />&nbsp;
-                        刷新间隔:<input type="number" name="refreshTime" v-model="refreshTime"  id="refreshTime" oninput="if(value > 1000 || value < 1 ){alert('非法输入!');value = ''}"/>秒&nbsp;
+                    日期:<input type="date" name="date" id="date" v-model="salesDate" />&nbsp;
+                    刷新间隔:<input type="number" name="refreshTime" v-model="refreshTime"  id="refreshTime" oninput="if(value > 1000 || value < 1 ){alert('非法输入!');value = ''}"/>秒&nbsp;
 
-                        <input type="radio" name="type" value="store" v-model="type" />门店 &nbsp;
-                        <input type="radio" name="type" value="dept"  v-model="type" />部门 &nbsp;
-                        <input type="radio" name="type" value="category"  v-model="type" />品类 &nbsp;
+                    <input type="radio" name="type" value="store" v-model="type" />门店 &nbsp;
+                    <input type="radio" name="type" value="dept"  v-model="type" />部门 &nbsp;
+                    <input type="radio" name="type" value="category"  v-model="type" />品类 &nbsp;
 
-                        <!--是否含税下拉框-->
-                        <select name="rate">
-                            <option value="true">含税</option>
-                            <option value="false">不含税</option>
-                        </select>
+                    <!--是否含税下拉框-->
+                    <select name="rateSelect" v-model="rateSelect">
+                        <option :value="rate.id" v-for="rate in rateList" >{{rate.name}}</option>
+                    </select>
 
-                        <!--统计图类型-->
-                        <select name="seriesType">
-                            <option name="bar">垂直柱状图</option>
-                            <option name="line">折线图</option>
-                            <option name="pie">饼图</option>
-                        </select>
+                    <!--统计图类型-->
+                    <select name="seriesTypeSelect" v-model="seriesTypeSelect">
+                        <option :value="seriesType.id" v-for="seriesType in seriesTypeList" >{{seriesType.name}}</option>
+                    </select>
 
-                        <button v-on:click="refresh">刷新</button>
-                </div>
-                <!--<div class="col-md-9" style="background-color: #f0f0f0;margin:0px;padding: 0px" >-->
-                    <!--<div v-show="showList">-->
-                        <!--<Row :gutter="16">-->
-                            <!--<ul class="nav navbar-top-links navbar-right" style="font-size: 1.3em;">-->
-                                <!--<li >-->
-                                    <!--<span style="margin-right: 40px">&nbsp; 门店:<b>{{storeName}}</b></span>-->
-                                <!--</li>-->
-                                <!--<li><span style="margin-right: 35px"><i class="fa fa-user-circle" ></i> &nbsp;收银员:<b>{{sysUserInfo.username}}</b></span></li>-->
-                                <!--<li><a @click="logout" style="font-size: 1em"><i class="fa fa fa-sign-out"></i> 退出</a></li>-->
-                            <!--</ul>-->
-                        <!--</Row>-->
-                    <!--</div>-->
+                    <button v-on:click="refresh">刷新</button>
+                    <button v-on:click="">保存条件</button>
+                    <button v-on:click="">清除条件</button>
+                    |
                 <!--</div>-->
+                <!--<div class="col-md-3 selectDiv">-->
+                    项目:
+                    <!--项目下拉框-->
+                    <select name="projectSelect" v-model="projectSelect">
+                        <option :value="project.id" v-for="project in projectList" >{{project.name}}</option>
+                    </select>&nbsp;
+                    比较日期:<input type="date" name="compareDate" id="compareDate" v-model="compareDate" /> &nbsp;
+                    <button v-on:click="refresh2">比较</button>
+                </div>
+            </div>
+            <div class="row" style="border:0;margin-bottom:10px">
+                <div class="col-md-12 ">
+                    门店:<input v-model="storeId" /> {{storeName}}&nbsp;&nbsp;
+                    业态:
+                    <!--业态下拉框-->
+                    <select name="formatsSelect" v-model="formatsSelect">
+                        <option :value="formats.id" v-for="formats in formatsList" >{{formats.name}}</option>
+                    </select>&nbsp;
+                    部门:<input v-model="dept.deptId" /> {{dept.deptName}}&nbsp;&nbsp;
+                    品类:<input v-model="category.categoryId" /> {{category.categoryName}}&nbsp;&nbsp;
+                </div>
             </div>
+            <hr/>
         </div>
     </header>
     <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM -->
     <div id="main" style="width: 90%;height:400px;"></div>
-
-
+<hr/>
+<footer>
+    <div  v-cloak>
+        <table id="jqGrid" v-if="!showList"></table>
     </div>
 
 
+</footer>
     <script src="${rc.contextPath}/statics/libs/vue.min.js"></script>
     <script src="${rc.contextPath}/js/sale/echarts.js"></script>
-    <script src="${rc.contextPath}/js/sale/realtimeSalesDetection.js"></script>
+    <script src="${rc.contextPath}/js/sale/realtimeSales.js"></script>
     <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
     <script src="${rc.contextPath}/statics/libs/bootstrap.min.js"></script>
-<script>
-    var app = new Vue({
-        el: '#app',
-        data: {
-            date: '',
-            refreshTime: 1,
-            message: 'Hello Vue.js!'
-        },
-        methods: {
-            refresh: function () {
-                alert(this.date);
-                alert("type"+this.type);
-            }
-        }
-    })
-</script>
+
+    <script>
+        // var app = new Vue({
+        //     el: '#app',
+        //     data: {
+        //         date: '',
+        //         refreshTime: 1,
+        //         message: 'Hello Vue.js!'
+        //     },
+        //     methods: {
+        //         refresh: function () {
+        //             alert(this.date);
+        //             alert("type"+this.type);
+        //         }
+        //     }
+        // })
+    </script>
 </div>
 </body>
 </html>

+ 83 - 0
kmall-admin/src/main/webapp/WEB-INF/page/sale/realtimeSalesDetection2.html

@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <title>实时销售监测</title>
+    #parse("sys/header.html")
+</head>
+<body>
+<div id="app">
+    <header class="main-header">
+        <div class="container-fluid">
+            <div class="row" style="border:0;margin-bottom:10px">
+                <div class="col-md-12 logodiv">
+
+                        日期:<input type="date" name="date" id="date" v-model="date" />&nbsp;
+                        刷新间隔:<input type="number" name="refreshTime" v-model="refreshTime"  id="refreshTime" oninput="if(value > 1000 || value < 1 ){alert('非法输入!');value = ''}"/>秒&nbsp;
+
+                        <input type="radio" name="type" value="store" v-model="type" />门店 &nbsp;
+                        <input type="radio" name="type" value="dept"  v-model="type" />部门 &nbsp;
+                        <input type="radio" name="type" value="category"  v-model="type" />品类 &nbsp;
+
+                        <!--是否含税下拉框-->
+                        <select name="rate">
+                            <option value="true">含税</option>
+                            <option value="false">不含税</option>
+                        </select>
+
+                        <!--统计图类型-->
+                        <select name="seriesType">
+                            <option name="bar">垂直柱状图</option>
+                            <option name="line">折线图</option>
+                            <option name="pie">饼图</option>
+                        </select>
+
+                        <button v-on:click="refresh">刷新</button>
+                </div>
+                <!--<div class="col-md-9" style="background-color: #f0f0f0;margin:0px;padding: 0px" >-->
+                    <!--<div v-show="showList">-->
+                        <!--<Row :gutter="16">-->
+                            <!--<ul class="nav navbar-top-links navbar-right" style="font-size: 1.3em;">-->
+                                <!--<li >-->
+                                    <!--<span style="margin-right: 40px">&nbsp; 门店:<b>{{storeName}}</b></span>-->
+                                <!--</li>-->
+                                <!--<li><span style="margin-right: 35px"><i class="fa fa-user-circle" ></i> &nbsp;收银员:<b>{{sysUserInfo.username}}</b></span></li>-->
+                                <!--<li><a @click="logout" style="font-size: 1em"><i class="fa fa fa-sign-out"></i> 退出</a></li>-->
+                            <!--</ul>-->
+                        <!--</Row>-->
+                    <!--</div>-->
+                <!--</div>-->
+            </div>
+        </div>
+    </header>
+    <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM -->
+    <div id="main" style="width: 90%;height:400px;"></div>
+
+
+    </div>
+
+
+    <script src="${rc.contextPath}/statics/libs/vue.min.js"></script>
+    <script src="${rc.contextPath}/js/sale/echarts.js"></script>
+    <script src="${rc.contextPath}/js/sale/realtimeSalesDetection.js"></script>
+    <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
+    <script src="${rc.contextPath}/statics/libs/bootstrap.min.js"></script>
+<script>
+    var app = new Vue({
+        el: '#app',
+        data: {
+            date: '',
+            refreshTime: 1,
+            message: 'Hello Vue.js!'
+        },
+        methods: {
+            refresh: function () {
+                alert(this.date);
+                alert("type"+this.type);
+            }
+        }
+    })
+</script>
+</div>
+</body>
+</html>

+ 347 - 0
kmall-admin/src/main/webapp/js/sale/realtimeSales.js

@@ -0,0 +1,347 @@
+$(function () {
+
+vm.showEcharts();
+console.log(1);
+
+$("#jqGrid").jqGrid({
+    url:'../realtimeSalesDetection/query',
+    datatype: "json",
+    colModel: [
+        {label: '门店编码', name: 'storeId', index: 'storeId', width: 120},
+        {label: '门店名称', name: 'storeName', index: 'storeName', width: 280},
+        {label: '商户编码', name: 'merchSn', index: 'storeId', width: 180},
+        {label: '商户名称', name: 'merchName', index: 'storeName', width: 280},
+        {label: '售价总额', name: 'totalSales', index: 'totalSales',align: 'right',width: 180},
+        {label: '实际销售额', name: 'actualSales', index: 'actualSales',align: 'right',width: 180},
+        {label: '占比 %', name: 'proportion', index: 'proportion',align: 'right',width: 180},
+        {label: '优惠损失', name: 'preferentialLoss', index: 'preferentialLoss',align: 'right',width: 180},
+        {label: '成本总额', name: 'totalCost', index: 'totalCost',align: 'right',width: 180},
+        {label: '毛利', name: 'grossProfit', index: 'grossProfit',align: 'right',width: 180},
+        {label: '毛利率', name: 'grossProfitRatio', index: 'grossProfitRatio',align: 'right',width: 180},
+        {label: '来客数', name: 'guestNumber', index: 'guestNumber',align: 'right',width: 180},
+        {label: '客单价', name: 'guestUnitPrice', index: 'guestUnitPrice',align: 'right',width: 180},
+
+        {label: '最后销售时间', name: 'lastSalesTime', index: 'lastSalesTime', align: 'center',width: 180,formatter: function (value) {
+                return transDate(value,'yyyy-MM-dd hh:mm:ss');
+            }},
+        {label: '客单价', name: 'guestUnitPrice', index: 'guestUnitPrice',align: 'right',width: 180}
+    ],
+    viewrecords: true,
+    height: 200,
+    rowNum: 10,
+    rowList: [10, 30, 50],
+    rownumbers: true,
+    rownumWidth: 25,
+    autowidth: true,
+    shrinkToFit: false,
+    autoScroll: true,   //开启水平滚动条
+    width: 1500,
+    multiselect: true,
+    pager: "#jqGridPager",
+    jsonReader: {
+        root: "page.list",
+        page: "page.currPage",
+        total: "page.totalPage",
+        records: "page.totalCount"
+    },
+    prmNames: {
+        page: "page",
+        rows: "limit",
+        order: "order"
+    },
+    gridComplete: function () {
+        $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"});
+    }
+
+});
+    myChart = echarts.init(document.getElementById('main'));
+});
+
+var myChart ;
+
+let vm = new Vue({
+    el: '#rrapp',
+    data: {
+        date: '',
+        refreshTime: 10,
+        type: 'store',
+        // sales : [{
+            storeId: '',
+            merchSn: '',
+            merchName: '',
+            storeName: '',
+            salesDate: '',
+            totalSales: '',
+            actualSales: '',
+            preferentialLoss: '',
+            totalCost: '',
+            grossProfit: '',
+            grossProfitRatio: '',
+            proportion: '',
+            guestNumber: '',
+            guestUnitPrice: '',
+            lastSalesTime: '',
+            showList:false
+        // }]
+,
+        compareDate: '',//比较日期
+        storeId2: '',
+        merchSn2: '',
+        merchName2: '',
+        storeName2: '',
+        salesDate2: '',
+        totalSales2: '',
+        actualSales2: '',
+        preferentialLoss2: '',
+        totalCost2: '',
+        grossProfit2: '',
+        grossProfitRatio2: '',
+        proportion2: '',
+        guestNumber2: '',
+        guestUnitPrice2: '',
+        lastSalesTime2: '',
+
+        rateList: [
+            {
+                id: '0',
+                name: '含税'
+            },
+            {
+                id: '1',
+                name: '不含税'
+
+            }
+        ],
+        projectList: [
+            {
+                id: '0',
+                name: '销售量'
+            },
+            {
+                id: '1',
+                name: '客单价'
+
+            }
+        ],
+        seriesTypeList: [
+            {
+                id: 'bar',
+                name: '垂直柱状图'
+            },
+            {
+                id: 'line',
+                name: '折线图'
+
+            },
+            {
+                id: 'pie',
+                name: '饼图'
+
+            }
+        ],
+        formatsList: [
+            {
+                id: '0',
+                name: '<全部>'
+            },
+            {
+                id: '1',
+                name: '<非全部>'
+
+            }
+        ],
+        salesList: [
+            {
+                store: {storeId: '11106', storeName: '前海店'},
+                totalSales: 43046.18,
+                actualSales: 35593.46
+            }
+        ],
+        dept: {
+            deptId:'',
+            deptName:''
+        },
+        category: {
+            categoryId:'',
+            categoryName: ''
+        }
+
+    },
+    created() {
+        this.rateSelect = this.rateList[0].id;
+        this.projectSelect = this.projectList[0].id;
+        this.seriesTypeSelect = this.seriesTypeList[0].id;
+        this.formatsSelect = this.formatsList[0].id;
+    },
+    methods: {
+        refresh: function () {
+            console.log(vm.showList);
+            vm.showList = true;
+            console.log(vm.showList);
+            var postParam = {"salesDate":vm.salesDate==''?'2020-06-02':vm.salesDate, "storeId":vm.storeId==''?'10':vm.storeId}
+            $.ajax({
+                url:'../realtimeSalesDetection/query',
+                type:"POST",
+                data:postParam,
+                dataType:'json',
+                success:function(r){
+                    console.log(typeof r);
+                    console.log(r);
+                    r = r.page.list[0];
+                    console.log(r);
+                    console.log("r.storeId" + r.storeId);
+
+
+                    vm.storeId = r.storeId;
+                    vm.merchSn = r.merchSn;
+                    vm.merchName = r.merchName;
+                    vm.storeName = r.storeName;
+                    vm.salesDate = r.salesDate;
+                    vm.totalSales = r.totalSales;
+                    vm.actualSales = r.actualSales;
+                    vm.preferentialLoss = r.preferentialLoss;
+                    vm.totalCost = r.totalCost;
+                    vm.grossProfit = r.grossProfit;
+                    vm.grossProfitRatio = r.grossProfitRatio;
+                    vm.proportion = r.proportion;
+                    vm.guestNumber = r.guestNumber;
+                    vm.guestUnitPrice = r.guestUnitPrice;
+                    vm.lastSalesTime = r.lastSalesTime;
+
+
+
+                    vm.showEcharts();
+                    vm.showTable(postParam);
+                }
+
+            });
+
+        },
+        refresh2: function () {
+            var postParam = {"salesDate":vm.salesDate==''?'2020-06-17':vm.salesDate, "storeId":vm.storeId==''?'10':vm.storeId}
+            $.ajax({
+                url:'../realtimeSalesDetection/query',
+                type:"POST",
+                data:postParam,
+                dataType:'json',
+                success:function(r){
+                    console.log(typeof r);
+                    console.log(r);
+                    r = r.page.list[0];
+                    console.log(r);
+                    console.log("r.storeId" + r.storeId);
+
+
+                    vm.storeId = r.storeId;
+                    vm.merchSn = r.merchSn;
+                    vm.merchName = r.merchName;
+                    vm.storeName = r.storeName;
+                    vm.salesDate = r.salesDate;
+                    vm.totalSales = r.totalSales;
+                    vm.actualSales = r.actualSales;
+                    vm.preferentialLoss = r.preferentialLoss;
+                    vm.totalCost = r.totalCost;
+                    vm.grossProfit = r.grossProfit;
+                    vm.grossProfitRatio = r.grossProfitRatio;
+                    vm.proportion = r.proportion;
+                    vm.guestNumber = r.guestNumber;
+                    vm.guestUnitPrice = r.guestUnitPrice;
+                    vm.lastSalesTime = r.lastSalesTime;
+
+
+                    myChart.setOption(option);
+                    // vm.showEcharts();
+                    // vm.showTable(postParam);
+                }
+
+            });
+
+        },
+        showEcharts: function () {
+            // 基于准备好的dom,初始化echarts实例
+            // var myChart = echarts.init(document.getElementById('main'));
+            // myChart = echarts.init(document.getElementById('main'))
+            //加载动画
+            myChart.showLoading();
+
+            var seriesList = [
+                {
+                    // name: '销售额',
+                    type: vm.seriesTypeSelect,
+                    color: ['#dd6b66','#759aa0'],
+                    data: [vm.totalSales,vm.actualSales]
+                }
+                ,
+                {
+                    // name: '销售额',
+                    type: vm.seriesTypeSelect,
+                    color: ['#dd6b66','#759aa0'],
+                    data: [vm.totalSales,vm.actualSales]
+                }
+            ];
+
+            // 指定图表的配置项和数据
+            //销售量
+            var option = {
+                title: {
+                    text: '分店实时销售统计图'
+                },
+                tooltip: {},
+                legend: {
+                    data:['销量']
+                },
+                xAxis: [{
+                    // data: ['['+vm.salesList[0].store.storeId+']'+vm.salesList[0].store.storeName+'总销售额','['+vm.salesList[0].store.storeId+']'+vm.salesList[0].store.storeName+'实际销售额']
+                    data: ['['+vm.storeId+']'+vm.storeName+'总销售额','['+vm.storeId+']'+vm.storeName+'实际销售额']
+                }],
+                yAxis: {},
+                series:seriesList
+            };
+
+
+            //客单价
+            var option2 = {
+                title: {
+                    text: '分店实时销售统计图'
+                },
+                tooltip: {},
+                legend: {
+                    data:['客单价']
+                },
+                xAxis: [{
+                    // data: ['['+vm.salesList[0].store.storeId+']'+vm.salesList[0].store.storeName+'总销售额','['+vm.salesList[0].store.storeId+']'+vm.salesList[0].store.storeName+'实际销售额']
+                    data: ['['+vm.storeId+']'+vm.storeName+'总销售额','['+vm.storeId+']'+vm.storeName+'实际销售额']
+                }],
+                yAxis: {},
+                series: [
+                    {
+                        // name: '销售额',
+                        type: vm.seriesTypeSelect,
+                        color: ['#dd6b66','#759aa0'],
+                        data: vm.guestUnitPrice
+                    }
+                ]
+            };
+            //隐藏
+            myChart.hideLoading();
+            // 使用刚指定的配置项和数据显示图表。
+            myChart.setOption(option);
+
+        },
+        showTable: function (postParam) {
+
+            console.log(postParam)
+
+
+            $("#jqGrid").jqGrid('setGridParam', {
+                postData: postParam
+
+            }).trigger("reloadGrid");
+
+            /*$("#jqGrid").jqGrid('setGridParam', {
+                dataType:'json',
+                postData: postParam,
+            }).trigger("reloadGrid");*/
+        }
+    }
+});