蓄电池监控管理平台数据库初始化程序
DELL
2025-03-22 7c594971d117f8ef5ca3977f1d087aa216e147df
修复系统参数表运行时报错
7个文件已修改
264 ■■■■ 已修改文件
BattMonitor_DB_Builder/.classpath 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/bin/com/database_util/DB_App_Sys.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/bin/com/database_util/DB_Ram_db.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/bin/com/version_inf/version_inf.txt 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/src/com/database_util/DB_App_Sys.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/src/com/database_util/DB_Ram_db.java 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/src/com/version_inf/version_inf.txt 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/.classpath
@@ -1,25 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
    <classpathentry kind="lib" path="lib/aopalliance-1.0.jar"/>
    <classpathentry kind="lib" path="lib/c3p0-0.9.5.jar"/>
    <classpathentry kind="lib" path="lib/c3p0-oracle-thin-extras-0.9.5.jar"/>
    <classpathentry kind="lib" path="lib/dom4j-1.6.1.jar"/>
    <classpathentry kind="lib" path="lib/ftplet-api-1.0.6.jar"/>
    <classpathentry kind="lib" path="lib/ftpserver-core-1.0.6.jar"/>
    <classpathentry kind="lib" path="lib/jcl-over-slf4j-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/jconn3.jar"/>
    <classpathentry kind="lib" path="lib/jxl.jar"/>
    <classpathentry kind="lib" path="lib/log4j-1.2.14.jar"/>
    <classpathentry kind="lib" path="lib/mchange-commons-java-0.2.9.jar"/>
    <classpathentry kind="lib" path="lib/mina-core-2.0.4.jar"/>
    <classpathentry kind="lib" path="lib/mysql-connector-java-5.1.30-bin.jar"/>
    <classpathentry kind="lib" path="lib/slf4j-api-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/slf4j-log4j12-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/spring-beans-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/spring-context-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/spring-core-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/sqljdbc4.jar"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
    <classpathentry kind="lib" path="lib/aopalliance-1.0.jar"/>
    <classpathentry kind="lib" path="lib/c3p0-0.9.5.jar"/>
    <classpathentry kind="lib" path="lib/c3p0-oracle-thin-extras-0.9.5.jar"/>
    <classpathentry kind="lib" path="lib/dom4j-1.6.1.jar"/>
    <classpathentry kind="lib" path="lib/ftplet-api-1.0.6.jar"/>
    <classpathentry kind="lib" path="lib/ftpserver-core-1.0.6.jar"/>
    <classpathentry kind="lib" path="lib/jcl-over-slf4j-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/jconn3.jar"/>
    <classpathentry kind="lib" path="lib/jxl.jar"/>
    <classpathentry kind="lib" path="lib/log4j-1.2.14.jar"/>
    <classpathentry kind="lib" path="lib/mchange-commons-java-0.2.9.jar"/>
    <classpathentry kind="lib" path="lib/mina-core-2.0.4.jar"/>
    <classpathentry kind="lib" path="lib/mysql-connector-java-5.1.30-bin.jar"/>
    <classpathentry kind="lib" path="lib/slf4j-api-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/slf4j-log4j12-1.5.2.jar"/>
    <classpathentry kind="lib" path="lib/spring-beans-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/spring-context-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/spring-core-2.5.5.jar"/>
    <classpathentry kind="lib" path="lib/sqljdbc4.jar"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
BattMonitor_DB_Builder/bin/com/database_util/DB_App_Sys.class
Binary files differ
BattMonitor_DB_Builder/bin/com/database_util/DB_Ram_db.class
Binary files differ
BattMonitor_DB_Builder/bin/com/version_inf/version_inf.txt
@@ -11,9 +11,23 @@
        mysql_upgrade -uroot -p
