{% extends "m300Tools/report/P_heartBeat_m300_page.html" %} {% block title %}Alarm_msg{% endblock %} {% block content_1 %} <div id="container3" style="width:100%;min-height:750px;float:left;_background:green;margin-top:10px;_border-top: 1px solid #eee;"> <div style="width:100%;_background:green;padding:5px;padding-top:0px;"> <h3 style="border-bottom: 1px solid #eee;">设置消息头:</h3> <label>功能ID:</label><input id="FUNID" type="text" class="form-control" disabled="disabled" value="0021" style="width:80px;"> <label>消息序列号:</label><input id="waterCode" type="text" class="form-control" value="1" style="width:60px;"> <label>设备ID:</label><input id="DEV_ID" type="text" class="form-control" value="M202004070000" style="width:150px;"> <label>是否加密:</label><select style="width:100px;" id="encryptionType" class="form-control"> <option value="0">不加密</option> <option value="1024">加密</option> </select> </div> <H3 style="border-bottom: 1px solid #eee;">设置报警消息内容:</H3> <div style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"> <h5>GPS报警信息<span style="margin-left:10px;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:1px 10px;"> <label><input name="gps_radio" type="radio" value="0" checked="checked" onclick="isShowGPS_area(this)"/>隐藏</label> <label style="margin-left:10px;"><input name="gps_radio" type="radio" value="1" onclick="isShowGPS_area(this)"/>显示</label> </span></h5> <ul class="protocol_content" style="padding:0px;display:none;" id="GPS_area"> <li><label>日期:</label><input id="dateInfo" type="text" class="form-control" value=""></li> <li style="width:495px;"><label>维度:</label><span> <input id="latitude" type="text" class="form-control" value="40.22077"> <select style="width:80px;" id="latitudeType" class="form-control"> <option value="0">北纬</option> <option value="1">南纬</option></select> </span></li> <li style="width:495px;"><label>经度:</label><span> <input id="longitude" type="text" class="form-control" value="116.23128"> <select style="width:80px;" id="longitudeType" class="form-control"> <option value="0">东经</option> <option value="1">西经</option></select> </span></li> <li><label>定位星数:</label><input id="positionStar" type="text" class="form-control" value="2"></li> <li><label>速度:</label><input id="speed" type="text" class="form-control" value="66.0"></li> <li><label>方向角:</label><input id="direction" type="text" class="form-control" value="55.3"></li> <li><label>海拔高度:</label><input id="altitude" type="text" class="form-control" value="11.0"></li> <li><label>ACC状态:</label><select style="width:155px;" id="ACCStatus" class="form-control"> <option value="0">关</option> <option value="1" selected="selected">开</option></select></li> <li><label style="word-break:break-all;font-size:10px;">汽车电瓶电压:</label><input id="valtage" type="text" class="form-control" value="36.0"></li> <li><label style="word-break:break-all;font-size:10px;">汽车OBD速度:</label><input id="OBDSpeed" type="text" class="form-control" value="66.4"></li> <li><label style="word-break:break-all;font-size:10px;">GPS定位是否有效:</label><select style="width:155px;" id="valid_1" class="form-control"> <option value="0">否</option> <option value="1" selected="selected">是</option></select></li> <li><label style="word-break:break-all;font-size:10px;">车机是否处于修车模式:</label><select style="width:155px;" id="valid_2" class="form-control"> <option value="0">否</option> <option value="128">是</option></select></li> <li><label style="word-break:break-all;font-size:10px;">驾驶循环标签:</label><input id="tripMark" type="text" class="form-control" value="0"></li> </ul> </div> <div style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;margin-top:5px;"> <h5>GSM主基站数据包</h5> <ul class="protocol_content" style="padding:0px;"> <li><label>运营商类别:</label><span> <select style="width:120px;" id="operatorType" class="form-control"> <option value="1">移动</option> <option value="2">联通</option> <option value="3">电信</option> </select> </span></li> <li><label>服务器LAC:</label><input id="LAC" type="text" class="form-control" value="1234"></li> <li><label style="word-break:break-all;font-size:10px;">服务器CellID:</label><input id="CellId" type="text" class="form-control" value="5678"></li> </ul> </div> <div style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;margin-top:5px;"> <h5>CAN状态数据包<span style="margin-left:10px;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:1px 10px;"> <label><input name="canObd" type="radio" value="0" checked="checked" onclick="isShowCAN_area(this)"/>隐藏</label> <label style="margin-left:10px;"><input name="canObd" type="radio" value="1" onclick="isShowCAN_area(this)"/>显示</label> </span></h5> <ul class="protocol_content" style="padding:0px;display:none;" id="CAN_area"> <li style="width:350px;"><label>状态掩码:</label><input style="width:250px;" id="statusMask" type="text" class="form-control" value="ffffffffffffffffffff"></li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>安全状态:</h4> <div style="width:100%" id="safeStatus"> <span><label>ACC状态:</label><select style="width:65px;" id="CAN_accStatus" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">设防撤防状态:</label><select style="width:65px;" id="defenseStatus" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label>脚刹状态:</label><select style="width:65px;" id="brakeStatus" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label>是否踩油门:</label><select style="width:65px;" id="acceleratorStatus" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> <span><label>手刹状态:</label><select style="width:65px;" id="handBrakeStatus" class="form-control"> <option value="0">否</option> <option value="16">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">主驾驶安全带:</label><select style="width:65px;" id="mainSafetyBelt" class="form-control"> <option value="0">否</option> <option value="32">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">副驾驶安全带:</label><select style="width:65px;" id="subSafetyBelt" class="form-control"> <option value="0">否</option> <option value="64">是</option></select></span> </div> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>门状态:</h4> <div style="width:100%" id="doorStatus"> <span><label>左前门:</label><select style="width:65px;" id="lfDoorStatus" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label>右前门:</label><select style="width:65px;" id="rfDoorStatus" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label>左后门:</label><select style="width:65px;" id="lbDoorStatus" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label>右后门:</label><select style="width:65px;" id="rbDoorStatus" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> <span><label>后备箱:</label><select style="width:65px;" id="trunk" class="form-control"> <option value="0">否</option> <option value="16">是</option></select></span> <span><label>发动机盖:</label><select style="width:65px;" id="enginCover" class="form-control"> <option value="0">否</option> <option value="32">是</option></select></span> </div> </li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>锁状态:</h4> <div style="width:100%" id="lockStatus"> <span><label style="word-break:break-all;font-size:10px;">左前门锁状态:</label><select style="width:65px;" id="lfDoorLockStatus" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">右前门锁状态:</label><select style="width:65px;" id="rfDoorLockStatus" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">左后门锁状态:</label><select style="width:65px;" id="lbDoorLockStatus" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label style="word-break:break-all;font-size:10px;">右后门锁状态:</label><select style="width:65px;" id="rbDoorLockStatus" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> </div> </li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>窗户状态:</h4> <div style="width:100%" id="windowStatus"> <span><label style="width:80px;">左前窗:</label><select style="width:65px;" id="lfWindowStatus" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label style="width:80px;">右前窗:</label><select style="width:65px;" id="rfWindowStatus" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label style="width:80px;">左后窗:</label><select style="width:65px;" id="lbWindowStatus" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label style="width:80px;">右后窗:</label><select style="width:65px;" id="rbWindowStatus" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> <span><label style="width:80px;">天窗开关:</label><select style="width:65px;" id="topWindowStatus" class="form-control"> <option value="0">否</option> <option value="16">是</option></select></span> <span><label style="width:80px;">左转向灯:</label><select style="width:65px;" id="lTurnLight" class="form-control"> <option value="0">否</option> <option value="32">是</option></select></span> <span><label style="width:80px;">右转向灯:</label><select style="width:65px;" id="rTurnLight" class="form-control"> <option value="0">否</option> <option value="64">是</option></select></span> <span><label style="width:80px;">阅读灯:</label><select style="width:65px;" id="readLight" class="form-control"> <option value="0">否</option> <option value="128">是</option></select></span> </div> </li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>灯状态:</h4> <div style="width:100%" id="lightStatus"> <span><label style="width:80px;">近光灯:</label><select style="width:65px;" id="lowHeadlight" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label style="width:80px;">远光灯:</label><select style="width:65px;" id="highHeadlight" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label style="width:80px;">前雾灯:</label><select style="width:65px;" id="ffogLight" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label style="width:80px;">后雾灯:</label><select style="width:65px;" id="bfogLight" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> <span><label style="width:80px;">危险灯:</label><select style="width:65px;" id="dangerLight" class="form-control"> <option value="0">否</option> <option value="16">是</option></select></span> <span><label style="width:80px;">倒车灯:</label><select style="width:65px;" id="backCarLight" class="form-control"> <option value="0">否</option> <option value="32">是</option></select></span> <span><label style="width:80px;">auto灯:</label><select style="width:65px;" id="autoLight" class="form-control"> <option value="0">否</option> <option value="64">是</option></select></span> <span><label style="width:80px;">示宽灯:</label><select style="width:65px;" id="widthLight" class="form-control"> <option value="0">否</option> <option value="128">是</option></select></span> </div> </li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>开关状态A:</h4> <div style="width:100%" id="swichStatusA"> <span><label>机油报警:</label><select style="width:65px;" id="machineOilWarning" class="form-control"> <option value="0">否</option> <option value="1">是</option></select></span> <span><label>燃油报警:</label><select style="width:65px;" id="oilWarning" class="form-control"> <option value="0">否</option> <option value="2">是</option></select></span> <span><label>雨刷报警:</label><select style="width:65px;" id="wiperWarning" class="form-control"> <option value="0">否</option> <option value="4">是</option></select></span> <span><label>喇叭报警:</label><select style="width:65px;" id="loudsspeakerWaring" class="form-control"> <option value="0">否</option> <option value="8">是</option></select></span> <span><label>空调:</label><select style="width:65px;" id="airConditionerWaring" class="form-control"> <option value="0">否</option> <option value="16">是</option></select></span> <span><label>后视镜状态:</label><select style="width:65px;" id="backMirrorWaring" class="form-control"> <option value="0">否</option> <option value="32">是</option></select></span> </div> </li> <li style="width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;"><h4>开关状态B:</h4> <div style="width:100%" id="swichStatusB"> <span><label>档位:</label><select style="width:100px;" id="gears" class="form-control"> <option value="0">P档</option> <option value="16">R档</option> <option value="32">N档</option> <option value="48">D档</option> <option value="64">1档</option> <option value="80">2档</option> <option value="96">3档</option> <option value="112">4档</option> <option value="128">5档</option> <option value="144">6档</option> <option value="160">M档</option> <option value="176">S档</option></select></span> </div> </li> </ul> </div> <div style="margin-top:10px;width:100%;border-width:1px;border-style:solid;border-color:darkgray;border-radius:10px;padding:2px;background:skyblue;"> <h5><b>选择要上报的事件:</b></h5> <label style="padding: 0px 10px;"><input type="checkbox" id="0001" onclick="alarmSelect(this)" class="alarm_select"/>点火 </label> <label style="padding: 0px 10px;"><input type="checkbox" id="0002" onclick="alarmSelect(this)" class="alarm_select"/>熄火 </label> </div> <H3 style="border-bottom: 1px solid #eee;">控制:</H3> <div style="width:100%;padding:5px;margin-top:10px;"> <button type="button" class="btn btn-primary" id="sendMsgBtn">发送消息</button> </div> <H3 style="border-bottom: 1px solid #eee;">返回信息:</H3> <div style="width:100%;padding:5px;margin-top:10px;"> <textarea id="showFeedback" style="width:100%;padding:5px;" rows="8"></textarea> </div> </div> <script> //发送报警事件数据 $("#sendMsgBtn").click(function(){ if ($(".alarm_select:checked").length > 1){ alert("不能同时选择多个报警事件") }else if($(".alarm_select:checked").length == 0){ alert("请至少选择一个报警事件") }else{ var FUNID = $("#FUNID").val(); var waterCode = $("#waterCode").val(); var DEV_ID = $("#DEV_ID").val(); var encryptionType = $("#encryptionType").val(); var GPSData = getGpsData(); var OBDCANData = getOBDCANData(); var GSMData = getGSMData(); var alarm = alarmData() var data = {}; data["FUNID"] = FUNID; data["waterCode"] = waterCode; data["DEV_ID"] = DEV_ID; data["encryptionType"] = encryptionType; data["GPSData"] = GPSData; data["OBDCANData"] = OBDCANData; data["GSMData"] = GSMData; data["alarm"] = alarm; //console.log(data) //console.log(JSON.stringify(data)) var host = window.location.host; $("#showFeedback").val("") $.ajax({ url:"http://" + host + "/m300Tools/P_m300Protocol_process/porcessAlarmMsg", type:"post", data:JSON.stringify(data), contentType:"application/json", dataType:"json", success:function(data){ if(data.status == 200){ //window.location.reload() var theShow = "原始数据: " + data.msgSend + "\n"; theShow = theShow + "收到数据: " + data.result + "\n"; theShow = theShow + "收到数据16进制: " + data.rev + "\n"; theShow = theShow + "解析数据: " + JSON.stringify(data.orgRev) + "\n"; $("#showFeedback").val(theShow) }else{ $("#showFeedback").val(data.message) alert(data.message); } } }); } }); //获取GPS数据 function getGpsData(){ var dateInfo = $("#dateInfo").val(); var latitude = parseFloat($("#latitude").val()); var latitudeType = parseInt($("#latitudeType").val()); if(latitudeType == 1){ latitude = latitude + 2147483648 / 1000000 } var longitude = parseFloat($("#longitude").val()); var longitudeType = parseInt($("#longitudeType").val()); if(longitudeType == 1){ longitude = longitude + 2147483648 / 1000000 } var positionStar = $("#positionStar").val(); var speed = $("#speed").val(); var direction = $("#direction").val(); var altitude = $("#altitude").val(); var ACCStatus = $("#ACCStatus").val(); var valtage = $("#valtage").val(); var OBDSpeed = $("#OBDSpeed").val(); var valid_1 = parseInt($("#valid_1").val()); var valid_2 = parseInt($("#valid_2").val()); var valid = valid_1 + valid_2 var tripMark = $("#tripMark").val(); var data = {}; data["dateInfo"] = dateInfo; data["latitude"] = latitude; data["longitude"] = longitude; data["positionStar"] = positionStar; data["speed"] = speed; data["direction"] = direction; data["altitude"] = altitude; data["ACCStatus"] = ACCStatus; data["valtage"] = valtage; data["OBDSpeed"] = OBDSpeed; data["valid"] = valid; data["tripMark"] = tripMark; return data } //获取OBD CAN 数据 function getOBDCANData(){ var statusMask = $("#statusMask").val(); var accStatus = parseInt($("#CAN_accStatus").val()); var defenseStatus = parseInt($("#defenseStatus").val()); var brakeStatus = parseInt($("#brakeStatus").val()); var acceleratorStatus = parseInt($("#acceleratorStatus").val()); var handBrakeStatus = parseInt($("#handBrakeStatus").val()); var mainSafetyBelt = parseInt($("#mainSafetyBelt").val()); var subSafetyBelt = parseInt($("#subSafetyBelt").val()); var safeStatus = accStatus + defenseStatus + brakeStatus + acceleratorStatus + handBrakeStatus + mainSafetyBelt + subSafetyBelt var lfDoorStatus = parseInt($("#lfDoorStatus").val()); var rfDoorStatus = parseInt($("#rfDoorStatus").val()); var lbDoorStatus = parseInt($("#lbDoorStatus").val()); var rbDoorStatus = parseInt($("#rbDoorStatus").val()); var trunk = parseInt($("#trunk").val()); var enginCover = parseInt($("#enginCover").val()); var doorStatus = lfDoorStatus + rfDoorStatus + lbDoorStatus + rbDoorStatus + trunk + enginCover var lfDoorLockStatus = parseInt($("#lfDoorLockStatus").val()); var rfDoorLockStatus = parseInt($("#rfDoorLockStatus").val()); var lbDoorLockStatus = parseInt($("#lbDoorLockStatus").val()); var rbDoorLockStatus = parseInt($("#rbDoorLockStatus").val()); var lockStatus = lfDoorLockStatus + rfDoorLockStatus + lbDoorLockStatus + rbDoorLockStatus var lfWindowStatus = parseInt($("#lfWindowStatus").val()); var rfWindowStatus = parseInt($("#rfWindowStatus").val()); var lbWindowStatus = parseInt($("#lbWindowStatus").val()); var rbWindowStatus = parseInt($("#rbWindowStatus").val()); var topWindowStatus = parseInt($("#topWindowStatus").val()); var lTurnLight = parseInt($("#lTurnLight").val()); var rTurnLight = parseInt($("#rTurnLight").val()); var readLight = parseInt($("#readLight").val()); var windowStatus = lfWindowStatus + rfWindowStatus + lbWindowStatus + rbWindowStatus + topWindowStatus + lTurnLight + rTurnLight + readLight var lowHeadlight = parseInt($("#lowHeadlight").val()); var highHeadlight = parseInt($("#highHeadlight").val()); var ffogLight = parseInt($("#ffogLight").val()); var bfogLight = parseInt($("#bfogLight").val()); var dangerLight = parseInt($("#dangerLight").val()); var backCarLight = parseInt($("#backCarLight").val()); var autoLight = parseInt($("#autoLight").val()); var widthLight = parseInt($("#widthLight").val()); var lightStatus = lowHeadlight + highHeadlight + ffogLight + bfogLight + dangerLight + backCarLight + autoLight + widthLight var machineOilWarning = parseInt($("#machineOilWarning").val()); var oilWarning = parseInt($("#oilWarning").val()); var wiperWarning = parseInt($("#wiperWarning").val()); var loudsspeakerWaring = parseInt($("#loudsspeakerWaring").val()); var airConditionerWaring = parseInt($("#airConditionerWaring").val()); var backMirrorWaring = parseInt($("#backMirrorWaring").val()); var swichStatusA = machineOilWarning + oilWarning + wiperWarning + loudsspeakerWaring + airConditionerWaring + backMirrorWaring var swichStatusB = parseInt($("#gears").val()); var data = {}; data["statusMask"] = statusMask; data["safeStatus"] = safeStatus; data["doorStatus"] = doorStatus; data["lockStatus"] = lockStatus; data["windowStatus"] = windowStatus; data["lightStatus"] = lightStatus; data["swichStatusA"] = swichStatusA; data["swichStatusB"] = swichStatusB; return data } //获取GSM主基站数据 function getGSMData(){ var operatorType = $("#operatorType").val(); var LAC = $("#LAC").val(); var CellId = $("#CellId").val(); var data = {}; data["operatorType"] = operatorType; data["LAC"] = LAC; data["CellId"] = CellId; return data } //获取报警数据 function alarmData(){ var data = {} if($("#0001").is(':checked')){ data["0001"] = get0001(); //获取点火事件数据 } if($("#0002").is(':checked')){ data["0002"] = get0002(); //获取熄火事件数据 } return data; } function get0001(){ return {}; } function get0002(){ return {}; } //事件的选择与取消选择 function alarmSelect(){ } //设置当前时间到UTC时间输入框 (function(){ var curTime = getCurTime(); $("#dateInfo").val(curTime); })(); function isShowCAN_area(e){ var val = $(e).val() if(val == "0"){ $("#CAN_area").css("display","none") }else{ $("#CAN_area").css("display","block") } } function isShowGPS_area(e){ var val = $(e).val() if(val == "0"){ $("#GPS_area").css("display","none") }else{ $("#GPS_area").css("display","block") } } </script> {% endblock %}