DELL
2025-01-15 c5d336ee11991456b69d00257124ea1627e985b7
ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java
@@ -25,8 +25,12 @@
      try {
         res = sql.sqlMysqlQuery(sql_str_sel);
         if(res.next()) {
            state.setLock_state(res.getInt("lock_state"));
            state.setComm_count(res.getInt("comm_count"));            //'通信计数',
            state.setErr_tol_count(res.getInt("err_tol_count"));      //'总错误计数',
            System.out.println("lock_state:" +state.getLock_state());
         }else {
            sql.sqlMysqlExecute(sql_str_ins);
         }
@@ -81,6 +85,7 @@
      String sql_str = "UPDATE " + Sql_Mysql.Lock_Inf_Table + 
                  " Set lock_state = " +  state.getLock_state() +
                  " ,lock_online =  " + state.getLock_online() +
                  " ,lock_mac =  '" + state.getLockMacAddr() + "'" +
                  " ,last_update_time = NOW() " +
                  " WHERE lock_id = " + lock_id;
      Sql_Mysql sql = new Sql_Mysql(pool.getConn());
@@ -101,7 +106,7 @@
    * @param param
    */
   public static void queryElectLockControlCmd(MysqlConnPool pool,int lock_id,ElectLock_State param) {
      String sql_str =  " SELECT op_cmd,id_card_set,lock_addr_set "
      String sql_str =  " SELECT op_cmd,id_card_set,lock_addr_set,ctl_uname "
                  + " FROM " + Sql_Mysql.Lock_Rt_Table + ""
                  + " WHERE lock_id = " + lock_id;
      Sql_Mysql sql = new Sql_Mysql(pool.getConn());
@@ -112,6 +117,7 @@
            param.setOp_cmd(res.getInt("op_cmd"));
            param.setId_card_set(res.getInt("id_card_set"));
            param.setLock_addr_set(res.getInt("lock_addr_set"));
            param.setCtl_uname(res.getString("ctl_uname"));
            
         }
      } catch (SQLException e) {
@@ -158,12 +164,13 @@
    */
   public static void insertLock_Ctl_Log_Table(MysqlConnPool pool,ElectLock_Ctl_Log log) {
      String sql_str_ins = "INSERT INTO "  + Sql_Mysql.Lock_Ctl_Log_Table +  ""
                     + "   (lock_id,ctl_type,ctl_result,ctl_time,ctl_id_card) VALUES("
                     + "   (lock_id,ctl_type,ctl_result,ctl_time,ctl_id_card,ctl_uname) VALUES("
                     + "" + log.lock_id
                     + "," + log.ctl_type + ""
                     + "," + log.ctl_result + ""
                     + ",'" + Com.getDateTimeFormat(log.ctl_time, Com.DTF_YMDhms) + "'"
                     + "," + log.ctl_id_card + ""
                     + ",'" + log.ctl_uname + "'"
                     + ");";
      Sql_Mysql sql = new Sql_Mysql(pool.getConn());
      try {
@@ -178,7 +185,7 @@
   public static List<ElectLock_AuthIdcard> queryAuth_Idcard_Table(MysqlConnPool pool, int client_id) {
      List<ElectLock_AuthIdcard> batch_auth = new ArrayList<>();
      String sql_str = "SELECT DISTINCT(tb_key_inf.key_id),lock_id,state,tb_auth_idcard.create_time,key_number " +
      String sql_str = "SELECT DISTINCT(tb_key_inf.key_id),lock_id,state,tb_auth_idcard.create_time,key_number,ctl_uname " +
                  " FROM " + Sql_Mysql.Key_Inf_Table + "," + Sql_Mysql.Auth_Idcard_Table +
                  " WHERE tb_key_inf.key_id = tb_auth_idcard.key_id AND lock_id = " + client_id + " AND key_type = 1 ";
      Sql_Mysql sql = new Sql_Mysql(pool.getConn());
@@ -192,6 +199,8 @@
            auth.state = res.getInt("state");               //'1:移除id卡,2添加id卡,3已处理',
            auth.create_time = res.getTimestamp("create_time");   //'创建时间'
            auth.key_number = res.getString("key_number");      //ID卡号
            auth.ctl_uname = res.getString("ctl_uname");      //操作人姓名
            
            batch_auth.add(auth);
         }
@@ -238,4 +247,40 @@
         sql.close_con();
      }
   }
   /**
    *    查询ID钥匙的归属人姓名
    * @param pool
    * @param client_id
    * @param last_unlock_id
    * @return
    */
   public static String queryKeyInfByKeyNumberTable(MysqlConnPool pool, int keyNumber) {
      String uname = "";
      String sql_str =  " SELECT * FROM " + Sql_Mysql.Key_Inf_Table
                  + " WHERE key_number = " + keyNumber;
      Sql_Mysql sql = new Sql_Mysql(pool.getConn());
      ResultSet res = null;
      try {
         System.out.println("====="+sql_str);
         res = sql.sqlMysqlQuery(sql_str);
         if(res.next()) {
            uname = res.getString("uname");
            System.out.println("uname:" + uname);
         }
      } catch (SQLException e) {
         sql.logger.error(e.toString(),e);
      } finally {
         if(null != res) {
            try {
               res.close();
            } catch (SQLException e) {
               sql.logger.error(e.toString(),e);
            }
         }
         sql.close_con();
      }
      return uname;
   }
}