DELL
2025-04-28 eb746715527db9b42740db84bb576735185e21cd
ElectLock_Monitor/src/com/dev/lock/data/ElectLock_State.java
@@ -15,8 +15,14 @@
   
//   public static int Reg_Count_Real = 8;      //寄存器数量
//   public static int Reg_Count_Real = 11;      //寄存器数量
   public static int Reg_Count_Real = 12;      //寄存器数量
//   public static int Reg_Count_Real = 12;      //寄存器数量
   public static int Reg_Count_Real = 14;      //寄存器数量
   
   public static int Reg_Count_Card = 100;      //读取已授权电池卡寄存器数量
   private int lock_id;            //锁具ID[当前需要操作的锁具ID号]
   private Date record_time = new Date(0);         //'更新时间',
   private String gprs_sn;            //'gprs模块SN码',
   private String client_ip;         //'设备IP地址',
@@ -31,7 +37,7 @@
   private int err_tol_count;         //'总错误计数',
   private int err_count;            //'连续错误计数',
   private int op_cmd;               //'控制命令',
   private int id_card_set;         //'授权ID卡号',
   private long id_card_set;         //'授权ID卡号',
   private int lock_addr_set;         //'设置设备地址[慎用]',
   private int workmodel;            //工作模式【0-离线模式   1-在线模式】
   
@@ -45,9 +51,16 @@
   private String ctl_uname = "";      //操作用户名
   
   private int bluetooth_st_state;      //蓝牙开关:0-关闭蓝牙  1-开启蓝牙
   private int bluetooth_state;      //蓝牙状态:0:蓝牙已关闭,1:蓝牙已开启
   
   private int lock_open_count;   //'锁具总开启次数'
   private Date last_update_time;   //上一次锁具开启或关闭时间
   private Date last_update_time = new Date(0);   //上一次锁具开启或关闭时间
   private long[] id_cards = new long[ElectLock_ComBase.Lock_MaxCardCount];
   private int readCount = 0;            //读取数据次数,用于读取已授权卡号
   
   public ElectLock_State() {
      
@@ -78,8 +91,15 @@
      for(int k =0;k<mac_addr.length;k++) {
         mac_addr[k] = ComBase.changeByteToInt(buffer.get());
      }
      workmodel  = ComBase.changeShortToInt(buffer.getShort());
      workmodel  = ComBase.changeShortToInt(buffer.getShort());
      
      bluetooth_st_state  = ComBase.changeShortToInt(buffer.getShort());
      bluetooth_state  = ComBase.changeShortToInt(buffer.getShort());
//      System.out.println("工作模式:" + workmodel);
//      System.out.println("BlutoothMAC:" + getLockMacAddr());
//      System.out.println("bluetooth_st_state:" + getBluetooth_st_state());
//      System.out.println("bluetooth_state:" + getBluetooth_state());
//      System.out.println("BlutoothMAC:" + getLockMacAddr());
      
      //System.out.println("this.lock_state:"+tmp_lock_state+"********lock_state:"+lock_state);
@@ -98,7 +118,26 @@
         this.last_update_time = new Date();
      }
      record_time = new Date();
      readCount ++;
      if(readCount >= 999998) {
         readCount = 0;
      }
      buffer.compact();
      return true;
   }
   public boolean putCardByteBuffer(ByteBuffer buffer,int idx) {
      if(buffer.limit() < (Reg_Count_Card*2)) {
         System.out.println("实时信息返回长度错误" + buffer.limit());
         return false;
      }
      buffer.order(ByteOrder.BIG_ENDIAN);
      buffer.position(0);
      for(int k = idx;k<(idx+50) && k < ElectLock_ComBase.Lock_MaxCardCount;k++) {
         id_cards[k] = (buffer.getInt()&0xFFFFFFFF);
      }
      return true;
   }
   
@@ -106,6 +145,49 @@
      return String.format("%02x:%02x:%02x:%02x:%02x:%02x", mac_addr[0],mac_addr[1],mac_addr[2],mac_addr[3],mac_addr[4],mac_addr[5]).toUpperCase();
   }
   
   public void resetLockMacAddr() {
      for(int n=0;n<mac_addr.length;n++) {
         mac_addr[n] = 0xFF;
      }
   }
   public int getReadCount() {
      return readCount;
   }
   public long[] getId_cards() {
      return id_cards;
   }
   public void setId_cards(long[] id_cards) {
      this.id_cards = id_cards;
   }
   public int getBluetooth_st_state() {
      return bluetooth_st_state;
   }
   public int getBluetooth_state() {
      return bluetooth_state;
   }
   public void setBluetooth_st_state(int bluetooth_st_state) {
      this.bluetooth_st_state = bluetooth_st_state;
   }
   public void setBluetooth_state(int bluetooth_state) {
      this.bluetooth_state = bluetooth_state;
   }
   public int getLockDevId() {
      return 10000000 + this.lock_addr;
   }
@@ -210,7 +292,7 @@
      return op_cmd;
   }
   public int getId_card_set() {
   public long getId_card_set() {
      return id_card_set;
   }
@@ -274,7 +356,7 @@
      this.op_cmd = op_cmd;
   }
   public void setId_card_set(int id_card_set) {
   public void setId_card_set(long id_card_set) {
      this.id_card_set = id_card_set;
   }
@@ -312,6 +394,19 @@
   }
   public int getLock_id() {
      return lock_id;
   }
   public int getLockAddr() {
      return lock_id%1000;
   }
   public void setLock_id(int lock_id) {
      this.lock_id = lock_id;
   }
   public void addCommCount() {
      this.comm_count ++ ;
      if(this.comm_count > 999990000) {