dev-offline-coins-stat-by-group.html 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta name="author" content=""/>
  6. <meta name="description" content=""/>
  7. <meta name="keywords" content="扫码支付,线上投币,运营数据,物联网"/>
  8. <meta name="format-detection" content="telephone=no,email=no"/>
  9. <meta name="viewport"
  10. content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
  11. <meta http-equiv="pragma" content="no-cache">
  12. <meta http-equiv="cache-control" content="no-cache">
  13. <meta http-equiv="expires" content="0">
  14. <title>组内设备线下投币</title>
  15. <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.min.css"/>
  16. <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.picker.min.css"/>
  17. <link rel="stylesheet" href="../components/custom/css/common.css"/>
  18. <link rel="stylesheet" href="css/xyf.common.min.css">
  19. <style>
  20. </style>
  21. </head>
  22. <body>
  23. <div class="mui-table-view">
  24. <div class="mui-row">
  25. <div class="mui-col-xs-7 mui-col-sm-7">
  26. <span class="font-b-14-6 filter-blank" id="time"></span>
  27. </div>
  28. <div class="mui-col-xs-5 mui-col-sm-5 mui-text-right">
  29. <div class="filter-btn" id="filterBtn2"><span>筛选</span><i class="iconfont icon-triangle-up"></i></div>
  30. </div>
  31. </div>
  32. </div>
  33. <h5 class="mui-content-padded padding-l-r-5">
  34. <span id="address">地址:</span>
  35. </h5>
  36. <div class="filter-panel " style="display: none" id="filterPanel1">
  37. <div class="input-group-vertical mui-table-view clear-b-border ">
  38. <ul class="mui-table-view clear-after">
  39. <li class="mui-table-view-cell totalList">
  40. </li>
  41. </ul>
  42. <div class="mui-input-row filter-panel-btn flexbox">
  43. <span class="cancel-btn flex">关闭</span>
  44. </div>
  45. </div>
  46. </div>
  47. <div class="filter-panel datepickerSelecter" style="display: none" id="filterPanel2">
  48. <div class="input-group-vertical mui-table-view clear-b-border datepicker">
  49. <div class="mui-button-row">
  50. <button class="mui-btn mui-btn-outlined" range="1">今天</button>
  51. <button class="mui-btn mui-btn-outlined" range="7">近7天</button>
  52. <button class="mui-btn mui-btn-outlined" range="15">近15天</button>
  53. <button class="mui-btn mui-btn-outlined" range="30">近30天</button>
  54. </div>
  55. <div class="or-border-fir mui-input-row input-clear or-order-status select-date" id="start-date">
  56. <label class="or-label-text">开始日期</label>
  57. <span class="mui-icon mui-icon-arrowright"></span>
  58. <span class="or-order-status-font selected-text" id="beginDate"></span>
  59. </div>
  60. <div class="mui-input-row input-clear or-order-status select-date" id="end-date">
  61. <label class="or-label-text">结束日期</label>
  62. <span class="mui-icon mui-icon-arrowright"></span>
  63. <span class="or-order-status-font selected-text" id="endDate"></span>
  64. </div>
  65. <div class="mui-input-row filter-panel-btn flexbox">
  66. <span class="cancel-btn flex">取消</span>
  67. <span class="ok-btn flex">确定</span>
  68. </div>
  69. </div>
  70. </div>
  71. <div id="pullrefresh" class="mui-content mui-scroll-wrapper " style="margin-top: 80px;padding-top: 1px">
  72. <div class="mui-scroll">
  73. <ul class="mui-table-view table-view list"></ul>
  74. </div>
  75. </div>
  76. <script src="https://cdn.washpayer.com/components/lib/jquery.min.js"></script>
  77. <script src="https://cdn.washpayer.com/components/lib/moment.min.js"></script>
  78. <script src="https://cdn.washpayer.com/components/lib/mui.min.js"></script>
  79. <script src="https://cdn.washpayer.com/components/lib/mui.picker.min.js"></script>
  80. <script src="/components/custom/js/common.js"></script>
  81. <script src="js/xyf.common.js"></script>
  82. <script>
  83. var startTime = getQueryString("startTime");
  84. var endTime = getQueryString("endTime");
  85. var groupId = getQueryString("groupId");
  86. setTimeTitle();
  87. FilterComponent([
  88. {
  89. trigger: "#filterBtn2",
  90. panel: "#filterPanel2",
  91. ok: function () {
  92. /*合法性验证*/
  93. if (startTime > endTime) {
  94. mui.alert('开始日期不能大于结束日期', '温馨提示', '确定');
  95. return false;
  96. }
  97. setTimeTitle();
  98. search();
  99. }
  100. }
  101. ]);
  102. function setTimeTitle() {
  103. if (startTime == endTime) {
  104. $("#time").html(startTime + "");
  105. } else {
  106. $("#time").html(startTime + "至" + endTime + "");
  107. }
  108. $('#beginDate').text(startTime);
  109. $('#endDate').text(endTime);
  110. }
  111. // 搜索查询
  112. function search() {
  113. pageIndex = 0;
  114. $(".list").empty(); // 清空数据
  115. mui('#pullrefresh').pullRefresh().refresh(true);//重置上拉加载
  116. pullupRefresh();
  117. }
  118. //日期筛选条件
  119. $(function () {
  120. //可选日期范围
  121. var pickerBegin = moment().add(-2, "year").toDate();//控件可选最小时间
  122. var pickerEnd = new Date();//控件可选最大时间
  123. var options = {
  124. type: "date",
  125. beginDate: pickerBegin,
  126. endDate: pickerEnd
  127. };
  128. var startTimeBtn = $('#start-date');
  129. var startTimePicker = new mui.DtPicker(options);
  130. startTimePicker.setSelectedValue(startTime);//默认选中开始时间
  131. startTimeBtn[0].addEventListener('tap', function () {
  132. startTimePicker.show(function (time) {
  133. startTime = time.y.text + '-' + time.m.text + '-' + time.d.text + '';
  134. $('#beginDate').text(startTime);
  135. });
  136. }, false);
  137. var endTimeBtn = $('#end-date');
  138. var endTimePicker = new mui.DtPicker(options);
  139. endTimePicker.setSelectedValue(endTime);//默认选中结束时间
  140. endTimeBtn[0].addEventListener('tap', function () {
  141. endTimePicker.show(function (time) {
  142. endTime = time.y.text + '-' + time.m.text + '-' + time.d.text + '';
  143. $('#endDate').text(endTime);
  144. });
  145. }, false);
  146. //快速日期范围选择
  147. $('.datepicker .mui-button-row button').tap(function () {
  148. $(this).addClass('active').siblings().removeClass('active');
  149. var range = $(this).attr('range');
  150. setDateTime(range);//快速日期选择
  151. startTimePicker.setSelectedValue(startTime);
  152. endTimePicker.setSelectedValue(endTime);
  153. });
  154. function setDateTime(range) {
  155. endTime = moment().format("YYYY-MM-DD");
  156. if (range && range > 0) {
  157. startTime = moment().add(-(range - 1), "day").format("YYYY-MM-DD");
  158. }
  159. $('#beginDate').text(startTime);
  160. $('#endDate').text(endTime);
  161. }
  162. });
  163. mui.init({
  164. pullRefresh: {
  165. container: '#pullrefresh',
  166. up: {
  167. contentrefresh: '正在加载...',
  168. contentnomore: '没有更多数据了...',
  169. callback: pullupRefresh
  170. }
  171. }
  172. });
  173. /* 上拉加载具体业务实现*/
  174. var pageIndex = 0;
  175. var total = 0;
  176. function pullupRefresh() {
  177. pageIndex++;
  178. var url = "/dealer/getDevOffLineCoinStatByGroupId";
  179. var data = {
  180. "pageIndex": pageIndex,
  181. "pageSize": 10,
  182. "groupId": groupId,
  183. "startTime": startTime,
  184. "endTime": endTime
  185. };
  186. sendRequest(url, "GET", data, function (res) {
  187. var payload = res.payload;
  188. if (res.result == 1) {
  189. if (pageIndex == 1) {
  190. total = payload.total;
  191. }
  192. var length = payload.dataList.length;
  193. mui('#pullrefresh').pullRefresh().endPullupToRefresh((pageIndex * 10 >= total));
  194. $("#address").html("地址:<span class='font-b'>" + payload.groupName + "</span>");
  195. var table = document.body.querySelector('.table-view');
  196. for (var i = 0; i < length; i++) {
  197. var obj = payload.dataList[i];
  198. var isTransferClass = '';
  199. var li = document.createElement('li');
  200. li.className = 'mui-table-view-cell ';
  201. var itemDetailDom = '';
  202. itemDetailDom = itemDetailDom + '<p class="mui-col-xs-6 margin-t-5 padding-r-10">' + '线下投币' +
  203. ':<span class=" ">' + obj.offlineCoins + '次</span>' +
  204. '</p>';
  205. li.innerHTML = '<a href="javascript:void(0)" class="">' +
  206. '<div class="mui-row">' +
  207. '<p class="mui-col-xs-6 mui-col-sm-6 mui-text-left font-b-16-8">' +
  208. '<i class=" c-primary iconfont ' + window.getDevIconName(obj.devTypeName) + '"></i> ' +
  209. '<span class="v-middle">' + obj.devTypeName + ' ' + obj.logicalCode + '</span>' + isTransferClass +
  210. '</p>' +
  211. '</div>' +
  212. '<div class="mui-row margin-t-5">' +
  213. itemDetailDom +
  214. '</div>' +
  215. '</a>';
  216. table.appendChild(li);
  217. }
  218. } else {
  219. mui.toast(res.description);
  220. }
  221. });
  222. }
  223. if (mui.os.plus) {
  224. mui.plusReady(function () {
  225. setTimeout(function () {
  226. mui('#pullrefresh').pullRefresh().pullupLoading();
  227. }, 1000);
  228. });
  229. } else {
  230. mui.ready(function () {
  231. mui('#pullrefresh').pullRefresh().pullupLoading();
  232. });
  233. }
  234. </script>
  235. </body>
  236. </html>