ProductGather.aspx 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. <%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage/ErpView.master" AutoEventWireup="true" CodeFile="ProductGather.aspx.cs" Inherits="ECharts_ProductGather" %>
  2. <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
  3. <script src="https://cdn.bootcss.com/echarts/3.7.1/echarts.min.js"></script>
  4. <script type="text/javascript" >
  5. var weekAddTag = 0;
  6. var monthAddTag = 0;
  7. var _startTime = "";
  8. var _endTime = "";
  9. var optionBar = {
  10. title: {
  11. text: '产品月销量',
  12. subtext: '',
  13. x: 'center'
  14. },
  15. legend: {
  16. type: 'scroll'
  17. },
  18. color: ['#3398DB'],
  19. tooltip: {
  20. trigger: 'axis',
  21. axisPointer: { // 坐标轴指示器,坐标轴触发有效
  22. type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
  23. }
  24. },
  25. grid: {
  26. left: '3%',
  27. right: '4%',
  28. bottom: '3%',
  29. containLabel: true
  30. },
  31. xAxis: [
  32. {
  33. type: 'category',
  34. data: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30'],
  35. axisTick: {
  36. alignWithLabel: true
  37. }
  38. }
  39. ],
  40. yAxis: [
  41. {
  42. type: 'value'
  43. }
  44. ],
  45. series: [
  46. {
  47. name: '月销量',
  48. type: 'bar',
  49. barWidth: 15,
  50. barGap: '80%',/*多个并排柱子设置柱子之间的间距*/
  51. barCategoryGap: '50%',
  52. data: [10, 52, 200, 334, 390, 330, 220, 10, 52, 200, 334, 390, 330, 220, 10, 52, 200, 334, 390, 330, 220, 10, 52, 200, 334, 390, 330, 220, 200, 334]
  53. }
  54. ]
  55. };
  56. //查询按钮
  57. function searchFn() {
  58. var form = new mini.Form("#ctl00_f_all");
  59. var data = form.getData(true, false);
  60. var s = data;
  61. grid.load({
  62. date1: s.date1, date2: s.date2
  63. });
  64. }
  65. function clickPreNextDate(btnType) {
  66. var dateList = "";
  67. if (btnType == 1) {
  68. monthAddTag = monthAddTag - 1;
  69. dateList = getMonthStartAndEnd(monthAddTag);
  70. }
  71. else if (btnType == 2) {
  72. weekAddTag = weekAddTag - 1;
  73. dateList = getWeekStartAndEnd(weekAddTag);
  74. }
  75. else if (btnType == 3) {
  76. weekAddTag = weekAddTag + 1;
  77. dateList = getWeekStartAndEnd(weekAddTag);
  78. }
  79. else if (btnType == 4) {
  80. monthAddTag = monthAddTag + 1;
  81. dateList = getMonthStartAndEnd(monthAddTag);
  82. }
  83. _startTime = dateList[0];
  84. _endTime = dateList[1];
  85. mini.get("txtChartDate1").setValue(_startTime);
  86. mini.get("txtChartDate2").setValue(_endTime);
  87. grid.load({
  88. date1: _startTime, date2: _endTime
  89. });
  90. }
  91. //清除查询内容
  92. function clearFn() {
  93. //$("#ctl00_f_all").find("input").val("");
  94. var form = new mini.Form("#ctl00_f_all");
  95. form.clear();
  96. mini.get("aSearchMonth").setChecked(false);
  97. mini.get("aSearchDay").setChecked(false);
  98. mini.get("aSearchWeek").setChecked(false);
  99. }
  100. function actionRenderer(e) {
  101. var record = e.record;
  102. var pname = record.pname;
  103. var html = "";
  104. html += getGridBtn("edit", "月走势图", "chartsFn('" + pname + "')");
  105. return html;
  106. }
  107. function chartsFn(pname) {
  108. mini.get("charts_win").show();
  109. var parms = new Object();
  110. parms.ProductName = pname;
  111. postAjax("get_report_product_month_count", parms, function (data) {
  112. console.log("xxxxxxxxxxxx", data);
  113. var barOp = optionBar;
  114. var tData = [];
  115. var vData = [];
  116. for (var idt of data) {
  117. vData.push(idt.count);
  118. tData.push(idt.ctime);
  119. }
  120. barOp.xAxis[0].data = tData;
  121. barOp.series[0].data = vData;
  122. var chartBar = echarts.init(document.getElementById('chartBar'));
  123. chartBar.setOption(barOp);
  124. });
  125. }
  126. $(function () {
  127. var dateList = getMonthStartAndEnd(0);
  128. _startTime = dateList[0];
  129. _endTime = dateList[1];
  130. //mini.get("txtChartDate1").setValue(_startTime);
  131. //mini.get("txtChartDate2").setValue(_endTime);
  132. grid.load({
  133. date1: _startTime, date2: _endTime
  134. });
  135. });
  136. </script>
  137. </asp:Content>
  138. <asp:Content ID="Content2" ContentPlaceHolderID="btn" runat="Server">
  139. <div class="filter_item" id="f_chart_ime">
  140. <a class="mini-button" style="background-color:#ECF6ED;color:#088615;border:1px solid #66E873;" iconCls="icon-upload" onclick="clickPreNextDate(1)">上一月</a>
  141. <a class="mini-button" style="background-color:#F3F7F7;color:#16AAF7;border:1px solid #90D3F6;" iconCls="icon-upload" onclick="clickPreNextDate(2)">上一周</a>
  142. <input id="txtChartDate1" name="date1" class="mini-datepicker inp-time" />
  143. <span class="sp">-</span>
  144. <input id="txtChartDate2" name="date2" class="mini-datepicker inp-time" />
  145. <a class="mini-button" style="background-color:#F3F7F7;color:#16AAF7;border:1px solid #90D3F6;" iconCls="icon-download" onclick="clickPreNextDate(3)">下一周</a>
  146. <a class="mini-button" style="background-color:#ECF6ED;color:#088615;border:1px solid #66E873;" iconCls="icon-download" onclick="clickPreNextDate(4)">下一月</a>
  147. </div>
  148. </asp:Content>
  149. <asp:Content ID="Content4" ContentPlaceHolderID="content" runat="Server">
  150. <div class="mini-fit">
  151. <div id="m_grid" class="mini-datagrid" showpager="false" showemptytext="true" emptytext="暂无记录" url="../handler/sync.ashx?t=get_report_product_order_count">
  152. <div property="columns">
  153. <div type="indexcolumn" width="20"></div>
  154. <div type="checkcolumn" width="20"></div>
  155. <div field="pname" width="60" align="center" headeralign="center">产品名</div>
  156. <div field="count" width="60" align="center" headeralign="center">总数量</div>
  157. <div field="amount" width="60" align="center" headeralign="center">总金额</div>
  158. <div name="action" width="60" headeralign="center" align="center" renderer="actionRenderer" cellstyle="padding:0;">#</div>
  159. </div>
  160. </div>
  161. </div>
  162. <div id="charts_win" class="mini-window" title="走势图" style="width: 850px; height: 560px; position: relative; display: none">
  163. <div id="content" style="width: 100%; display: flex; flex-direction: row; margin-top: 60px;">
  164. <div id="chartBar" style="width: 98%; height: 380px;"></div>
  165. </div>
  166. </div>
  167. </asp:Content>