123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8"/>
- <meta name="author" content=""/>
- <meta name="description" content=""/>
- <meta name="keywords" content="扫码支付,线上投币,运营数据,物联网"/>
- <meta name="format-detection" content="telephone=no,email=no"/>
- <meta name="viewport"
- content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <title>组内设备经营详情</title>
- <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.min.css"/>
- <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.picker.min.css"/>
- <link rel="stylesheet" href="../components/custom/css/common.css"/>
- <link rel="stylesheet" href="css/xyf.common.min.css">
- <style>
- </style>
- </head>
- <body>
- <div class="mui-table-view">
- <div class="mui-row">
- <div class="mui-col-xs-7 mui-col-sm-7">
- <span class="font-b-14-6 filter-blank" id="time"></span>
- </div>
- <div class="mui-col-xs-5 mui-col-sm-5 mui-text-right">
- <div class="filter-btn" id="filterBtn1"><span>合计</span><i class="iconfont icon-triangle-up"></i></div>
- <div class="filter-btn" id="filterBtn2"><span>筛选</span><i class="iconfont icon-triangle-up"></i></div>
- </div>
- </div>
- </div>
- <h5 class="mui-content-padded padding-l-r-5">
- <span id="address">地址:</span>
- </h5>
- <div class="filter-panel " style="display: none" id="filterPanel1">
- <div class="input-group-vertical mui-table-view clear-b-border ">
- <ul class="mui-table-view clear-after">
- <li class="mui-table-view-cell totalList">
- </li>
- </ul>
- <div class="mui-input-row filter-panel-btn flexbox">
- <span class="cancel-btn flex">关闭</span>
- </div>
- </div>
- </div>
- <div class="filter-panel datepickerSelecter" style="display: none" id="filterPanel2">
- <div class="input-group-vertical mui-table-view clear-b-border datepicker">
- <div class="mui-button-row">
- <button class="mui-btn mui-btn-outlined" range="1">今天</button>
- <button class="mui-btn mui-btn-outlined" range="7">近7天</button>
- <button class="mui-btn mui-btn-outlined" range="15">近15天</button>
- <button class="mui-btn mui-btn-outlined" range="30">近30天</button>
- </div>
- <div class="or-border-fir mui-input-row input-clear or-order-status select-date" id="start-date">
- <label class="or-label-text">开始日期</label>
- <span class="mui-icon mui-icon-arrowright"></span>
- <span class="or-order-status-font selected-text" id="beginDate"></span>
- </div>
- <div class="mui-input-row input-clear or-order-status select-date" id="end-date">
- <label class="or-label-text">结束日期</label>
- <span class="mui-icon mui-icon-arrowright"></span>
- <span class="or-order-status-font selected-text" id="endDate"></span>
- </div>
- <div class="mui-input-row filter-panel-btn flexbox">
- <span class="cancel-btn flex">取消</span>
- <span class="ok-btn flex">确定</span>
- </div>
- </div>
- </div>
- <div id="pullrefresh" class="mui-content mui-scroll-wrapper " style="margin-top: 80px;padding-top: 1px">
- <div class="mui-scroll">
- <ul class="mui-table-view table-view list"></ul>
- </div>
- </div>
- <script src="https://cdn.washpayer.com/components/lib/jquery.min.js"></script>
- <script src="https://cdn.washpayer.com/components/lib/moment.min.js"></script>
- <script src="https://cdn.washpayer.com/components/lib/mui.min.js"></script>
- <script src="https://cdn.washpayer.com/components/lib/mui.picker.min.js"></script>
- <script src="/components/custom/js/common.js"></script>
- <script src="js/xyf.common.js"></script>
- <script>
- var startTime = getQueryString("startTime");
- var endTime = getQueryString("endTime");
- var groupId = getQueryString("groupId");
- var category = getQueryString("category") || "income";//income 或consume
- setTimeTitle();
- FilterComponent([
- {
- trigger: "#filterBtn1",
- panel: "#filterPanel1"
- },
- {
- trigger: "#filterBtn2",
- panel: "#filterPanel2",
- ok: function () {
- /*合法性验证*/
- if (startTime > endTime) {
- mui.alert('开始日期不能大于结束日期', '温馨提示', '确定');
- return false;
- }
- setTimeTitle();
- search();
- }
- }
- ]);
- function setTimeTitle() {
- if (startTime == endTime) {
- $("#time").html(startTime + "");
- } else {
- $("#time").html(startTime + "至" + endTime + "");
- }
- $('#beginDate').text(startTime);
- $('#endDate').text(endTime);
- }
- // 搜索查询
- function search() {
- pageIndex = 0;
- $(".list").empty(); // 清空数据
- mui('#pullrefresh').pullRefresh().refresh(true);//重置上拉加载
- pullupRefresh();
- }
- //日期筛选条件
- $(function () {
- //可选日期范围
- var pickerBegin = moment().add(-2, "year").toDate();//控件可选最小时间
- var pickerEnd = new Date();//控件可选最大时间
- var options = {
- type: "date",
- beginDate: pickerBegin,
- endDate: pickerEnd
- };
- var startTimeBtn = $('#start-date');
- var startTimePicker = new mui.DtPicker(options);
- startTimePicker.setSelectedValue(startTime);//默认选中开始时间
- startTimeBtn[0].addEventListener('tap', function () {
- startTimePicker.show(function (time) {
- startTime = time.y.text + '-' + time.m.text + '-' + time.d.text + '';
- $('#beginDate').text(startTime);
- });
- }, false);
- var endTimeBtn = $('#end-date');
- var endTimePicker = new mui.DtPicker(options);
- endTimePicker.setSelectedValue(endTime);//默认选中结束时间
- endTimeBtn[0].addEventListener('tap', function () {
- endTimePicker.show(function (time) {
- endTime = time.y.text + '-' + time.m.text + '-' + time.d.text + '';
- $('#endDate').text(endTime);
- });
- }, false);
- //快速日期范围选择
- $('.datepicker .mui-button-row button').tap(function () {
- $(this).addClass('active').siblings().removeClass('active');
- var range = $(this).attr('range');
- setDateTime(range);//快速日期选择
- startTimePicker.setSelectedValue(startTime);
- endTimePicker.setSelectedValue(endTime);
- });
- function setDateTime(range) {
- endTime = moment().format("YYYY-MM-DD");
- if (range && range > 0) {
- startTime = moment().add(-(range - 1), "day").format("YYYY-MM-DD");
- }
- $('#beginDate').text(startTime);
- $('#endDate').text(endTime);
- }
- });
- function initTotal() {
- //获取总收益
- var url = "/dealer/groupIncomeByGroupId";
- if (category == "consume") {
- url = "/dealer/groupConsumptionByGroupId";
- }
- var data = {
- "startTime": startTime,
- "endTime": endTime,
- "groupId": groupId
- };
- sendRequest(url, "GET", data, function (res) {
- var payload = res.payload
- if (res.result == 1) {
- $("#address").html("地址:<span class='font-b'>" + payload.groupName + "</span>");
- // 总的收益,或消费
- var itemTotalDom = '';
- if (payload.incomeTotalList) {
- for (var index in payload.incomeTotalList) {
- var itemIn = payload.incomeTotalList[index];
- itemTotalDom = itemTotalDom + '<p class="font-b-8"><i class="iconfont icon-purse font-b-14 c-primary"></i> ' + itemIn.name + '<span class=" mui-pull-right c-red">+' + itemIn.value + '</span></p>';
- }
- }
- if (payload.consumeTotalList) {
- for (var index in payload.consumeTotalList) {
- var itemIn = payload.consumeTotalList[index];
- itemTotalDom = itemTotalDom + '<p class="font-b-8"><i class="iconfont icon-goods font-b-14 c-orange"></i> ' + itemIn.name + '<span class=" mui-pull-right ">' + itemIn.value + itemIn.unit + '</span></p>';
- }
- }
- $(".totalList").html(itemTotalDom);
- } else {
- mui.toast(res.description);
- }
- });
- }
- initTotal();
- mui.init({
- pullRefresh: {
- container: '#pullrefresh',
- up: {
- contentrefresh: '正在加载...',
- contentnomore: '没有更多数据了...',
- callback: pullupRefresh
- }
- }
- });
- /* 上拉加载具体业务实现*/
- var pageIndex = 0;
- var total = 0;
- function pullupRefresh() {
- pageIndex++;
- var url = "/dealer/groupEquipmentIncomeByGroupId";
- if (category == "consume") {
- url = "/dealer/groupEquipmentConsumptionByGroupId";
- }
- var data = {
- "pageIndex": pageIndex,
- "pageSize": 10,
- "groupId": groupId,
- "startTime": startTime,
- "endTime": endTime
- };
- sendRequest(url, "GET", data, function (res) {
- var payload = res.para;
- if (res.result == 1) {
- if (pageIndex == 1) {
- total = payload.total;
- }
- var length = payload.dataList.length;
- mui('#pullrefresh').pullRefresh().endPullupToRefresh((pageIndex * 10 >= total));
- var table = document.body.querySelector('.table-view');
- for (var i = 0; i < length; i++) {
- var obj = payload.dataList[i];
- var payIncome_href = 'income-list.html?groupId=' + groupId + '&logicalCode=' + obj.logicalCode + '&typeShow=' + category + '&startTime=' + startTime + "&endTime=" + endTime;
- var isTransferClass = '';
- if (obj.isTransfer == "Y") {
- isTransferClass = '<em class="transfer">已转移</em>';
- }
- if (!obj.groupId) {
- isTransferClass = '<em class="unbind">已解绑</em>';
- }
- var li = document.createElement('li');
- li.className = 'mui-table-view-cell ';
- var itemDetailDom = '';
- if (obj.incomeList) {
- for (var index in obj.incomeList) {
- var itemIn = obj.incomeList[index];
- itemDetailDom = itemDetailDom + '<p class="mui-col-xs-6 margin-t-5 padding-r-10">' + itemIn.name +
- ':<span class="c-red ">+' + itemIn.value + '</span>' +
- '</p>';
- }
- }
- if (obj.consumptionList) {
- for (var index in obj.consumptionList) {
- var itemIn = obj.consumptionList[index];
- itemDetailDom = itemDetailDom + '<p class="mui-col-xs-6 margin-t-5 padding-r-10">' + itemIn.name +
- ':<span class="font-b-8">' + itemIn.value + itemIn.unit + '</span>' +
- '</p>';
- }
- }
- if (!itemDetailDom) {
- itemDetailDom = '<p class=" margin-t-5 padding-r-10">没有数据</p>'
- }
- var otherTotalDom = "";
- // 某些设备需要展示刷卡 投币等
- if (category == "income" && obj.realtimeIncomeAvailable) {
- otherTotalDom = otherTotalDom + '<p class="mui-col-xs-12 margin-t-5 padding-t-15 getRealtimeIncomeBtnP">' +
- '<button type="button" class="mui-btn mui-btn-primary mui-btn-outlined mui-pull-right getRealtimeIncomeBtn" logicalCode="' + obj.logicalCode + '">获取设备实时收益</button>' +
- '</p>';
- }
- li.innerHTML = '<a href="javascript:void(0)" my-href="' + payIncome_href + '" class="mui-navigate-right">' +
- '<div class="mui-row">' +
- '<p class="mui-col-xs-6 mui-col-sm-6 mui-text-left font-b-16-8">' +
- '<i class="v-middle c-primary iconfont ' + window.getDevIconName(obj.type) + '"></i> ' +
- '<span class="v-middle">' + obj.type + ' ' + obj.logicalCode + '</span>' + isTransferClass +
- '</p>' +
- '</div>' +
- '<div class="mui-row margin-t-5">' +
- itemDetailDom +
- otherTotalDom +
- '</div>' +
- '</a>';
- table.appendChild(li);
- }
- } else {
- mui.toast(res.description);
- }
- });
- }
- $("body").on("tap", ".getRealtimeIncomeBtn", function (evt) {
- evt.stopPropagation();
- var logicalCode = $(this).attr("logicalCode");
- var dom = $(this).closest(".getRealtimeIncomeBtnP");
- sendRequest({
- url: "/dealer/getRealtimeIncomeByDev",
- type: "GET",
- data: {logicalCode: logicalCode},
- mask: "正在加载数据...",
- success: function (res) {
- var payload = res.payload;
- if (payload.realtimeIncome && payload.realtimeIncome.length > 0) {
- var list = payload.realtimeIncome;
- var otherTotalDom = "";
- for (var index in list) {
- var item = list[index];
- otherTotalDom = otherTotalDom + '<p class="mui-col-xs-6 margin-t-5 padding-t-10 ">' + item.name +
- ':<span class=" ">' + item.value + '</span>' +
- '</p>';
- }
- dom.replaceWith(otherTotalDom);
- }
- }
- });
- }).on("tap", "[my-href]", function (evt) {
- var url = $(this).attr('my-href');
- if (url.indexOf("income-list") > -1) {
- var halfYear = moment().add(-6, 'month').startOf("month").format("YYYY-MM-DD");
- console.log(startTime, halfYear)
- if (startTime && moment(startTime).isBefore(halfYear)) {
- mui.toast('系统目前仅支持查询最近半年的订单明细数据(当前可查询' + halfYear + '起的数据)');
- } else {
- goPage(url);
- }
- } else {
- goPage(url);
- }
- });
- if (mui.os.plus) {
- mui.plusReady(function () {
- setTimeout(function () {
- mui('#pullrefresh').pullRefresh().pullupLoading();
- }, 1000);
- });
- } else {
- mui.ready(function () {
- mui('#pullrefresh').pullRefresh().pullupLoading();
- });
- }
- mui('body').on('tap', 'a', function () {
- var href = this.getAttribute('href').trim();
- if (href != '') {
- goPage(href);
- }
- });
- </script>
- </body>
- </html>
|