//index.js const app = getApp() Page({ data: { userInfo: {}, deptId: '', height: "auto", scale: '10', initialLon: '108.90975705669825', initialLat: '34.53095652639473', markers: [], value1: '省', value2: '市/区', value3: '公司', show1: false, show2: false, show3: false, sheng: [], citys: {}, companys: {}, cityArea: [], company: [], projectData: [], environProjectData: [], projectCount: '0', ifSonCompany: '', ifDeptId: false, monitoringCount: '0', videoNum: '0', mechanicsNum: '0', environCount: '0', logCompanyName: '', popUp1: false, popUp2: false, popUp3: false, companyId: '', paramPost: '', loadShow: false, //省、市、区 provinceId: '', cityId: '', areaId: '', temDeptId: '', //*******新版本*****/ showTest: false, tabActive: 0, jt: [], shengGs: [], ziGs: [], nav1: "0", nav2: "-1", nav3: "-1", classA: "", classB: "", classC: "", flag1: true, flag2: false, flag3: false, Highlight1: "active", Highlight2: "", Highlight3: "", title2: false, title3: false, dataclass1: 0, dataclass2: 0, dataclass3: 0, overall1: "", overall2: "", overall3: "", newCompanyId: '', }, onclassA(event) { this.setData({ nav1: event.target.dataset.index }); this.setData({ dataclass1: 1 }); if (this.data.dataclass1 == 1) { this.setData({ title2: true }); } this.setData({ classA: event.target.dataset.name }); this.setData({ overall1: event.target.dataset.name, newCompanyId: event.target.dataset.id }); this.setData({ value3: event.target.dataset.name }) //获取子公司信息 this.setData({ showTest: false }) wx.setStorageSync('select_dept_id', event.target.dataset.id) wx.setStorageSync('select_dept_name', event.target.dataset.name) wx.setStorageSync('select_dept_index', event.target.dataset.index) this.selectProjectByCompanyId(event.target.dataset.id, '', '', ''); //this.selectCompanyJG(event.target.dataset.id,'SGS'); }, onclassB(event) { this.setData({ nav2: event.target.dataset.index }); this.setData({ dataclass2: 1 }); if (this.data.dataclass2 == 1) { this.setData({ title3: true }); } this.setData({ classB: " / " + event.target.dataset.name }); this.setData({ overall2: event.target.dataset.name, newCompanyId: event.target.dataset.id }); this.setData({ value3: this.data.overall1 + " / " + event.target.dataset.name }) //获取子公司信息 this.selectCompanyJG(event.target.dataset.id, 'GS'); }, onclassC(event) { this.setData({ nav3: event.target.dataset.index }); this.setData({ dataclass3: 1 }); this.setData({ classC: " / " + event.target.dataset.name }); this.setData({ overall3: event.target.dataset.name, newCompanyId: event.target.dataset.id }); this.setData({ value3: this.data.overall1 + " / " + this.data.overall2 + " / " + event.target.dataset.name }); }, queren(event) { //加载蒙版 //this.onClickShow(); this.setData({ showTest: false }); this.setData({ show3: false }); if (this.data.overall1 == "") { this.setData({ value3: "" }); } else if (this.data.overall2 == "") { this.setData({ value3: this.data.overall1 + " / " }); } else if (this.data.overall3 == "") { this.setData({ value3: this.data.overall1 + " / " + this.data.overall2 + " / " }); } else { this.setData({ value3: this.data.overall1 + " / " + this.data.overall2 + " / " + this.data.overall3 }); } let companyId = this.data.newCompanyId; let provinceId = this.data.provinceId; let cityId = this.data.cityId; let areaId = this.data.areaId; this.selectProjectByCompanyId(companyId, provinceId, cityId, areaId); this.selectEarly(companyId, '', provinceId, cityId, areaId); this.getEnvironCount(companyId, '', provinceId, cityId, areaId); }, tabTltie(event) { var id = event.currentTarget.id; if (id == 1) { this.setData({ flag1: true }) this.setData({ flag2: false }) this.setData({ flag3: false }) this.setData({ Highlight1: "active" }) this.setData({ Highlight2: "" }) this.setData({ Highlight3: "" }) this.setData({ title2: false }) this.setData({ title3: false }) this.setData({ classA: "" }) this.setData({ classB: "" }) this.setData({ classC: "" }) this.setData({ nav2: "-1" }); this.setData({ nav3: "-1" }); this.setData({ overall1: "", overall2: "", overall3: "" }) } else if (id == 2) { this.setData({ flag1: false }) this.setData({ flag2: true }) this.setData({ flag3: false }) this.setData({ Highlight1: "" }) this.setData({ Highlight2: "active" }) this.setData({ Highlight3: "" }) this.setData({ title3: false }) this.setData({ classB: "" }) this.setData({ classC: "" }) this.setData({ nav3: "-1" }); this.setData({ overall2: "", overall3: "" }) } else { this.setData({ flag1: false }) this.setData({ flag2: false }) this.setData({ flag3: true }) this.setData({ Highlight1: "" }) this.setData({ Highlight2: "" }) this.setData({ Highlight3: "active" }) this.setData({ overall3: "" }) this.setData({ classC: "" }) } }, showTest() { if (this.data.popUp3 == false) { this.setData({ showTest: true }); } }, onCloseTest() { this.setData({ showTest: false }); }, onChangeSheng(event) { //加载蒙版 //this.onClickShow(); var province = event.detail.value; this.setData({ value1: province.text, value2: "市/区", value3: "公司", company: {}, ifDeptId: true, provinceId: province.id, }); this.setData({ flag1: true }) this.setData({ flag2: false }) this.setData({ flag3: false }) this.setData({ Highlight1: "active" }) this.setData({ Highlight2: "" }) this.setData({ Highlight3: "" }) this.setData({ title2: false }) this.setData({ title3: false }) this.setData({ classA: "" }) this.setData({ classB: "" }) this.setData({ classC: "" }) this.setData({ nav2: "-1" }); this.setData({ nav3: "-1" }); app.globalData.paramDeptId = province.id, this.setData({ show1: false }); this.getDeptSubordinate(province.id); this.selectProjectByCompanyId(this.data.userInfo.deptId, province.id, '', ''); this.selectEarly(this.data.userInfo.deptId, '', province.id, '', ''); this.getEnvironCount(this.data.userInfo.deptId, '', province.id, '', ''); }, onChangeShiQu(event) { //加载蒙版 //this.onClickShow(); var city = event.detail.value[0]; var area = event.detail.value[1].text; var sq = city + "/" + area this.setData({ value2: sq, value3: "公司", company: {}, ifDeptId: true, cityId: area == '全部' ? event.detail.value[1].id : '', areaId: area == '全部' ? '' : event.detail.value[1].id }); this.setData({ flag1: true }) this.setData({ flag2: false }) this.setData({ flag3: false }) this.setData({ Highlight1: "active" }) this.setData({ Highlight2: "" }) this.setData({ Highlight3: "" }) this.setData({ title2: false }) this.setData({ title3: false }) this.setData({ classA: "" }) this.setData({ classB: "" }) this.setData({ classC: "" }) this.setData({ nav2: "-1" }); this.setData({ nav3: "-1" }); this.setData({ show2: false }); let deptId = this.data.userInfo.deptId; this.selectProjectByCompanyId(deptId, '', '', event.detail.value[1].id); //this.selectEarly(deptId,'','','',event.detail.value[1].id); //this.getEnvironCount(deptId,'','','',event.detail.value[1].id); }, onChange1(event) { const { picker, value, index } = event.detail; picker.setColumnValues(1, this.data.citys[value[0]]); }, onChange2(event) { // const { picker, value, index } = event.detail; // picker.setColumnValues(1, this.data.companys[value[0]]); }, showPopup1() { if (this.data.popUp1 == false) { this.setData({ show1: true }); } }, showPopup2() { if (this.data.popUp2 == false) { this.setData({ show2: true }); } }, onCancel() { this.setData({ show1: false }); this.setData({ show2: false }); this.setData({ show3: false }); }, onClose() { this.setData({ show1: false }); this.setData({ show2: false }); this.setData({ show3: false }); }, onClickShow() { this.setData({ loadShow: true }); }, onClickHide() { this.setData({ loadShow: false }); }, //页面初始化 onLoad: function (option) { var that = this //加载蒙版 //that.onClickShow(); //调用wx.getSystemInfo接口,然后动态绑定组件高度 wx.getSystemInfo({ success: function (res) { that.setData({ height: res.windowHeight, }) } }), //获取缓存中数据 wx.getStorage({ key: 'userinfo', success: function (res) { console.log(res.data); that.setData({ userInfo: res.data }) app.globalData.deptId = res.data.deptId, //加载用户组织架构信息 that.getFilstDept(res.data.deptId, res.data.userId); } }) }, /** * 加载用户组织架构信息 * @param {*} deptId * @param {*} userId */ getFilstDept: function (deptId, userId) { var that = this; wx.request({ url: app.globalData.reqUrl + '/wechat/selectDeptAll', data: { "deptId": deptId, "userId": userId, "minRoleId": that.data.userInfo?.minRoleId }, method: "GET", success: function (res) { console.log(res.data); res = res.data; //判断登录是否项目人员 if (res.data.projectId != undefined) { var markers = [{ id: 0, projectId: res.data.projectId, longitude: res.data.longitude, latitude: res.data.latitude, projectName: res.data.projectName }]; var projectData = [{ projectId: res.data.projectId, projectName: res.data.projectName, projectAddress: res.data.projectAddress, companyName: res.data.companyName, streamNumber: res.data.streamNumber, projectCount: res.data.projectCount, videoNum: res.data.videoNum, towerCount: res.data.towerCount, monitoringCount: res.data.monitoringCount }] that.setData({ value1: res.data.shengName, value2: res.data.shiName + '/' + res.data.quName, value3: res.data.companyName, markers: markers, scale: 12, initialLon: res.data.longitude, initialLat: res.data.latitude, projectCount: 1, projectData: projectData, logCompanyName: res.data.companyName, popUp1: true, popUp2: true, popUp3: true, }) //that.selectEarly(res.data.deptId,res.data.projectId,'','',''); //that.getEnvironCount(res.data.deptId,res.data.projectId,'','',''); //that.onClickHide(); } else { var columns = []; columns.push(res.data.province_list); that.setData({ value1: res.data.shengName, value2: res.data.shiName + '/' + res.data.quName, logCompanyName: res.data.logCompanyName, value3: res.data.logCompanyName, companyId: res.data.companyId, paramPost: res.data.postId, company: columns, companys: columns, jt: res.data.province_list, popUp1: true, popUp2: true }) if (res.data.province_list.length == 1) { that.setData({ popUp3: true }); } else { if (wx.getStorageSync('select_dept_index') != "" && wx.getStorageSync('select_dept_name') != "") { that.setData({ nav1: wx.getStorageSync('select_dept_index'), value3: wx.getStorageSync('select_dept_name') }); } } //that.selectEarly(res.data.deptId,'','','',''); //that.getEnvironCount(res.data.deptId,'','','',''); if (wx.getStorageSync('select_dept_id') == "") { if (res.data.province_list.length == 1) { that.selectProjectByCompanyId(res.data.deptId, '', '', ''); } else { that.selectProjectByCompanyId("0", '', '', ''); } } else { that.selectProjectByCompanyId(wx.getStorageSync('select_dept_id'), '', '', ''); } //that.onClickHide(); } } }) }, /** * 获取市区信息 * @param {*} provinceId 省id */ getDeptSubordinate: function (provinceId) { var that = this; wx.request({ url: app.globalData.reqUrl + '/wechat/project/selectDeptSubordinate', data: { "userId": this.data.userInfo.userId, "provinceId": provinceId, "deptId": this.data.userInfo.deptId }, method: "GET", success: function (res) { //that.onClickHide(); let citys = res.data; let cityArea = [{ values: Object.keys(citys), className: 'column1', }, { values: citys[Object.keys(citys)[0]], className: 'column2', defaultIndex: 2, }, ] that.setData({ cityArea: cityArea, citys: citys }) } }) }, /** * 根据筛选项目信息 * @param {*} deptId * @param {*} provinceId * @param {*} cityId * @param {*} areaId */ selectProjectByCompanyId: function (deptId, provinceId, cityId, areaId) { var that = this; wx.request({ url: app.globalData.reqUrl + '/wechat/project/selectProjectByCompanyId', data: { "userId": that.data.userInfo.userId, "deptId": deptId, "provinceId": provinceId, "cityId": cityId, "areaId": areaId, "minRoleId": that.data.userInfo.minRoleId }, method: "GET", success: function (res) { //关闭蒙版 //that.onClickHide(); if (res.data.length > 0) { that.setData({ markers: res.data, projectCount: res.data.length, projectData: res.data, scale: 12, initialLon: res.data[0].longitude, initialLat: res.data[0].latitude, }) if(that.data.userInfo.minRoleId<4){ if(deptId=="0"){ //存入文件中 wx.setStorage({ key: 'projectInfoList', data: res.data }); } }else{ //存入文件中 wx.setStorage({ key: 'projectInfoList', data: res.data }); } app.globalData.projectInfoList = res.data; } else { that.setData({ markers: res.data, projectCount: res.data.length, projectData: res.data, scale: 12, }) } } }) }, /** * 根据组织架构查询出公司信息 * @param {*} deptId * @param {*} state */ selectCompanyJG: function (deptId, state) { var that = this; wx.request({ url: app.globalData.reqUrl + '/wechat/project/selectCompanyJG', data: { "deptId": deptId }, method: "GET", success: function (res) { //that.onClickHide(); if (state == "SGS") { that.setData({ shengGs: res.data }) } else { that.setData({ ziGs: res.data }) } } }) }, /** * 预警总个数 * @param {*} deptId * @param {*} projectId * @param {*} provinceId * @param {*} cityId * @param {*} areaId */ selectEarly: function (deptId, projectId, provinceId, cityId, areaId) { var that = this; wx.request({ url: app.globalData.reqUrl + '/weixin/applets/selectYangchenCount', method: "GET", data: { "deptId": deptId, "projectId": projectId, "provinceId": provinceId, "cityId": cityId, "areaId": areaId, }, success: function (res) { //that.onClickHide(); that.setData({ monitoringCount: res.data.monitoringCount, videoNum: res.data.videoNum, mechanicsNum: res.data.machineEnvirCount }) } }) }, /** * 预警项目信息 * @param {*} deptId * @param {*} projectId * @param {*} provinceId * @param {*} cityId * @param {*} areaId */ getEnvironCount: function (deptId, projectId, provinceId, cityId, areaId) { var that = this; wx.request({ url: app.globalData.reqUrl + '/weixin/applets/getEnvironCount', method: 'GET', data: { "deptId": deptId, "projectId": projectId, "provinceId": provinceId, "cityId": cityId, "areaId": areaId, }, success: function (res) { //that.onClickHide(); that.setData({ environProjectData: res.data, environCount: res.data.length }) } }) }, /** * 个人定位点 */ selectUserLocation: function () { let markers = this.data.markers; markers.push(app.globalData.markers[0]); this.setData({ scale: 5, initialLon: app.globalData.initialLon, initialLat: app.globalData.latitude, markers: markers, }) }, //点击项目点跳转到项目概况页面 getProjectListById: function (even) { if (even.markerId != '-1') { var projectData = this.data.projectData; var value1 = ""; if (this.data.value1 != "") { value1 = this.data.value1; } else { value1 = '省'; } var value2 = ""; if (this.data.value2 != "") { value2 = this.data.value2; } else { value2 = '市/区'; } var value3 = ""; if (this.data.value3 != "") { value3 = this.data.value3; } else { value3 = '公司'; } //赋值到公共参数 app.globalData.projectId = this.data.markers[even.markerId].projectId; app.globalData.projectName = this.data.markers[even.markerId].projectName; //app.globalData.projectInfoList = JSON.stringify(projectData); app.globalData.type = 1; app.globalData.value1 = value1; app.globalData.value2 = value2; app.globalData.value3 = value3; wx.redirectTo({ url: '../xiangmugaikuang/index' }) } else { app.toast("本定位点为个人定位"); } }, //查看项目详情 checkDetailsSY: function (even) { var projectData = this.data.projectData; var value1 = ""; if (this.data.value1 != "") { value1 = this.data.value1; } else { value1 = '省'; } var value2 = ""; if (this.data.value2 != "") { value2 = this.data.value2; } else { value2 = '市/区'; } var value3 = ""; if (this.data.value3 != "") { value3 = this.data.value3; } else { value3 = '公司'; } //添加数据到app.js文件固定参数 //app.globalData.projectInfoList = JSON.stringify(projectData); app.globalData.type = 1; app.globalData.value1 = value1; app.globalData.value2 = value2; app.globalData.value3 = value3; wx.redirectTo({ url: '../gongchengliebiao/index' }) }, //查看预警详情 checkDetailsYJ: function (even) { var environProjectData = this.data.environProjectData; var value1 = ""; if (this.data.value1 != "") { value1 = this.data.value1; } else { value1 = '省'; } var value2 = ""; if (this.data.value2 != "") { value2 = this.data.value2; } else { value2 = '市/区'; } var value3 = ""; if (this.data.value3 != "") { value3 = this.data.value3; } else { value3 = '公司'; } //添加数据到app.js文件固定参数 //app.globalData.projectInfoList = JSON.stringify(environProjectData); app.globalData.type = 2; app.globalData.value1 = value1; app.globalData.value2 = value2; app.globalData.value3 = value3; wx.redirectTo({ url: '../gongchengliebiao/index', }) }, })