| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598 | 
							- <!DOCTYPE html>
 
- <html class="remModel">
 
- <head>
 
-     <meta charset="UTF-8">
 
-     <meta http-equiv="Cache-Control" content="no-cache,no-store,no-siteapp,must-revalidate">
 
-     <meta http-equiv="pragma" content="no-cache">
 
-     <meta http-equiv="expires" content="0">
 
-     <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">
 
-     <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/lib/weui.min.css">
 
-     <link rel="stylesheet" href="../components/custom/css/common.css">
 
-     <link rel="stylesheet" href="css/xyf.common.min.css">
 
-     <style>
 
-         .top-oper-bar {
 
-             position: relative;
 
-             height: 38px;
 
-             line-height: 38px;
 
-             margin: 0;
 
-             padding: 0 10px;
 
-             background: #f4f4f4;
 
-         }
 
-         .top-oper-bar .right-link {
 
-             margin-top: -10px;
 
-             margin-right: -10px;
 
-             padding: 10px;
 
-         }
 
-     </style>
 
- </head>
 
- <body class="card-manage">
 
- <div class="mui-input-group mui-reset">
 
-     <form class="mui-row" action="">
 
-         <div class="mui-col-xs-9 mui-col-sm-9">
 
-             <div class="mui-input-row mui-search">
 
-                 <input type="search" class="mui-input-clear" id="searchKey" placeholder=" 请输入卡号、手机、姓名">
 
-             </div>
 
-         </div>
 
-         <div class="mui-col-xs-3 mui-col-sm-3 mui-text-right">
 
-             <div class="filter-btn"><span>筛选</span><i class="iconfont icon-triangle-up"></i></div>
 
-         </div>
 
-     </form>
 
- </div>
 
- <div class="filter-panel" style="display: none" id="options">
 
-     <div class="input-group-vertical mui-table-view clear-b-border">
 
-         <div class="or-border-fir mui-input-row input-clear" id="showPickerAddress">
 
-             <label class="or-label-text">地址</label>
 
-             <span class="mui-icon mui-icon-arrowright"></span>
 
-             <span class="l-h-38 font-b-6 selected-text">全部</span>
 
-         </div>
 
-         <div class=" mui-input-row input-clear " id="frozenStatus">
 
-             <label class="or-label-text">状态</label>
 
-             <span class="mui-icon mui-icon-arrowright"></span>
 
-             <span class="l-h-38 font-b-6 selected-text">全部</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>
 
- <h5 class="flexbox top-oper-bar">
 
-     <span class="text-right c-blue right-link" onclick="checkSendCoinsRecord()">派币记录</span>
 
-     <span class="text-right c-blue right-link" onclick="goAddCard()">去录卡</span>
 
- </h5>
 
- <!--下拉刷新容器-->
 
- <div id="pullrefresh" class="mui-content mui-scroll-wrapper" style="margin-top: 82px;">
 
-     <div class="mui-scroll">
 
-         <!--数据列表-->
 
-         <ul class="group-wrap ">
 
-         </ul>
 
-     </div>
 
- </div>
 
- <!--生成二维码-->
 
- <div class="common-mask" id="codePanel">
 
-     <div class="common-model">
 
-         <div class="common-model-tit">长按二维码保存</a>
 
-         </div>
 
-         <img id="previewImg" style="margin: auto;display: block">
 
-         <div class="common-model-close" onclick="closeQRCode()">关闭</div>
 
-     </div>
 
- </div>
 
- <script type="text/html" id="modal">
 
-     <ul class="mui-table-view card-detail split interval custom-bottom">
 
-         <li class="mui-table-view-cell">
 
-             <i class="iconfont icon-card c-primary iconCard"></i>
 
-             <p class="card-dashed-line"><i class="iconfont icon-card c-primary "></i> <span
 
-                     class="cardNo font-b"></span><span
 
-                     class="balance font-b mui-pull-right"></span></p>
 
-             <div class="expand-info ">
 
-                 <p class="mui-hidden">别名<span class="mui-pull-right font-b-8 alias"></span></p>
 
-                 <p class="mui-hidden">电话<span class="mui-pull-right font-b-8 phone"></span></p>
 
-                 <p class="mui-hidden">状态<span class="mui-pull-right font-b-8 status"></span></p>
 
-                 <p class="mui-hidden">挂失状态<span class="mui-pull-right font-b-8 frozen"></span></p>
 
-                 <p class="mui-hidden">卡主<span class="mui-pull-right font-b-8 cardName"></span></p>
 
-                 <p class="mui-hidden">绑定状态<span class="mui-pull-right font-b-8 bindStatus"></span></p>
 
