⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hqgprs.java~1~

📁 用java写编写的一个GPS源代码请大家多多指教
💻 JAVA~1~
📖 第 1 页 / 共 3 页
字号:
package com.gps.center.parsedata;

import java.io.*;
import java.util.regex.*;
import javax.xml.parsers.*;

import org.w3c.dom.*;
//解析命令类
public class HQGPRS  extends ParseData   implements ParseInterface {
  public HQGPRS() {
    readxml();
  }
  private String[] reStr;
  private String[][] deviceIdPhone = null;
//  private String[][] deviceIDPhone = null;
  /**
   * ParseMsg
   * @param msg MsgObj
   */
  public void ParseMsg(MsgObj msg) {
    Pattern regex;
    ParseInterface parseobj;
    regex = Pattern.compile("[,]");
    reStr = regex.split(msg.cMsg);
    //102, 13954667441, NULL, 张三, 13800100500
    switch (Integer.parseInt(reStr[0])) {
      case 102:
        FmSetMSCA102(msg);
        break; //不支持
      case 103:
        FmSetMonitorSMSNum103(msg);
        break;
      case 104:
        FmSetMonitorSMSNum104(msg);
        break;
      case 105:
        FmSetDeviceID105(msg);
        break; //不支持
      case 106:
        FmSetDevPassword106(msg);
        break; //暂不支持:
      case 107:
        FmSetGPRSCenter107(msg);
        break;
      case 108:
        FmSetSpeedAlarm108(msg);
        break;
      case 109:
        FmSetTemperatureAlarm109(msg);
        break;
      case 110:
        FmSetCurrentRail110(msg);
        break; //暂不支持:
      case 111:
        FmSetRailAlarm111(msg);
        break;
      case 112:
        FmSetGprsAPN112(msg);
        break;
      case 113:
        FmSetCarTeam113(msg);
        break;
//      case 114:
//        FmLocationInfo114(msg);
      case 115:
        FmRollcallDevice115(msg);
        break;
      case 116:
        FmTimingCallDevice116(msg);
        break;
      case 117:
        FmTimingDegreeCall117(msg);
        break;
      case 118:
        FmCompressTimingCall118(msg);
        break;
      case 119:
        FmRemoteControl119(msg);
        break;
      case 120:
        FmQueryVehicleState120(msg);
        break;
      case 121:
        FmSMSInfo121(msg);
        break;
      case 122:
        FmStopAlarm122(msg);
        break;
      case 124:
        FmStopTimingCallDevice124(msg);
        break;
      case 126:
        AutoRSP126 temp = new AutoRSP126();
        temp.ParseMsg(msg);
        break;
      case 127:
        FmsetPhoneNumCondition127(msg);
        break;
    }

  }

