whyclj
2020-09-23 aa8c04269a191e7c4b157b6442b7beb0e064a5b5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package com.electrical.TwoKW;
 
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_2MW_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_2MW_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_2MW_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_2MW_alarm
                                    + "    WHERE electric_id = "+delalarm.dev_id+" AND alarm_id = "+delalarm.alarm_id
                                + " )";
            //ɾ³ýʵʱ¸æ¾¯¼Ç¼
            String sql_str_del = "DELETE FROM "+Sql_Mysql.Tb_Electric_2MW_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();
        }
        
    }
    
    
 
}