var self, param, docInfo; // 筛选条件 var selStatus = 0, selType = 1, selNum = 50; var allPatList = [], patientArr = [], description = "" var $resultList = $("#device_goal"); function initScroller(){ //阻尼系数 var deceleration = mui.os.ios?0.003:0.0009; mui('.mui-scroll-wrapper').scroll({ scrollX: true, bounce: false, indicators: true, //是否显示滚动条 deceleration:deceleration }); } // 获取基础环境信息 var getBaseEnvPromise = function () { docInfo = JSON.parse(plus.storage.getItem("docInfo")); var env = { webview: plus&&plus.webview.currentWebview() }; return Promise.resolve().then(function(res) { return env; }); }, // 初始化居民列表 getSelectPatientList = function() { plus.nativeUI.showWaiting(); var obj = { doctorId: docInfo.code, bindStatus: selStatus, deviceType: selType, ruleId: self.goalArr[0] }, params = { condition: JSON.stringify(obj), page: 1, size: selNum } sendPost("/doctor/healthBank/selectAccountByCondition", params, queryFails, function(res) { if(res.status == 200) { plus.nativeUI.closeWaiting(); $resultList.empty(); // 渲染数据 allPatList = res.data.detailModelList; var html = template("result_tmpl", {list: allPatList}); // 渲染数据 if(!allPatList || allPatList.length == 0) { $("#no_result_wrap").show() } else { $("#no_result_wrap").hide() $resultList.append(html); } } else { plus.nativeUI.closeWaiting(); queryFails(res); } }, 'POST') }, // 提交数据 submitData = function() { plus.nativeUI.showWaiting(); var obj = { patientIds: patientArr, ruleId: self.goalArr[0], description: description }, params = { object: JSON.stringify(obj) } sendPost("/doctor/healthBank/doctorAddInteger", params, queryFails, function(res) { if(res.status == 200) { plus.nativeUI.closeWaiting(); mui.toast("操作成功!") setTimeout(function() { var vm = plus.webview.getWebviewById("health-bank"), _vm = plus.webview.getWebviewById("select_goal"); if(_vm) { _vm.close(); } mui.fire(vm,"reLoad"); mui.back(); }, 200) } else { plus.nativeUI.closeWaiting(); queryFails(res); } }, 'POST') }, //查询失败回调 queryFails = function(res) { if(res) { mui.toast(res.msg) } else { mui.toast("加载失败!") } }, // 移除勾选 spliceArr = function(patientId) { for(var i = 0, len = patientArr.length; i < len; i++) { if(patientArr[i] == patientId) { patientArr.splice(i, 1) return } } }, setDialog = function() { var judgeText = self.judgeClear ? "清零" : "-10分"; dialog({ content: '
你将给予居民' + judgeText + ',请简要说明原因。
', okValue: '确认', cancelValue: '取消打分', cancel: function () { return; }, ok: function() { description = $("#reason").val(); if(!description || description.length <= 0) { mui.toast("扣分描述为必填项!"); return false; } submitData() } }).showModal(); }, /** * 设置选择活动标题 */ setSelStatus = function($ele, statusArr, statusNameArr, judgeIndex) { $ele.mobiscroll({ theme: 'ios', lang: 'zh', customWheels: true, wheels: [ [{ keys: statusArr, values: statusNameArr }] ], onSelect: function(valueText, inst) { var dd = eval("[" + valueText + "]"); $(this).html(dd[0].values).attr("data-code", dd[0].keys); switch(judgeIndex) { case 0: selStatus = dd[0].keys;break case 1: selType = dd[0].keys;break case 2: selNum = dd[0].keys;break } // 获取积分居民 getSelectPatientList() } } )}, // 绑定页面事件 bindEvents = function () { $resultList.on("tap", ".sel-label", function() { var patientId = $(this).parent().attr("data-patient") if($(this).hasClass("active")) { $(this).removeClass("active"); $(".sel-label-all").removeClass("active"); spliceArr(patientId) } else { $(this).addClass("active"); patientArr.push(patientId) } }); $(".sel-label-all").on("tap", function() { patientArr = [] if($(this).hasClass("active")) { $(this).removeClass("active"); $(".sel-label").removeClass("active"); } else { $(this).addClass("active"); $(".sel-label").addClass("active"); for(var i = 0, len = allPatList.length; i < len; i++) { patientArr.push(allPatList[i].patientId) } } }); // 下一步 $("#sure").on("tap", function() { if(patientArr.length == 0) { mui.toast("请先选择居民!"); return false; } if(self.subNum > 0) { setDialog(); } else { // 提交数据 submitData(); } }); }; // 页面业务处理流程开始 mui.plusReady(function() { //获取当前页面 self = plus.webview.currentWebview(); getBaseEnvPromise() setSelStatus($("#selStatus"), [0, 1], ["已绑定", "未绑定"], 0); setSelStatus($("#selType"), [1, 2], ["血糖仪", "血压计"], 1); setSelStatus($("#selNum"), [50, 100, 200, 2000], ["前50", "前150", "前250", "所有居民"], 2); initScroller(); //绑定事件 bindEvents(); //数据渲染 getSelectPatientList(); })