-                 <div class="split-line margin-t-b-5"></div>
 
-                 <p class="operBtn qrcodeBtn margin-t-10">二维码<span class="mui-navigate-right"></span></p>
 
-                 <p class="operBtn operRecordBtn">使用记录<span class="mui-navigate-right"></span></p>
 
-                 <p class="operBtn cardDetail">卡详情<span class="mui-navigate-right"></span></p>
 
-             </div>
 
-         </li>
 
-     </ul>
 
- </script>
 
- <script src="https://cdn.washpayer.com/components/lib/jquery.min.js"></script>
 
- <script src="../components/lib/jquery.qrcode.min.js"></script>
 
- <script src="../components/lib/weui.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="https://cdn.washpayer.com/components/lib/moment.min.js"></script>
 
- <script src="/components/custom/js/common.js"></script>
 
- <script src="js/xyf.login.js"></script>
 
- <script src="js/xyf.common.js"></script>
 
- <script>
 
-     var equipmentGroupId = "";
 
-     var groupName = "";
 
-     //地址 选择器
 
-     var addressPicker = new mui.PopPicker({
 
-         layer: 1
 
-     });
 
-     var YuChuan = false
 
-     var deleteInitIcCard = false;//可以删除卡
 
-     getFeatureList("dealer", {list: ['deleteInitIcCard', 'YuChuan']}, function (payload) {
 
-         YuChuan = payload.YuChuan
 
-         deleteInitIcCard = payload.deleteInitIcCard
 
-         mui.init({
 
-             pullRefresh: {
 
-                 container: '#pullrefresh',
 
-                 up: {
 
-                     contentrefresh: '正在加载...',
 
-                     contentnomore: '没有更多数据了...',
 
-                     callback: pullupRefresh
 
-                 }
 
-             }
 
-         });
 
-         //初始化刷新一次数据
 
-         if (mui.os.plus) {
 
-             mui.plusReady(function () {
 
-                 setTimeout(function () {
 
-                     mui('#pullrefresh').pullRefresh().pullupLoading();
 
-                 }, 1000);
 
-             });
 
-         } else {
 
-             mui.ready(function () {
 
-                 mui('#pullrefresh').pullRefresh().pullupLoading();
 
-             });
 
-         }
 
-     });
 
-     var addressPickerOper = {
 
-         getEquipmentNumAndAdressList: function (callback) {
 
-             var $scope = this;
 
-             sendRequest('/device/getEquipmentNumAndAddressList', 'post', {}, function (res) {
 
-                 if (res.result == 1) {
 
-                     var pickerDatas = []
 
-                     pickerDatas.push({
 
-                         value: null,
 
-                         text: '全部投放地址',
 
-                     });
 
-                     var datas = res.para.groups
 
-                     for (var i = 0, length = datas.length; i < length; i++) {
 
-                         var item = {
 
-                             value: datas[i].groupId,
 
-                             text: datas[i].name,
 
-                         };
 
-                         pickerDatas.push(item);
 
-                     }
 
-                     addressPicker.setData(pickerDatas);
 
-                     if (callback) {
 
-                         callback()
 
-                     }
 
-                 } else {
 
-                     mui.toast(res.description);
 
-                 }
 
-             })
 
-         },
 
-         setEquipmentNumAndAddressNum: function (AddressNum, equipmentNum) {
 
-             $('.putOnAddress').text(AddressNum);
 
-             $('.equipmentNum').text(equipmentNum);
 
-         },
 
-     };
 
-     // 需要等待地址加载出来,然后才初始化所有的参数
 
-     addressPickerOper.getEquipmentNumAndAdressList(function () {
 
-         if (equipmentGroupId) {
 
-             addressPicker.pickers[0].setSelectedValue(equipmentGroupId);
 
-             $('#showPickerAddress .selected-text').html(groupName);
 
-         }
 
-     });
 
-     //地址选择器展示
 
-     $("#showPickerAddress").on("tap", function () {
 
-         addressPicker.show(function (rs) {
 
-             equipmentGroupId = rs[0].value;
 
-             groupName = rs[0].text;
 
-             $('#showPickerAddress .selected-text').html(rs[0].text);
 
-         });
 
-         return false;
 
-     })
 
-     function goAddCard() {
 
-         goPage('/dealer/index.html#/card/edit')
 
-     }
 
-     function checkSendCoinsRecord() {
 
-         goPage('/dealer/index.html#/card/sendCoinsRecord')
 
-     }
 
-     //如果调到子页面,返回后还是保留查询条件
 
-     var orRecordBack = getQueryString('orRecord');
 
