From 58c605a8f48cebc888883ed70dc46b82ad8d3b96 Mon Sep 17 00:00:00 2001 From: DELL <1525436766@qq.com> Date: 星期一, 06 一月 2025 16:11:27 +0800 Subject: [PATCH] V1.108 edit by lijun 2025-01-06 1.新增批量授权逻辑,批量授权或取消时同时记录操作日志 --- ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java | 68 ++++++++++++++++++++++++++++++++++ 1 files changed, 68 insertions(+), 0 deletions(-) diff --git a/ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java b/ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java index 961473f..f615153 100644 --- a/ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java +++ b/ElectLock_Monitor/src/com/dev/lock/comm/Lock_Task_SQL.java @@ -2,8 +2,12 @@ import java.sql.ResultSet; import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; import com.base.Com; +import com.dev.lock.data.ElectLock_AuthIdcard; import com.dev.lock.data.ElectLock_ComBase; import com.dev.lock.data.ElectLock_Ctl_Log; import com.dev.lock.data.ElectLock_State; @@ -168,4 +172,68 @@ sql.close_con(); } } + + + 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 " + + " 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()); + ResultSet res = null; + try { + res = sql.sqlMysqlQuery(sql_str); + while(res.next()) { + ElectLock_AuthIdcard auth = new ElectLock_AuthIdcard(); + auth.key_id = res.getInt("key_id"); //'閽ュ寵id', + auth.lock_id = res.getInt("lock_id"); //'閿佸叿id', + 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鍗″彿 + + batch_auth.add(auth); + } + } 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 batch_auth; + } + + + /** + * 灏嗗綋鍓嶆壒閲忔搷浣滆褰曠Щ鍔ㄥ埌鍘嗗彶琛� + * @param pool + * @param tmp_auth + */ + public static void moveAuth_Idcard_Table(MysqlConnPool pool, ElectLock_AuthIdcard tmp_auth) { + ArrayList<String> sql_strs = new ArrayList<>(); + String sql_str_ins = "INSERT INTO " + Sql_Mysql.Auth_Idcard_His_Table + "(key_id,lock_id,state,create_time,end_time,auth_result)" + + "(" + + " SELECT key_id,lock_id,state,create_time,NOW()," + tmp_auth.auth_result + + " FROM " + Sql_Mysql.Auth_Idcard_Table + + " WHERE lock_id = " + tmp_auth.lock_id + " AND key_id = " + tmp_auth.key_id + + " AND create_time = '" + Com.getDateTimeFormat(tmp_auth.create_time, Com.DTF_YMDhms) + "' " + + ");"; + String sql_str_del = "DELETE FROM " + Sql_Mysql.Auth_Idcard_Table + " WHERE lock_id = " + tmp_auth.lock_id + " AND key_id = " + tmp_auth.key_id + " AND create_time = '" + Com.getDateTimeFormat(tmp_auth.create_time, Com.DTF_YMDhms) + "'"; + System.out.println(sql_str_ins); + sql_strs.add(sql_str_ins); + sql_strs.add(sql_str_del); + Sql_Mysql sql = new Sql_Mysql(pool.getConn()); + try { + sql.makeManualCommit(sql_strs); + } catch (Exception e) { + sql.logger.error(e.toString(),e); + } finally { + sql.close_con(); + } + } } -- Gitblit v1.9.1