package com.electrical.FourKW;
|
|
import java.sql.ResultSet;
|
import java.sql.SQLException;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import com.base.Com;
|
import com.sql.MysqlConnPool;
|
import com.sql.Sql_Mysql;
|
|
public class DeviceAlarm_Thread_SQL {
|
|
/**
|
* ²åÈëеĸ澯¼Ç¼
|
* @param pool
|
* @param addalarm
|
*/
|
public static void insertNewAlarm(MysqlConnPool pool, List<DeviceAlarm> addalarm) {
|
String sql_str = "INSERT INTO "+Sql_Mysql.Tb_Electric_alarm+"(electric_id,alarm_id,alarm_starttime,alarm_endtime,alarm_confirmtime) VALUES ";
|
for(int i=0;i<addalarm.size();i++) {
|
DeviceAlarm alarm = addalarm.get(i);
|
if(i > 0) {
|
sql_str += ",";
|
}
|
sql_str += "("
|
+ alarm.dev_id +","
|
+ alarm.alarm_id + ",'"
|
+ Com.getDateTimeFormat(alarm.alarm_starttime, Com.DTF_YMDhms) +"','"
|
+ Com.getDateTimeFormat(alarm.alarm_endtime, Com.DTF_YMDhms) +"','"
|
+ Com.getDateTimeFormat(alarm.alarm_confirmtime, Com.DTF_YMDhms) +"'"
|
+ ")";
|
}
|
Sql_Mysql sql = null;
|
try {
|
sql = new Sql_Mysql(pool.getConn());
|
sql.sqlMysqlExecute(sql_str);
|
} catch (SQLException e) {
|
e.printStackTrace();
|
} finally {
|
sql.close_con();
|
}
|
}
|
|
/**
|
* ½«ÊµÊ±¸æ¾¯±ä³ÉÀúÊ·¸æ¾¯¼Ç¼
|
* @param pool
|
* @param delalarm
|
*/
|
public static void makeRealToHistory(MysqlConnPool pool, DeviceAlarm delalarm) {
|
String sql_str_upd = "UPDATE "+Sql_Mysql.Tb_Electric_alarm+" SET alarm_endtime = '"+Com.getDateTimeFormat(delalarm.alarm_endtime, Com.DTF_YMDhms)+"'" +
|
" WHERE electric_id = "+delalarm.dev_id+" AND alarm_id = " +delalarm.alarm_id; //¸üе±Ç°¸æ¾¯µÄ½áÊøÊ±¼ä
|
Sql_Mysql sql = new Sql_Mysql(pool.getConn());
|
try {
|
sql.sqlMysqlExecute(sql_str_upd);
|
//²åÈëÀúÊ·¸æ¾¯
|
String sql_str_ins = "INSERT INTO "+Sql_Mysql.Tb_Electric_alarm_history+"(electric_id,alarm_id,alarm_starttime,alarm_endtime,alarm_confirm,alarm_confirmtime) "
|
+ " (SELECT electric_id,alarm_id,alarm_starttime,alarm_endtime,alarm_confirm,alarm_confirmtime "
|
+ " FROM "+Sql_Mysql.Tb_Electric_alarm
|
+ " WHERE electric_id = "+delalarm.dev_id+" AND alarm_id = "+delalarm.alarm_id
|
+ " )";
|
//ɾ³ýʵʱ¸æ¾¯¼Ç¼
|
String sql_str_del = "DELETE FROM "+Sql_Mysql.Tb_Electric_alarm+" WHERE electric_id = "+delalarm.dev_id+" AND alarm_id = "+delalarm.alarm_id;
|
ArrayList<String> sql_strs = new ArrayList<String>();
|
sql_strs.add(sql_str_ins);
|
sql_strs.add(sql_str_del);
|
sql.makeManualCommit(sql_strs);
|
} catch (SQLException e) {
|
e.printStackTrace();
|
} finally {
|
sql.close_con();
|
}
|
|
}
|
|
/**
|
* ²éѯµ±Ç°É豸ÉÏÒ»´ÎµÄÀúÊ·¸æ¾¯¼Ç¼±í
|
* @param pool
|
* @param alarm
|
*/
|
public static void searchLastDeviceAlarm(MysqlConnPool pool,Electric_alarm alarm) {
|
String sql_str = "SELECT * FROM "+Sql_Mysql.Tb_Electric_alarm+" WHERE electric_id = " + alarm.electric_id;
|
ResultSet res = null;
|
Sql_Mysql sql = new Sql_Mysql(pool.getConn());
|
try {
|
res = sql.sqlMysqlQuery(sql_str);
|
while(res.next()) {
|
//¼ÓÔØµ±Ç°É豸֮ǰµÄʵʱ¸æ¾¯¼Ç¼
|
alarm.setAlarmStateByAlarm_id(res.getInt("alarm_id"));
|
}
|
} catch (SQLException e) {
|
e.printStackTrace();
|
} finally {
|
if(res != null) {
|
try {
|
res.close();
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
}
|
sql.close_con();
|
}
|
}
|
|
}
|