apiready = function() { var ctrl = { alarmId: null, websocket: null, alarm: null, init: {}, bind: {}, getAlarm: {}, renderAlarm: {}, initWebsocket: {}, renderFilter: {} //渲染报警列表前的拦截器,用于处理体验账号模式下的数据 } //初始化 ctrl.init = function() { // 适配安卓状态栏 CommonModel.fitInStatusBar(); this.alarmId = api.pageParam.id; ctrl.employeeId = $api.getStorage('employeeId'); this.bind(); this.getAlarm(); } //事件绑定 ctrl.bind = function() { //点击返回按钮 $api.addEvt($api.dom("#back"), 'touchend', function() { api.closeWin(); // if(ctrl.websocket){ // ctrl.websocket.close(); // } }, false); //退出app 关闭socket api.addEventListener({ name: 'pause' }, function(ret, err) { // ctrl.websocket.close(); }); //应用恢复 打开websocket api.addEventListener({ name: 'resume' }, function(ret, err) { // ctrl.initWebsocket(ctrl.alarm.serverIp, ctrl.alarm.varType, ctrl.alarm.varIndex); }); // “生成工单” 按钮 点击 $api.addEvt($api.dom("#create-order-btn"), 'touchend', function() { api.confirm({ title: '', msg: '确定要生成工单吗', buttons: ['确定', '取消'] }, function(ret, err) { var index = ret.buttonIndex; if (index == 1) { // 确定 ctrl.createOrder(); } }); }) } ctrl.getAlarm = function() { var data = { alarmId: this.alarmId } var url = "/ems/rest/alarm"; $api.get(url, data, function(ret, err) { if (!err && ret && ret.code === 200) { $api.css($api.dom("#content"), 'display:block'); $api.css($api.dom("#empty-tips"), 'display:none'); ctrl.renderAlarm(ret.body); if (ret.body.handleStatus == 0) { $api.css($api.dom("#create-order-btn"), 'display:block'); } ctrl.alarm = ret.body; } else { $api.css($api.dom("#content"), 'display:none'); $api.css($api.dom("#empty-tips"), 'display:block'); } }); } //渲染报警列表前的拦截器,用于处理体验账号模式下的数据 ctrl.renderFilter = function(alarm) { if ($api.getStorage('cus') && alarm.prName) { alarm.prName = $api.guestPrName; } } ctrl.renderAlarm = function(alarm) { //渲染报警列表前的拦截器,用于处理体验账号模式下的数据 ctrl.renderFilter(alarm); $api.text($api.dom("#pr-name"), alarm.prName); var unit = alarm.unit ? alarm.unit : ''; var content = '
报警描述:' + alarm.alarmDesc + '
'; if (alarm.ddNum) { content += ("
调度号:" + alarm.ddNum + "
"); } if ($api.getStorage('cus')) { content = content.replace($api.guestKeysPattern, $api.guestName); } if (alarm.varType == "1") { // AI var alarmValue = ((alarm.alarmValue || alarm.alarmValue == 0) ? alarm.alarmValue.toFixed(2) : ''); content += '
报警值:' + alarmValue + unit + '
'; content += '
报警设定值:' + ((alarm.lowLimit || alarm.lowLimit == 0) ? "下限 " + alarm.lowLimit + unit : '') + ((alarm.lowLimit || alarm.lowLimit == 0) && (alarm.topLimit || alarm.topLimit == 0) ? "," : '') + ((alarm.topLimit || alarm.topLimit == 0) ? "上限 " + alarm.topLimit + unit : '') + '
'; } else { if (alarm.showValue) { content += ('
报警值:' + alarm.valueDefine + '
') } } // 处理状态 content += '
处理状态:' + ['未处理', '处理中', '已处理', '已确认'][alarm.handleStatus] + '
' // 如果已确认 显示确认的原因 if (alarm.handleStatus == 3) { content += '
确认原因:' + alarm.reason + '
'; } // content += '
历史报警:' + alarm.historyAlarmCount + '次
'; // content += '
历史抢修:' + alarm.historyQxCount + '次
'; var alarmTime = (alarm.alarmTime ? moment(alarm.alarmTime).format("YYYY-MM-DD HH:mm:ss") : "") if (alarm.lastAlarmTime) { var lastAlarmTime = moment(alarm.lastAlarmTime).format("YYYY-MM-DD HH:mm:ss"); content += '
本次报警时间:' + alarmTime + '
'; content += '
上次报警时间:' + lastAlarmTime + '
'; } else { content += ('
本次报警时间:' + alarmTime + '
'); } $api.html($api.dom("#content-body"), content); } /** * 弹出提示框 */ ctrl.toast = function (msg) { api.toast({ msg: msg, duration: 3000, locaiton: 'top' }); }; // 生成工单 ctrl.createOrder = function () { var url = '/test/gong-dan/alarmTransferToWorkOrder/' + ctrl.employeeId + '/' + ctrl.alarmId; $api.post(url, function(ret, err) { if (!err && ret && ret.code == "200") { ctrl.toast('生成成功') api.closeWin(); } else { ctrl.toast('生成失败,' + ret.msg) } }) }; ctrl.init(); }