jhwxapp/miniprogram/pages/newAddPage/safetyManagement/index.js

560 lines
13 KiB
JavaScript

// pages/newAddPage/safetyManagement/index.js
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
active: 1,
deptId: '',
projectName: '',
projectId: '',
loginName: '',
userName: '',
initData: {},
projectData: {},
//教育培训
videoSurvey: [
],
//基坑检测
safetyDeepData: [
{
name: '沉降',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
{
name: '倾斜',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
{
name: '应力',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
],
//爬架检测
safetyFrameData: [
{
name: '倾斜',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
{
name: '高度',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
{
name: '载荷',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
],
securityCheck: {
routineRectificationRate: 0, //常规整改率
routineProblemTotal: 0,//常规问题总数
routineCheckNumber: 0,//常规检查次数
specialRectificationRate: 0, //专项整改率
specialProblemTotal: 0,//专项问题总数
specialCheckNumber: 0,//专项检查次数
},
pitCount: {//基坑统计数据
onlineNumber: 0,
offlineNumber: 0,
total: 0,
},
climbCount: {//爬架统计数据
onlineNumber: 0,
offlineNumber: 0,
total: 0,
},
power: {//配电箱信息
t1: 0,
t2: 0,
t3: 0,
t4: 0,
c1: 0,
c2: 0,
c3: 0,
leak: 0
},
highlightPictures: []
},
showPopup() {
this.setData({ show: true });
},
onClose() {
this.setData({ show: false });
},
onClickShow() {
this.setData({ loadShow: true });
},
onClickHide() {
this.setData({ loadShow: false });
},
//项目切换 返回值
onProjectSelect(e) {
//this.onClickShow();
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.projectId = projectId;
app.globalData.projectName = projectName;
this.setData({
projectId: projectId,
projectName: projectName,
})
this.onLoad()
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
var that = this
wx.getStorage({
key: 'userinfo',
success: function (res) {
console.log(res.data);
that.setData({
loginName: res.data.loginName,
userName: res.data.userName,
deptId: res.data.deptId,
projectName: app.globalData.projectName,
projectId: app.globalData.projectId,
initData: { text: app.globalData.projectName, id: app.globalData.projectId }
})
that.getProjectCorrespondence(app.globalData.projectId);
}
})
},
/**
* 项目对应关系
*/
getProjectCorrespondence(projectId) {
var that = this;
wx.request({
url: app.globalData.reqUrl + '/weixin/training/getProjectCorrespondence',
data: {
"projectId": projectId,
},
method: "get",
success: function (res) {
console.log(res.data);
that.setData({
projectData: res.data
})
that.getSecurityCheck()
that.getPitCount()
that.getClimbCount()
that.getDistributionBoxData()
that.getHighlightPictures()
that.getTraining()
}
})
},
/**
* 教育培训
*/
getTraining() {
let that = this
wx.request({
url: app.globalData.szhUrl + "/api/building/listCultivate?project_id=" + this.data.projectData.szh + "&cultivate_type=4",
method: "post",
success: res => {
wx.request({
url: app.globalData.szhUrl + "/api/building/listCultivate?project_id=" + this.data.projectData.szh + "&cultivate_type=6",
method: "post",
success: res1 => {
wx.request({
url: app.globalData.szhUrl + "/api/building/listCultivate?project_id=" + this.data.projectData.szh + "&cultivate_type=3",
method: "post",
success: res2 => {
let total = res.data.data.length
+ res1.data.data.length
+ res2.data.data.length
that.setData({
videoSurvey: [
{ name: '三级安全教育', value: res.data.data.length, prop: (res.data.data.length / total * 100).toFixed(2) },
// { name: '班前讲话', value: '0', prop: 0 },
{ name: '应急演练', value: res2.data.data.length, prop: (res2.data.data.length / total * 100).toFixed(2) },
{ name: '专项培训', value: res1.data.data.length, prop: (res1.data.data.length / total * 100).toFixed(2) }
]
})
// wx.request({
// url: app.globalData.szhUrl + "/api/building/listCultivate?project_id=" + this.data.projectData.szh + "&cultivate_type=4",
// method: "post",
// success: res3 => {
// }
// })
}
})
}
})
}
})
},
/**
* 获取安全检查数据
*/
getSecurityCheck() {
wx.request({
url: app.globalData.szhUrl + '/api/check/getCheckStatistics?project_id=' + this.data.projectData.szh + "&large_type=1",
success: res1 => {
wx.request({
url: app.globalData.szhUrl + '/api/check/getCheckStatistics?project_id=' + this.data.projectData.szh + "&large_type=2",
success: res2 => {
this.setData({
"securityCheck.routineRectificationRate": res1.data.data.rate,
"securityCheck.routineProblemTotal": res1.data.data.problemTotal,
"securityCheck.routineCheckNumber": res1.data.data.total,
"securityCheck.specialRectificationRate": res2.data.data.rate,
"securityCheck.specialProblemTotal": res2.data.data.problemTotal,
"securityCheck.specialCheckNumber": res2.data.data.total,
})
}
})
}
})
},
/**
* 获取基坑监测统计
*/
getPitCount() {
wx.request({
url: app.globalData.aqzgUrl + '/weixin/structProjectSensorInfo/select/sensorInfo?projectId=' + this.data.projectData.aqzg + "&sensorType=4",
method: "post",
success: res => {
console.log(res)
let zxDeviceTotal = 0
let cj = 0
let cj_o = 0
let qx = 0
let qx_o = 0
let yl = 0
let yl_o = 0
res.data.data.map(x => {
let a = 0
if (x.status != 2) {
zxDeviceTotal++;
a = 1
}
switch (x.sensorType) {
case "CollWeiyiPoint":
cj++
cj_o += a
break
case "CollQingxiePoint":
qx++
qx_o += a
break
case "YingLi":
yl++
yl_o += a
bre
}
})
this.setData({
"pitCount.onlineNumber": zxDeviceTotal,
"pitCount.offlineNumber": res.data.data.length - zxDeviceTotal,
"pitCount.total": res.data.data.length,
safetyDeepData: [
{
name: '沉降',
total: cj,
notMonitor: cj - cj_o,
yesMonitor: cj_o,
unit: '个'
},
{
name: '倾斜',
total: qx,
notMonitor: qx - qx_o,
yesMonitor: qx_o,
unit: '个'
},
{
name: '应力',
total: yl,
notMonitor: yl - yl_o,
yesMonitor: yl_o,
unit: '个'
},
],
})
}
})
},
/**
* 获取爬架监测统计
*/
getClimbCount() {
wx.request({
url: app.globalData.szhUrl + '/screen/api/getDeviceBaseInfo?projectId=' + this.data.projectData.aqzg + '&drawId=7053550232834936832',
method: "post",
success: res => {
let zxDeviceTotal = 0
let cj = 0
let cj_o = 0
let qx = 0
let qx_o = 0
let yl = 0
let yl_o = 0
res.data.data.map(x => {
let a = 0
if (x.status != 2) {
zxDeviceTotal++;
a = 1
}
switch (x.sensorType) {
case "CollWeiyiPoint":
cj++
cj_o += a
break
case "CollQingxiePoint":
qx++
qx_o += a
break
case "YingLi":
yl++
yl_o += a
bre
}
})
this.setData({
"climbCount.onlineNumber": zxDeviceTotal,
"climbCount.offlineNumber": res.data.data.length - zxDeviceTotal,
"climbCount.total": res.data.data.length,
safetyFrameData: [
{
name: '倾斜',
total: qx,
notMonitor: qx - qx_o,
yesMonitor: qx_o,
unit: '个'
},
{
name: '高度',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
{
name: '载荷',
total: 0,
notMonitor: 0,
yesMonitor: 0,
unit: '个'
},
],
})
}
})
},
/**
* 获取塔机监测统计
*/
getTowerCraneCount() {
wx.request({
url: app.globalData.aqzgUrl + '/api/statistics/getDeviceSourceCensus',
method: "post",
success: res => {
let zxDeviceTotal = 0
res.data.data.map(x => {
if (x.status != 2) {
zxDeviceTotal++;
}
})
this.setData({
"towerCraneCount.onlineNumber": zxDeviceTotal,
"towerCraneCount.offlineNumber": res.data.data.length - zxDeviceTotal,
"towerCraneCount.total": res.data.data.length
})
}
})
},
/**
* 获取配电箱数据
*/
getDistributionBoxData() {
wx.request({
url: app.globalData.szhUrl + '/api/iot/power/latestList',
data: {
projectId: this.data.projectData.szh,
uid: 'PWR.02731XTJ'
},
success: res => {
this.setData({
power: res.data.rows[0] ? res.data.rows[0] : {
t1: 0,
t2: 0,
t3: 0,
t4: 0,
c1: 0,
c2: 0,
c3: 0,
leak: 0
}
})
}
})
},
/**
* 亮点照片
*/
getHighlightPictures() {
wx.request({
url: app.globalData.szhUrl + '/api/building/photoList?projectId=' + this.data.projectData.szh + '&typeMain=8&typeId=18',
method: "post",
success: res => {
console.log(res)
this.setData({
highlightPictures: res.data.data
})
}
})
},
goHighLightPage() {
wx.navigateTo({
url: '../../Highlight-photos/index',
})
},
/**
* 教育培训页面
*/
goEducations() {
wx.navigateTo({
url: '../../../pageage/educations-list/index?jumpState=1',
})
},
/**
* 基坑页面
*/
gofoundation(event) {
let id = event.currentTarget.dataset.id;
wx.navigateTo({
url: '../../deepExcavation/index?id='+id,
})
},
/**
* 跳转安全教育
*/
goCheckView(){
wx.navigateTo({
url: '../../../pageage/safetyManagement/securityCheck/index',
})
},
/**
* 配电箱监测
*/
goPDJCDetail() {
wx.navigateTo({
url: '../../Security-control-echarts/index',
})
},
/****************************底部导航********************************/
onChange(event) {
// event.detail 的值为当前选中项的索引
this.setData({ active: event.detail });
},
/**
* 项目概况页面
*/
XMGK: function () {
wx.redirectTo({
url: '../../xiangmugaikuang/xiangmugaikuang'
})
},
/**
* 设备管理
*/
SBGL: function () {
wx.redirectTo({
url: '../../shebieguanli-jxsb/shajiangguan',
})
},
/**
* 人员管理
*/
RYGL: function () {
wx.redirectTo({
url: '../../renyuanguanli/renyuanguanli'
})
},
//跳转到安全管控
XMSP:function(){
wx.redirectTo({
//url: '../deepExcavation/index'
url:'../../newAddPage/safetyManagement/index'
})
},
//跳转到质量管理
ZLGL2:function(){
wx.redirectTo({
url:'../../Quality-Assurance/index'
})
},
//跳转到进度管理
JDGL2:function(){
wx.redirectTo({
//url: '../deepExcavation/index'
url:'../../../pageage/Progress-management/index'
})
},
/**
* 更多功能
*/
GDGN: function () {
wx.redirectTo({
url: '../../gengduogongneng/gengduogongneng'
})
},
/**
* 工程列表页面
*/
goGCLB: function () {
wx.redirectTo({
url: '../../gongchengliebiao/gongchengliebiao'
})
}
})