salesStatistics.jsp 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE HTML>
  4. <html>
  5. <head>
  6. <meta charset="utf-8">
  7. <meta name="renderer" content="webkit|ie-comp|ie-stand">
  8. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  9. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
  10. <meta http-equiv="Cache-Control" content="no-siteapp" />
  11. <!--[if lt IE 9]>
  12. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/html5.js"></script>
  13. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/respond.min.js"></script>
  14. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/PIE_IE678.js"></script>
  15. <![endif]-->
  16. <link href="${pageContext.request.contextPath }/common/admin/css/H-ui.min.css" rel="stylesheet" type="text/css" />
  17. <link href="${pageContext.request.contextPath }/common/admin/css/H-ui.admin.css" rel="stylesheet" type="text/css" />
  18. <link href="${pageContext.request.contextPath }/common/admin/lib/Hui-iconfont/1.0.1/iconfont.css" rel="stylesheet" type="text/css" />
  19. <!--[if IE 6]>
  20. <script type="text/javascript" src="http://lib.h-ui.net/DD_belatedPNG_0.0.8a-min.js" ></script>
  21. <script>DD_belatedPNG.fix('*');</script>
  22. <![endif]-->
  23. <style>
  24. .my-btn{position: absolute;right: 20px;top:10px;background-color: #32a3d8;border:0;padding: 7px 10px;color: #fff;}
  25. .charts-box{width:500px;height:400px;display: inline-block;position: relative;margin-right: 40px;margin-bottom: 40px;}
  26. .charts-box1{width:1045px;height:400px;display: inline-block;position: relative;margin-right: 40px;margin-bottom: 40px;}
  27. .select-date{position: absolute;right: 120px;top: 10px;border: 1px solid rgba(0,0,0,.1);padding: 5px 10px;width: 100px;background: url(http://s.iamberry.com/images/select-1.png) 95px center no-repeat;background-size:auto 100%;}
  28. </style>
  29. <title>柱状图统计</title>
  30. </head>
  31. <body>
  32. <nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页 <span class="c-gray en">&gt;</span> 统计管理 <span class="c-gray en">&gt;</span> 销售统计 <a class="btn btn-success radius r mr-20" style="line-height:1.6em;margin-top:3px;background-color: #32a3d8;border: 1px solid #32a3d8;" href="javascript:location.replace(location.href);" title="刷新" ><i class="Hui-iconfont">&#xe68f;</i></a></nav>
  33. <div class="pd-20">
  34. <div>
  35. <div class="charts-box">
  36. <div id="container" style="width:500px;height:400px;display: inline-block;">
  37. </div>
  38. <button type="button" class="my-btn" id="btn-1">查看折线图</button>
  39. </div>
  40. <div class="charts-box">
  41. <div id="container1" style="width:500px;height:400px;display: inline-block;">
  42. </div>
  43. <button type="button" class="my-btn" id="btn-2">查看饼状图</button>
  44. </div>
  45. </div>
  46. <div>
  47. <div class="charts-box1">
  48. <div id="container2" style="width:1045px;height:400px;display: inline-block;">
  49. </div>
  50. <input type="text" value="" placeholder="选择月份" class="select-date" onClick="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM',maxDate:'%y-%M',minDate:'%y-01',onpicked:updateMonthList})" id="select-month" readonly="readonly"/>
  51. <button type="button" class="my-btn" id="btn-3">查看饼状图</button>
  52. </div>
  53. <div class="charts-box1">
  54. <div id="container3" style="width:1045px;height:400px;display: inline-block;">
  55. </div>
  56. <button type="button" class="my-btn" id="btn-4">查看饼状图</button>
  57. </div>
  58. </div>
  59. </div>
  60. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/jquery/1.9.1/jquery.min.js"></script>
  61. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/layer/1.9.3/layer.js"></script>
  62. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/js/H-ui.js"></script>
  63. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/js/H-ui.admin.js"></script>
  64. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/lib/hcharts/Highcharts/5.0.6/js/highcharts.js"></script>
  65. <script type="text/javascript" src="${pageContext.request.contextPath }/common/admin/My97DatePicker/WdatePicker.js"></script>
  66. <script type="text/javascript">
  67. var chartType='pie',chartType1='spline',chartType2='spline',chartType3='spline';
  68. var chart=null;
  69. var chart1=null;
  70. var chart2=null;
  71. var chart3=null;
  72. //本周
  73. var week_red_sum2 = 0;
  74. var week_black_sum2 = 0;
  75. var week_blue_sum2 = 0;
  76. var week_sum = 0,week_date = new Array(),week_red = new Array(),week_black = new Array(),week_blue = new Array(),week_num = new Array();
  77. //上周
  78. var last_week_red_sum2 = 0;
  79. var last_week_black_sum2 = 0;
  80. var last_week_blue_sum2 = 0;
  81. var last_week_sum = 0,last_week_date = new Array(),last_week_red = new Array(),last_week_black = new Array(),last_week_blue = new Array(),last_week_num = new Array();
  82. //月
  83. var month_red_sum2 = 0;
  84. var month_black_sum2 = 0;
  85. var month_blue_sum2 = 0;
  86. var month_sum = 0,month_date = new Array(),month_red = new Array(),month_black = new Array(),month_blue = new Array(),month_num = new Array();
  87. //年
  88. var year_red_sum2 = 0;
  89. var year_black_sum2 = 0;
  90. var year_blue_sum2 = 0;
  91. var year_sum = 0,year_date = new Array(),year_red = new Array(),year_black = new Array(),year_blue = new Array(),year_num = new Array();
  92. $(function () {
  93. $.ajax({
  94. url: "/wateroPF/admin/orderStatistics/select_order_statistics",
  95. dataType:"json",
  96. type:"get",
  97. success: function(data){
  98. //上周
  99. var last_week = data.data.listLastWeekNum;
  100. $.each(last_week, function(i,item){
  101. last_week_date[i] = valueDate(this.salesDate);
  102. last_week_red[i] = this.salesRedNum;
  103. last_week_black[i] = this.salesBlackNum;
  104. last_week_blue[i] = this.salesBlueNum;
  105. last_week_num[i] = this.salesNum;
  106. last_week_sum += this.salesNum;
  107. last_week_red_sum2 += this.salesRedNum;
  108. last_week_black_sum2 += this.salesBlackNum;
  109. last_week_blue_sum2 += this.salesBlueNum;
  110. });
  111. last_week_line(last_week_sum,last_week_date,last_week_red,last_week_black,last_week_blue,last_week_num);
  112. //本周
  113. var week = data.data.listWeekNum;
  114. $.each(week, function(i,item){
  115. week_date[i] = valueDate(this.salesDate);
  116. week_red[i] = this.salesRedNum;
  117. week_black[i] = this.salesBlackNum;
  118. week_blue[i] = this.salesBlueNum;
  119. week_num[i] = this.salesNum;
  120. week_sum += this.salesNum;
  121. week_red_sum2 += this.salesRedNum;
  122. week_black_sum2 += this.salesBlackNum;
  123. week_blue_sum2 += this.salesBlueNum;
  124. });
  125. week_sector(week_sum,week_red_sum2,week_black_sum2,week_blue_sum2);
  126. //年统计
  127. var year = data.data.listYearNum;
  128. $.each(year, function(i,item){
  129. year_date[i] = this.salesMonth;
  130. year_red[i] = this.salesRedNum;
  131. year_black[i] = this.salesBlackNum;
  132. year_blue[i] = this.salesBlueNum;
  133. year_num[i] = this.salesNum;
  134. year_sum += this.salesNum;
  135. year_red_sum2 += this.salesRedNum;
  136. year_black_sum2 += this.salesBlackNum;
  137. year_blue_sum2 += this.salesBlueNum;
  138. });
  139. year_date = valuemonth(year_date);
  140. year_line(year_sum,year_date,year_red,year_black,year_blue,year_num);
  141. },
  142. error:function(data){
  143. //alert("操作失败,请查看网络是否正常!");
  144. }
  145. });
  146. selectMonthList();
  147. });
  148. var week_sector = function (week_sum,week_red_sum2,week_black_sum2,week_blue_sum2){
  149. //第一个图
  150. chart = new Highcharts.Chart('container', {
  151. chart: {
  152. backgroundColor:'#f5f5f5'
  153. },
  154. title: {
  155. text: '本周销售统计'
  156. },
  157. subtitle: {
  158. text: '共销售' + week_sum + '台机器'
  159. },
  160. tooltip: {
  161. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  162. },
  163. plotOptions: {
  164. pie: {
  165. allowPointSelect: true,
  166. cursor: 'pointer',
  167. dataLabels: {
  168. enabled: true,
  169. color: '#000000',
  170. connectorColor: '#000000',
  171. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  172. }
  173. }
  174. },
  175. series: [{
  176. type: 'pie',
  177. name: 'WaterO',
  178. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  179. data: [
  180. ['红色',week_red_sum2],
  181. ['黑色',week_black_sum2],
  182. ['蓝色',week_blue_sum2]]
  183. }]
  184. });
  185. }
  186. //第一个图 按钮点击事件
  187. $('#btn-1').click(function () {
  188. chart.destroy ();
  189. if(chartType=='pie'){
  190. chartType='spline';
  191. $(this).text('查看饼状图');
  192. chart = new Highcharts.Chart('container', {
  193. chart: {
  194. backgroundColor:'#f5f5f5'
  195. },
  196. title: {
  197. text: '本周销售统计'
  198. },
  199. subtitle: {
  200. text: '共销售' + week_sum + '台机器'
  201. },
  202. xAxis: {
  203. categories: week_date
  204. },
  205. yAxis: {
  206. title: {
  207. text: '数量'
  208. },
  209. plotLines: [{
  210. value: 0,
  211. width: 1,
  212. color: '#808080'
  213. }]
  214. },
  215. tooltip: {
  216. pointFormat: '{point.y}台'
  217. },
  218. legend: {
  219. layout: 'vertical',
  220. align: 'right',
  221. verticalAlign: 'middle',
  222. borderWidth: 0
  223. },
  224. series: [{
  225. name: '本周总销量',
  226. data: week_num,
  227. color:'#fba62e'
  228. }, {
  229. name: '蓝色销量',
  230. data: week_blue,
  231. color:'#32a3d8'
  232. }, {
  233. name: '红色销量',
  234. data: week_red,
  235. color:'#f96268'
  236. }, {
  237. name: '黑色销量',
  238. data: week_black,
  239. color:'#464646'
  240. }]
  241. });
  242. }else{
  243. chartType='pie';
  244. $(this).text('查看折线图');
  245. chart = Highcharts.chart('container', {
  246. chart: {
  247. backgroundColor:'#f5f5f5'
  248. },
  249. title: {
  250. text: '本周销售统计'
  251. },
  252. subtitle: {
  253. text: '共销售' + week_sum + '台机器'
  254. },
  255. tooltip: {
  256. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  257. },
  258. plotOptions: {
  259. pie: {
  260. allowPointSelect: true,
  261. cursor: 'pointer',
  262. dataLabels: {
  263. enabled: true,
  264. color: '#000000',
  265. connectorColor: '#000000',
  266. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  267. }
  268. }
  269. },
  270. series: [{
  271. type: 'pie',
  272. name: 'WaterO',
  273. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  274. data: [
  275. ['红色', week_red_sum2],
  276. ['黑色', week_black_sum2],
  277. ['蓝色', week_blue_sum2]]
  278. }]
  279. });
  280. }
  281. });
  282. var last_week_line = function (last_week_sum,last_week_date,last_week_red,last_week_black,last_week_blue,last_week_num) {
  283. //第二个图
  284. chart1 = new Highcharts.Chart('container1', {
  285. chart: {
  286. backgroundColor:'#f5f5f5'
  287. },
  288. title: {
  289. text: '上周销售统计'
  290. },
  291. subtitle: {
  292. text: '共销售' + last_week_sum + '台机器'
  293. },
  294. xAxis: {
  295. categories: last_week_date
  296. },
  297. yAxis: {
  298. title: {
  299. text: '数量'
  300. },
  301. plotLines: [{
  302. value: 0,
  303. width: 1,
  304. color: '#808080'
  305. }]
  306. },
  307. tooltip: {
  308. pointFormat: '{point.y}台'
  309. },
  310. legend: {
  311. layout: 'vertical',
  312. align: 'right',
  313. verticalAlign: 'middle',
  314. borderWidth: 0
  315. },
  316. series: [{
  317. name: '上周总销量',
  318. data: last_week_num,
  319. color:'#fba62e'
  320. }, {
  321. name: '蓝色销量',
  322. data: last_week_blue,
  323. color:'#32a3d8'
  324. }, {
  325. name: '红色销量',
  326. id: 'berlin',
  327. data: last_week_red,
  328. color:'#f96268'
  329. }, {
  330. name: '黑色销量',
  331. data: last_week_black,
  332. color:'#464646'
  333. }]
  334. });
  335. }
  336. //第二个图按钮点击事件
  337. $('#btn-2').click(function () {
  338. chart1.destroy ();
  339. if(chartType1=='spline') {
  340. chartType1 = 'pie';
  341. $(this).text('查看折线图');
  342. chart1 = new Highcharts.Chart('container1', {
  343. chart: {
  344. backgroundColor: '#f5f5f5'
  345. },
  346. title: {
  347. text: '上周销售统计'
  348. },
  349. subtitle: {
  350. text: '共销售' + last_week_sum + '台机器'
  351. },
  352. tooltip: {
  353. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  354. },
  355. plotOptions: {
  356. pie: {
  357. allowPointSelect: true,
  358. cursor: 'pointer',
  359. dataLabels: {
  360. enabled: true,
  361. color: '#000000',
  362. connectorColor: '#000000',
  363. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  364. }
  365. }
  366. },
  367. series: [{
  368. type: 'pie',
  369. name: 'WaterO',
  370. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  371. data: [
  372. ['红色', last_week_red_sum2],
  373. ['黑色', last_week_black_sum2],
  374. ['蓝色', last_week_blue_sum2]]
  375. }]
  376. });
  377. } else {
  378. chartType1='spline';
  379. $(this).text('查看饼状图');
  380. chart1 = Highcharts.chart('container1', {
  381. chart: {
  382. backgroundColor:'#f5f5f5'
  383. },
  384. title: {
  385. text: '上周销售统计'
  386. },
  387. subtitle: {
  388. text: '共销售' + last_week_sum + '台机器'
  389. },
  390. xAxis: {
  391. categories: last_week_date
  392. },
  393. yAxis: {
  394. title: {
  395. text: '数量'
  396. },
  397. plotLines: [{
  398. value: 0,
  399. width: 1,
  400. color: '#808080'
  401. }]
  402. },
  403. tooltip: {
  404. pointFormat: '{point.y}台'
  405. },
  406. legend: {
  407. layout: 'vertical',
  408. align: 'right',
  409. verticalAlign: 'middle',
  410. borderWidth: 0
  411. },
  412. series: [{
  413. name: '本周总销量',
  414. data: last_week_num,
  415. color:'#fba62e'
  416. }, {
  417. name: '蓝色销量',
  418. data: last_week_blue,
  419. color:'#32a3d8'
  420. }, {
  421. name: '红色销量',
  422. data: last_week_red,
  423. color:'#f96268'
  424. }, {
  425. name: '黑色销量',
  426. data: last_week_black,
  427. color:'#464646'
  428. }]
  429. });
  430. }
  431. });
  432. var year_line = function (year_sum,year_date,year_red,year_black,year_blue,year_num) {
  433. var date=new Date;
  434. var year=date.getFullYear();
  435. //第四个图
  436. chart3 = new Highcharts.Chart('container3', {
  437. chart: {
  438. backgroundColor:'#f5f5f5'
  439. },
  440. title: {
  441. text: year + '年销售数量'
  442. },
  443. subtitle: {
  444. text: '共销售' + year_sum + '台机器'
  445. },
  446. xAxis: {
  447. categories: year_date
  448. },
  449. yAxis: {
  450. title: {
  451. text: '数量'
  452. },
  453. plotLines: [{
  454. value: 0,
  455. width: 1,
  456. color: '#808080'
  457. }]
  458. },
  459. tooltip: {
  460. pointFormat: '{point.y}台'
  461. },
  462. legend: {
  463. layout: 'vertical',
  464. align: 'right',
  465. verticalAlign: 'middle',
  466. borderWidth: 0
  467. },
  468. series: [{
  469. name: year + '年总销量',
  470. data: year_num,
  471. color:'#fba62e'
  472. }, {
  473. name: '蓝色销量',
  474. data: year_blue,
  475. color:'#32a3d8'
  476. }, {
  477. name: '红色销量',
  478. data: year_red,
  479. color:'#f96268'
  480. }, {
  481. name: '黑色销量',
  482. data: year_black,
  483. color:'#464646'
  484. }]
  485. });
  486. }
  487. //第四个图按钮点击事件
  488. $('#btn-4').click(function () {
  489. var date=new Date;
  490. var year=date.getFullYear();
  491. chart3.destroy ();
  492. if(chartType3=='pie'){
  493. $(this).text("查看饼状图");
  494. chartType3='spline';
  495. chart3 = Highcharts.chart('container3', {
  496. chart: {
  497. backgroundColor:'#f5f5f5'
  498. },
  499. title: {
  500. text: year + '年销售数量'
  501. },
  502. subtitle: {
  503. text: '共销售' + year_sum + '台机器'
  504. },
  505. xAxis: {
  506. categories: year_date
  507. },
  508. yAxis: {
  509. title: {
  510. text: '数量'
  511. },
  512. plotLines: [{
  513. value: 0,
  514. width: 1,
  515. color: '#808080'
  516. }]
  517. },
  518. tooltip: {
  519. pointFormat: '{point.y}台'
  520. },
  521. legend: {
  522. layout: 'vertical',
  523. align: 'right',
  524. verticalAlign: 'middle',
  525. borderWidth: 0
  526. },
  527. series: [{
  528. name: year + '年总销量',
  529. data: year_num,
  530. color:'#fba62e'
  531. }, {
  532. name: '蓝色销量',
  533. data: year_blue,
  534. color:'#32a3d8'
  535. }, {
  536. name: '红色销量',
  537. data: year_red,
  538. color:'#f96268'
  539. }, {
  540. name: '黑色销量',
  541. data: year_black,
  542. color:'#464646'
  543. }]
  544. });
  545. }else{
  546. chartType3='pie';
  547. chart3 = Highcharts.chart('container3', {
  548. chart: {
  549. backgroundColor:'#f5f5f5'
  550. },
  551. title: {
  552. text: year + '年销售数量'
  553. },
  554. subtitle: {
  555. text: '共销售' + year_sum + '台机器'
  556. },
  557. tooltip: {
  558. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  559. },
  560. plotOptions: {
  561. pie: {
  562. allowPointSelect: true,
  563. cursor: 'pointer',
  564. dataLabels: {
  565. enabled: true,
  566. color: '#000000',
  567. connectorColor: '#000000',
  568. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  569. }
  570. }
  571. },
  572. series: [{
  573. type: 'pie',
  574. name: 'WaterO',
  575. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  576. data: [
  577. ['红色', year_red_sum2],
  578. ['黑色', year_black_sum2],
  579. ['蓝色', year_blue_sum2]]
  580. }]
  581. });
  582. }
  583. });
  584. function selectMonthList() {
  585. var select_month = $('#select-month').val();
  586. if (select_month == null || select_month == '') {
  587. var now = format(new Date());
  588. $('#select-month').val(now);
  589. select_month = now;
  590. }
  591. var text_month = select_month.substring(5,7);
  592. var data_month = {
  593. "month":select_month
  594. }
  595. $.ajax({
  596. url: "/wateroPF/admin/orderStatistics/select_order_by_month",
  597. dataType:"json",
  598. type:"get",
  599. data:data_month,
  600. success: function(data){
  601. //月
  602. var month_data = data.data;
  603. $.each(month_data, function(i,item){
  604. month_date[i] = valueDate(this.salesDate);
  605. month_red[i] = this.salesRedNum;
  606. month_black[i] = this.salesBlackNum;
  607. month_blue[i] = this.salesBlueNum;
  608. month_num[i] = this.salesNum;
  609. month_sum += this.salesNum;
  610. month_red_sum2 += this.salesRedNum;
  611. month_black_sum2 += this.salesBlackNum;
  612. month_blue_sum2 += this.salesBlueNum;
  613. });
  614. month_line(text_month,month_sum,month_date,month_red,month_black,month_blue,month_num);
  615. },
  616. error:function(data){
  617. //alert("操作失败,请查看网络是否正常!");
  618. }
  619. });
  620. }
  621. function month_line(text_month,month_sum,month_date,month_red,month_black,month_blue,month_num) {
  622. //第三个图
  623. chart2 = new Highcharts.Chart('container2', {
  624. chart: {
  625. backgroundColor:'#f5f5f5'
  626. },
  627. title: {
  628. text: text_month + '月销售数量'
  629. },
  630. subtitle: {
  631. text: '共销售' + month_sum + '台机器'
  632. },
  633. xAxis: {
  634. categories: month_date
  635. },
  636. yAxis: {
  637. title: {
  638. text: '数量'
  639. },
  640. plotLines: [{
  641. value: 0,
  642. width: 1,
  643. color: '#808080'
  644. }]
  645. },
  646. tooltip: {
  647. pointFormat: '{point.y}台'
  648. },
  649. legend: {
  650. layout: 'vertical',
  651. align: 'right',
  652. verticalAlign: 'middle',
  653. borderWidth: 0
  654. },
  655. series: [{
  656. name: text_month + '月总销量',
  657. data: month_num,
  658. color:'#fba62e'
  659. }, {
  660. name: '蓝色销量',
  661. data: month_blue,
  662. color:'#32a3d8'
  663. }, {
  664. name: '红色销量',
  665. data: month_red,
  666. color:'#f96268'
  667. }, {
  668. name: '黑色销量',
  669. data: month_black,
  670. color:'#464646'
  671. }]
  672. });
  673. }
  674. //第三个图按钮点击事件
  675. $('#btn-3').click(function () {
  676. var select_month = $('#select-month').val();
  677. var text_month = select_month.substring(5,7);
  678. chart2.destroy ();
  679. if(chartType2=='pie'){
  680. $(this).text("查看饼状图");
  681. chartType2='spline';
  682. chart2 = Highcharts.chart('container2', {
  683. chart: {
  684. backgroundColor:'#f5f5f5'
  685. },
  686. title: {
  687. text: text_month + '月销售数量'
  688. },
  689. subtitle: {
  690. text: '共销售' + month_sum + '台机器'
  691. },
  692. xAxis: {
  693. categories: month_date
  694. },
  695. yAxis: {
  696. title: {
  697. text: '数量'
  698. },
  699. plotLines: [{
  700. value: 0,
  701. width: 1,
  702. color: '#808080'
  703. }]
  704. },
  705. tooltip: {
  706. pointFormat: '{point.y}台'
  707. },
  708. legend: {
  709. layout: 'vertical',
  710. align: 'right',
  711. verticalAlign: 'middle',
  712. borderWidth: 0
  713. },
  714. series: [{
  715. name: text_month + '月总销量',
  716. data: month_num,
  717. color:'#fba62e'
  718. }, {
  719. name: '蓝色销量',
  720. data: month_blue,
  721. color:'#32a3d8'
  722. }, {
  723. name: '红色销量',
  724. data: month_red,
  725. color:'#f96268'
  726. }, {
  727. name: '黑色销量',
  728. data: month_black,
  729. color:'#464646'
  730. }]
  731. });
  732. }else{
  733. chartType2='pie';
  734. $(this).text("查看折线图");
  735. chart2 = Highcharts.chart('container2', {
  736. chart: {
  737. backgroundColor:'#f5f5f5'
  738. },
  739. title: {
  740. text: text_month + '月销售数量'
  741. },
  742. subtitle: {
  743. text: '共销售' + month_sum + '台机器'
  744. },
  745. tooltip: {
  746. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  747. },
  748. plotOptions: {
  749. pie: {
  750. allowPointSelect: true,
  751. cursor: 'pointer',
  752. dataLabels: {
  753. enabled: true,
  754. color: '#000000',
  755. connectorColor: '#000000',
  756. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  757. }
  758. }
  759. },
  760. series: [{
  761. type: 'pie',
  762. name: 'WaterO',
  763. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  764. data: [
  765. ['红色', month_red_sum2],
  766. ['黑色', month_black_sum2],
  767. ['蓝色', month_blue_sum2]]
  768. }]
  769. });
  770. }
  771. });
  772. //选择月份事件请加载my97日期控件(写在回调里头)
  773. function updateMonthList() {
  774. var select_month = $('#select-month').val();
  775. var text_month = select_month.substring(5,7);
  776. var data_month = {
  777. "month":select_month
  778. }
  779. $.ajax({
  780. url: "/wateroPF/admin/orderStatistics/select_order_by_month",
  781. dataType:"json",
  782. type:"get",
  783. data:data_month,
  784. success: function(data){
  785. //月
  786. var month_data = data.data;
  787. month_sum = 0;
  788. month_red_sum2 = 0;
  789. month_black_sum2 = 0;
  790. month_blue_sum2 = 0;
  791. month_date = [];
  792. month_red = [];
  793. month_black = [];
  794. month_blue = [];
  795. month_num = [];
  796. $.each(month_data, function(i,item){
  797. month_date[i] = valueDate(this.salesDate);
  798. month_red[i] = this.salesRedNum;
  799. month_black[i] = this.salesBlackNum;
  800. month_blue[i] = this.salesBlueNum;
  801. month_num[i] = this.salesNum;
  802. month_sum += this.salesNum;
  803. month_red_sum2 += this.salesRedNum;
  804. month_black_sum2 += this.salesBlackNum;
  805. month_blue_sum2 += this.salesBlueNum;
  806. });
  807. if(chartType2=='pie'){
  808. chart2.update({
  809. chart: {
  810. backgroundColor:'#f5f5f5'
  811. },
  812. title: {
  813. text: text_month + '月销售数量'
  814. },
  815. subtitle: {
  816. text: '共销售' + month_sum + '台机器'
  817. },
  818. tooltip: {
  819. pointFormat: '{point.y}台: <b>{point.percentage:.1f}%</b>'
  820. },
  821. plotOptions: {
  822. pie: {
  823. allowPointSelect: true,
  824. cursor: 'pointer',
  825. dataLabels: {
  826. enabled: true,
  827. color: '#000000',
  828. connectorColor: '#000000',
  829. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  830. }
  831. }
  832. },
  833. series: [{
  834. type: 'pie',
  835. name: 'WaterO',
  836. colors: ['#f96268', '#464646', '#32a3d8', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#2b908f', '#f45b5b', '#91e8e1'],
  837. data: [
  838. ['红色', month_red_sum2],
  839. ['黑色', month_black_sum2],
  840. ['蓝色', month_blue_sum2]]
  841. }]
  842. });
  843. }else{
  844. chart2.destroy ();
  845. chart2 = new Highcharts.Chart('container2', {
  846. chart: {
  847. backgroundColor:'#f5f5f5'
  848. },
  849. title: {
  850. text: text_month + '月销售数量'
  851. },
  852. subtitle: {
  853. text: '共销售' + month_sum + '台机器'
  854. },
  855. xAxis: {
  856. categories: month_date
  857. },
  858. yAxis: {
  859. title: {
  860. text: '数量'
  861. },
  862. plotLines: [{
  863. value: 0,
  864. width: 1,
  865. color: '#808080'
  866. }]
  867. },
  868. tooltip: {
  869. pointFormat: '{point.y}台'
  870. },
  871. legend: {
  872. layout: 'vertical',
  873. align: 'right',
  874. verticalAlign: 'middle',
  875. borderWidth: 0
  876. },
  877. series: [{
  878. name: text_month + '月总销量',
  879. data: month_num,
  880. color:'#fba62e'
  881. }, {
  882. name: '蓝色销量',
  883. data: month_blue,
  884. color:'#32a3d8'
  885. }, {
  886. name: '红色销量',
  887. data: month_red,
  888. color:'#f96268'
  889. }, {
  890. name: '黑色销量',
  891. data: month_black,
  892. color:'#464646'
  893. }]
  894. });
  895. }
  896. },
  897. error:function(data){
  898. alert("操作失败,请查看网络是否正常!");
  899. }
  900. });
  901. };
  902. function valuemonth(months) {
  903. var year_months = new Array();
  904. for (var i = 0;i < months.length;i++) {
  905. switch (months[i]) {
  906. case "01":year_months[i] = '一月';break;
  907. case "02":year_months[i] = '二月';break;
  908. case "03":year_months[i] = '三月';break;
  909. case "04":year_months[i] = '四月';break;
  910. case "05":year_months[i] = '五月';break;
  911. case "06":year_months[i] = '六月';break;
  912. case "07":year_months[i] = '七月';break;
  913. case "08":year_months[i] = '八月';break;
  914. case "09":year_months[i] = '九月';break;
  915. case "10":year_months[i] = '十月';break;
  916. case "11":year_months[i] = '十一月';break;
  917. default:year_months[i] = '十二月';break;
  918. }
  919. }
  920. return year_months;
  921. }
  922. function valueDate(now) {
  923. now = new Date(now);
  924. var month=now.getMonth()+1;
  925. var date=now.getDate();
  926. return month+"."+date;
  927. }
  928. function format(now) {
  929. now = new Date(now);
  930. var year=now.getFullYear();
  931. var month=now.getMonth()+1;
  932. var date=now.getDate();
  933. if (month < 10) {
  934. month = '0' + month;
  935. }
  936. return year+"-"+month;
  937. }
  938. </script>
  939. </body>
  940. </html>