V2.10 edit at date 2025-03-18
    1.线程监控中新增 BTS2202_4802_LR_RS485通信线程'
    1.表'db_ram_db.tb_dev_6185_almparam'新增字段-B2202新增告警参数设置功能
          `battgroupnum` int(11) NOT NULL DEFAULT '1' COMMENT '组号[1-组1  2-组2]',
          `onlinevol_high_val` float NOT NULL DEFAULT '0' COMMENT '在线电压高阈值',
          `onlinevol_low_val` float NOT NULL DEFAULT '0' COMMENT '在线电压低阈值',
          `onlinevol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '在线电压告警使能[0-启用  1-不启用]',
          `groupvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组端电压告警使能[0-启用  1-不启用]',
          `monvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体电压告警使能[0-启用  1-不启用]',
          `montmp_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体温度告警使能[0-启用  1-不启用]',
          `monres_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体内阻告警使能[0-启用  1-不启用]',
          `moncap_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体容量告警使能[0-启用  1-不启用]',
          `discurr_high_val` float NOT NULL DEFAULT '0' COMMENT '放电电流上限阈值',
          `discurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '放电电流告警使能[0-启用  1-不启用]',
          `chrcurr_high_val` float NOT NULL DEFAULT '0' COMMENT '充电电流告警上限阈值',
          `chrcurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '充电电流告警使能[0-启用  1-不启用]',
    2.线程监控中新增 BTS2202_4802_LR_RS485通信线程'
         BTS2202_4802_LR_RS485通信线程-11035-[BMS_BTS2202_DISPLAY_RS485]
    2.新增东峰系统对接bms实时数据表'db_ram_db.tb_dfxt_bms_state'
    3.新增东峰系统对接bms实时数据表'db_ram_db.tb_dfxt_bms_state'
        CREATE TABLE `tb_dfxt_bms_state` (
          `num` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增主键',
          `dev_id` int(11) NOT NULL DEFAULT '1' COMMENT '设备ID',
BattMonitor_DB_Builder/src/com/database_util/DB_App_Sys.java
@@ -507,20 +507,20 @@
                    sql_str_bf.append("('42', '密码设置规则-位数', '8', '10','Password setting rules - number of digits'),");
                    sql_str_bf.append("('43', '密码设置规则-符号类型', '4', '10','Password Setting Rules - Symbol Types'),");
                    sql_str_bf.append("('44', '历史数据的驼峰锅底功能开启', '1', '11','Enabling the Hump Pot Bottom Function of Historical Data'),");
                    sql_str_bf.append("('45', '历史数据的数据显示粒度', '5', '11','Data display granularity of historical data'),");
                    sql_str_bf.append("('45', '历史数据的数据显示粒度', '5', '11','Data display granularity of historical data')");
                           
                    sql_str_bf.append("('47', '放电时长', '10', '12',''),");
                    sql_str_bf.append("('48', '左边规定放电时长', '10', '12',''),");
                    sql_str_bf.append("('49', '左边规定时间次数', '10', '12',''),");
                    sql_str_bf.append("('50', '右边规定时间时长', '1', '12',''),");
                    sql_str_bf.append("('51', '右边规定时间次数', '1', '12',''),");
                    sql_str_bf.append("('52', '放电优化时间', '2', '13',''),");
                    sql_str_bf.append(",('47', '放电时长', '10', '12','')");
                    sql_str_bf.append(",('48', '左边规定放电时长', '10', '12','')");
                    sql_str_bf.append(",('49', '左边规定时间次数', '10', '12','')");
                    sql_str_bf.append(",('50', '右边规定时间时长', '1', '12','')");
                    sql_str_bf.append(",('51', '右边规定时间次数', '1', '12','')");
                    sql_str_bf.append(",('52', '放电优化时间', '2', '13','')");
                    
                    sql_str_bf.append("('53', '核容放电时间过滤', '2', '14',''),");
                    sql_str_bf.append("('54', '核容充电时间过滤', '2', '14',''),");
                    sql_str_bf.append("('55', '监测放电时间过滤', '2', '14',''),");
                    sql_str_bf.append("('56', '监测充电时间过滤', '2', '14','')");
                    sql_str_bf.append("('57', '用户密码时效', '-1', '15','')");
                    sql_str_bf.append(",('53', '核容放电时间过滤', '2', '14','')");
                    sql_str_bf.append(",('54', '核容充电时间过滤', '2', '14','')");
                    sql_str_bf.append(",('55', '监测放电时间过滤', '2', '14','')");
                    sql_str_bf.append(",('56', '监测充电时间过滤', '2', '14','')");
                    sql_str_bf.append(",('57', '用户密码时效', '-1', '15','')");
                    //System.out.println(sql_str_bf.toString());
                    sql.sqlMysqlExecute(sql_str_bf.toString());
                    
@@ -796,6 +796,16 @@
                        + " ADD COLUMN `AppServer_Reinit_BattGroupData_6184_EN` tinyint(1) NOT NULL DEFAULT '0' COMMENT '全功能逆变假负载重载电池组数据';");
            }
            
            //添加6286重载数据
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_app_sys'"
                    + " AND table_name='tb_app_sys'"
                    + " AND column_name='AppServer_Reinit_BattGroupData_6286_EN'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.App_Sys_Table
                        + " ADD COLUMN `AppServer_Reinit_BattGroupData_6286_EN` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'BTS2202RS485重载电池组数据';");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
