/**
* patrolplan.js
* 巡检任务管理界面
* emial: yaoqiang@chinausky.com
* create: 2018-12-08
*/
Ext.Loader.setConfig({
enabled: true
});
Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux');
Ext.require([
'Ext.grid.*',
'Ext.data.*',
'Ext.ux.RowExpander',
'Ext.selection.CheckboxModel'
]);
var sm = Ext.create('Ext.selection.CheckboxModel');
//var sm1 = Ext.create('Ext.selection.CheckboxModel');
var menuidx = '';
var mouseon;
var mouseoff;
var menu_click;
var AllSelectedRecords = [];
var sm1;
var initflag = false;
Ext.define('MaintenancePlan', {
extend: 'Ext.data.Model',
fields: [
{ name: 'id', type: 'string' },
{ name: 'xh', type: 'int' },
{ name: 'plan_name', type: 'string' },
{ name: 'cycle', type: 'string' },
{ name: 'cycle_name', type: 'string' },
{ name: 'zxsj', type: 'string' },
{ name: 'team_id', type: 'string' },
{ name: 'team_name', type: 'string' },
{ name: 'name', type: 'string' },
{ name: 'company_code', type: 'string' },
{ name: 'start_date', type: 'string' },
{ name: 'end_date', type: 'string' },
{ name: 'start_inspect_time', type: 'string' },
{ name: 'end_inspect_time', type: 'string' },
]
});
Ext.define('MaintenancePlan1', {
extend: 'Ext.data.Model',
fields: [
{ name: 'id', type: 'string' },
{ name: 'spot_name', type: 'string' },
{ name: 'spot_address', type: 'string' },
{ name: 'pd', type: 'string' },
]
});
function public_emptyInput() {
Ext.getCmp('fa_patrolplan_name').setValue("");
Ext.getCmp('fa_patrol_team_id').setValue("");
// Ext.getCmp('fa_cycle').setValue("");
Ext.getCmp('fa_patrol_start_date').setValue("");
Ext.getCmp('fa_patrol_end_date').setValue("");
Ext.getCmp('fa_patrol_start_time').setValue("");
Ext.getCmp('fa_patrol_end_time').setValue("");
Ext.getCmp('fa_patrol_company_code').setValue("");
// Ext.getCmp('fa_spot_id').setValue("");
}
function exportbtn_click() {
baseUrl = document.getElementById('basePath').value;
V_LOGINNAME = $("#V_LOGINNAME").val();
plan_name = document.getElementById('plan_name').value;
person_liable_id = document.getElementById('person_liable_id').value;
var fields = '';
var array = ['xh', 'plan_name', 'cycle_name', 'zxsj', 'team_name', 'name'];
var name = ['序号', '任务名称', '周期', '执行日期', '执行团队', '责任人'];
for (var i = 0; i < 6; i++) {
if (i > 0)
fields += ',';
fields += '{id:"' + array[i] + '",title:"' + name[i] + '",shown:"' + true + '"}';
}
var query = new Object();
// query.V_LOGINNAME = V_LOGINNAME;
query.plan_name = plan_name;
query.person_liable_id = person_liable_id;
query.EXPORT_FILE = '巡检计划列表';
query.fields = '[' + fields + ']';
$.ajax({
type: 'POST',
url: baseUrl + "iot/excel/view/XjPlanMasterExcel1",
data: {
queryJson: Ext.JSON.encode(query)
},
success: function (result) {
var json = eval('(' + result + ')');
if (json.action == 'dormExport') {
ConfirmStore = json.RESULT;
var elemIF = document.createElement("iframe");
elemIF.src = baseUrl + json.filename;
elemIF.style.display = "none";
document.body.appendChild(elemIF);
}
}
});
}
var body_resize = function () {
maxHeight = document.documentElement.clientHeight;
maxWidth = document.documentElement.clientWidth;
Ext.getCmp('PatrolPlanPiebar').setHeight(maxHeight);
Ext.getCmp('PatrolPlanPiebar').setWidth(maxWidth);
}
Ext.onReady(function () {
var baseUrl = document.getElementById('basePath').value;
var theme = document.getElementById('theme').value;
company_code = document.getElementById('company_code').value;
$("#V_LOGINNAME").val(sessionStorage.getItem('V_LOGINNAME'));
$("#V_PASSWORD").val(sessionStorage.getItem('V_PASSWORD'));
var V_LOGINNAME = $("#V_LOGINNAME").val();
var V_PASSWORD = $("#V_PASSWORD").val();
var chkIcon = ''
var unchkIcon = '
'
var countPerPage = 15;
var maxHeight = 10000;
var chkBoolean = function (flag) {
if (flag)
return chkIcon;
return unchkIcon;
}
var states1 = Ext.create('Ext.data.Store', {
fields: ['status', 'name'],
data: [
// {"status":-1, "name":"全选"},
{ "status": "待开通", "name": "待开通" },
{ "status": "已开通", "name": "已开通" },
{ "status": "已锁定", "name": "已锁定" },
{ "status": "注销", "name": "注销" },
]
});
var deselect_fun = function (record) {
var index = AllSelectedRecords.indexOf(record.get("id"));
if (index > -1) {
AllSelectedRecords.splice(index, 1);
return AllSelectedRecords;
}
}
sm1 = Ext.create('Ext.selection.CheckboxModel', {
mode: "MULTI",
listeners: {
deselect: function (me, record, index, opts) {
if (initflag) {
// alert("初始化");
} else {
deselect_fun(record);
}
},
select: function (me, record, index, opts) {
var index = AllSelectedRecords.indexOf(record.get("id"));
if (index > -1) {
return AllSelectedRecords;
} else {
AllSelectedRecords.push(record.get("id"));
return AllSelectedRecords;
}
}
}
});
var clear_append_form = function () {
public_emptyInput();
AllSelectedRecords = [];
Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
}
var queryJson = new Object();
queryJson.V_LOGINNAME = V_LOGINNAME;
// queryJson.V_PASSWORD = V_PASSWORD;
queryJson.COMMSTATUS = 'NO';
if ((company_code != null) && (company_code != 'null') && (company_code.length > 0))
queryJson.company_code = company_code;
var myStore = Ext.create('Ext.data.Store', {
model: 'MaintenancePlan',
pageSize: countPerPage,
proxy: {
type: 'ajax',
url: baseUrl + 'iot/planmaster/getList1',
reader: {
type: 'json',
root: 'RESULT',
totalProperty: 'totalCount'
},
extraParams: {
queryJson: Ext.JSON.encode(queryJson)
}
},
remoteSort: true
});
var myStore1 = Ext.create('Ext.data.Store', {
model: 'MaintenancePlan1',
pageSize: 5,
listeners: {
beforeload: function (me, store, operation, eOpts) {
// Ext.apply(myStore1.proxy.extraParams, me.getQueryParameters());
// sm1.removeListener('deselect',deselect_fun);
initflag = true;
},
load: function (me, records, success, opts) {
if (!success || !records || records.length == 0)
return;
//根据全局的选择,初始化选中的列
var selModel = Ext.getCmp('PatrolPlanListPanel1').getSelectionModel();
Ext.Array.forEach(AllSelectedRecords, function (item) {
for (var i = 0; i < records.length; i++) {
var record = records[i];
if (record.get("id") == item && record.get('pd') != 1) {
// alert(record.get("id")+" - "+this.get("id")+"("+this.data.id+")");
selModel.select(record, true, true); //选中record,并且保持现有的选择,不触发选中事件
}
}
});
// sm1.addListener('deselect',deselect_fun);
initflag = false;
}
},
proxy: {
type: 'ajax',
url: baseUrl + 'iot/inspectionpoints/getList1',
reader: {
type: 'json',
root: 'RESULT',
totalProperty: 'totalCount'
},
extraParams: {
queryJson: Ext.JSON.encode(queryJson)
}
},
remoteSort: true
});
myStore1.on('load', function (myStore1, record) {
for (var i = 0; i < record.length; i++) {
var records = record[i];
if (records.get('pd') == 1) {
Ext.getCmp('PatrolPlanListPanel1').getSelectionModel().select(records, true);
}
};
});
Ext.define('CompanyComboStore', {
extend: 'Ext.data.Model',
fields: [
{ name: 'building_name', type: 'string' },
{ name: 'building_id', type: 'string' }
]
});
Ext.define('teamStore', {
extend: 'Ext.data.Model',
fields: [
{ name: 'team_name', type: 'string' },
{ name: 'id', type: 'string' }
]
});
var CompanyStory = Ext.create('Ext.data.Store', {
model: 'CompanyComboStore',
proxy: {
type: 'ajax',
actionMethods: {
create: 'POST',
read: 'POST', // by default GET
update: 'POST',
destroy: 'POST'
},
url: baseUrl + 'iot/company/view/getBuildingNameList',
reader: {
type: 'json',
root: 'RESULT',
totalProperty: 'totalCount'
},
extraParams: {
queryJson: Ext.JSON.encode(queryJson)
}
}
});
var teamStory = Ext.create('Ext.data.Store', {
model: 'teamStore',
proxy: {
type: 'ajax',
actionMethods: {
create: 'POST',
read: 'POST', // by default GET
update: 'POST',
destroy: 'POST'
},
url: baseUrl + 'iot/planteam/getList1',
reader: {
type: 'json',
root: 'RESULT',
totalProperty: 'totalCount'
},
extraParams: {
queryJson: Ext.JSON.encode(queryJson)
}
}
});
var data = Ext.Date.format(new Date(), 'm/d/Y');
var AppendForm = Ext.create('Ext.form.Panel', {
id: 'PatrolPlanAppendForm',
labelWidth: 55,
url: baseUrl + 'iot/planmaster/append1',
bodyPadding: 15,
frame: true,
labelAlign: 'left',
region: 'north',
enableDrop: true,
ddGroup: 'treeID',
height: 200,
items: [{
autoHeight: true,
layout: 'column',
border: false,
items: [{
columnWidth: .50,
xtype: 'fieldset',
layout: 'form',
// defaults: {anchor: '95%'},
style: 'margin-left: 5px;padding-left: 5px;border:0px solid #B5B8C8!important;',
items: [
{
xtype: 'textfield',
fieldLabel: '任务名称',
id: 'fa_patrolplan_name',
name: 'plan_name',
editable: false,
width: 283,
listeners: {
change: function (o, e) {
if (e.length >= 20) {
return Ext.getCmp('fa_patrolplan_name').setValue(e.substring(0, 20));
}
}
}
// store:InspectorsStory
}, {
xtype: 'combo',
fieldLabel: '建筑/项目',
id: 'fa_patrol_company_code',
name: 'company_code',
displayField: 'building_name',
valueField: 'building_id',
editable: false,
width: 283,
store: CompanyStory,
listeners: {
select: function (combo, record, index) {
try {
var label = this.value;
var query = new Object();
query.company_code = label;
query.V_LOGINNAME = V_LOGINNAME;
// query.V_PASSWORD = V_PASSWORD;
var jsonstr = Ext.JSON.encode(query);
myStore1.getProxy().extraParams = {
queryJson: jsonstr
};
Ext.getCmp('PatrolPlanListPageToolbar1').moveFirst();
}
catch (ex) {
Ext.MessageBox.alert("错误", "数据加载失败。");
}
}
}
}, {
xtype: 'timefield',
fieldLabel: '巡检开始时间',
id: 'fa_patrol_start_time',
name: "start_time",
minValue: '00:00',
maxValue: '24:00',
editable: false,//只读约束
minText: '时间要大于{0}',
maxText: '时间要小于{0}',
format: 'G:i',//时间格式G(24小时进制)、i、s(时分秒,g是12小时进制)
increment: 30,//跨度,默认是15分钟
invalidText: '时间格式错误',
anchor: '40%'
}, {
xtype: 'timefield',
fieldLabel: '巡检结束时间',
id: 'fa_patrol_end_time',
name: "end_time",
minValue: '00:00',
maxValue: '24:00',
editable: false,//只读约束
minText: '时间要大于{0}',
maxText: '时间要小于{0}',
format: 'G:i',//时间格式G(24小时进制)、i、s(时分秒,g是12小时进制)
increment: 30,//跨度,默认是15分钟
invalidText: '时间格式错误',
anchor: '80%'
}, {
xtype: 'combo',
fieldLabel: '执行团队',
id: 'fa_patrol_team_id',
name: 'team_id',
displayField: 'team_name',
valueField: 'id',
editable: false,
width: 100,
store: teamStory
}
]
}, {
columnWidth: .50,
xtype: 'fieldset',
layout: 'form',
// defaults: {anchor: '95%'},
style: 'margin-left: 5px;padding-left: 5px;border:0px solid #B5B8C8!important;',
items: [
{
xtype: 'checkboxgroup',
fieldLabel: '周期',
id: "fa_patrol_cycle",
listeners: {
change: function (gp, nv, ov, eOpts) {
var i = 0;
if (nv.all && !ov.all) {
// return gp.eachBox(function(box,idx){
// box.setRawValue(true);
// });
Ext.getCmp('fa_all_checkbox').setValue(true);
Ext.getCmp('fa_monday_checkbox').setValue(true);
Ext.getCmp('fa_tuesday_checkbox').setValue(true);
Ext.getCmp('fa_wednesday_checkbox').setValue(true);
Ext.getCmp('fa_thursday_checkbox').setValue(true);
Ext.getCmp('fa_friday_checkbox').setValue(true);
Ext.getCmp('fa_saturday_checkbox').setValue(true);
Ext.getCmp('fa_sunday_checkbox').setValue(true);
return true;
}
if (ov.all && !nv.all && nv.monday && nv.tuesday && nv.wednesday && nv.thursday && nv.friday && nv.saturday && nv.sunday) {
// return gp.eachBox(function(box,idx){
// box.setRawValue(false);
// });
Ext.getCmp('fa_all_checkbox').setValue(false);
Ext.getCmp('fa_monday_checkbox').setValue(false);
Ext.getCmp('fa_tuesday_checkbox').setValue(false);
Ext.getCmp('fa_wednesday_checkbox').setValue(false);
Ext.getCmp('fa_thursday_checkbox').setValue(false);
Ext.getCmp('fa_friday_checkbox').setValue(false);
Ext.getCmp('fa_saturday_checkbox').setValue(false);
Ext.getCmp('fa_sunday_checkbox').setValue(false);
return true;
}
if (nv.monday && nv.tuesday && nv.wednesday && nv.thursday && nv.friday && nv.saturday && nv.sunday) {
Ext.getCmp('fa_all_checkbox').setValue(true);
return true;
} else {
Ext.getCmp('fa_all_checkbox').setValue(false);
return true;
}
}
},
columns: 3,
items: [
{ boxLabel: '全选', name: 'all', inputValue: "0", id: "fa_all_checkbox" },
{ boxLabel: '周一', name: 'monday', inputValue: "1", id: "fa_monday_checkbox" },
{ boxLabel: '周二', name: 'tuesday', inputValue: "2", id: "fa_tuesday_checkbox" },
{ boxLabel: '周三', name: 'wednesday', inputValue: "3", id: "fa_wednesday_checkbox" },
{ boxLabel: '周四', name: 'thursday', inputValue: "4", id: "fa_thursday_checkbox" },
{ boxLabel: '周五', name: 'friday', inputValue: "5", id: "fa_friday_checkbox" },
{ boxLabel: '周六', name: 'saturday', inputValue: "6", id: "fa_saturday_checkbox" },
{ boxLabel: '周日', name: 'sunday', inputValue: "7", id: "fa_sunday_checkbox" }
]
}, {
xtype: 'datefield',
fieldLabel: "执行开始日期",
minValue: data,
minText: "当前日期选择应大于当天日期",
format: "Y-m-d",
id: 'fa_patrol_start_date',
name: "start_date",
editable: false,//只读约束
anchor: '80%'
}, {
xtype: 'datefield',
fieldLabel: "执行结束日期",
minValue: data,
// '07/07/2017',
minText: "当前日期选择应大于当天日期",
format: "Y-m-d",
id: 'fa_patrol_end_date',
name: "end_date",
editable: false,//只读约束
anchor: '80%'
}, {
id: 'fa_patrol_queryJson',
name: 'queryJson',
hidden: true
}
]
}
]
}]
});
function updatetijiao() {
var query = new Object();
var spot_id = null;
var InspectiontimeValue = Ext.getCmp('fm_patrol_cycle').getChecked();
var fa_cycle = '';
Ext.Array.each(InspectiontimeValue, function (item) {
fa_cycle += item.inputValue + ',';
});
var V_LOGINNAME = $("#V_LOGINNAME").val();
var V_PASSWORD = $("#V_PASSWORD").val();
var start_time = Ext.getCmp('fm_patrol_start_time').getValue();
if (start_time == '' || start_time == null) {
Ext.Msg.alert('提示', '请选择巡检开始时间!', function (btn, txt) {
})
return;
} else {
var start_time1 = ((start_time.getHours() < 10) ? ('0' + start_time.getHours()) : start_time.getHours()) + ':' + ((start_time.getMinutes() < 10) ? ('0' + start_time.getMinutes()) : start_time.getMinutes());
}
var end_time = Ext.getCmp('fm_patrol_end_time').getValue();
if (end_time == '' || end_time == null) {
Ext.Msg.alert('提示', '请选择巡检结束时间!', function (btn, txt) {
})
return;
} else {
var end_time1 = ((end_time.getHours() < 10) ? ('0' + end_time.getHours()) : end_time.getHours()) + ':' + ((end_time.getMinutes() < 10) ? ('0' + end_time.getMinutes()) : end_time.getMinutes());
}
query.team_id = Ext.getCmp('fm_patrol_team_id').getValue();
if (query.team_id == '' || query.team_id == null) {
Ext.Msg.alert('提示', '请选择执行团队!', function (btn, txt) {
})
return;
}
// Ext.MessageBox.alert('提示', '您的兴趣是' + V_LOGINNAME);
// var selected = sm1.getSelection( );
// query.spot_id = selected[0].raw.id;
// var selected = sm1.getSelection( );
// alert(sm1.getCount());
if (AllSelectedRecords.length == 1) {
query.spot_id = AllSelectedRecords[0];
} else {
if (AllSelectedRecords.length > 1) {
for (var i = 0; i < AllSelectedRecords.length; i++) {
if (i == 0)
spot_id = AllSelectedRecords[i];
else
spot_id += "," + AllSelectedRecords[i];
}
query.spot_id = spot_id;
} else {
Ext.Msg.alert('请先选择', '至少选择一条巡检点位,再点击提交');
return;
}
}
query.company_code = Ext.getCmp('fm_patrol_company_code').getValue();//建筑/项目
query.cycle = fa_cycle;
query.start_inspect_time = start_time1;
query.end_inspect_time = end_time1;
query.start_date = Ext.util.Format.date(Ext.getCmp('fm_patrol_start_date').getValue(), 'Y-m-d');
if (query.start_date == '') {
Ext.Msg.alert('提示', '请选择执行开始日期!', function (btn, txt) {
})
return;
}
query.end_date = Ext.util.Format.date(Ext.getCmp('fm_patrol_end_date').getValue(), 'Y-m-d');
if (query.end_date == '') {
Ext.Msg.alert('提示', '请选择执行结束日期!', function (btn, txt) {
})
return;
}
// query.ID_LIST = list;
// query.V_LOGINNAME = V_LOGINNAME;
var jsonstr = Ext.JSON.encode(query);
Ext.Ajax.request({
timeout: 1000,
url: baseUrl + 'iot/planmaster/append1',
params: 'queryJson=' + jsonstr,
success: function (resp, opts) {
Ext.Msg.alert('操作成功', '计划已添加', function (btn, txt) {
// myStore.reload();
clear_append_form();
});
}
});
}
function addtijiao() {
var query = new Object();
var spot_id = null;
var InspectiontimeValue = Ext.getCmp('fa_patrol_cycle').getChecked();
var fa_cycle = '';
Ext.Array.each(InspectiontimeValue, function (item) {
fa_cycle += item.inputValue + ',';
});
var V_LOGINNAME = $("#V_LOGINNAME").val();
var V_PASSWORD = $("#V_PASSWORD").val();
var start_time = Ext.getCmp('fa_patrolplan_name').getValue();
if (start_time == '' || start_time == null) {
Ext.Msg.alert('提示', '任务名称不能为空!', function (btn, txt) {
})
return;
}
var start_time = Ext.getCmp('fa_patrol_start_time').getValue();
if (start_time == '' || start_time == null) {
Ext.Msg.alert('提示', '请选择巡检开始时间!', function (btn, txt) {
})
return;
} else {
var start_time1 = ((start_time.getHours() < 10) ? ('0' + start_time.getHours()) : start_time.getHours()) + ':' + ((start_time.getMinutes() < 10) ? ('0' + start_time.getMinutes()) : start_time.getMinutes());
}
var start_time = Ext.getCmp('fa_patrol_start_time').getValue();
if (start_time == '' || start_time == null) {
Ext.Msg.alert('提示', '请选择巡检开始时间!', function (btn, txt) {
})
return;
} else {
var start_time1 = ((start_time.getHours() < 10) ? ('0' + start_time.getHours()) : start_time.getHours()) + ':' + ((start_time.getMinutes() < 10) ? ('0' + start_time.getMinutes()) : start_time.getMinutes());
}
var end_time = Ext.getCmp('fa_patrol_end_time').getValue();
if (end_time == '' || end_time == null) {
Ext.Msg.alert('提示', '请选择巡检结束时间!', function (btn, txt) {
})
return;
} else {
var end_time1 = ((end_time.getHours() < 10) ? ('0' + end_time.getHours()) : end_time.getHours()) + ':' + ((end_time.getMinutes() < 10) ? ('0' + end_time.getMinutes()) : end_time.getMinutes());
}
query.team_id = Ext.getCmp('fa_patrol_team_id').getValue();
if (query.team_id == '' || query.team_id == null) {
Ext.Msg.alert('提示', '请选择执行团队!', function (btn, txt) {
})
return;
}
// Ext.MessageBox.alert('提示', '您的兴趣是' + V_LOGINNAME);
// var selected = sm1.getSelection( );
// query.spot_id = selected[0].raw.id;
// var selected = sm1.getSelection( );
// alert(sm1.getCount());
if (AllSelectedRecords.length == 1) {
query.spot_id = AllSelectedRecords[0];
} else {
if (AllSelectedRecords.length > 1) {
for (var i = 0; i < AllSelectedRecords.length; i++) {
if (i == 0)
spot_id = AllSelectedRecords[i];
else
spot_id += "," + AllSelectedRecords[i];
}
query.spot_id = spot_id;
} else {
Ext.Msg.alert('请先选择', '至少选择一条巡检点位,再点击提交');
return;
}
}
query.company_code = Ext.getCmp('fa_patrol_company_code').getValue();//建筑/项目
query.cycle = fa_cycle;
query.start_inspect_time = start_time1;
query.end_inspect_time = end_time1;
query.start_date = Ext.util.Format.date(Ext.getCmp('fa_patrol_start_date').getValue(), 'Y-m-d');
if (query.start_date == '') {
Ext.Msg.alert('提示', '请选择执行开始日期!', function (btn, txt) {
})
return;
}
query.end_date = Ext.util.Format.date(Ext.getCmp('fa_patrol_end_date').getValue(), 'Y-m-d');
if (query.end_date == '') {
Ext.Msg.alert('提示', '请选择执行结束日期!', function (btn, txt) {
})
return;
}
// query.ID_LIST = list;
// query.V_LOGINNAME = V_LOGINNAME;
var jsonstr = Ext.JSON.encode(query);
Ext.Ajax.request({
timeout: 1000,
url: baseUrl + 'iot/planmaster/append1',
params: 'queryJson=' + jsonstr,
success: function (resp, opts) {
Ext.Msg.alert('操作成功', '计划已添加', function (btn, txt) {
// myStore.reload();
clear_append_form();
});
}
});
}
var appendwin = function () {
AllSelectedRecords.length = 0;
var query = new Object();
query.V_LOGINNAME = V_LOGINNAME;
// query.V_PASSWORD=V_PASSWORD;
var jsonstr = Ext.JSON.encode(query);
myStore1.getProxy().extraParams = {
queryJson: jsonstr
};
Ext.getCmp('PatrolPlanListPageToolbar1').moveFirst();
Ext.create('Ext.window.Window', {
title: '新增巡检计划',
height: 600,
width: 800,
modal: true,
layout: 'border',
items: [AppendForm, PatrolPlanTab],
closeAction: 'hide',
buttons: [{
text: '提交',
iconCls: 'ok_btn',
handler: function () {
addtijiao();
}
}, {
text: '关闭',
iconCls: 'cancel_btn',
handler: function () {
this.up('window').hide();
public_emptyInput();
}
}]
}).show();
Ext.getCmp('fa_all_checkbox').setValue(true);
Ext.getCmp('fa_monday_checkbox').setValue(true);
Ext.getCmp('fa_tuesday_checkbox').setValue(true);
Ext.getCmp('fa_wednesday_checkbox').setValue(true);
Ext.getCmp('fa_thursday_checkbox').setValue(true);
Ext.getCmp('fa_friday_checkbox').setValue(true);
Ext.getCmp('fa_saturday_checkbox').setValue(true);
Ext.getCmp('fa_sunday_checkbox').setValue(true);
}
var del_sm = function () {
if (sm.getCount() == 1) {
var selected = sm.getSelection();
var query = new Object();
var list = new Array();
var o = new Object();
o.id = selected[0].raw.id;
list.push(o);
query.ID_LIST = list;
var jsonstr = Ext.JSON.encode(query);
Ext.MessageBox.confirm('删除任务信息', '是否删除' + selected[0].raw.name + ' 巡检任务?', function (btn) {
public_delete(btn, jsonstr);
}, this);
} else {
if (sm.getCount() > 1) {
var query = new Object();
var list = new Array();
for (var i = 0; i < sm.getCount(); i++) {
var selected = sm.getSelection();
var o = new Object();
o.id = selected[i].raw.id;
list.push(o);
}
query.ID_LIST = list;
var jsonstr = Ext.JSON.encode(query);
Ext.MessageBox.confirm('删除任务信息', '是否删除选中的' + sm.getCount() + ' 个巡检任务?', function (btn) {
public_delete(btn, jsonstr);
}, this);
} else {
Ext.Msg.alert('请先选择', '至少选择一条记录,再点击删除');
}
}
}
function public_delete(btn, jsonstr) {
if (btn == 'yes') {
$.ajax({
type: 'POST',
url: baseUrl + "iot/planmaster/del",
data: {
queryJson: jsonstr
},
success: function (result) {
var json = eval('(' + result + ')');
if (json.action == 'deletePlanMaster') {
if (json.success == true) {
Ext.Msg.alert('操作成功', json.MSG, function (btn, txt) {
Ext.getCmp('PatrolPlanListPanel').getStore().reload();
});
} else {
Ext.Msg.alert('操作失败', json.MSG, function (btn, txt) {
Ext.getCmp('PatrolPlanListPanel').getStore().reload();
});
}
}
}
});
}
}
var clear_modify_form = function () {
Ext.getCmp('fm_patrol_id').setValue("");
Ext.getCmp('fm_patrol_plan_name').setValue("");
Ext.getCmp('fm_patrol_team_id').setValue("");
// Ext.getCmp('fm_cycle').setValue("");
Ext.getCmp('fm_patrol_start_date').setValue("");
Ext.getCmp('fm_patrol_end_date').setValue("");
Ext.getCmp('fm_patrol_start_time').setValue("");
Ext.getCmp('fm_patrol_end_time').setValue("");
Ext.getCmp('fm_patrol_company_code').setValue("");
Ext.getCmp('fm_patrol_cycle').setValue(false);
AllSelectedRecords = [];
// Ext.getCmp('fm_spot_id').setValue("");
Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
}
$('#patrolPlan_title2_input').change(function () {
var text = Ext.getCmp('fm_patrol_start_date').getValue();
if (text.length >= 20) {
return Ext.getCmp('fa_patrolplan_name').setValue(text.substring(0, 20));
}
})
var show_page = function () {
var maintenancePlan_title2_input = document.getElementById('patrolPlan_title2_input').value;
var maintenancePlan_title3_input1 = document.getElementById('patrolPlan_title3_input1').value;
var query = new Object();
if (maintenancePlan_title2_input.length > 0) {
query.plan_name = maintenancePlan_title2_input;
$("#plan_name").val(maintenancePlan_title2_input);
}
if (maintenancePlan_title3_input1.length > 0) {
query.person_liable_id = maintenancePlan_title3_input1;
$("#person_liable_id").val(maintenancePlan_title3_input1);
}
// query.V_LOGINNAME = V_LOGINNAME;
// query.V_PASSWORD = V_PASSWORD;
var jsonstr = Ext.JSON.encode(query);
myStore.getProxy().extraParams = {
queryJson: jsonstr
};
Ext.getCmp('PatrolPlanListPageToolbar').moveFirst();
}
var reset1 = function () {
document.getElementById('patrolPlan_title2_input').value = '';
document.getElementById('patrolPlan_title3_input1').value = '0';
$("#plan_name").val('');
$("#person_liable_id").val('');
show_page();
}
mouseon = function (obj) {
var id = obj.id;
$("#" + id).removeClass(id);
$("#" + id).addClass(id + '_on');
}
mouseoff = function (obj) {
var mid = "patrolPlan_";
for (var i = 1; i < 7; i++) {
var id = "patrolPlan_title" + i + "_div";
$("#" + id).removeClass(id + '_on');
$("#" + id).addClass(id);
}
if (menuidx == 'm1') {
mid += 'title1_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
else if (menuidx == 'm2') {
mid += 'title2_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
else if (menuidx == 'm3') {
mid += 'title3_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
else if (menuidx == 'm4') {
mid += 'title4_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
else if (menuidx == 'm5') {
mid += 'title5_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
else if (menuidx == 'm6') {
mid += 'title6_div';
$("#" + mid).removeClass(mid);
$("#" + mid).addClass(mid + '_on');
}
}
menu_click = function (obj) {
var id = obj.id;
if (id == 'patrolPlan_title1_div') {
menuidx = 'm1';
show_page();
}
else if (id == 'patrolPlan_title2_div') {
menuidx = 'm2';
reset1();
}
else if (id == 'patrolPlan_title3_div') {
menuidx = 'm3';
exportbtn_click();
}
else if (id == 'patrolPlan_title4_div') {
menuidx = 'm4';
del_sm();
}
else if (id == 'patrolPlan_title5_div') {
menuidx = 'm5';
appendwin();
}
else if (id == 'patrolPlan_title6_div') {
menuidx = 'm6';
chk_sm();
}
}
var piedarHtml = function () {
var maintenancePlanHtml = document.getElementById('patrolPlanHtml');
var divhiddle = document.createElement('div');
divhiddle.id = 'div26_id_patrolPlanPanel3';
divhiddle.setAttribute('class', 'SpringHandleHtml3DivHiddle');
maintenancePlanHtml.appendChild(divhiddle);
var title = document.createElement('div');
title.setAttribute('class', 'MaintenancePersonTitle');
title.innerHTML = '巡检计划';
maintenancePlanHtml.appendChild(title);
var title2 = document.createElement('div');
title2.setAttribute('class', 'title2_div');
title2.innerHTML = '任务名称';
maintenancePlanHtml.appendChild(title2);
var input = document.createElement('input');
input.setAttribute('class', 'input_class');
input.setAttribute('id', 'patrolPlan_title2_input');
input.setAttribute('type', 'text');
input.setAttribute('value', '');
maintenancePlanHtml.appendChild(input);
var title3 = document.createElement('div');
title3.setAttribute('class', 'title3_div');
title3.innerHTML = '责任人';
maintenancePlanHtml.appendChild(title3);
// var input1 = document.createElement('input');
// input1.setAttribute('class','input1_class');
// input1.setAttribute('id','maintenancePlan_title3_input1');
// input1.setAttribute('type','text');
// input1.setAttribute('value','');
// maintenancePlanHtml.appendChild(input1);
var select = document.createElement('select');
select.setAttribute('class', 'input1_class');
select.setAttribute('id', 'patrolPlan_title3_input1');
maintenancePlanHtml.appendChild(select);
var option2 = document.createElement('option');
option2.innerHTML = '所有人';
option2.setAttribute('value', '0');
select.appendChild(option2);
for (var i = 0; i < ConfirmStore.length; i++) {
var option3 = document.createElement('option');
option3.innerHTML = ConfirmStore[i].name;
option3.setAttribute('value', ConfirmStore[i].person_liable_id);
select.appendChild(option3);
}
for (let i = 1; i <= 6; i++) {
var title = document.createElement('div');
title.setAttribute('class', `patrolPlan_title${i}_div`);
title.setAttribute('id', `patrolPlan_title${i}_div`);
title.setAttribute('onmouseover', "mouseon(this)");
title.setAttribute('onmouseout', "mouseoff(this)");
title.setAttribute('onclick', "menu_click(this)");
maintenancePlanHtml.appendChild(title);
}
}
var piedarHtml_fun = function () {
var query = new Object();
query.V_LOGINNAME = $("#V_LOGINNAME").val();
$.ajax({
type: 'POST',
url: baseUrl + "iot/planteam/getzrrList1",
data: {
queryJson: Ext.JSON.encode(query)
},
success: function (result) {
var json = eval('(' + result + ')');
if (json.action == 'getPlanTeamList') {
ConfirmStore = json.RESULT;
if (document.getElementById('div26_id_patrolPlanPanel3') == undefined)
piedarHtml();
}
}
});
}
var ModifyForm = Ext.create('Ext.form.Panel', {
id: 'PatrolPlanEditForm',
labelWidth: 55,
url: baseUrl + 'iot/planmaster/update',
bodyPadding: 15,
frame: true,
labelAlign: 'left',
region: 'north',
enableDrop: true,
ddGroup: 'treeID',
height: 200,
items: [{
autoHeight: true,
layout: 'column',
border: false,
items: [{
columnWidth: .50,
xtype: 'fieldset',
layout: 'form',
// defaults: {anchor: '95%'},
style: 'margin-left: 5px;padding-left: 5px;border:0px solid #B5B8C8!important;',
items: [
{
xtype: 'textfield',
fieldLabel: '任务名称',
id: 'fm_patrol_plan_name',
name: 'plan_name',
editable: false,
width: 230,
readOnly: 'true'
}, {
xtype: 'combo',
fieldLabel: '建筑/项目',
id: 'fm_patrol_company_code',
name: 'company_code',
displayField: 'building_name',
valueField: 'building_id',
editable: false,
width: 283,
store: CompanyStory,
readOnly: 'true'
}, {
xtype: 'timefield',
fieldLabel: '巡检开始时间',
id: 'fm_patrol_start_time',
name: "start_time",
minValue: '00:00',
maxValue: '24:00',
minText: '时间要大于{0}',
maxText: '时间要小于{0}',
editable: false,
format: 'G:i',//时间格式G(24小时进制)、i、s(时分秒,g是12小时进制)
increment: 30,//跨度,默认是15分钟
invalidText: '时间格式错误',
anchor: '40%'
}, {
xtype: 'timefield',
fieldLabel: '巡检结束时间',
id: 'fm_patrol_end_time',
name: "end_time",
minValue: '00:00',
maxValue: '24:00',
minText: '时间要大于{0}',
maxText: '时间要小于{0}',
editable: false,
format: 'G:i',//时间格式G(24小时进制)、i、s(时分秒,g是12小时进制)
increment: 30,//跨度,默认是15分钟
invalidText: '时间格式错误',
anchor: '80%'
}, {
xtype: 'combo',
fieldLabel: '执行团队',
id: 'fm_patrol_team_id',
name: 'team_id',
displayField: 'team_name',
valueField: 'id',
editable: false,
width: 100,
store: teamStory
}
]
}, {
columnWidth: .50,
xtype: 'fieldset',
layout: 'form',
// defaults: {anchor: '95%'},
style: 'margin-left: 5px;padding-left: 5px;border:0px solid #B5B8C8!important;',
items: [
{
xtype: 'checkboxgroup',
fieldLabel: '周期',
id: "fm_patrol_cycle",
columns: 3,
items: [
{ boxLabel: '周一', name: 'monday', inputValue: "1", id: "fm_monday" },
{ boxLabel: '周二', name: 'tuesday', inputValue: "2", id: "fm_tuesday" },
{ boxLabel: '周三', name: 'wednesday', inputValue: "3", id: "fm_wednesday" },
{ boxLabel: '周四', name: 'thursday', inputValue: "4", id: "fm_thursday" },
{ boxLabel: '周五', name: 'friday', inputValue: "5", id: "fm_friday" },
{ boxLabel: '周六', name: 'saturday', inputValue: "6", id: "fm_saturday" },
{ boxLabel: '周日', name: 'sunday', inputValue: "7", id: "fm_sunday" }
]
}, {
xtype: 'datefield',
fieldLabel: "执行开始日期",
minValue: '07/07/2017',
minText: "当前日期选择应大于2017-07-07",
format: "Y-m-d",
columnWidth: 0.5,
id: 'fm_patrol_start_date',
name: "start_data",
editable: false,//只读约束
anchor: '80%',
readOnly: 'true'
}, {
xtype: 'datefield',
fieldLabel: "执行结束日期",
minValue: '07/07/2017',
minText: "当前日期选择应大于之前日期",
format: "Y-m-d",
columnWidth: 0.5,
id: 'fm_patrol_end_date',
name: "end_date",
editable: false,//只读约束
anchor: '80%'
}, {
xtype: 'textfield',
id: 'fm_patrol_id',
name: 'id',
hidden: true
}, {
id: 'fm_patrol_queryJson',
name: 'queryJson',
hidden: true
}
]
}
]
}]
});
var modifywin = function () {
Ext.create('Ext.window.Window', {
title: '修改',
height: 600,
width: 800,
modal: true,
layout: 'border',
items: [ModifyForm, PatrolPlanTab],
closeAction: 'hide',
buttons: [{
text: '修改',
iconCls: 'ok_btn',
handler: function () {
updatetijiao();
}
}, {
text: '关闭',
iconCls: 'cancel_btn',
handler: function () {
this.up('window').hide();
clear_modify_form();
}
}]
}).show();
}
var chk_sm = function () {
if (sm.getCount() == 1) {
AllSelectedRecords = [];
modifywin();
teamStory.reload();
CompanyStory.reload();
var selected = sm.getSelection();
var label = selected[0].raw.id
// alert("主表ID"+label);
var query = new Object();
// if(label.length>0){
query.dwid = label;
// }
// alert("主表ID1"+query.dwid);
query.V_LOGINNAME = V_LOGINNAME;
// query.V_PASSWORD = V_PASSWORD;
var jsonstr = Ext.JSON.encode(query);
myStore1.getProxy().extraParams = {
queryJson: jsonstr
};
Ext.getCmp('PatrolPlanListPageToolbar1').moveFirst();
Ext.getCmp('fm_patrol_plan_name').setValue(selected[0].raw.plan_name);
Ext.getCmp('fm_patrol_team_id').setValue(selected[0].raw.team_id);
// Ext.getCmp('fm_cycle').setValue(selected[0].raw.cycle);
var a = selected[0].raw.cycle;
var arr = a.split(",");
for (var i = 0; i < arr.length; i++) {
switch (arr[i]) {
case "1":
Ext.getCmp('fm_monday').setValue(true);
break;
case "2":
Ext.getCmp('fm_tuesday').setValue(true);
break;
case "3":
Ext.getCmp('fm_wednesday').setValue(true);
break;
case "4":
Ext.getCmp('fm_thursday').setValue(true);
break;
case "5":
Ext.getCmp('fm_friday').setValue(true);
break;
case "6":
Ext.getCmp('fm_saturday').setValue(true);
break;
case "7":
Ext.getCmp('fm_sunday').setValue(true);
break;
}
}
Ext.getCmp('fm_patrol_start_time').setValue(selected[0].raw.start_inspect_time);
Ext.getCmp('fm_patrol_end_time').setValue(selected[0].raw.end_inspect_time);
Ext.getCmp('fm_patrol_start_date').setValue(selected[0].raw.start_date);
Ext.getCmp('fm_patrol_end_date').setValue(selected[0].raw.end_date);
Ext.getCmp('fm_patrol_end_date').setMinValue(selected[0].raw.end_date);
Ext.getCmp('fm_patrol_company_code').setValue(selected[0].raw.company_code);
var b = selected[0].raw.id;
// Ext.get('fm_id').set({ value: b });
Ext.getCmp('fm_patrol_id').setValue(b);
} else {
Ext.Msg.alert('请先选择', '请先选择一条记录,再点击修改');
}
}
var maintenancedevice = function () {
var maintenance_look_device = document.getElementById('patrolplan_look_device');
var img = document.createElement('img');
img.width = 400;
img.height = 400;
img.src = baseUrl + ConfirmStore[0].picture_route;
img.setAttribute('class', 'maintenance_look_device_img');
maintenance_look_device.appendChild(img);
var div4 = document.createElement('div');
div4.style.textAlign = 'center';
div4.innerHTML = ConfirmStore[0].remarks;
maintenance_look_device.appendChild(div4);
}
var editMaintenance = function (spot_id) {
var spot_id = spot_id;
Ext.create('Ext.window.Window', {
id: 'patrolplan_data_win1',
height: 500,
width: 400,
layout: 'fit',
modal: true,
buttons: [
{
text: '关闭',
handler: function () {
Ext.getCmp('patrolplan_data_win1').destroy();
}
}
],
closeAction: 'destroy',
html: '