234 lines
6.5 KiB
JavaScript
234 lines
6.5 KiB
JavaScript
import { getBrigadeGrade,showBrigadeGrade} from "./orgApi/getBrigadeGrade.js";
|
|
import {getBououghGrade,showBoroughGrade} from "./orgApi/getBoroughGrade.js"
|
|
import {getStationGrade,showStationGrade} from "./orgApi/getStationGrade.js"
|
|
import { getStationsData,showBrigadeStationsData,stationBelongBorough } from "./orgApi/getStationsData.js";
|
|
import { initCarschool,updateBackground} from "./carousel.js";
|
|
import { setTokenActive } from "./session.js";
|
|
import { login } from "./login.js";
|
|
import {getstationcount,stationInfoPageReq} from "./orgApi/getStationInfo.js"
|
|
import { timestampFormat,getCityAndWeather,getWeekDate } from "../../../public/js/tool.js";
|
|
import { stationWebsocket } from "../api/stationDeviceWebsocket.js";
|
|
import { moveDeviceWebsocket } from "../api/moveDeviceWebsocket.js";
|
|
import { showAlarmEventList } from "./orgApi/getAlarmEventList.js";
|
|
var layuiObj={};
|
|
var loginInfo=null;//登录信息
|
|
var brigadeGradeArr=[];//支队评分
|
|
var boroughGradeArr=[];//派出所评分
|
|
var stationGradeArr=[];//学校评分
|
|
var stationsInfoArr=[];//学校今天信息
|
|
var stationInfoTableList=[];//学校基本信息
|
|
layui.use(['carousel','table'],function() {
|
|
if(loginInfo==null){
|
|
layuiObj["layer"] = layui.layer;
|
|
layuiObj["carousel"] = layui.carousel;
|
|
layuiObj["layuitable"] = layui.table;
|
|
layuiObj["rate"] = layui.rate;
|
|
var height=parseFloat($("#carousel").css("height"));
|
|
//建造实例化
|
|
layuiObj["ins"] = layuiObj["carousel"].render({
|
|
elem: '#carousel',
|
|
interval:5000,
|
|
indicator:'none',
|
|
//autoplay:false,
|
|
height:height,
|
|
anim:'fade',
|
|
width: '100%', //设置背景容器的宽度
|
|
arrow: 'none' //始终显示箭头,不会消失
|
|
});
|
|
|
|
//触发轮播切换事件
|
|
layuiObj["carousel"].on('change(myCarousel)', function(obj){ //test1来源于对应HTML容器的 lay-filter="test1" 属性值
|
|
var index=obj["index"];
|
|
updateBackground(index);
|
|
});
|
|
|
|
//先登录成功
|
|
login().then(res=>{
|
|
loginInfo=res.data.data;
|
|
|
|
console.log(loginInfo);
|
|
|
|
axios.defaults.headers.common['Authorization'] = loginInfo["session"];
|
|
setTokenActive();
|
|
//这里需要调用session的饱和接口
|
|
initApi();
|
|
})
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
//跳转到指挥调度模块
|
|
$(".cmdDispatch").on('click',function(){
|
|
window.open(`./cmdDispatch.html?session=${loginInfo["session"]}`);
|
|
})
|
|
|
|
|
|
async function initApi(){
|
|
//获取系统的评分
|
|
var brigadeGradeRes=await getBrigadeGrade();
|
|
brigadeGradeArr= brigadeGradeRes.data.data;
|
|
|
|
|
|
//获取所有的派出所评分
|
|
var boroughGradeRes=await getBououghGrade();
|
|
var boroughGrade = boroughGradeRes.data.data;
|
|
for(var i=0;i<boroughGrade.length;i++){
|
|
boroughGrade[i]["schoolInfo"]=[];
|
|
}
|
|
boroughGradeArr=boroughGrade;
|
|
|
|
|
|
//获取所有的学校评分
|
|
var stationGradeRes=await getStationGrade();
|
|
stationGradeArr=stationGradeRes.data.data;
|
|
|
|
|
|
//获取所有的学校信息
|
|
var stationsDataRes=await getStationsData();
|
|
stationsInfoArr=stationsDataRes.data.data;
|
|
|
|
|
|
//获取学校的信息
|
|
var stationcountRes=await getstationcount();
|
|
var stationcount=stationcountRes.data.data.count;
|
|
var stationlistRes= await stationInfoPageReq(stationcount)
|
|
|
|
stationlistRes.forEach(item=>{
|
|
var data=item.data.data;
|
|
for(let i=0;i<data.length;i++){
|
|
stationInfoTableList.push(data[i]);
|
|
}
|
|
})
|
|
|
|
//显示brigade的评分
|
|
showBrigadeGrade();
|
|
//显示borough的评分
|
|
showBoroughGrade();
|
|
//显示学校的评分
|
|
showStationGrade();
|
|
//显示学校的的信息
|
|
showBrigadeStationsData();
|
|
//合并学校的信息
|
|
stationBelongBorough();
|
|
//初始化轮播
|
|
initCarschool();
|
|
|
|
//初始化工具
|
|
initTool();
|
|
|
|
//获取报警数据
|
|
showAlarmEventList()
|
|
connectWebsocket()
|
|
}
|
|
|
|
|
|
|
|
function connectWebsocket(){
|
|
//连接站点websocket
|
|
stationWebsocket().then((res)=>{
|
|
var code=res["code"];
|
|
if(code==0){
|
|
var stationWebsocketConnect=res["stationWebsocketConnect"];
|
|
createStationWebsocket(stationWebsocketConnect);
|
|
}
|
|
})
|
|
|
|
moveDeviceWebsocket().then((res)=>{
|
|
var code=res["code"];
|
|
if(code==0){
|
|
//发送数据
|
|
var mdWebsocketConnect=res["mdWebsocketConnect"];
|
|
createMdWebsocket(mdWebsocketConnect);
|
|
}
|
|
})
|
|
}
|
|
|
|
function createStationWebsocket(stationWebsocketConnect){
|
|
var stationTempArr=[];
|
|
stationInfoTableList.forEach((item)=>{
|
|
var name=item.name
|
|
stationTempArr.push(name);
|
|
if(stationTempArr.length>=500){
|
|
sendStationList(stationWebsocketConnect,stationTempArr);
|
|
stationTempArr=[];
|
|
}
|
|
})
|
|
sendStationList(stationWebsocketConnect,stationTempArr);
|
|
}
|
|
|
|
//发送微站的数据
|
|
function sendStationList(stationWebsocketConnect,stationTempArr){
|
|
var getIot={
|
|
"msgcode":102,
|
|
"msgname":"station-sensor-list",
|
|
"message":stationTempArr
|
|
}
|
|
var msg = JSON.stringify(getIot);
|
|
stationWebsocketConnect.send(msg);
|
|
}
|
|
|
|
|
|
|
|
|
|
function createMdWebsocket(mdWebsocketConnect){
|
|
var mobileDeviceArr=[];
|
|
var messageObj = {
|
|
"msgcode":400,
|
|
"msgname":"stationlist"
|
|
}
|
|
stationInfoTableList.forEach((item)=>{
|
|
var name=item.name;
|
|
mobileDeviceArr.push(name);
|
|
if(mobileDeviceArr.length>=500){
|
|
messageObj["message"]=mobileDeviceArr;
|
|
moveDeviceSendData(mdWebsocketConnect,mobileDeviceArr)
|
|
mobileDeviceArr=[];
|
|
}
|
|
})
|
|
//告诉我需要推送那些移动设备给我
|
|
messageObj["message"]=mobileDeviceArr;
|
|
moveDeviceSendData(mdWebsocketConnect,messageObj);
|
|
sendstationMdevList402(mdWebsocketConnect,mobileDeviceArr)
|
|
}
|
|
|
|
//移动互联网的websocket
|
|
function moveDeviceSendData(mdWebsocketConnect,messageObj){
|
|
var msg = JSON.stringify(messageObj);
|
|
mdWebsocketConnect.send(msg);
|
|
}
|
|
|
|
//移动设备发送数据
|
|
function sendstationMdevList402(mdWebsocketConnect,mobileDeviceArr){
|
|
var getMD={
|
|
"msgcode":402,
|
|
"msgname":"station-mdev-list",
|
|
"message":mobileDeviceArr
|
|
}
|
|
moveDeviceSendData(mdWebsocketConnect,getMD);
|
|
}
|
|
|
|
|
|
function initTool(){
|
|
getCityAndWeather();
|
|
$(".currentTime>span:first-child").html(getWeekDate());
|
|
$(".currentTime>span:last-child").html(timestampFormat());
|
|
setInterval(() => {
|
|
$(".currentTime>span:last-child").html(timestampFormat());
|
|
}, 1000);
|
|
|
|
}
|
|
|
|
export {
|
|
loginInfo,
|
|
layuiObj,
|
|
brigadeGradeArr,
|
|
boroughGradeArr,
|
|
stationGradeArr,
|
|
stationsInfoArr,
|
|
stationInfoTableList
|
|
}
|
|
|
|
|
|
|