331 lines
11 KiB
JavaScript
331 lines
11 KiB
JavaScript
|
|
|||
|
apiready = function () {
|
|||
|
var ctrl = {
|
|||
|
init: {},
|
|||
|
bind: {},
|
|||
|
initPrPicker: {},
|
|||
|
prList: [], // 配电室列表
|
|||
|
employeeId: null, // 员工登陆时的员工id
|
|||
|
}
|
|||
|
|
|||
|
ctrl.init = function () {
|
|||
|
// 判断是否是员工登陆
|
|||
|
var isEmployee = $api.getStorage("isEmployee");
|
|||
|
var isKHZBY = $api.getStorage("isKHZBY");
|
|||
|
ctrl.prList = $api.getStorage("prList");
|
|||
|
|
|||
|
if (isEmployee) { // 员工登录(自己员工、客户员工)
|
|||
|
// 客户值班员,隐藏巡检安排、系统工单
|
|||
|
if (isKHZBY) {
|
|||
|
$('#inspection-arrange').hide();
|
|||
|
$('#work-order').hide();
|
|||
|
}
|
|||
|
|
|||
|
ctrl.bind();
|
|||
|
ctrl.initPrPicker();
|
|||
|
|
|||
|
} else { // 客户登陆
|
|||
|
// 隐藏巡检安排、系统工单
|
|||
|
$('#inspection-arrange').hide();
|
|||
|
$('#work-order').hide();
|
|||
|
|
|||
|
// 控制菜单权限
|
|||
|
privilegeModule.getMenuList(function () {
|
|||
|
ctrl.initMenu();
|
|||
|
});
|
|||
|
ctrl.bind();
|
|||
|
|
|||
|
ctrl.initPrPicker();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
ctrl.initMenu = function () {
|
|||
|
if (!privilegeModule.hasMenu('实时数据')) {
|
|||
|
$('#bt-rtdata').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('历史数据')) {
|
|||
|
$('#bt-hisdata').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('报警查询')) {
|
|||
|
$('#bt-alarm').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('能耗分析')) {
|
|||
|
$('#bt-energy').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('日志查询') ||
|
|||
|
(!privilegeModule.hasMenu('巡检日志(新版)')
|
|||
|
&& !privilegeModule.hasMenu('抢修日志(旧版)')
|
|||
|
&& !privilegeModule.hasMenu('抢修日志')
|
|||
|
&& !privilegeModule.hasMenu('操作票')
|
|||
|
&& !privilegeModule.hasMenu('工作票'))) {
|
|||
|
$('#bt-log').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('巡检问题')) {
|
|||
|
$('#inspect-bug').css('display', 'none');
|
|||
|
}
|
|||
|
if (!privilegeModule.hasMenu('视频监控')) {
|
|||
|
$('#camera').css('display','none');
|
|||
|
}
|
|||
|
$('#inspection-arrange').css('display','none');
|
|||
|
$('#work-order').css('display','none');
|
|||
|
}
|
|||
|
ctrl.bind = function () {
|
|||
|
//用户点击了实时数据按钮
|
|||
|
$api.addEvt($api.dom("#bt-rtdata"), "touchend", function () {
|
|||
|
|
|||
|
//侧边栏的宽度为250
|
|||
|
|
|||
|
var edge = api.winWidth * 0.2;
|
|||
|
(edge < 0) && (edge = 60);
|
|||
|
api.openDrawerLayout({
|
|||
|
name: 'rtdata-page',
|
|||
|
url: '../feature/rtData.html',
|
|||
|
rightPane: {
|
|||
|
edge: edge,
|
|||
|
name: 'rtDataRightPanel',
|
|||
|
url: 'widget://html/feature/rtDataRightPanel.html',
|
|||
|
}
|
|||
|
});
|
|||
|
});
|
|||
|
api.addEventListener({
|
|||
|
name: 'userTouched'
|
|||
|
}, function (ret, err) {
|
|||
|
if (ret) {
|
|||
|
$api.css($api.dom("#pr-picker-modal"), "display:none");
|
|||
|
} else {
|
|||
|
|
|||
|
}
|
|||
|
});
|
|||
|
|
|||
|
//用户点击了历史数据按钮
|
|||
|
$api.addEvt($api.dom("#bt-hisdata"), "touchend", function () {
|
|||
|
//侧边栏的宽度为250
|
|||
|
var edge = api.winWidth * 0.2;
|
|||
|
(edge < 0) && (edge = 60);
|
|||
|
api.openDrawerLayout({
|
|||
|
name: 'history-data-pag',
|
|||
|
url: '../feature/historyData.html',
|
|||
|
rightPane: {
|
|||
|
edge: edge,
|
|||
|
name: 'historyDataRightPanel',
|
|||
|
url: 'widget://html/feature/historyDataRightPanel.html',
|
|||
|
},
|
|||
|
slidBackEnabled: true,
|
|||
|
slidBackType: "edge",
|
|||
|
vScrollBarEnabled: false,
|
|||
|
hScrollBarEnabled: false
|
|||
|
});
|
|||
|
});
|
|||
|
|
|||
|
//用户点击了报警查询按钮
|
|||
|
$api.addEvt($api.dom("#bt-alarm"), "touchend", function () {
|
|||
|
//侧边栏的宽度为250
|
|||
|
var edge = api.winWidth * 0.2;
|
|||
|
(edge < 0) && (edge = 60);
|
|||
|
api.openDrawerLayout({
|
|||
|
name: 'alarm-query-page',
|
|||
|
url: '../feature/alarmQuery.html',
|
|||
|
rightPane: {
|
|||
|
edge: edge,
|
|||
|
name: 'alarmQueryRightPanel',
|
|||
|
url: 'widget://html/feature/alarmQueryRightPanel.html',
|
|||
|
},
|
|||
|
});
|
|||
|
});
|
|||
|
|
|||
|
//用户点击了能耗分析按钮
|
|||
|
$api.addEvt($api.dom("#bt-energy"), "touchend", function () {
|
|||
|
//默认横屏
|
|||
|
api.showProgress({
|
|||
|
title: '加载中',
|
|||
|
text: '请稍等...',
|
|||
|
modal: false
|
|||
|
});
|
|||
|
|
|||
|
if (api.systemType == "ios") {
|
|||
|
api.setScreenOrientation({
|
|||
|
orientation: 'landscape_left'
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
var edge = 400;
|
|||
|
|
|||
|
api.openDrawerLayout({
|
|||
|
name: 'rtdata-page',
|
|||
|
url: 'widget://html/feature/energy.html',
|
|||
|
rightPane: {
|
|||
|
edge: edge,
|
|||
|
name: 'rtDataRightPanel',
|
|||
|
url: 'widget://html/feature/energyRightPanel.html',
|
|||
|
},
|
|||
|
slidBackEnabled: false,
|
|||
|
animation: {
|
|||
|
type: "none",
|
|||
|
}
|
|||
|
});
|
|||
|
});
|
|||
|
|
|||
|
//用户点击了日志查询按钮
|
|||
|
$api.addEvt($api.dom("#bt-log"), "touchend", function () {
|
|||
|
api.openWin({
|
|||
|
name: 'statistic-page',
|
|||
|
url: '../feature/logQuery/logQuery.html'
|
|||
|
});
|
|||
|
});
|
|||
|
|
|||
|
//用户点击了设备缺陷按钮
|
|||
|
// 跳转到logQuery-main页面在logQuery-main中加载设备缺陷列表页(便于实现设备缺陷列表页刷新)
|
|||
|
$api.addEvt($api.dom("#inspect-bug"), "touchend", function () {
|
|||
|
// api.openWin({
|
|||
|
// name: 'inspect-log',
|
|||
|
// url: '../feature/logQuery/logQuery-main.html',
|
|||
|
// pageParam: {
|
|||
|
// page: 'inspectBug'
|
|||
|
// }
|
|||
|
// });
|
|||
|
//侧边栏的宽度为250
|
|||
|
var edge = api.winWidth * 0.2;
|
|||
|
(edge < 0) && (edge = 60);
|
|||
|
api.openDrawerLayout({
|
|||
|
name: 'inspect-log',
|
|||
|
url: '../feature/logQuery/logQuery-main.html',
|
|||
|
pageParam: {
|
|||
|
page: 'inspectBug'
|
|||
|
},
|
|||
|
rightPane: {
|
|||
|
edge: edge,
|
|||
|
name: 'inspectBugListRightPanel',
|
|||
|
url: 'widget://html/feature/logQuery/inspectBugListRightPanel.html',
|
|||
|
},
|
|||
|
});
|
|||
|
});
|
|||
|
// 用户点击了视频监控按钮
|
|||
|
$api.addEvt($api.dom("#camera"), "touchend", function () {
|
|||
|
api.openWin({
|
|||
|
name: 'camera-page',
|
|||
|
url: '../feature/camera.html'
|
|||
|
});
|
|||
|
});
|
|||
|
// 用户点击了 “一次图” 按钮
|
|||
|
$api.addEvt($api.dom("#circuit"), "touchend", function () {
|
|||
|
api.openWin({
|
|||
|
name: 'circuit-page',
|
|||
|
url: '../feature/circuit.html'
|
|||
|
});
|
|||
|
});
|
|||
|
// 用户点击了 “巡检安排” 按钮
|
|||
|
$api.addEvt($api.dom("#inspection-arrange"), "touchend", function () {
|
|||
|
api.openWin({
|
|||
|
name: 'inspection-arrange-page',
|
|||
|
url: '../feature/inspectionArrange.html'
|
|||
|
});
|
|||
|
});
|
|||
|
// 用户点击了 “系统工单” 按钮
|
|||
|
$api.addEvt($api.dom("#work-order"), "touchend", function () {
|
|||
|
api.openWin({
|
|||
|
name: 'system-order-page',
|
|||
|
url: '../feature/systemOrder.html'
|
|||
|
});
|
|||
|
});
|
|||
|
//收到首页传来的requestChangePr事件 呼出选择配电室面板
|
|||
|
api.addEventListener({
|
|||
|
name: 'requestChangePr'
|
|||
|
}, function (ret, err) {
|
|||
|
if ($api.getStorage('cus')) {
|
|||
|
return;
|
|||
|
}
|
|||
|
ctrl.initPrPicker();
|
|||
|
if ($('#pr-picker-modal').css('display') == 'block') {
|
|||
|
$api.css($api.dom("#pr-picker-modal"), "display:none");
|
|||
|
} else {
|
|||
|
$api.css($api.dom("#pr-picker-modal"), "display:block");
|
|||
|
}
|
|||
|
|
|||
|
});
|
|||
|
api.addEventListener({
|
|||
|
name: 'requestCloseModal'
|
|||
|
}, function (ret, err) {
|
|||
|
$api.css($api.dom("#pr-picker-modal"), "display:none");
|
|||
|
});
|
|||
|
//如果body收到touchend事件 隐藏掉modal
|
|||
|
$api.addEvt($api.dom("body"), "touchend", function () {
|
|||
|
$api.css($api.dom("#pr-picker-modal"), "display:none");
|
|||
|
}, false);
|
|||
|
|
|||
|
//点击配电室选择器中的配电室
|
|||
|
$("#pr-list").on("touchend", ".pr", function () {
|
|||
|
var index = $(this).data("index");
|
|||
|
// var list = $api.getStorage("prList");
|
|||
|
var list = ctrl.prList;
|
|||
|
|
|||
|
var selected = list[index];
|
|||
|
var powerRoom = {
|
|||
|
prId: selected.prId,
|
|||
|
prName: selected.prName,
|
|||
|
configId: selected.configId,
|
|||
|
}
|
|||
|
|
|||
|
$api.setStorage("powerRoom", powerRoom);
|
|||
|
api.sendEvent({
|
|||
|
name: 'prChanged',
|
|||
|
extra: powerRoom
|
|||
|
});
|
|||
|
})
|
|||
|
|
|||
|
//组织页面弹通
|
|||
|
// $("body").on("touchmove", function (e) {
|
|||
|
// e.stopPropagation();
|
|||
|
// return false;
|
|||
|
// })
|
|||
|
|
|||
|
// add s
|
|||
|
// $("#pr-list").on("touchmove", function (e) {
|
|||
|
// e.stopPropagation();
|
|||
|
// return false;
|
|||
|
// })
|
|||
|
// add e
|
|||
|
}
|
|||
|
|
|||
|
//初始化配电室选择器
|
|||
|
ctrl.initPrPicker = function () {
|
|||
|
|
|||
|
var list = ctrl.prList
|
|||
|
list = list ? list : [];
|
|||
|
var tpl = '<div class="pr bg-touch" data-index="{index}"><div class="icon-con"><img src="../../image/black-pr-icon.png"></div><div>{prName}</div></div>';
|
|||
|
var length = list.length;
|
|||
|
var html = '';
|
|||
|
|
|||
|
for (var i = 0; i < length; i++) {
|
|||
|
|
|||
|
html += tpl.replace('{index}', i).replace('{prName}', list[i].prName);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
$("#pr-list").html(html);
|
|||
|
}
|
|||
|
|
|||
|
// add 员工获取配电室列表
|
|||
|
ctrl.getPrList = function () {
|
|||
|
var data = {
|
|||
|
employeeId: ctrl.employeeId,
|
|||
|
roleId: ctrl.roleId
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* 注意在客户体验模式下要拦截此接口的数据,另外在最外层的index.html中也有此接口的调用,如果需要修改,则两处都要该,别忘了
|
|||
|
*/
|
|||
|
$api.get("/ems/rest/power/room/list", data, function(ret, err) {
|
|||
|
|
|||
|
if (ret && ret.code == 200) {
|
|||
|
|
|||
|
ctrl.prList = ret.body;
|
|||
|
|
|||
|
ctrl.initPrPicker();
|
|||
|
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
ctrl.init();
|
|||
|
}
|