Administrator
2021-08-09 92aad2bdb3fc2552dfc199801c32b8bd9bb61472
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
78
79
80
81
82
83
84
85
86
87
88
package com.dev_fbs9600.data;
 
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
 
import com.battmonitor.base.Com;
import com.battmonitor.sql.MysqlConnPool;
import com.battmonitor.sql.Sql_Mysql;
 
public class FBS9600_State_SQL {
    /***********************************************************************************/
    public static void updateFbs9600State_ByID(MysqlConnPool con_pool, FBS9600_State state_9600)
    {
        String sql_str_base = Sql_Mysql.FBS9100State_Table
                        + " SET "
                        + " dev_ip = '" + state_9600.ip_addr + "', "
                        + " record_datetime="
                        + "'" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "',"
                        + " dev_workstate = " + state_9600.getWorkState() + ", "
                        + " dev_commcount = " + state_9600.com_count + ", "
                        + " dev_errcommcount = " + state_9600.com_err_count + ", "
                        + " dev_id = " + state_9600.dev_id;
        String sql_str_replace = "REPLACE INTO " + sql_str_base;
        //System.out.println(sql_str_replace);
        Sql_Mysql sql = new Sql_Mysql(con_pool.getConn());
        try {
            sql.sqlMysqlExecute(sql_str_replace);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            //e.printStackTrace();
        } finally {
            sql.close_con();
        }
    }
    /***********************************************************************************/
    /***********************************************************************************/
    public static void queryFbs9600UsrCmd_ByID(MysqlConnPool con_pool, FBS9600_State fbs9600_stat)
    {
        String sql_str = "SELECT op_cmd FROM " + Sql_Mysql.FBS9100State_Table
                         + " WHERE dev_id=" + fbs9600_stat.dev_id;
        Sql_Mysql sql = new Sql_Mysql(con_pool.getConn());
        ResultSet res = sql.sqlMysqlQuery(sql_str);
        try {
            if(res.next()) {
                int cmd = res.getInt("op_cmd");
                
                if(FBS9600_State.UsrCmdNull == fbs9600_stat.getFBS9600Cmd()) {
                    fbs9600_stat.setFBS9600CmdAckFromDev(false);
                    fbs9600_stat.setFBS9600Cmd(cmd);
                }
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            //e.printStackTrace();
        } finally {
            sql.close_con();
        }
    }
    /***********************************************************************************/
    /***********************************************************************************/
    public static void updateFbs9600UsrCmdAck_ByID(MysqlConnPool con_pool, FBS9600_State fbs9600_state)
    {
        if((FBS9600_State.UsrCmdNull != fbs9600_state.getFBS9600Cmd()) 
                && (true == fbs9600_state.getFBS9600CmdAckFromDev()))
        {
            String sql_str_base = Sql_Mysql.FBS9100State_Table 
                                + " SET "
                                + " op_cmd = " + FBS9600_State.UsrCmdNull + ", "
                                + " dev_id = " + fbs9600_state.dev_id;
            String sql_str_replace = "REPLACE INTO " + sql_str_base;
            
            Sql_Mysql sql = new Sql_Mysql(con_pool.getConn());
            try {
                sql.sqlMysqlExecute(sql_str_replace);
            } catch (SQLException e) {
            // TODO Auto-generated catch block
            //e.printStackTrace();
            } finally {
                sql.close_con();
            }
            
            fbs9600_state.setFBS9600Cmd(FBS9600_State.UsrCmdNull);
            fbs9600_state.setFBS9600CmdAckFromDev(false);
        }
    }
    /***********************************************************************************/
}