BattMonitor_DB_Builder/src/com/database_util/DB_Ram_db.java
@@ -288,14 +288,156 @@
                ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='BTS6185相关设备告警阈值遥调表';" + 
                ";";
        Sql_Mysql sql = new Sql_Mysql(pool.getConn());
        ResultSet res = null;
        try {
            if(true == recreate) {            
                sql.sqlMysqlExecute(sql_str01);
            }
            sql.sqlMysqlExecute(sql_str02);
            sql.sqlMysqlExecute(sql_str02);
            //电池组号:battgroupnum
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='battgroupnum'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `battgroupnum` int(11) NOT NULL DEFAULT '1' COMMENT '组号[1-组1  2-组2]'");
            }
            res = null;
            //在线电压高阈值:onlinevol_high_val
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='onlinevol_high_val'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `onlinevol_high_val` float NOT NULL DEFAULT '0' COMMENT '在线电压高阈值'");
            }
            res = null;
            //在线电压低阈值:onlinevol_low_val
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='onlinevol_low_val'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `onlinevol_low_val` float NOT NULL DEFAULT '0' COMMENT '在线电压低阈值'");
            }
            res = null;
            //在线电压告警使能:onlinevol_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='onlinevol_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `onlinevol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '在线电压告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //组端电压告警使能:groupvol_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='groupvol_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `groupvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组端电压告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //单体电压告警使能:monvol_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='monvol_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `monvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体电压告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //单体温度告警使能:montmp_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='montmp_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `montmp_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体温度告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //单体内阻告警使能:monres_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='monres_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                                + " ADD COLUMN `monres_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体内阻告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //单体容量告警使能:moncap_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='moncap_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                        + " ADD COLUMN `moncap_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体容量告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //放电电流上限阈值:discurr_high_val
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='discurr_high_val'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                        + " ADD COLUMN `discurr_high_val` float NOT NULL DEFAULT '0' COMMENT '放电电流上限阈值'");
            }
            res = null;
            //放电电流告警使能:discurr_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='discurr_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                        + " ADD COLUMN `discurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '放电电流告警使能[0-启用  1-不启用]'");
            }
            res = null;
            //充电电流告警上限阈值:chrcurr_high_val
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='chrcurr_high_val'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                        + " ADD COLUMN `chrcurr_high_val` float NOT NULL DEFAULT '0' COMMENT '充电电流告警上限阈值'");
            }
            res = null;
            //充电电流告警使能:chrcurr_en
            res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns"
                    + " WHERE table_schema='db_ram_db'"
                    + " AND table_name='tb_dev_6185_almparam'"
                    + " AND column_name='chrcurr_en'");
            if(false == res.next()) {
                sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.Dev_6185_AlmpPram_Table
                        + " ADD COLUMN `chrcurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '充电电流告警使能[0-启用  1-不启用]'");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            if(null != res) {
                try {
                    res.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            sql.close_con();
        }        
    }
BattMonitor_DB_Builder/src/com/version_inf/version_inf.txt
@@ -11,9 +11,23 @@
        mysql_upgrade -uroot -p
V2.10 edit at date 2025-03-18
    1.线程监控中新增 BTS2202_4802_LR_RS485通信线程'
    1.表'db_ram_db.tb_dev_6185_almparam'新增字段-B2202新增告警参数设置功能
          `battgroupnum` int(11) NOT NULL DEFAULT '1' COMMENT '组号[1-组1  2-组2]',
          `onlinevol_high_val` float NOT NULL DEFAULT '0' COMMENT '在线电压高阈值',
          `onlinevol_low_val` float NOT NULL DEFAULT '0' COMMENT '在线电压低阈值',
          `onlinevol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '在线电压告警使能[0-启用  1-不启用]',
          `groupvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组端电压告警使能[0-启用  1-不启用]',
          `monvol_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体电压告警使能[0-启用  1-不启用]',
          `montmp_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体温度告警使能[0-启用  1-不启用]',
          `monres_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体内阻告警使能[0-启用  1-不启用]',
          `moncap_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '单体容量告警使能[0-启用  1-不启用]',
          `discurr_high_val` float NOT NULL DEFAULT '0' COMMENT '放电电流上限阈值',
          `discurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '放电电流告警使能[0-启用  1-不启用]',
          `chrcurr_high_val` float NOT NULL DEFAULT '0' COMMENT '充电电流告警上限阈值',
          `chrcurr_en` tinyint(4) NOT NULL DEFAULT '0' COMMENT '充电电流告警使能[0-启用  1-不启用]',
    2.线程监控中新增 BTS2202_4802_LR_RS485通信线程'
         BTS2202_4802_LR_RS485通信线程-11035-[BMS_BTS2202_DISPLAY_RS485]
    2.新增东峰系统对接bms实时数据表'db_ram_db.tb_dfxt_bms_state'
    3.新增东峰系统对接bms实时数据表'db_ram_db.tb_dfxt_bms_state'
        CREATE TABLE `tb_dfxt_bms_state` (
          `num` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增主键',
          `dev_id` int(11) NOT NULL DEFAULT '1' COMMENT '设备ID',