-     // 由外部传入的条件,主要是某个用户下级的实体卡查询
 
-     var userId = getQueryString('userId');
 
-     var groupId = getQueryString('groupId');
 
-     /**
 
-      * 向localStorage写入条件数据
 
-      */
 
-     var searchKey = null;// 定义为null,如果是undefined,ios8 微信ajax时会崩溃,但是有的接口有 undefined却不会崩溃。。。
 
-     var frozenStatus = '';//状态
 
-     var pageIndex = 0;
 
-     var pageSize = 10;
 
-     var total = 0;
 
-     var condition;
 
-     var pageType = 'cardManage';
 
-     //获取条件缓存数据
 
-     if (orRecordBack) {
 
-         history.replaceState(null, null, "card-manage.html");
 
-         condition = localStorage.condition ? JSON.parse(localStorage.condition)[pageType] : null;
 
-         if (condition.equipmentGroupId) {
 
-             equipmentGroupId = condition.equipmentGroupId
 
-             groupName = condition.groupName
 
-         }
 
-     } else {
 
-         condition = null;
 
-     }
 
-     function setCondition() {
 
-         var data = {
 
-             searchKey: searchKey,
 
-             equipmentGroupId: equipmentGroupId,
 
-             groupName: groupName,
 
-             frozen: frozenStatus,
 
-         };
 
-         var conArr = localStorage.condition ? JSON.parse(localStorage.condition) : {};
 
-         conArr[pageType] = data;
 
-         localStorage.condition = JSON.stringify(conArr);
 
-     }
 
-     var frozenStatusList = [
 
-         {
 
-             label: '全部',
 
-             value: ''
 
-         },
 
-         {
 
-             label: '正常',
 
-             value: 0
 
-         },
 
-         {
 
-             label: '已挂失',
 
-             value: 1
 
-         }
 
-     ];
 
-     var frozenStatusMap = {0: '正常', 1: '已挂失'};
 
-     var bindStatusMap = {false: '未绑定', true: '已绑定'};
 
-     var statusMap = {active: '正常'};
 
-     /*根据缓存渲染已有条件数据*/
 
-     if (condition) {
 
-         if (condition.frozen != null) {
 
-             frozenStatus = condition.frozen;
 
-             $("#frozenStatus .selected-text").html(frozenStatusMap[condition.frozen]);
 
-         }
 
-         if (condition.searchKey !== '') {
 
-             searchKey = condition.searchKey;
 
-             $("#searchKey").val(searchKey);
 
-         }
 
-     } else {
 
-     }
 
-     //关键字搜索
 
-     document.onkeydown = function (ev) {
 
-         if (ev.keyCode == 13) {
 
-             ev.preventDefault();
 
-             search();
 
-         }
 
-     };
 
-     var agentId;
 
-     //刷新数据
 
-     function pullupRefresh(callback) {
 
-         pageIndex++;
 
-         var url = "/dealer/getUserCardList";
 
-         var data = {
 
-             searchKey: searchKey,
 
-             equipmentGroupId: equipmentGroupId,
 
-             frozen: frozenStatus,
 
-             pageIndex: pageIndex,
 
-             pageSize: pageSize,
 
-         };
 
-         if (userId) {
 
-             data.userId = userId
 
-         }
 
-         if (groupId) {
 
-             data.groupId = groupId
 
-         }
 
-         setCondition();         //设置条件到缓存
 
-         sendRequest(url, "GET", data, function (res) {
 
-             if (res.result === 1) {
 
-                 if (pageIndex === 1) {
 
-                     total = res.payload.total;
 
-                     if (total === 0) {
 
-                         $('#pullrefresh').addClass('mui-hidden');
 
-                         $("body").append('<div class="nomore"></div>');
 
-                     } else {
 
-                         $('#pullrefresh').removeClass('mui-hidden');
 
-                         $('.nomore').remove();
 
-                     }
 
-                 }
 
-                 mui('#pullrefresh').pullRefresh().endPullupToRefresh((pageIndex * pageSize >= total));
 
-                 var groupWrap = $('.group-wrap');
 
-                 var length = res.para.dataList.length;
 
-                 for (var i = 0; i < length; i++) {
 
-                     var obj = res.para.dataList[i];
 
-                     var html = $($("#modal").html());
 
-                     html.find(".expand-info").attr("data-id", obj.cardId)
 
-                     html.find(".expand-info").attr("cardNo", obj.cardNo)
 
-                     html.find(".expand-info").attr("cardName", obj.cardName)
 
-                     html.find(".expand-info").attr("phone", obj.phone)
 
-                     html.find(".expand-info").attr("groupId", obj.groupId)
 
-                     html.find(".expand-info").attr("groupName", obj.groupName)
 
-                     html.find(".expand-info").attr("balance", obj.balance)
 
-                     html.find(".cardNo").text(obj.cardNo)
 
-                     html.find(".balance").text(obj.balance + "元")
 
-                     //附加信息
 
-                     setValue(obj, html, "frozen", frozenStatusMap[obj.frozen], (obj.frozen === 1 ? "c-red" : "c-success"))
 
-                     setValue(obj, html, "alias")
 
-                     setValue(obj, html, "phone")
 
-                     setValue(obj, html, "nickname")
 
-                     setValue(obj, html, "cardName")
 
-                     setValue(obj, html, "bindStatus", bindStatusMap[obj.bindStatus])
 
-                     setValue(obj, html, "status", statusMap[obj.status])
 
-                     if (obj.frozen === false) {
 
-                         html.find(".freezeCard").addClass("isFreeze").find('.btn-label').text("挂失")
 
-                     } else {
 
-                         html.find(".freezeCard .btn-label").text("解除挂失")
 
-                     }
 
-                     if (!deleteInitIcCard) {
 
-                         html.find(".deleteCard").remove()
 
-                     }
 
-                     groupWrap.append(html);
 
-                     agentId = res.payload.agentId;
 
-                     if (callback) {
 
-                         callback()
 
-                     }
 
-                 }
 
-                 if (YuChuan) {
 
-                     $('.qrcodeBtn').remove()
 
-                     $('.cardDetail').remove()
 
-                     $('.balance').remove()
 
-                     $('#sumBalance').remove()
 
-                 }
 
-             } else {
 
-                 mui.toast(res.description);
 
-             }
 
-         });
 
-     }
 
