2025-10-17 13:32:43 +08:00
|
|
|
|
var table;
|
|
|
|
|
|
const bidCode = parent.$("#bidPro").val();
|
|
|
|
|
|
layui.use(["layer", "element", "table"], function () {
|
|
|
|
|
|
element = layui.element;
|
|
|
|
|
|
layer = layui.layer;
|
|
|
|
|
|
laydate = layui.laydate;
|
|
|
|
|
|
table = layui.table;
|
|
|
|
|
|
});
|
2025-10-13 09:33:54 +08:00
|
|
|
|
|
|
|
|
|
|
/* 工程简介 */
|
|
|
|
|
|
function loadProBrief(montageParam) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl +
|
|
|
|
|
|
"screen/largeScreen/xcIndex/getProDetails?params=" +
|
|
|
|
|
|
montageParam;
|
|
|
|
|
|
ajaxRequestGet(
|
|
|
|
|
|
url,
|
|
|
|
|
|
"GET",
|
|
|
|
|
|
true,
|
|
|
|
|
|
function () {},
|
|
|
|
|
|
function (result) {
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
|
setData(result.data.data);
|
|
|
|
|
|
} else if (result.code === 500) {
|
|
|
|
|
|
console.error("工程简介:" + result.msg);
|
|
|
|
|
|
setData(null);
|
|
|
|
|
|
} else if (result.code === 401) {
|
|
|
|
|
|
loginout(1);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
function (xhr, status, error) {
|
|
|
|
|
|
errorFn(xhr, status, error);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
setData(null);
|
2025-10-17 13:32:43 +08:00
|
|
|
|
},
|
|
|
|
|
|
aqEnnable
|
|
|
|
|
|
);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
|
|
|
|
|
|
// 项目简介赋值
|
|
|
|
|
|
function setData(data) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
let proBrief = "暂无简介",
|
|
|
|
|
|
html = "";
|
2025-10-13 09:33:54 +08:00
|
|
|
|
let proImgList = [];
|
|
|
|
|
|
if (data) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
proBrief = data.proBrief ? data.proBrief : "暂无简介";
|
2025-10-13 09:33:54 +08:00
|
|
|
|
proImgList = data.fileData;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (proImgList && proImgList.length > 0) {
|
|
|
|
|
|
$.each(proImgList, function (index, item) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
html += '<div><img src="' + item.base64Url + '"></div>';
|
|
|
|
|
|
});
|
2025-10-13 09:33:54 +08:00
|
|
|
|
} else {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
html += '<div><img src="../../img/back/back.png"></div>';
|
2025-10-13 09:33:54 +08:00
|
|
|
|
}
|
2025-10-17 13:32:43 +08:00
|
|
|
|
$("#img-carousel").empty().append(html);
|
|
|
|
|
|
$("#pro-desc p").html(proBrief);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
// 渲染 - 图片轮播
|
|
|
|
|
|
carousel.render({
|
2025-10-17 13:32:43 +08:00
|
|
|
|
elem: "#ID-carousel-demo-image",
|
|
|
|
|
|
width: "900px",
|
|
|
|
|
|
height: "360px",
|
|
|
|
|
|
interval: 3000,
|
2025-10-13 09:33:54 +08:00
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* 实时监测 */
|
|
|
|
|
|
function loadRealMonitor(montageParam) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl +
|
|
|
|
|
|
"screen/largeScreen/xcIndex/getProJcData?params=" +
|
|
|
|
|
|
montageParam;
|
|
|
|
|
|
ajaxRequestGet(
|
|
|
|
|
|
url,
|
|
|
|
|
|
"GET",
|
|
|
|
|
|
true,
|
|
|
|
|
|
function () {},
|
|
|
|
|
|
function (result) {
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
|
setData(result.data);
|
|
|
|
|
|
} else if (result.code === 500) {
|
|
|
|
|
|
console.error("实时监测" + result.msg);
|
|
|
|
|
|
setData(null);
|
|
|
|
|
|
} else if (result.code === 401) {
|
|
|
|
|
|
loginout(1);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
function (xhr, status, error) {
|
|
|
|
|
|
errorFn(xhr, status, error);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
setData(null);
|
2025-10-17 13:32:43 +08:00
|
|
|
|
},
|
|
|
|
|
|
aqEnnable
|
|
|
|
|
|
);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
|
|
|
|
|
|
/* 实时检测赋值 */
|
|
|
|
|
|
function setData(data) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
console.log(data);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
if (data && data.length > 0) {
|
|
|
|
|
|
$("#real-time-monitor").empty();
|
|
|
|
|
|
$.each(data, function (index, item) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
let div =
|
|
|
|
|
|
' <div class="layout monitor-data" data-id="' +
|
|
|
|
|
|
item.modelName +
|
|
|
|
|
|
'"> <p><span id="wd">' +
|
|
|
|
|
|
item.val +
|
|
|
|
|
|
"</span><span>" +
|
|
|
|
|
|
item.unit +
|
|
|
|
|
|
"</span></p><p>" +
|
|
|
|
|
|
item.modelName +
|
|
|
|
|
|
"</p>" +
|
2025-10-13 09:33:54 +08:00
|
|
|
|
" <div id='logo' class=\"monitor-icon\"></div>";
|
|
|
|
|
|
$("#real-time-monitor").append(div);
|
2025-10-17 13:32:43 +08:00
|
|
|
|
|
|
|
|
|
|
// 为每个monitor-data盒子添加点击事件
|
|
|
|
|
|
$("#real-time-monitor .monitor-data")
|
|
|
|
|
|
.off("click")
|
|
|
|
|
|
.on("click", function () {
|
|
|
|
|
|
var dataId = $(this).attr("data-id");
|
|
|
|
|
|
console.log("点击的monitor-data的data-id:", dataId);
|
|
|
|
|
|
|
|
|
|
|
|
// 您可以在这里添加其他需要执行的逻辑
|
|
|
|
|
|
|
|
|
|
|
|
layer.open({
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
title: "历史记录", //显示标题栏
|
|
|
|
|
|
closeBtn: 1,
|
|
|
|
|
|
area: ["90%", "90%"],
|
|
|
|
|
|
id: "HISTORY_layui", //设定一个id,防止重复弹出
|
|
|
|
|
|
resize: false,
|
|
|
|
|
|
// btn: ['确定'],
|
|
|
|
|
|
btnAlign: "c",
|
|
|
|
|
|
moveType: 0, //拖拽模式,0或者1
|
|
|
|
|
|
skin: "layui-layer-molv",
|
|
|
|
|
|
content: $("#divDialog"),
|
|
|
|
|
|
success: function (layero) {
|
|
|
|
|
|
// initHistory();
|
|
|
|
|
|
|
|
|
|
|
|
initDialogTable();
|
|
|
|
|
|
$("th").css("color", "#000");
|
|
|
|
|
|
$(".layui-table").css("color", "#000");
|
|
|
|
|
|
},
|
|
|
|
|
|
yes: function (layero, index) {
|
|
|
|
|
|
layer.close("HISTORY_layui");
|
|
|
|
|
|
},
|
|
|
|
|
|
cancel: function () {
|
|
|
|
|
|
// 右上角关闭事件的逻辑
|
|
|
|
|
|
layer.close("HISTORY_layui");
|
|
|
|
|
|
},
|
|
|
|
|
|
end: function () {
|
|
|
|
|
|
$("th").css("color", "#fff");
|
|
|
|
|
|
$(".layui-table").css("color", "#fff");
|
|
|
|
|
|
},
|
|
|
|
|
|
});
|
|
|
|
|
|
});
|
2025-10-13 09:33:54 +08:00
|
|
|
|
// if (item.modelName === '温度') {
|
|
|
|
|
|
// $('#wd').html(item.val ? item.val : 0);
|
|
|
|
|
|
// } else if (item.modelName === '湿度') {
|
|
|
|
|
|
// $('#sd').html(item.val ? item.val : 0);
|
|
|
|
|
|
// } else if (item.modelName === '噪声') {
|
|
|
|
|
|
// $('#zs').html(item.val ? item.val : 0);
|
|
|
|
|
|
// } else if (item.modelName === '光照') {
|
|
|
|
|
|
// $('#gz').html(item.val ? item.val : 0);
|
|
|
|
|
|
// } else if (item.modelName === 'pm2') {
|
|
|
|
|
|
// $('#pm2').html(item.val ? item.val : 0);
|
|
|
|
|
|
// } else if (item.modelName === 'pm10') {
|
|
|
|
|
|
// $('#pm10').html(item.val ? item.val : 0);
|
|
|
|
|
|
// }
|
2025-10-17 13:32:43 +08:00
|
|
|
|
});
|
2025-10-13 09:33:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-17 13:32:43 +08:00
|
|
|
|
function initDialogTable() {
|
|
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl + "screen/largeScreen/constructionQuality/getHistoryList";
|
|
|
|
|
|
let times = "";
|
|
|
|
|
|
if ($("#ID-laydate-start-date-1").val() != "") {
|
|
|
|
|
|
times =
|
|
|
|
|
|
$("#ID-laydate-start-date-1").val() +
|
|
|
|
|
|
" - " +
|
|
|
|
|
|
$("#ID-laydate-end-date-1").val();
|
|
|
|
|
|
} else {
|
|
|
|
|
|
times = "";
|
|
|
|
|
|
}
|
|
|
|
|
|
historyTableIns = table.render({
|
|
|
|
|
|
elem: "#tableDialog",
|
|
|
|
|
|
url: url,
|
|
|
|
|
|
// skin: 'line',
|
|
|
|
|
|
page: true,
|
|
|
|
|
|
headers: {
|
|
|
|
|
|
decrypt: "decrypt",
|
|
|
|
|
|
Authorization: token,
|
|
|
|
|
|
},
|
|
|
|
|
|
where: {
|
|
|
|
|
|
roleCode: roleCode,
|
|
|
|
|
|
orgId: orgId,
|
|
|
|
|
|
userId: userId,
|
|
|
|
|
|
bidCode: bidCode,
|
|
|
|
|
|
deviceName: $("#deviceName").val(),
|
|
|
|
|
|
times: times,
|
|
|
|
|
|
},
|
|
|
|
|
|
cols: [
|
|
|
|
|
|
[
|
|
|
|
|
|
{ type: "numbers", title: "序号" }, // 添加序号列
|
|
|
|
|
|
// {field: 'areaName', align: 'center', title: '区域名称'},
|
|
|
|
|
|
{ field: "deviceName", align: "center", title: "设备名称" },
|
|
|
|
|
|
{ field: "moduleName", align: "center", title: "施工工艺" },
|
|
|
|
|
|
{ field: "changeVal", align: "center", title: "变化值" },
|
|
|
|
|
|
{ field: "val", align: "center", title: "检测值" },
|
|
|
|
|
|
{ field: "createTime", align: "center", title: "检测时间" },
|
|
|
|
|
|
// {field: 'isWarn', align: 'center', title: '是否告警'},
|
|
|
|
|
|
],
|
|
|
|
|
|
],
|
|
|
|
|
|
initComplete: function () {
|
|
|
|
|
|
// 在表格渲染完成后,重新渲染序号列
|
|
|
|
|
|
var that = this.elem.next();
|
|
|
|
|
|
var tool = that
|
|
|
|
|
|
.children(".layui-table-box")
|
|
|
|
|
|
.children(".layui-table-fixed")
|
|
|
|
|
|
.children(".layui-table-body")
|
|
|
|
|
|
.children(".layui-table");
|
|
|
|
|
|
tool.find("tr").each(function (index, item) {
|
|
|
|
|
|
$(this)
|
|
|
|
|
|
.find('td[data-field="LAY_TABLE_INDEX"]')
|
|
|
|
|
|
.text(index + 1);
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
done: function (res, curr, count, origin) {
|
|
|
|
|
|
// console.log(res);
|
|
|
|
|
|
$("[data-field='isWarn']")
|
|
|
|
|
|
.children()
|
|
|
|
|
|
.each(function () {
|
|
|
|
|
|
if ($(this).text() == "0") {
|
|
|
|
|
|
$(this).text("未告警");
|
|
|
|
|
|
} else if ($(this).text() == "1") {
|
|
|
|
|
|
$(this).text("告警");
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
page: true, //开启分页
|
|
|
|
|
|
loading: true, //数据加载中。。。
|
|
|
|
|
|
limits: [5, 10, 20, 100],
|
|
|
|
|
|
limit: 7,
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-13 09:33:54 +08:00
|
|
|
|
/* 项目风险 */
|
|
|
|
|
|
function loadProRisk(montageParam) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl +
|
|
|
|
|
|
"screen/largeScreen/xcIndex/getProRisk?params=" +
|
|
|
|
|
|
montageParam;
|
|
|
|
|
|
ajaxRequestGet(
|
|
|
|
|
|
url,
|
|
|
|
|
|
"GET",
|
|
|
|
|
|
true,
|
|
|
|
|
|
function () {},
|
|
|
|
|
|
function (result) {
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
|
setData(result.data);
|
|
|
|
|
|
} else if (result.code === 500) {
|
|
|
|
|
|
console.error("项目风险" + result.msg);
|
|
|
|
|
|
} else if (result.code === 401) {
|
|
|
|
|
|
loginout(1);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
function (xhr, status, error) {
|
|
|
|
|
|
errorFn(xhr, status, error);
|
|
|
|
|
|
},
|
|
|
|
|
|
aqEnnable
|
|
|
|
|
|
);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
|
|
|
|
|
|
/* 项目风险赋值 */
|
|
|
|
|
|
function setData(data) {
|
|
|
|
|
|
initEchartsOne(data.day, data.week, data.warn);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* 项目进度 */
|
|
|
|
|
|
function loadProProgress(montageParam) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl +
|
|
|
|
|
|
"screen/largeScreen/xcIndex/getProcess?params=" +
|
|
|
|
|
|
montageParam;
|
|
|
|
|
|
ajaxRequestGet(
|
|
|
|
|
|
url,
|
|
|
|
|
|
"GET",
|
|
|
|
|
|
true,
|
|
|
|
|
|
function () {},
|
|
|
|
|
|
function (result) {
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
|
setData(result.data);
|
|
|
|
|
|
} else if (result.code === 500) {
|
|
|
|
|
|
console.error("项目进度:" + result.msg);
|
|
|
|
|
|
} else if (result.code === 401) {
|
|
|
|
|
|
loginout(1);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
function (xhr, status, error) {
|
|
|
|
|
|
errorFn(xhr, status, error);
|
|
|
|
|
|
},
|
|
|
|
|
|
aqEnnable
|
|
|
|
|
|
);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
|
|
|
|
|
|
/* 项目进度赋值 */
|
|
|
|
|
|
function setData(data) {
|
|
|
|
|
|
if (data) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
$("#planStartTime").html(data.planStartTime);
|
|
|
|
|
|
$("#planEndTime").html(data.planEndTime);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
initEchartsTwo(data.value2, data.value);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* 项目成本 */
|
|
|
|
|
|
function loadProCost(montageParam) {
|
2025-10-17 13:32:43 +08:00
|
|
|
|
const url =
|
|
|
|
|
|
commonUrl +
|
|
|
|
|
|
"screen/largeScreen/xcIndex/getProMoney?params=" +
|
|
|
|
|
|
montageParam;
|
|
|
|
|
|
ajaxRequestGet(
|
|
|
|
|
|
url,
|
|
|
|
|
|
"GET",
|
|
|
|
|
|
true,
|
|
|
|
|
|
function () {},
|
|
|
|
|
|
function (result) {
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
|
|
|
setData(result.data);
|
|
|
|
|
|
} else if (result.code === 500) {
|
|
|
|
|
|
console.error("项目成本:" + result.msg);
|
|
|
|
|
|
setData(null);
|
|
|
|
|
|
} else if (result.code === 401) {
|
|
|
|
|
|
loginout(1);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
function (xhr, status, error) {
|
|
|
|
|
|
errorFn(xhr, status, error);
|
|
|
|
|
|
},
|
|
|
|
|
|
aqEnnable
|
|
|
|
|
|
);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
function setData(data) {
|
|
|
|
|
|
if (data) {
|
|
|
|
|
|
let nameList = data.time && data.time.length > 0 ? data.time : [];
|
|
|
|
|
|
let valueList = data.cost && data.cost.length > 0 ? data.cost : [];
|
2025-10-17 13:32:43 +08:00
|
|
|
|
initEchartsThree(
|
|
|
|
|
|
nameList,
|
|
|
|
|
|
valueList,
|
|
|
|
|
|
parseFloat(data.proCost.replace("万", ""))
|
|
|
|
|
|
);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
initEchartsThree([], [], 0);
|
2025-10-13 09:33:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|