...
|
...
|
@@ -9,7 +9,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
var element = layui.element;
|
|
|
|
|
|
exports('enterDevice', function () {
|
|
|
var accessToken = localStorage.getItem("accessToken");
|
|
|
var accessToken = common.getMjToken();
|
|
|
var domainName = common.domainName;
|
|
|
var timeChart = echarts.init(document.getElementById('device-chart-time-record'));
|
|
|
var inspIsLoad = false;
|
...
|
...
|
@@ -19,15 +19,16 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
var createTime = "month"
|
|
|
var manufactureArr = [];
|
|
|
var machineArr = [];
|
|
|
|
|
|
//机房cmdb配置项类id
|
|
|
var objectId = '5A130B5304C348BA98E7E3BDE765611';
|
|
|
//日期范围选择
|
|
|
laydate.render({
|
|
|
elem: '#devicedateLimit'
|
|
|
,range: '~',
|
|
|
, range: '~',
|
|
|
trigger: 'click',
|
|
|
ready: function(date){
|
|
|
ready: function (date) {
|
|
|
$("#devicedateLimit").removeAttr("lay-key");
|
|
|
$(this).attr("lay-key","1");
|
|
|
$(this).attr("lay-key", "1");
|
|
|
},
|
|
|
done: function (value) {
|
|
|
dateLimit = value
|
...
|
...
|
@@ -101,6 +102,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
}
|
|
|
currSelect = data.index;
|
|
|
});
|
|
|
|
|
|
// 加载配件更换表格
|
|
|
function renderEnterDeviceListTable() {
|
|
|
var conditions = form.val('form-enterStaff-condition');
|
...
|
...
|
@@ -127,35 +129,61 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
limits: common.limits,
|
|
|
even: true,
|
|
|
cols: [[
|
|
|
{type: 'checkbox'},{
|
|
|
field: 'machineRoomName', title: '机房', align: 'center',templet: function (d) {
|
|
|
if(machineArr && machineArr.length>0){
|
|
|
$.each(machineArr, function (i, v) {
|
|
|
if(d.machineRoomId==v.id){}
|
|
|
return v.name;
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
field: 'manufacturerName', title: '工作单位', align: 'center',templet: function (d) {
|
|
|
if(d.manufacturerId == '0'){
|
|
|
return d.manufacturerOther;
|
|
|
}else {
|
|
|
if(manufactureArr && manufactureArr.length>0){
|
|
|
$.each(manufactureArr, function (i, v) {
|
|
|
if(d.manufacturerId==v.id){}
|
|
|
return v.name;
|
|
|
{type: 'checkbox'}, {
|
|
|
field: 'machineRoomName', title: '机房', align: 'center', templet: function (d) {
|
|
|
var machineRoomName = '';
|
|
|
if (machineArr && machineArr.length > 0) {
|
|
|
$.each(machineArr, function (i, v) {
|
|
|
if (d.machineRoomId == v.id) {
|
|
|
machineRoomName = v.name;
|
|
|
}
|
|
|
})
|
|
|
} else {
|
|
|
var url = domainName + '/cmdb-CI/cmdbci/findList?page=1&limit=20&objId=' + objectId + '&id=' + d.machineRoomId + '&accessToken=' + accessToken
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
$.each(res.data, function (i, v) {
|
|
|
machineRoomName = v.shortName;
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
return machineRoomName;
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
field: 'applyUser', title: '申请人', align: 'center',
|
|
|
}, {
|
|
|
field: 'phone', title: '联系方式', align: 'center',
|
|
|
}, {
|
|
|
field: 'actionType', title: '设备出入类型', align: 'center',
|
|
|
templet: `
|
|
|
}, {
|
|
|
field: 'manufacturerName', title: '工作单位', align: 'center', templet: function (d) {
|
|
|
var manufacturerName = '';
|
|
|
if (d.manufacturerId == '0') {
|
|
|
manufacturerName = d.manufacturerOther;
|
|
|
} else {
|
|
|
if (manufactureArr && manufactureArr.length > 0) {
|
|
|
$.each(manufactureArr, function (i, v) {
|
|
|
if (d.manufacturerId == v.id) {
|
|
|
manufacturerName = v.name;
|
|
|
}
|
|
|
})
|
|
|
} else {
|
|
|
var url = domainName + '/cmdb-CI/supplier/find/' + d.manufacturerId + '?accessToken=' + accessToken
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
if (res.data.cmdbSupplier) {
|
|
|
manufacturerName = res.data.cmdbSupplier.shortName;
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
return manufacturerName;
|
|
|
}
|
|
|
}, {
|
|
|
field: 'applyUser', title: '申请人', align: 'center',
|
|
|
}, {
|
|
|
field: 'phone', title: '联系方式', align: 'center',
|
|
|
}, {
|
|
|
field: 'actionType', title: '设备出入类型', align: 'center',
|
|
|
templet: `
|
|
|
<div>
|
|
|
{{#
|
|
|
var actionTypeEnum = {
|
...
|
...
|
@@ -172,28 +200,28 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
{{actionTypeStr}}
|
|
|
</div>
|
|
|
`
|
|
|
}, {
|
|
|
field: 'enterDevices', title: '设备数量', align: 'center',
|
|
|
templet: '<div><span data-id="{{d.id}}" class="layui-table-link view-device">{{d.enterDevices.length}}</span></div>'
|
|
|
}, {
|
|
|
field: 'reason', title: '进入事由', align: 'center',
|
|
|
}, {
|
|
|
field: 'lastPlace', title: '原物理位置', align: 'center',
|
|
|
}, {
|
|
|
field: 'localPlace', title: '现物理位置', align: 'center',
|
|
|
}, {
|
|
|
field: 'enterTime', title: '进入时间', align: 'center',
|
|
|
}, {
|
|
|
field: 'outTime', title: '出来时间', align: 'center',
|
|
|
}, {
|
|
|
field: 'machineRoomLeader', title: '设备负责人', align: 'center',
|
|
|
}, {
|
|
|
field: 'integration', title: '总集成', align: 'center',
|
|
|
}, {
|
|
|
field: 'operationUser', title: '运维负责人', align: 'center',
|
|
|
}, {
|
|
|
field: 'watchkeeper', title: '机房值班人', align: 'center',
|
|
|
}
|
|
|
}, {
|
|
|
field: 'enterDevices', title: '设备数量', align: 'center',
|
|
|
templet: '<div><span data-id="{{d.id}}" class="layui-table-link view-device">{{d.enterDevices.length}}</span></div>'
|
|
|
}, {
|
|
|
field: 'reason', title: '进入事由', align: 'center',
|
|
|
}, {
|
|
|
field: 'lastPlace', title: '原物理位置', align: 'center',
|
|
|
}, {
|
|
|
field: 'localPlace', title: '现物理位置', align: 'center',
|
|
|
}, {
|
|
|
field: 'enterTime', title: '进入时间', align: 'center',
|
|
|
}, {
|
|
|
field: 'outTime', title: '出来时间', align: 'center',
|
|
|
}, {
|
|
|
field: 'machineRoomLeader', title: '设备负责人', align: 'center',
|
|
|
}, {
|
|
|
field: 'integration', title: '总集成', align: 'center',
|
|
|
}, {
|
|
|
field: 'operationUser', title: '运维负责人', align: 'center',
|
|
|
}, {
|
|
|
field: 'watchkeeper', title: '机房值班人', align: 'center',
|
|
|
}
|
|
|
]],
|
|
|
done: function () {
|
|
|
//获取人员列表
|
...
|
...
|
@@ -204,6 +232,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// 加载设备出入表格
|
|
|
function renderFittingFixListTable() {
|
|
|
var conditions = form.val('form-enterStaff-condition');
|
...
|
...
|
@@ -229,29 +258,53 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
limit: common.limit,
|
|
|
limits: common.limits,
|
|
|
even: true,
|
|
|
cols: [[ {type: 'checkbox'},{
|
|
|
field: 'machineRoomName', title: '机房', align: 'center',templet: function (d) {
|
|
|
if(machineArr && machineArr.length>0){
|
|
|
cols: [[{type: 'checkbox'}, {
|
|
|
field: 'machineRoomName', title: '机房', align: 'center', templet: function (d) {
|
|
|
var machineRoomName = '';
|
|
|
if (machineArr && machineArr.length > 0) {
|
|
|
$.each(machineArr, function (i, v) {
|
|
|
if(d.machineRoomId==v.id) {
|
|
|
return v.name;
|
|
|
if (d.machineRoomId == v.id) {
|
|
|
machineRoomName = v.name;
|
|
|
}
|
|
|
})
|
|
|
} else {
|
|
|
var url = domainName + '/cmdb-CI/cmdbci/findList?page=1&limit=20&objId=' + objectId + '&id=' + d.machineRoomId + '&accessToken=' + accessToken
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
$.each(res.data, function (i, v) {
|
|
|
machineRoomName = v.shortName;
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
return machineRoomName;
|
|
|
}
|
|
|
}, {
|
|
|
field: 'manufacturerName', title: '工作单位', align: 'center',templet: function (d) {
|
|
|
if(d.manufacturerId == '0'){
|
|
|
return d.manufacturerOther;
|
|
|
}else {
|
|
|
if(manufactureArr && manufactureArr.length>0){
|
|
|
field: 'manufacturerName', title: '工作单位', align: 'center', templet: function (d) {
|
|
|
var manufacturerName = '';
|
|
|
if (d.manufacturerId == '0') {
|
|
|
manufacturerName = d.manufacturerOther;
|
|
|
} else {
|
|
|
if (manufactureArr && manufactureArr.length > 0) {
|
|
|
$.each(manufactureArr, function (i, v) {
|
|
|
if(d.manufacturerId==v.id) {
|
|
|
return v.name;
|
|
|
if (d.manufacturerId == v.id) {
|
|
|
manufacturerName = v.name;
|
|
|
}
|
|
|
})
|
|
|
} else {
|
|
|
var url = domainName + '/cmdb-CI/supplier/find/' + d.manufacturerId + '?accessToken=' + accessToken
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
if (res.data.cmdbSupplier) {
|
|
|
manufacturerName = res.data.cmdbSupplier.shortName;
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
return manufacturerName;
|
|
|
}
|
|
|
}, {
|
|
|
field: 'applyUser', title: '申请人', align: 'center',
|
...
|
...
|
@@ -276,7 +329,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
{{actionTypeStr}}
|
|
|
</div>
|
|
|
`
|
|
|
}, {
|
|
|
}, {
|
|
|
field: 'deviceModel', title: '设备型号', align: 'center',
|
|
|
}, {
|
|
|
field: 'localPlace', title: '设备物理位置', align: 'center',
|
...
|
...
|
@@ -308,6 +361,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
//新增日报
|
|
|
$('#device_create').on('click', function () {
|
|
|
openDeviceForm()
|
...
|
...
|
@@ -319,7 +373,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
common.openWin('machineroom/deviceAdd', title, {id: id}, ['保存', '取消'], function f() {
|
|
|
$("#device-form-save-id").trigger("click");
|
|
|
reloadAllChange();
|
|
|
},null,null,null,{end: reloadAllChange()})
|
|
|
}, null, null, null, {end: reloadAllChange()})
|
|
|
}
|
|
|
|
|
|
//查看更换配件列表
|
...
|
...
|
@@ -329,6 +383,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
|
|
|
common.openWin('machineroom/fittingList', title, {id: id}, ['确定', '取消'])
|
|
|
}
|
|
|
|
|
|
//查看进出设备列表
|
|
|
function openDeviceList(id) {
|
|
|
|
...
|
...
|
@@ -339,32 +394,36 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
|
|
|
// 加载查询条件下拉框
|
|
|
function loadConditionSelect() {
|
|
|
admin.req({
|
|
|
url: domainName + '/cmdb-CI/supplier/list?page=1&limit=10&supplierType=0'
|
|
|
}).done(function (response) {
|
|
|
var options = "<option value=''>=工作单位=</option>";
|
|
|
$.each(response.data, function (i, v) {
|
|
|
options += "<option value='" + v.id + "'>" + v.shortName + "</option>"
|
|
|
var obj = {};
|
|
|
obj[id] = v.id;
|
|
|
obj[name] = v.shortName;
|
|
|
manufactureArr.push(obj);
|
|
|
});
|
|
|
options += "<option value='0'>其他</option>";
|
|
|
$('#slt-staff-group').html(options);
|
|
|
form.render();
|
|
|
var url = `${domainName}/cmdb-CI/supplier/list?page=1&limit=20&supplierType=0&accessToken=${accessToken}`;
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
var options = "<option value=''>=工作单位=</option>";
|
|
|
$.each(res.data, function (i, v) {
|
|
|
options += "<option value='" + v.id + "'>" + v.shortName + "</option>"
|
|
|
var obj = {};
|
|
|
obj.id = v.id;
|
|
|
obj.name = v.shortName;
|
|
|
manufactureArr.push(obj);
|
|
|
});
|
|
|
options += "<option value='0'>其他</option>";
|
|
|
$('#slt-staff-group').html(options);
|
|
|
form.render();
|
|
|
}
|
|
|
});
|
|
|
admin.req({
|
|
|
url: domainName + '/cmdb-CI/cmdbci/findList?page=1&limit=20&objId=2BB920718F284CB38A2911BFAE5A97D'
|
|
|
}).done(function (response) {
|
|
|
var options = "<option value=''>=归属机房=</option>";
|
|
|
$.each(response.data, function (i, v) {
|
|
|
options += "<option value='" + v.id + "'>" + v.shortName + "</option>"
|
|
|
var obj = {};
|
|
|
obj[id] = v.id;
|
|
|
obj[name] = v.shortName;
|
|
|
machineArr.push(obj);
|
|
|
});
|
|
|
var url = domainName + '/cmdb-CI/cmdbci/findList?page=1&limit=20&objId=' + objectId + '&accessToken=' + accessToken
|
|
|
$.ajax({
|
|
|
url: url,
|
|
|
success: function (res) {
|
|
|
var options = "<option value=''>=归属机房=</option>";
|
|
|
$.each(res.data, function (i, v) {
|
|
|
options += "<option value='" + v.id + "'>" + v.shortName + "</option>"
|
|
|
var obj = {};
|
|
|
obj.id = v.id;
|
|
|
obj.name = v.shortName;
|
|
|
machineArr.push(obj);
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
...
|
...
|
@@ -377,29 +436,29 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
window.open(href)
|
|
|
})
|
|
|
//下载
|
|
|
$('#device_download').on('click', function (){
|
|
|
$('#device_download').on('click', function () {
|
|
|
var data = [];
|
|
|
var attachmentId ="";
|
|
|
var attachmentId = "";
|
|
|
var docType = "";
|
|
|
if (currSelect == 0) {
|
|
|
data = table.checkStatus('enterdevice_table_id').data;
|
|
|
attachmentId = '2136d6a1709811edb49f005056aae0ca';
|
|
|
docType = '1';
|
|
|
}else if (currSelect == 1) {
|
|
|
} else if (currSelect == 1) {
|
|
|
data = table.checkStatus('fitting-table').data;
|
|
|
attachmentId = '713fc12f709811edb49f005056aae0ca';
|
|
|
docType = '2';
|
|
|
}
|
|
|
var ids = '';
|
|
|
if(data.length<=0){
|
|
|
layer.msg("请至少选择一条下载", { offset: '15px' , icon: 7 , time: 1500 });
|
|
|
}else if(data.length>=1){
|
|
|
if (data.length <= 0) {
|
|
|
layer.msg("请至少选择一条下载", {offset: '15px', icon: 7, time: 1500});
|
|
|
} else if (data.length >= 1) {
|
|
|
var arr = [];
|
|
|
$.each(data,function (i,e) {
|
|
|
$.each(data, function (i, e) {
|
|
|
arr.push(e.id)
|
|
|
})
|
|
|
ids = arr.toString();
|
|
|
var url = domainName + `/api-web/machineRoom/downloadWordZipforDevice?accessToken=` + accessToken+"&ids="+ids+"&attachmentId="+ attachmentId+"&docType="+docType;
|
|
|
var url = domainName + `/api-web/machineRoom/downloadWordZipforDevice?accessToken=` + accessToken + "&ids=" + ids + "&attachmentId=" + attachmentId + "&docType=" + docType;
|
|
|
window.open(url);
|
|
|
}
|
|
|
})
|
...
|
...
|
@@ -439,7 +498,7 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
itemStyle: {
|
|
|
color: "#1e9fff"
|
|
|
}
|
|
|
},{
|
|
|
}, {
|
|
|
name: '配件更换',
|
|
|
data: fittingList,
|
|
|
barWidth: 20,
|
...
|
...
|
@@ -504,8 +563,8 @@ layui.define(['table', 'form', 'sessions', 'admin', 'common', 'echarts', 'laydat |
|
|
axisLabel: {
|
|
|
color: '#333',
|
|
|
show: true,
|
|
|
interval:0,
|
|
|
rotate:15
|
|
|
interval: 0,
|
|
|
rotate: 15
|
|
|
},
|
|
|
axisLine: {
|
|
|
lineStyle: {
|
...
|
...
|
|