-     function setValue(obj, html, key, value, styleClass) {
 
-         if (value != null) {
 
-         } else {
 
-             value = obj[key]
 
-         }
 
-         value != null && html.find("." + key).html(value).closest('p').removeClass('mui-hidden')
 
-         if (styleClass) {
 
-             html.find("." + key).addClass(styleClass)
 
-         }
 
-     }
 
-     //通用选择器
 
-     var showTypePicker = function (list, options) {
 
-         weui.picker(list, {
 
-             className: options.className,
 
-             defaultValue: [options.default],
 
-             onChange: function (result) {
 
-                 options.onChange && options.onChange(result);
 
-             },
 
-             onConfirm: function (result) {
 
-                 options.onConfirm && options.onConfirm(result);
 
-             },
 
-             id: options.id
 
-         })
 
-     };
 
-     FilterComponent({
 
-         ok: function () {
 
-             /*合法性验证*/
 
-             pageIndex = 0;
 
-             search();
 
-         }
 
-     })
 
-     function search() {
 
-         pageIndex = 0;
 
-         $('.group-wrap').html("");
 
-         mui('#pullrefresh').pullRefresh().refresh(true);//重置上拉加载
 
-         searchKey = $("#searchKey").val();
 
-         //写入数据
 
-         pullupRefresh();
 
-     }
 
-     //状态
 
-     $("#frozenStatus").click(function (e) {
 
-         var $ele = $(e.currentTarget);
 
-         showTypePicker(frozenStatusList, {
 
-             id: $ele.attr('id'),
 
-             default: frozenStatus,//如果没有 null则表示全部
 
-             onConfirm: function (data) {
 
-                 $ele.find(".selected-text").html(data[0].label);
 
-                 frozenStatus = data[0].value;
 
-                 //写入数据
 
-                 setCondition();
 
-             }
 
-         });
 
-     });
 
-     //添加充值卡
 
-     function addCard() {
 
-         goPage('card-manage-edit.html');
 
-     }
 