  private void FmsetPhoneNumCondition127(MsgObj msg) {
    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    HashObj hashobj = null;
    String strDate = CanSend.getTime();
    //String queryStr = null;
    //queryStr = super.DbServer.getUserPopedom(reStr[2]);
    //127, 13954667441, 京A-1234,,张三,1,112
    //*HQ,0000000000,S5,130305,2,1,112#
    if (super.centerMap.containsKey(reStr[1])) {
      hashobj = (HashObj)super.centerMap.get(reStr[1]);
      if (hashobj.cDeviceTcpUsed) {
        if (CanSend.CanSendMsg(hashobj.cDateTime)) {
          msg.cMsgType = TCPSENDTODEVICE;
        }
      }
      else {
        msg.cMsgType = SMSSENDTODEVICE;
      }
    }
    else {
      msg.cMsgType = SMSSENDTODEVICE;
    }

    sendStr = "*HQ," + reStr[1] + ",S5," + strDate + ",2," + reStr[4] + "," +
        reStr[5] + "#";
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cDeviceID = reStr[1];
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmRemoteControl119(MsgObj msg) {
    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    HashObj hashobj = null;
    String strDate = CanSend.getTime();
    //119,0000000000,京A-1234,张三,10,01062328855
    if (super.centerMap.containsKey(reStr[1])) {
      hashobj = (HashObj)super.centerMap.get(reStr[1]);
      if (hashobj.cDeviceTcpUsed) {
        if (CanSend.CanSendMsg(hashobj.cDateTime)) {
          msg.cMsgType = TCPSENDTODEVICE;
        }
      }
      else {
        msg.cMsgType = SMSSENDTODEVICE;
      }
    }
    else {
      msg.cMsgType = SMSSENDTODEVICE;
    }

    String strCommand = reStr[5];
    switch (Integer.parseInt(reStr[4])) {
      case 10:

        //*HQ,0000000000,R8,130305,01062926359
         sendStr = new String("*HQ," + reStr[1] + ",R8," + strDate + reStr[5]);
        break;
      case 13:

        //*HQ,0000000000,S20,130305,1,3,10,3,5,5,3,5,3,5,3,5#
         sendStr = new String("*HQ," + reStr[1] + ",S20," + strDate +
                              ",1,3,10,3,5,5,3,5,3,5,3,5#");
        break;
      case 14:

        //*HQ,0000000000,S20,130305,1,0#
         sendStr = new String("*HQ," + reStr[1] + ",S20," + strDate + ",1,0#");
        break;
      case 26:

        //*HQ, 000000,R1,130305#
         sendStr = new String("*HQ," + reStr[1] + ",R1," + strDate + "#");
        break;
      case 31:

        //*HQ,0000000000,S13,130305,3D#
         sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3E#");
        break;
      case 32:

        //*HQ,0000000000,S13,130305,3D#
         sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3D#");
        break;
      case 33:

        //*HQ,0000000000,S13,130305,3D#
         sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3C#");
        break;
      case 34:

        //*HQ,0000000000,S25,130305#
         sendStr = new String("*HQ," + reStr[1] + ",S25," + strDate + "#");
        break;
      case 35:

        //*HQ,000,S33,130305,65#
         sendStr = new String("*HQ," + reStr[1] + ",S33," + strDate + "," +
                              reStr[5] + "#");
        break;
      case 38:

        //*HQ, 000000,R7,130305#
         sendStr = new String("*HQ," + reStr[1] + ",R7," + strDate + "#");
        break;
      case 39:

        //*HQ,0000000000,S27,130305,0#
         sendStr = new String("*HQ," + reStr[1] + ",S27," + strDate + "0#");
        break;
      case 40:

        //*HQ,0000000000,S1,130305#
         sendStr = new String("*HQ," + reStr[1] + ",S1," + strDate + "#");
        break;
      default:
        sendStr = new String("119,0," + reStr[1] + "," + reStr[2]);
        msg.cMsgType = TCPRETURNTERMINAL;
    }
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cDeviceID = reStr[1];
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmSetMSCA102(MsgObj msg) {

    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    //102, 13954667441, 京A-1234, 张三, +8613800100500
    sendStr = new String("102,2," + reStr[1] + "," + reStr[2]);
    msg.cMsgType = TCPRETURNTERMINAL;
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cMsg = sendStr;
    super.addSendMsg(msg);

  }

  private void FmSetMonitorSMSNum103(MsgObj msg) {
    String sendStr = null;
    HashObj hashobj = null;
    String strDate = CanSend.getTime();
    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    //103, 13612345678,京A-1234, 张三, 13901234567
    //*HQ,0000000103,S2,130305,13812345678#
    sendStr = new String("*HQ," + reStr[1] + ",S2," + strDate + "," + reStr[4] +
                         "#");
    if (super.centerMap.containsKey(reStr[1])) {
      hashobj = (HashObj)super.centerMap.get(reStr[1]);
      if (hashobj.cDeviceTcpUsed) {
        if (CanSend.CanSendMsg(hashobj.cDateTime)) {
          msg.cMsgType = TCPSENDTODEVICE;
        }
      }
      else {
        msg.cMsgType = SMSSENDTODEVICE;
      }
    }
    else {
      msg.cMsgType = SMSSENDTODEVICE;
    }
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cDeviceID = reStr[1];
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmSetMonitorSMSNum104(MsgObj msg) {

    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    HashObj hashobj = null;
    //104,0000000000,京A-1234, 张三, 13901234567
    //*HQ,0000000000,S28,130305,13901234567#
    String strDate = CanSend.getTime();
    sendStr = new String("*HQ," + reStr[1] + ",S28," + strDate + "," + reStr[4] +
                         "#");
    if (super.centerMap.containsKey(reStr[1])) {
      hashobj = (HashObj)super.centerMap.get(reStr[1]);
      if (hashobj.cDeviceTcpUsed) {
        if (CanSend.CanSendMsg(hashobj.cDateTime)) {
          msg.cMsgType = TCPSENDTODEVICE;
        }
      }
      else {
        msg.cMsgType = SMSSENDTODEVICE;
      }
    }
    else {
      msg.cMsgType = SMSSENDTODEVICE;
    }
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cDeviceID = reStr[1];
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmSetDeviceID105(MsgObj msg) {

    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    String queryStr = null;
//    queryStr = super.DbServer.getUserPopedom(reStr[2]);
//   //105, 13901234567,NULL, 张三, 13901234567
    sendStr = new String("105,2," + reStr[1] + "," + reStr[2]);
    msg.cMsgType = TCPRETURNTERMINAL;
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmSetDevPassword106(MsgObj msg) {

    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
    String queryStr = null;
//    queryStr = super.DbServer.getUserPopedom(reStr[2]);
    //106, 13954667441, 京A-1234, 张三, 1234,0000
    //MCOM0004,00000102,0000,1234
    sendStr = "106,2," + reStr[1] + "," + reStr[2];
    msg.cMsgType = TCPRETURNTERMINAL;
    msg.cPhoneNum = getPhoneNum(reStr[1]);
    msg.cDeviceID = reStr[1];
    msg.cMsg = sendStr;
    super.addSendMsg(msg);
  }

  private void FmSetGPRSCenter107(MsgObj msg) {

    //添加Msg到sendQueue
    //cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
    //4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
    String sendStr = null;
//    HashObj hashobj = null;
//    String queryStr = null;
//    queryStr = super.DbServer.getUserPopedom(reStr[2]);
    //107,0000000000,京A-1234, 张三, 123.123.123.123:0808
    //*HQ,0000000000,S23,130305,123,123,123,123,0808,5#
    String strDate = CanSend.getTime();

    Pattern regex;
//    ParseInterface parseobj;
    regex = Pattern.compile("[.]|[:]");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -