123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331 |
- function queryMonthly(){
- var startDate = document.getElementById("startDate").value;
- var endDate = document.getElementById("endDate").value;
- var param = {
- startDate:startDate,
- endDate:endDate
- };
- console.log(param);
- // 折线图
- $.ajax({
- url: "../monthly/top10ByBrandAndSupplier",
- data: param,
- contentType:"application/x-www-form-urlencoded",
- type: 'POST',
- success: function(data) {
- document.getElementById("supplierUl").innerHTML = "";
- document.getElementById("brandUl").innerHTML = "";
- createLi("Brand","Units Sold","brandUl",true);
- createLi("Supplier","Units Sold","supplierUl",true);
- console.log(data.top10ByBrand);
- for(var i = 0 ; i < data.top10ByBrand.length; i++){
- createLi(data.top10ByBrand[i].brand,data.top10ByBrand[i].sales,"brandUl",false);
- }
- for(var i = 0 ; i < data.top10BySupplier.length; i++){
- createLi(data.top10BySupplier[i].supplier,data.top10BySupplier[i].sales,"supplierUl",false);
- }
- }
- });
- }
- function createLi(title,sales,ulId,flag){
- var ul = document.createElement("ul")
- if(flag){
- ul.setAttribute("class","th")
- }
- var li_1=document.createElement("li");
- li_1.innerHTML = title;
- var li_2=document.createElement("li");
- li_2.innerHTML = sales;
- ul.appendChild(li_1);
- ul.appendChild(li_2);
- document.getElementById(ulId).appendChild(ul);
- }
- // var li=document.createElement("li");
- // var span_1=document.createElement("span");
- // li.innerHTML = title;
- // span_1.setAttribute("class","spanClass")
- // var span_2=document.createElement("span");
- // span_2.innerHTML = sales;
- // span_2.setAttribute("class","spanClass")
- // li.appendChild(span_1);
- // li.appendChild(span_2);
- let vm = new Vue({
- el: '#rrapp',
- data: {
- date: '',
- refreshTime: 10,
- type: 'store',
- refreshCount:0,
- storeId: '',
- merchSn: '',
- merchName: '',
- storeName: '',
- salesDate: '',
- totalSales: '',
- actualSales: '',
- preferentialLoss: '',
- totalCost: '',
- grossProfit: '',
- grossProfitRatio: '',
- proportion: '',
- guestNumber: '',
- guestUnitPrice: '',
- lastSalesTime: '',
- categoryId: '',
- categoryName: '',
- showList: false,
- compareDate: '',//比较日期
- storeId2: '',
- merchSn2: '',
- merchName2: '',
- storeName2: '',
- salesDate2: '',
- totalSales2: '',
- actualSales2: '',
- preferentialLoss2: '',
- totalCost2: '',
- grossProfit2: '',
- grossProfitRatio2: '',
- proportion2: '',
- guestNumber2: '',
- guestUnitPrice2: '',
- lastSalesTime2: '',
- intervalId: 0,
- isCompare: false,
- compare2: '',
- temp: {
- date: '',
- refreshTime: 10,
- type: '',
- storeId: '',
- merchSn: '',
- salesDate: '',
- categoryId: ''
- },
- 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: ''
- },
- seriesList: [], //保存饼图数据
- seriesList2: [],
- xAxisList: { //主要用于保存 启动刷新时的条件和数据
- storeId: '',
- storeName: '',
- merchSn: '',
- merchName: '',
- totalSales: '',
- actualSales: '',
- preferentialLoss: '',
- totalCost: '',
- grossProfit: '',
- grossProfitRatio: '',
- proportion: '',
- guestNumber: '',
- guestUnitPrice: '',
- lastSalesTime: '',
- salesDate: '0',
- projectSelect: '0',
- type:''
- },
- dataList: [],
- tooltip: {},
- today:''
- },
- 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: {
- seriesTypeSwitch: function () {
- console.log(vm.seriesTypeSelect);
- },
- showEcharts: function () {
- // 基于准备好的dom,初始化echarts实例
- myChart = echarts.init(document.getElementById('main'));
- myChart.clear();
- //加载动画
- myChart.showLoading();
- //项目下拉框判断 6-19,饼图设置 vm.xAxisList
- var temp = '';
- if (vm.xAxisList.projectSelect == '0') {
- if (vm.xAxisList.type == 'dept') {
- temp = '[' + vm.xAxisList.merchSn + ']' + vm.xAxisList.merchName + '/销售总额:' + vm.xAxisList.totalSales + '元(' + vm.xAxisList.salesDate + ')';
- } else {
- temp = '[' + vm.xAxisList.storeId + ']' + vm.xAxisList.storeName + '/销售总额:' + vm.xAxisList.totalSales + '元(' + vm.xAxisList.salesDate + ')';
- }
- vm.seriesList2.push(vm.xAxisList.totalSales);
- vm.seriesList.push({value: vm.xAxisList.totalSales, name: temp});
- } else if (vm.xAxisList.projectSelect == '1') {
- if (vm.xAxisList.type == 'dept') {
- temp = '[' + vm.xAxisList.merchSn + ']' + vm.xAxisList.merchName + '/客单价:' + vm.xAxisList.guestUnitPrice + '元(' + vm.xAxisList.salesDate + ')';
- } else {
- temp = '[' + vm.xAxisList.storeId + ']' + vm.xAxisList.storeName + '/客单价:' + vm.xAxisList.guestUnitPrice + '元(' + vm.xAxisList.salesDate + ')';
- }
- vm.seriesList2.push(vm.xAxisList.guestUnitPrice);
- vm.seriesList.push({value: vm.xAxisList.guestUnitPrice, name: temp});
- }
- vm.dataList = [temp];
- if (vm.seriesTypeSelect == "pie") {
- vm.seriesList2 = vm.seriesList.concat();
- }
- // console.log('vm.seriesList2');
- // console.log(vm.seriesList2);
- // 指定图表的配置项和数据
- //销售量
- var option = {
- title: {
- // textAlign: 'right',
- text: 'Monthly Customers & Avg Basket',
- x: 'center',
- textStyle: {
- //文字颜色
- color: '#17233d',
- //字体风格,'normal','italic','oblique'
- fontStyle: 'normal',
- //字体粗细 'normal','bold','bolder','lighter',100 | 200 | 300 | 400...
- fontWeight: 'bold',
- //字体系列
- fontFamily: 'sans-serif',
- //字体大小
- fontSize: 28
- }
- },
- tooltip: {
- formatter: function (params) {
- return params.name;
- }
- },
- legend: {
- data: ['/销售总额']
- },
- xAxis: {
- data: vm.dataList,
- axisLabel: {
- interval: 0
- }
- },
- yAxis: {},
- series: [{
- barMaxWidth: '20%',
- barWidth: '50%',
- radius: '55%',
- roseType: 'angle',
- type: vm.seriesTypeSelect,
- color: ['#dd6b66', '#759aa0'],
- data: vm.seriesList2
- }]
- };
- //隐藏
- myChart.hideLoading();
- // 使用刚指定的配置项和数据显示图表。
- myChart.setOption(option);
- },
- tooltipFormatter: function () {
- if (vm.type == 'dept') {
- return '[' + vm.merchSn + ']' + vm.merchName + '/销售总额:' + vm.totalSales + '元(' + vm.salesDate + ')';
- }
- return '[' + vm.storeId + ']' + vm.storeName + '/销售总额:' + vm.totalSales + '元(' + vm.salesDate + ')';
- },
- showTable: function (postParam) {
- console.log(postParam);
- $("#jqGrid").jqGrid('setGridParam', {
- postData: postParam
- }).trigger("reloadGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"});
- },
- switchProjectView: function () {
- console.log(vm.projectSelect);
- }
- }
- });
|