-     $('body').on('tap', '.card-detail', function () {
 
-         if ($(this).hasClass("active")) {
 
-             $(this).removeClass("active")
 
-         } else {
 
-             $(this).addClass("active")
 
-         }
 
-     }).on('tap', '.operBtn', function (evt) {
 
-         evt.stopPropagation();
 
-         var cardId = $(this).closest('.expand-info').attr("data-id");
 
-         var cardNo = $(this).closest('.expand-info').attr("cardNo");
 
-         var phone = $(this).closest('.expand-info').attr("phone");
 
-         var cardName = $(this).closest('.expand-info').attr("cardName");
 
-         var groupName = $(this).closest('.expand-info').attr("groupName");
 
-         var groupId = $(this).closest('.expand-info').attr("groupId");
 
-         var balance = $(this).closest('.expand-info').attr("balance");
 
-         if (cardId) {
 
-             if ($(this).hasClass("freezeCard")) {
 
-                 var frozen;
 
-                 var tit = ""
 
-                 if ($(this).hasClass("isFreeze")) {
 
-                     frozen = true;
 
-                     tit = "您确定冻结使用该卡吗?"
 
-                 } else {
 
-                     frozen = false;
 
-                     tit = "卡片将恢复使用,您确定要解除挂失状态吗?"
 
-                 }
 
-                 var btnArray = ['取消', '确定'];
 
-                 mui.confirm(tit, '温馨提示', btnArray, function (e) {
 
-                     if (e.index == 1) {
 
-                         var data = {"id": cardId, frozen: frozen};
 
-                         sendRequest({
 
-                                 url: "/dealer/freezeCard",
 
-                                 data: data,
 
-                                 type: 'POST',
 
-                                 contentType: "json",
 
-                                 success: function (res) {
 
-                                     if (res.result == 1) {
 
-                                         mui.toast("操作成功");
 
-                                         search();//刷新列表
 
-                                     }
 
-                                 }
 
-                             }
 
-                         );
 
-                     }
 
-                 });
 
-             } else if ($(this).hasClass("operRecordBtn")) {
 
-                 history.replaceState(null, null, "card-manage.html?orRecord=true&t=" + new Date().getTime());
 
-                 var url = '/user/index.html#balanceChange?cardId=' + cardId;
 
-                 goPage(url);
 
-             } else if ($(this).hasClass("cardDetail")) {
 
-                 history.replaceState(null, null, "card-manage.html?orRecord=true&t=" + new Date().getTime());
 
-                 var url = '/dealer/index.html#/card/detail?cardId=' + cardId;
 
-                 goPage(url);
 
-             } else if ($(this).hasClass("operSendCoins")) {
 
-                 history.replaceState(null, null, "card-manage.html?orRecord=true&t=" + new Date().getTime());
 
-                 var url = '/dealer/index.html#/card/sendCoins?cardId=' + cardId;
 
-                 goPage(url);
 
-             } else if ($(this).hasClass("deleteCard")) {
 
-                 var btnArray = ['取消', '确定'];
 
-                 mui.confirm('确定删除?', '温馨提示', btnArray, function (e) {
 
-                     if (e.index === 1) {
 
-                         sendRequest({
 
-                                 url: "/dealer/deleteCard",
 
-                                 data: {cardId: cardId},
 
-                                 type: 'POST',
 
-                                 contentType: "json",
 
-                                 success: function (res) {
 
-                                     if (res.result === 1) {
 
-                                         mui.toast("操作成功");
 
-                                         search();//刷新列表
 
-                                     } else {
 
-                                         mui.toast(res.description);
 
-                                     }
 
-                                 }
 
-                             }
 
-                         );
 
-                     }
 
-                 });
 
-             } else if ($(this).hasClass("swapCardNo")) {
 
-                 goPage('/dealer/index.html#/card/swapCardNo?cardId=' + cardId + '&cardNo=' + cardNo + '&balance=' + balance)
 
-             } else if ($(this).hasClass("editCard")) {
 
-                 goPage('/dealer/index.html#/card/edit?editCard=1&groupId=' + groupId + '&cardName=' + cardName + '&phone=' + phone + '&cardId=' + cardId + '&cardNo=' + cardNo)
 
-             } else if ($(this).hasClass("qrcodeBtn")) {
 
-                 $("#codePanel").show();
 
-                 var label = cardNo
 
-                 var protocol = location.protocol;
 
-                 var currentDomain = protocol + "//" + location.host;
 
-                 var userUrl;
 
-                 userUrl = currentDomain + "/userLogin?agentId=" + agentId + "&redirect=" +
 
-                     encodeURIComponent("/user/index.html" + "#/user/checkCard?" +
 
-                         "cardId=" + cardId +
 
-                         "&cardNo=" + cardNo +
 
-                         "&cardName=" + cardName +
 
-                         "&phone=" + phone +
 
-                         "&groupName=" + groupName +
 
-                         "&groupId=" + groupId +
 
-                         "&dealerEdit=true"
 
-                     );
 
-                 var dataURL = getQRCodeImageData(userUrl, label);
 
-                 $("#previewImg").attr({
 
-                     "width": 200,
 
-                     "height": 230,
 
-                     "src": dataURL
 
-                 });
 
-             }
 
-         }
 
-     });
 
-     function closeQRCode() {
 
-         $("#codePanel").hide();
 
-     }
 
- </script>
 
- </body>
 
- </html>
 
 
  |