apiready = function() { var ctrl = { init: {}, bind: {}, employeeId: null, roleId: null, prList: null, inspectionId: null, xjDate: null, jieDanRenId: null, status: null, // status:0 未接单,1 未开始,2 巡检中,3 已完成 tabType: 'content', // 当前激活的 tab prefix: 'https://cdyfile.saas.dianwutong.com/', problemType: 0, // 设备缺陷类型 }; ctrl.init = function() { // 适配安卓状态栏 CommonModel.fitInStatusBar(); ctrl.inspectionId = api.pageParam.inspectionid; ctrl.employeeId = $api.getStorage('employeeId'); ctrl.roleId = $api.getStorage('roleId'); ctrl.prList = $("#prList"); ctrl.contentEmptyTips = $("#content-empty-tips"); ctrl.problemEmptyTips = $("#problem-empty-tips"); ctrl.title = $('#title'); ctrl.xjDateDome = $('#xjDate'); ctrl.prCountDom = $('#prCount'); ctrl.bind(); ctrl.initInspectContentTab(); }; ctrl.bind = function() { //点击返回按钮 $api.addEvt($api.dom("#back"), "touchend", function() { api.closeWin(); }); //点击 “巡检内容” tab按钮 $api.addEvt($api.dom("#content-tab"), "touchend", function () { if (ctrl.tabType == 'content') { return } $api.addCls(this, "active"); $api.removeCls($api.dom("#problem-tab"), "active"); $api.css($api.dom("#content-panel"), 'display:block'); $api.css($api.dom("#problem-panel"), 'display:none'); $api.css($api.dom('#content-empty-tips'), "display:none"); ctrl.tabType = 'content' // 初始化 巡检内容 tab ctrl.initInspectContentTab(); }, false); //点击 “设备缺陷” tab按钮 $api.addEvt($api.dom("#problem-tab"), "touchend", function () { if (ctrl.tabType == 'problem') { return } $api.addCls(this, "active"); $api.removeCls($api.dom("#content-tab"), "active"); $api.css($api.dom("#problem-panel"), 'display:block'); $api.css($api.dom("#content-panel"), 'display:none'); $api.css($api.dom('#problem-empty-tips'), "display:none"); ctrl.tabType = 'problem'; // 初始化 设备缺陷 tab ctrl.initInspectProblemTab(); }, false); // 点击“未处理” btn $("#btn-unhandle").on("touchend", function() { ctrl.problemType = 0; $(this).siblings('.bg-touch').removeClass('bg-yellow'); $(this).addClass('bg-yellow'); ctrl.initInspectProblemTab(); }); // 点击“处理中” btn $("#btn-handling").on("touchend", function() { ctrl.problemType = 1; $(this).siblings('.bg-touch').removeClass('bg-yellow'); $(this).addClass('bg-yellow'); ctrl.initInspectProblemTab(); }); // 点击图片预览 $("#problem-list-container").on("touchend", ".problem-pic-item", function (e) { e.stopPropagation(); var src = $(this).attr('src'); $('#pic-review img').attr('src', src); $('#pic-review').css('display', 'block'); }); // 点击预览图片 关闭预览 $('#pic-review').on("touchend", function () { $(this).css('display', 'none'); }); }; /** * 弹出提示框 */ ctrl.toast = function(msg) { api.toast({ msg: msg, duration: 3000, locaiton: 'top' }); }; // 初始化 设备缺陷 tab ctrl.initInspectProblemTab = function() { ctrl.getProblemList(); }; // 获取设备缺陷 列表 ctrl.getProblemList = function() { api.showProgress(); var url = '/test/xun-jian-dan/queryProblemById/' + ctrl.inspectionId + '/' + ctrl.problemType; $api.get(url, function(res, err) { if (err) { ctrl.toast("网络请求失败"); api.hideProgress(); } else { if (!res.code || res.code != "200") { ctrl.toast("服务器响应错误"); api.hideProgress(); } else { ctrl.renderProblemList(res.data); } } }); }; // 清空设备缺陷 列表 ctrl.clearProblemList = function() { $("#problem-list-container").empty(); }; // 渲染设备缺陷 列表 ctrl.renderProblemList = function(data) { var length = data.length; ctrl.clearProblemList(); if (length > 0) { ctrl.problemEmptyTips.hide(); for (var i = 0; i < length; i++) { var dataItem = data[i]; ctrl.createProblemDom(i + 1, dataItem); }; } else { ctrl.problemEmptyTips.show(); }; api.hideProgress(); }; // 创建 设备缺陷 DOM ctrl.createProblemDom = function(index, problemItem) { var tpl = ''; var status = ''; var colorClass = ''; var problemDesc = problemItem.problemDesc; var pics = []; if (problemItem.picture) { pics = problemItem.picture.split(','); }; var picsLength = pics.length; if (problemItem.status == 0) { status = '未处理'; colorClass = 'text-red'; } else if (problemItem.status == 1) { status = '处理中'; colorClass = 'text-yellow'; }; tpl += '
  • '; tpl += '
    '; tpl += '
    问题{index}
    '; tpl += '
    {status}
    '; tpl += '
    '; tpl += '
    '; tpl += '
    问题描述:
    '; tpl += '
    {problemDesc}
    '; tpl += '
    '; tpl += '
    '; tpl += '
    现场照片:
    '; tpl += '
    '; if (picsLength > 0) { for (var i = 0; i < picsLength; i++) { var url = pics[i]; var img = ''; tpl += img; } } else { tpl += '无' } tpl += '
    '; tpl += '
    '; tpl += '
  • '; tpl = tpl.replace("{index}", index) .replace("{colorClass}", colorClass) .replace("{problemDesc}", problemDesc) .replace("{status}", status); $("#problem-list-container").append(tpl); }; /** * 清空配电室列表 */ ctrl.clearPrList = function() { $("#prList").empty(); }; // 初始化 巡检内容 tab ctrl.initInspectContentTab = function() { ctrl.getInspectDetail(); }; /** * 获取巡检单详情 */ ctrl.getInspectDetail = function() { api.showProgress(); var url = '/test/xun-jian-dan/queryById/' + ctrl.inspectionId; $api.get(url, function(res, err) { if (err) { ctrl.toast("网络请求失败"); api.hideProgress(); } else { if (!res.code || res.code != "200") { ctrl.toast("服务器响应错误"); api.hideProgress(); } else { ctrl.renderInspectDetail(res.data); // 获取当前巡检单对应的巡检配电室列表 ctrl.getInspectPrList(); } } }); }; ctrl.renderInspectDetail = function(data) { // 更新巡检日期 ctrl.xjDate = data.xunJianShiJian; $('#xjDate').text(data.xunJianShiJian); // 更新巡检人员 ctrl.jieDanRenId = data.jieDanRenId || null; $('#inspector').text(data.jieDanRen || '无'); }; /** * 获取巡检配电室列表 */ ctrl.getInspectPrList = function() { api.showProgress(); var url = '/test/xun-jian-pr/queryByList/1/9999/' + ctrl.inspectionId; $api.get(url, function(res, err) { if (err) { ctrl.toast("网络请求失败"); api.hideProgress(); } else { if (!res.code || res.code != "200") { ctrl.toast("服务器响应错误"); api.hideProgress(); } else { api.hideProgress(); ctrl.renderInspectPrList(res.data); } } }); }; ctrl.renderInspectPrList = function(data) { // 判断配电室数量 if (data.total <= 0) { ctrl.prCountDom.text('0') ctrl.contentEmptyTips.show(); return; } else { // 更新配电室数量 ctrl.prCountDom.text(data.total) ctrl.contentEmptyTips.hide(); // 渲染配电室列表 ctrl.clearPrList(); var records = data.records; var len = data.records.length; for (var i = 0; i < len; i++) { var prItem = records[i]; ctrl.createPrDom(prItem.prName, prItem.prId, prItem.xunJianLeiXing, prItem.id); } } }; /** * 创建一个配电室DOM */ ctrl.createPrDom = function(prName, prId, inspectType, id) { var type = '例行巡检'; switch (inspectType) { case 1: type = '例行巡检'; break; case 2: type = '特殊巡检'; break; case 3: type = '会诊巡检'; break; case 4: type = '熄灯巡检'; break; }; var template = '' template +='
    ' template += '
    ' template += '
    ' template += '
    ' template += '
    {prName} ' template += '
    ' template += '
    < {type} >
    ' template += '
    ' template += '
    ' template +='
    ' template = template.replace("{prname}", prName) .replace("{prName}", prName) .replace("{prId}", prId) .replace("{type}", type) .replace("{id}", id || ''); ctrl.prList.append(template); }; ctrl.init(); }