lv.wenbin 1 gadu atpakaļ
vecāks
revīzija
55f9f93ac3
1 mainītis faili ar 881 papildinājumiem un 0 dzēšanām
  1. 881 0
      ems-cloud/sql/ems_server.sql

+ 881 - 0
ems-cloud/sql/ems_server.sql

@@ -0,0 +1,881 @@
+SET NAMES utf8mb4;
+
+-- ----------------------------
+-- 能源分类
+-- ----------------------------
+drop table if exists dim_gb_ems_cls;
+create table dim_gb_ems_cls (
+  `id`            bigint(20)      not null auto_increment    comment '序号',
+  `code`          varchar(16)     not null                   comment '能源代码',
+  `name`          varchar(32)     not null                   comment '能源种类',
+  `desc`          varchar(256)    default null               comment '说明',
+  `level`         int(4)          default 0                  comment '分类层级 1-大类,2-中类,3-小类',
+  `parent_code`   varchar(16)     default null               comment '父类代码',
+  `version`       varchar(64)     default null               comment '数据版本',
+  primary key (`id`),
+  unique key ux_ems_cls_code(`code`)
+) engine=innodb auto_increment=1 comment = '能源分类';
+
+-- 能源分类初始数据
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('10',       '煤炭及煤制品',                 null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1001',     '无烟煤',                      null, 2, '10', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1002',     '烟煤',                        null, 2, '10', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100201',	 '贫煤',                        null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100202',	 '贫瘦煤',                      null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100203',	 '瘦煤',                        null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100204',	 '焦煤',                        null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100205',	 '肥煤',                        null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100206',	 '1/3焦煤',                     null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100207',	 '气肥煤',                      null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100208',	 '气煤',                        null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100209',	 '1/2中黏煤',                    null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100210',	 '弱黏煤',                       null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100211',	 '不黏煤',                       null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100212',   '长焰煤',                      null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100299',	 '其他烟煤',                     null, 3, '1002', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1003',     '褐煤',                        null, 2, '10', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1004',     '煤制品',                      '指除煤制油以外的煤炭制品',  2, '10', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100401',	 '焦炭',                        '包括焦炉焦炭、煤气焦炭、焦炭渣和半焦炭等0',  3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100402',	 '型煤',                        '包括煤球、煤砖、蜂窝煤等', 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100403',	 '煤制二甲醚',                   null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100404',	 '炼焦油',                      null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100405',	 '焦炉气',                      null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100406',	 '炼厂煤气',                    null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100407',	 '再利用煤气',                  '包括高炉煤气、氧化煤气等', 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100408',	 '煤制天然气',                  null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100499',	 '其他煤制品',                  null, 3, '1004', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1005',     '煤制油',                     null, 2, '10', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100501',	 '煤制石脑油',                  null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100502',	 '煤制汽油',                    null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100503',	 '煤制柴油',                    null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100504',	 '煤制航空燃料',                 null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100505',	 '煤制石蜡',                    null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('100599',	 '其他煤制油',                  null, 3, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('1099',     '其他煤炭及煤制品',             null, 2, '1005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('15',	     '泥炭及泥炭产物',               '又名“泥煤”、“草煤”、“草碳”,包括泥碳片、碾碎泥炭、泥炭产物等', 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('20',	     '油页岩/油沙',                 null, 1,  '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2001',     '页岩气',                     '指主体以上吸附或游离状态存在于泥岩、高碳泥岩、页岩及粉砂质岩类夹层中的天然气', 2,  '20', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2099',     '其他油页岩/油砂',             null, 2, '20', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('25',	     '天然气',                     null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2501',     '常规天然气',                  '指由常规油器藏开发出的天然气', 2, '25', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250101',	 '纯气田天然气',                '指气藏中以气相存的天然气,通过气井开采出来的非伴生气', 3, '2501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250102',	 '凝析气田天然气',              '指天然气从地层流出井口后,随着压力和温度的下降,分离生成的气相伴生气', 3, '2501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250103',	 '伴生天然气',                 '指与石油伴生的天然气', 3, '2501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250199',	 '其他常规天然气',              null, 3, '2501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2502',     '非常规天然气',                '指难于用传统油气生成理论解释,在地下的赋存状态和聚集方式与常规天然气藏具有明显差异的天然气聚集', 2, '25', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250201',	 '煤成气',                     '指含煤岩层中有机质在成煤过程中所生成的天然气', 3, '2502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250202',	 '煤层气',                     '又名“煤层甲烷”、“瓦斯”,指赋存在煤层中以甲烷为主要成分、以吸附在煤基质颗粒表面为主、部分游离于煤孔隙中或溶解于煤层水中的烃类气体', 3, '2502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250203',	 '深层气',                     '指深埋层位生成与储集的天然气,即地球沉积层深部层位形成或赋存的天然气', 3, '2502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250204',	 '天然气水合物',                '又名“可燃冰”', 3, '2502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250299',	 '其他非常规天然气',             null, 3, '2502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2503',     '天然气加工制品',               null, 2, '25', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250301',	 '液化天然气',                  null, 3, '2503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250302',	 '压缩天然气',                  null, 3, '2503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('250399',	 '其他天然气加工制品',           null, 3, '2503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('2599',     '其他天然气',                  null, 2, '25', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('30',	     '石油及石油制品',               null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3001',     '原油',                        null, 2, '30', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3002',     '天然气凝析液',                 null, 2, '30', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3003',     '石油制品',                    null, 2, '30', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300301',	 '汽油',                       '包括航空汽油和车用汽油', 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300302',	 '煤油',                       '包括航空煤油和灯用煤油等', 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300303',	 '柴油',                       null, 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300304',	 '燃料油',                     '包括船用燃料和工业用燃料油等', 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300305',	 '燃料气',                     '包括野花石油气、炼厂干气和甲烷氢等', 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300306',	 '石蜡',                       null, 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300307',	 '沥青',                       '包括煤焦沥青和石油沥青等', 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300308',	 '石焦油',                     null, 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('300399',	 '其他石油制品',                null, 3, '3003', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3099',     '其他石油及石油制品',           null, 2, '30', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('35',	     '生物质能',                   null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3501',     '固态生物燃料',                null, 2, '35', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350101',	 '薪材、木材残渣和副产品',        '包括树皮、薪柴、锯末刨花等', 3, '3501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350102',	 '动物肥料',                    null, 3, '3501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350103',	 '植物材料和剩余物',             '包括玉米棒、稻壳、木索、麻等', 3, '3501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350104',	 '木炭',                       null, 3, '3501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350199',	 '其他固态生物燃料',             null, 3, '3501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3502',     '液态生物燃料',                null, 2, '35', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350201',	 '生物汽油',                   null, 3, '3502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350202',	 '生物柴油',                   null, 3, '3502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350203',	 '生物航空煤油',                null, 3, '3502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350299',	 '其他液体生物燃料',             null, 3, '3502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3503',     '生物气',                     null, 2, '35', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350301',	 '沼气',                       null, 3, '3503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350302',	 '热处理过程中生物气',           null, 3, '3503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('350303',	 '其他生物气',                  null, 3, '3503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('3599',     '其他生物质能',                null, 2, '35', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('40',	     '废料能',                     null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('45',	     '电能',                       null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4501',     '火力发电',                    '指利用煤、石油、天然气等固体、液体、气体燃料燃烧时产生的热能,通过发电动力装置转换成电能的一种发电方式', 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450101',	 '燃煤发电',                    null, 3, '4501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450102',	 '燃油发电',                    null, 3, '4501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450103',	 '燃气发电',                    null, 3, '4501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450199',	 '其他火力发电',                 null, 3, '4501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4502',     '水力发电',                    '指将河流、湖泊或海洋等水体所蕴藏的水能转变为电能的发电方式', 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450201',	 '大型水电站发电',               '指装机容量在300000kw以上的水电站', 3, '4502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450202',	 '中型水电站发电',               '指装机容量在50000kw-300000kw的水电站', 3, '4502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450203',	 '抽水蓄能',                    null, 3, '4502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450299',	 '其他水力发电',                 null, 3, '4502', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4503',     '核能发电',                    null, 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450301',	 '大、中型商用核电',             '指用于电网基荷电源的核电', 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450302',	 '小型模块式核电',               '指用于偏远地区、岛屿及专用用户供电的核电', 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450303',	 '电热联供核电',                 null, 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450304',	 '空间核反应堆电源',              '指航天器与空间站专用电源', 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450305',	 '同位素电池',                   null, 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450399',	 '其他核能发电',                 null, 3, '4503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4504',     '可再生能源发电',               null, 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450401',	 '风力发电',                    null, 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450402',	 '太阳能发电',                  '包括太阳能光伏发电、太阳能热发电等', 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450403',	 '小型水电站发电',               '指装机容量在50000kw以下的小水电站', 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450404',	 '生物质能发电',                 null, 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450405',	 '地热能发电',                   null, 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450406',	 '海洋能发电',                   '包括海洋温差能发电、潮汐能发电和波浪能发电等', 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('450499',	 '其他可再生能源发电',            null, 3, '4504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4505',     '垃圾发电',                    '指通过特殊的焚烧锅炉和燃烧城市固体垃圾,再通过蒸汽轮机发电机组发电', 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4506',     '余热余压发电',                 '指利用企业生产过程中释放出来多余的副产热能、压差能来发电', 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('4599',     '其他电能',                    null, 2, '45', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('50', 	     '热能',                       null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5001',     '太阳能供热',                  null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5002',     '生物质能供热',                '包括秸秆、薪柴、粪便燃烧取热等', 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5003',     '地热能产热',                  null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5004',     '化石燃烧供热',                null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5005',     '核能直接供热',                null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('500501',	 '高温核供热',                  '指供热温度高于550℃的冶金、化工工艺', 3, '5005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('500502',	 '低温核供热',                  null, 3, '5005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('500503',	 '热电联供核电厂供热',           null, 3, '5005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('500599',	 '其他核能直接供热',             null, 3, '5005', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5006',     '废料燃烧供热',                null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5007',     '电热锅炉供热',                null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5008',     '热泵供热',                   '包括地源、空气源荷水源热泵产热', 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5009',     '余热余压供热',                null, 2, '50', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('55',	     '核能',                      null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5501',     '天然铀矿藏',                 null, 2, '55', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550101',	 '砂岩型矿石',                 null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550102',	 '碳硅泥岩型矿石',              null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550103',	 '花岗岩型矿石',                null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550104',	 '火山岩型矿石',                null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550105',	 '岩浆岩型矿石',                null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550199',	 '其他天然铀矿藏',              null, 3, '5501', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5502',     '钍矿藏',                     null, 2, '55', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5503',     '铀矿生产的中间产品',           '指从天然铀到核燃料生产过程中可供销售的产品', 2, '55', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550301',	 '黄饼',                       null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550302',	 '四氟化铀',                    null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550303',	 '六氟化铀',                    null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550304',	 '铀金属及铀合金',               null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550305',	 '低富集铀',                    '指铀-235富集度<20%的富集铀产品', 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550306',	 '高富集铀',                    '指铀-235富集度>=20%富集铀产品', 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550307',	 '二氧化铀',                    null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550308',	 '钚',                         null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550309',	 '回收铀',                      null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550310',	 '铀钚混合氧化物',               null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550311',	 '贫铀',                        null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550312',	 '铀钍混合氧化物',               null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550313',	 '碳铀化物及氮铀化物',            null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550399',	 '其他铀生产的中间产品',          null, 3, '5503', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5504',     '核聚变反应材料或其原材料',       null, 2, '55', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550401',	 '氘',                         null, 3, '5504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550402',	 '氚',                         null, 3, '5504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550403',	 '锂',                         null, 3, '5504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('550499',   '其他核聚变反应材料或其原材料',    null, 3, '5504', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('5599',     '其他核能',                     null, 2, '55', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('60',	     '氢能',                        null, 1, '-1', 'GB/T 29870-2013');
+INSERT INTO `dim_gb_ems_cls` (`code`, `name`, `desc`, `level`, `parent_code`, `version`) VALUES ('99',	     '其他',                        null, 1, '-1', 'GB/T 29870-2013');
+
+
+-- ----------------------------
+-- 能源设施/系统分类
+-- ----------------------------
+drop table if exists dim_ems_facs_type;
+create table dim_ems_facs_type (
+  `id`        bigint(20)      not null auto_increment    comment '序号',
+  `code`      varchar(8)      not null                   comment '设施系统代码',
+  `name`      varchar(16)     not null                   comment '设施系统名称',
+  `desc`      varchar(64)     default null               comment '说明',
+  `version`   varchar(64)     default null               comment '数据版本',
+  primary key (`id`),
+  unique key ux_ems_facs_type_code(`code`)
+) engine=innodb auto_increment=1 comment = '能源设施/系统分类';
+
+-- 能源设施/系统初始数据
+INSERT INTO `dim_ems_facs_type` (`code`, `name`, `desc`, `version`) VALUES ('E', '能源生产系统', '全站码', 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_type` (`code`, `name`, `desc`, `version`) VALUES ('T', '中转系统', '全站码', 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_type` (`code`, `name`, `desc`, `version`) VALUES ('W', '传输系统', '区位码', 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_type` (`code`, `name`, `desc`, `version`) VALUES ('C', '存储系统', '全站码', 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_type` (`code`, `name`, `desc`, `version`) VALUES ('Z', '用能系统', '区位码', 'GB/T 43033-2013');
+
+
+-- ----------------------------
+-- 能源设施/系统子类
+-- ----------------------------
+drop table if exists dim_ems_facs_subtype;
+create table dim_ems_facs_subtype (
+  `id`            bigint(20)      not null auto_increment    comment '序号',
+  `code`          varchar(8)      not null                   comment '设施子类代码',
+  `name`          varchar(16)     not null                   comment '设施子类名称',
+  `parent_code`   varchar(8)      not null                   comment '所属设施系统分类代码',
+  `desc`          varchar(64)     default null               comment '说明',
+  `version`       varchar(64)     default null               comment '数据版本',
+  primary key (`id`),
+  unique key ux_ems_facs_sub_code(`code`)
+) engine=innodb auto_increment=1 comment = '能源设施/系统子类';
+
+-- 能源设施/系统初始数据
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E1', '天然气分布式供能站', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E2', '生物质发电站', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E3', '分布式风力发电场', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E4', '小型水力发电站', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E5', '分布式光伏发电系统', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E6', '太阳能供热站', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('E7', '锅炉供热站(电、燃气等型式)', 'E', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('T1', '换热站', 'T', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('T2', '制冷/热站', 'T', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('T3', '热泵站', 'T', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('T4', '供氢站', 'T', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('W1', '管网', 'W', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('W2', '配电网', 'W', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('W3', '中继泵站', 'W', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('C1', '电化学储能站', 'C', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('C2', '飞轮、压缩空气等机械储能站', 'C', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('C3', '蓄冷/热站', 'C', null, 'GB/T 43033-2013');
+INSERT INTO `dim_ems_facs_subtype` (`code`, `name`, `parent_code`, `desc`, `version`) VALUES ('c4', '储氢站', 'C', null, 'GB/T 43033-2013');
+
+
+-- ----------------------------
+-- 排放因子维表
+-- ----------------------------
+drop table if exists dim_ems_emission_factor;
+create table dim_ems_emission_factor (
+  `id`            bigint(20)      not null auto_increment    comment '序号',
+  `region_code`   varchar(8)      not null                   comment '地区码',
+  `region_name`   varchar(16)     not null                   comment '地区名称',
+  `region_type`   int             not null                   comment '地区类型 0:国家,1:地区,2:省份,3:城市',
+  `factor_value`  double          default null               comment '因子值 单位: kgCO2/kWh',
+  `factor_type`   int             default null               comment '1:电力平均二氧化碳排放因子 2:电力平均二氧化碳排放因子(不含市场化交易的非化石能源电量)3:化石能源电力二氧化碳排放因子',
+  `version`       varchar(64)     default null               comment '数据版本',
+  primary key (`id`),
+  unique key ux_ems_emission_factor(`region_code`,`region_type`,`factor_type`)
+) engine=innodb auto_increment=1 comment = '排放因子维表';
+
+-- 排放因子初始数据
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('CN', '中国', '0', '0.5568', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('HB', '华北', '1', '0.7120', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('DB', '东北', '1', '0.6012', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('HD', '华东', '1', '0.5992', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('HZ', '华中', '1', '0.5354', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('XB', '西北', '1', '0.5951', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('HN', '华南', '1', '0.4326', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('XN', '西南', '1', '0.2113', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('110000', '北京', '2', '0.5688', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('120000', '天津', '2', '0.7355', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('130000', '河北', '2', '0.7901', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('140000', '山西', '2', '0.7222', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('150000', '内蒙古', '2', '0.7025', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('210000', '辽宁', '2', '0.5876', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('220000', '吉林', '2', '0.5629', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('230000', '黑龙江', '2', '0.6342', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('310000', '上海', '2', '0.5834', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('320000', '江苏', '2', '0.6451', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('330000', '浙江', '2', '0.5422', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('340000', '安徽', '2', '0.7075', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('350000', '福建', '2', '0.4711', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('360000', '江西', '2', '0.5835', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('370000', '山东', '2', '0.6838', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('410000', '河南', '2', '0.6369', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('420000', '湖北', '2', '0.3672', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('430000', '湖南', '2', '0.5138', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('440000', '广东', '2', '0.4715', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('450000', '广西', '2', '0.5154', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('460000', '海南', '2', '0.4524', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('500000', '重庆', '2', '0.4743', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('510000', '四川', '2', '0.1255', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('520000', '贵州', '2', '0.5182', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('530000', '云南', '2', '0.1235', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('610000', '陕西', '2', '0.6336', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('620000', '甘肃', '2', '0.4955', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('630000', '青海', '2', '0.1326', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('640000', '宁夏', '2', '0.6546', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('650000', '新疆', '2', '0.6577', '1', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('CN', '中国', '0', '0.5942', '2', '2021');
+INSERT INTO `dim_ems_emission_factor` (`region_code`, `region_name`, `region_type`, `factor_value`, `factor_type`, `version`) VALUES ('CN', '中国', '0', '0.8426', '3', '2021');
+
+
+-- ----------------------------
+-- 服务区表
+-- ----------------------------
+drop table if exists adm_service_area;
+create table adm_service_area (
+  `id`             bigint(20)      not null auto_increment    comment '序号',
+  `area_code`      varchar(32)     not null                   comment '服务区代码',
+  `area_name`      varchar(32)     not null                   comment '服务区名称',
+  `service_star`   int             default null               comment '服务星级',
+  `city`           varchar(16)     default null               comment '所在城市',
+  `highway`        varchar(32)     default null               comment '所在高速',
+  `direction`      varchar(32)     default null               comment '方向',
+  `address`        varchar(64)     default null               comment '地址',
+  `attr_org`       varchar(32)     default null               comment '所有单位',
+  `mgr_org`        varchar(32)     default null               comment '所有单位',
+  `open_date`      date            default null               comment '开业时间',
+  `land_area`      double          default null               comment '占地面积(亩)',
+  `floor_area`     double          default null               comment '建筑面积(平方米)',
+  `longitude`      double          default null               comment '经度',
+  `latitude`       double          default null               comment '纬度',
+  primary key (`id`),
+  unique key ux_area_code(`area_code`)
+) engine=innodb auto_increment=1 comment = '服务区表';
+
+-- 服务区初始数据
+INSERT INTO `adm_service_area` (`area_code`, `area_name`, `service_star`, `city`, `highway`, `direction`, `address`, `attr_org`, `mgr_org`, `open_date`, `land_area`, `floor_area`, `longitude`, `latitude`) VALUES ('321283124S3001', '常泰高速服务区(北区)', 4, '泰州', 'S30如常高速', '常州方向', '江苏省泰州市泰兴市虹桥镇常泰高速常州方向', null, null, '2025-01-01', '72.5', '6000', 120.050937, 32.071956);
+INSERT INTO `adm_service_area` (`area_code`, `area_name`, `service_star`, `city`, `highway`, `direction`, `address`, `attr_org`, `mgr_org`, `open_date`, `land_area`, `floor_area`, `longitude`, `latitude`) VALUES ('321283124S3002', '常泰高速服务区(南区)', 4, '泰州', 'S30如常高速', '泰兴方向', '江苏省泰州市泰兴市虹桥镇常泰高速泰州方向', null, null, '2025-01-01', '72.5', '6000', 120.052389, 32.070408);
+
+-- ----------------------------
+-- 建筑基本信息表
+-- ----------------------------
+drop table if exists adm_structure;
+create table adm_structure (
+  `id`               bigint(20)      not null auto_increment    comment '序号',
+  `bldg_code`        varchar(64)     not null                   comment '建筑编码',
+  `bldg_name`        varchar(32)     not null                   comment '建筑名称',
+  `address`          varchar(64)     default null               comment '详细地址',
+  `up_bldg_floor`    int             default null               comment '建筑层数(地上)',
+  `down_bldg_floor`  int             default null               comment '建筑层数(地下)',
+  `bldg_height`      double          default null               comment '建筑高度',
+  `floor_area`       double          default null               comment '建筑面积(平方米 m²)',
+  `bldg_usage`       varchar(64)     default null               comment '主要用途',
+  primary key (`id`),
+  unique key ux_structure_code(`bldg_code`)
+) engine=innodb auto_increment=1 comment = '建筑基本信息表';
+
+-- 建筑区块初始数据
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300101', '综合楼(北区)', '北区中部', 2, 1, 13.7, 4700, '一层提供商业、餐饮、卫生间、开水服务,二层为办公区、会议区');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300102', '配电泵房(北区)', '北区西北角', 1, 0, null, 300, '配电设施,水泵设施工作区');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300103', '维修间&货车之家(北区)', '北区东侧', 2, 0, null, 300, '提供车辆维修服务');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300104', '加油站(北区)', '北区西南角', 1, 0, null, 200, '提供加油服务');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300105', '警务站(北区)', '北区东北角', 1, 0, null, 70, '警务办公场地');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300106', '小客停车位(北区)', '北区前广场', 1, 0, null, null, '小客车停车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300107', '充电车位(北区)', '北区前广场', 1, 0, null, null, '充电停车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300108', '无障碍车位(北区)', '北区前广场', 1, 0, null, null, '无障碍车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300109', '大客车停车位(北区)', '北区后广场', 1, 0, null, null, '大客车车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300110', '货车车位(北区)', '北区后广场', 1, 0, null, null, '货车车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300111', '危险品车位(北区)', '北区后广场', 1, 0, null, null, '危险品车位');
+
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300201', '综合楼(南区)', '南区中部', 2, 1, 14.2, 4788.2, '一层提供商业、餐饮、卫生间、开水服务,二层为员工餐厅、展厅');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300202', '配电泵房(南区)', '南区东南角', 1, 0, null, 300, '配电设施,水泵设施工作区');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300203', '维修间&货车之家(南区)', '南区西侧', 2, 0, null, 300, '提供车辆维修服务');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300204', '加油站(南区)', '南区东北角', 1, 0, null, 200, '提供加油服务');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300205', '宿舍楼(南区)', '南区西南角', 2, 0, null, 920, '提供员工住宿服务');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300206', '小客停车位(南区)', '南区前广场', 1, 0, null, null, '小客车停车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300207', '充电车位(南区)', '南区前广场', 1, 0, null, null, '充电停车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300208', '无障碍车位(南区)', '南区前广场', 1, 0, null, null, '无障碍车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300209', '大客车停车位(南区)', '南区后广场', 1, 0, null, null, '大客车车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300210', '货车车位(南区)', '南区后广场', 1, 0, null, null, '货车车位');
+INSERT INTO `adm_structure` (`bldg_code`, `bldg_name`, `address`, `up_bldg_floor`, `down_bldg_floor`, `bldg_height`, `floor_area`, `bldg_usage`) VALUES ('321283124S300211', '危险品车位(南区)', '南区后广场', 1, 0, null, null, '危险品车位');
+
+
+-- ----------------------------
+-- 建筑划分表
+-- ----------------------------
+drop table if exists adm_structure_division;
+create table adm_structure_division (
+  `id`               bigint(20)      not null auto_increment    comment '序号',
+  `bldg_code`        varchar(64)     not null                   comment '建筑编码',
+  `division_code`    varchar(64)     not null                   comment '分区编码',
+  `division_name`    varchar(64)     not null                   comment '分区名称',
+  `floor`            int             default null               comment '楼层',
+  `room_no`          varchar(16)     default null               comment '房间号',
+  `bldg_ld_area`     double          default null               comment '建筑划分面积',
+  `usage_detail`     varchar(200)    default null               comment '使用详情',
+  primary key (`id`),
+    unique key ux_structure_division_code(`bldg_code`, `division_code`)
+) engine=innodb auto_increment=1 comment = '建筑划分表';
+
+-- ----------------------------
+-- 能源设施/系统表
+-- ----------------------------
+drop table if exists adm_ems_facs;
+create table adm_ems_facs  (
+  `id`              bigint(20)      not null auto_increment      comment '序号',
+  `facs_code`       varchar(16)     not null                     comment '设施代码',
+  `facs_name`       varchar(32)     not null                     comment '设施名称',
+  `facs_type`       varchar(32)     not null                     comment '设施分类',
+  `facs_subtype`    varchar(32)     not null                     comment '设施子类',
+  `enable`          int             default '0'                  comment '启用状态0-停用,1-启用',
+  `ref_area`        varchar(32)      not null                    comment '归属区域代码',
+  `manufacturer`    varchar(64)     default null                 comment '厂商',
+  `create_time`     datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`     datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_ems_facs_code(`facs_code`)
+) engine=innodb auto_increment=1 comment = '能源设施/系统表';
+
+-- 能源设施/系统DEMO数据
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('W201', '北区供电网', 'W', 'W2', 1, '321283124S3001', '华设');
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('W202', '南区供电网', 'W', 'W2', 1, '321283124S3002', '华设');
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('E501', '北区光伏', 'E', 'E5', 1, '321283124S3001', '华设');
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('E502', '南区光伏', 'E', 'E5', 1, '321283124S3002', '华设');
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('Z101', '北区负荷', 'Z', 'Z1', 1, '321283124S3001', '华设');
+INSERT INTO `adm_ems_facs` (`facs_code`, `facs_name`, `facs_type`, `facs_subtype`, `enable`, `ref_area`, `manufacturer`) VALUES ('Z102', '南区负荷', 'Z', 'Z1', 1, '321283124S3002', '华设');
+
+
+-- ----------------------------
+-- 能源设施/系统属性表
+-- ----------------------------
+drop table if exists adm_ems_facs_attr;
+create table adm_ems_facs_attr  (
+  `id`              bigint(20)      not null auto_increment      comment '序号',
+  `facs_code`       varchar(16)     not null                     comment '设施代码',
+  `attr_name`       varchar(32)     not null                     comment '属性名称',
+  `attr_desc`       varchar(64)     default null                 comment '属性描述',
+  `attr_value`      varchar(64)     default null                 comment '属性值',
+  `attr_unit`       varchar(32)     default null                 comment '属性单位',
+  `create_time`     datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`     datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+   primary key (`id`),
+   unique key ux_ems_facs_code(`facs_code`)
+) engine=innodb auto_increment=1 comment = '能源设施/系统属性表';
+
+-- 设施属性DEMO数据
+INSERT INTO `adm_ems_facs_attr` (`facs_code`, `attr_name`, `attr_desc`, `attr_value`, `attr_unit`) VALUES ('W201', 'input_load', '进线负荷', '293.55', 'kw/h');
+INSERT INTO `adm_ems_facs_attr` (`facs_code`, `attr_name`, `attr_desc`, `attr_value`, `attr_unit`) VALUES ('E501', 'installed_capacity', '装机容量', '2000', 'MW');
+
+
+-- ----------------------------
+-- 能源设施能流关系表
+-- ----------------------------
+drop table if exists adm_ems_facs_flow_rel;
+create table adm_ems_facs_flow_rel  (
+  `id`                bigint(20)      not null auto_increment      comment '序号',
+  `code`              varchar(32)     not null                     comment '编码',
+  `export_facs_code`  varchar(16)     not null                     comment '能源输出设施',
+  `input_facs_code`   varchar(16)     not null                     comment '能源流入设施',
+  `ems_cls`           varchar(16)     not null                     comment '能源流动介质',
+  `state`             int             not null                     comment '供能状态 0-停止,1-供应中',
+  `action_type`       varchar(6)      not null                     comment '4501-购电,4502-上网,4503-充电,4504-放电,4505-自产自销',
+  `create_time`     datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`     datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_ems_facs_flow_rel_code(`code`),
+  key idx_ems_facs_flow_rel_code(`export_facs_code`,`input_facs_code`)
+) engine=innodb auto_increment=1 comment = '能源设施能流关系表';
+
+-- 能源设施DEMO数据
+INSERT INTO `adm_ems_facs_flow_rel` (`code`, `export_facs_code`, `input_facs_code`, `ems_cls`, `state`, `action_type`) VALUES ('W201_Z101', 'W201', 'Z101', '45', 1, '4501');
+INSERT INTO `adm_ems_facs_flow_rel` (`code`, `export_facs_code`, `input_facs_code`, `ems_cls`, `state`, `action_type`) VALUES ('E501_W201', 'E501', 'W201', '45', 1, '4502');
+INSERT INTO `adm_ems_facs_flow_rel` (`code`, `export_facs_code`, `input_facs_code`, `ems_cls`, `state`, `action_type`) VALUES ('E501_Z101', 'E501', 'Z101', '45', 1, '4505');
+
+
+-- ----------------------------
+-- 能源设备表
+-- ----------------------------
+drop table if exists adm_ems_device;
+create table adm_ems_device  (
+  `id`              bigint(20)      not null auto_increment      comment '序号',
+  `device_code`     varchar(16)     not null                     comment '设备代码',
+  `device_name`     varchar(32)     not null                     comment '设备名称',
+  `ref_area`        varchar(8)      default null                 comment '归属区域代码',
+  `ref_facs`        varchar(16)     default null                 comment '归属设施代码',
+  `create_time`     datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`     datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_device_code(`device_code`)
+) engine=innodb auto_increment=1 comment = '能源设备表';
+
+
+-- ----------------------------
+-- 能源策略表
+-- ----------------------------
+drop table if exists adm_op_energy_strategy;
+create table adm_op_energy_strategy  (
+  `id`                bigint(20)      not null auto_increment      comment '序号',
+  `strategy_code`     varchar(16)     not null                     comment '策略代码',
+  `strategy_name`     varchar(32)     not null                     comment '策略名称',
+  `strategy_desc`     varchar(128)    default null                 comment '策略描述',
+  `strategy_type`     int             not null                     comment '1:源网协调,2:源荷互动',
+  `exec_mode`         int             not null                     comment '0:固定策略 1:规则引擎 2:定时执行(cron)99:手动执行',
+  `exec_rule`         varchar(64)     default null                 comment '执行规则',
+  `allow_modify`      boolean         not null                     comment '允许修改标记',
+  `create_time`       datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`       datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_op_energy_strategy_code(`strategy_code`)
+) engine=innodb auto_increment=1 comment = '能源策略表';
+
+
+-- ----------------------------
+-- 能源策略步骤
+-- ----------------------------
+drop table if exists adm_op_energy_strategy_step;
+create table adm_op_energy_strategy_step  (
+  `id`                bigint(20)      not null auto_increment      comment '序号',
+  `strategy_code`     varchar(16)     not null                     comment '策略代码',
+  `step_code`         varchar(16)     not null                     comment '步骤代码',
+  `step_name`         varchar(32)     not null                     comment '步骤名称',
+  `step_index`        int             not null                     comment '步骤顺序',
+  `step_handler`      varchar(128)    not null                     comment '步骤处理',
+  `step_param`        varchar(256)    default null                 comment '步骤参数',
+  `target_facs`       varchar(16)     default null                 comment '目标设施',
+  `target_device`     varchar(16)     default null                 comment '目标设备',
+  `create_time`       datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`       datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_op_energy_strategy_step_key(`strategy_code`,`step_code`,`step_index`)
+) engine=innodb auto_increment=1 comment = '能源策略步骤';
+
+
+-- ----------------------------
+-- 能源策略步骤
+-- ----------------------------
+drop table if exists adm_op_energy_strategy_step;
+create table adm_op_energy_strategy_step  (
+  `id`                bigint(20)      not null auto_increment      comment '序号',
+  `strategy_code`     varchar(16)     not null                     comment '策略代码',
+  `step_code`         varchar(16)     not null                     comment '步骤代码',
+  `step_name`         varchar(32)     not null                     comment '步骤名称',
+  `step_index`        int             not null                     comment '步骤顺序',
+  `step_handler`      varchar(128)    not null                     comment '步骤处理',
+  `step_param`        varchar(256)    default null                 comment '步骤参数',
+  `target_facs`       varchar(16)     default null                 comment '目标设施',
+  `target_device`     varchar(16)     default null                 comment '目标设备',
+  `create_time`       datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`       datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`),
+  unique key ux_op_energy_strategy_step_key(`strategy_code`,`step_code`,`step_index`)
+) engine=innodb auto_increment=1 comment = '能源策略步骤';
+
+
+-- ----------------------------
+-- 碳核算账户配置表
+-- ----------------------------
+drop table if exists adm_ems_carbon_account_cfg;
+create table adm_ems_carbon_account_cfg  (
+  `id`                  bigint(20)      not null auto_increment      comment '序号',
+  `cfg_code`            varchar(128)    not null                     comment '配置代码',
+  `definition`          varchar(32)     not null                     comment '定义',
+  `emission_activity`   varchar(32)     not null                     comment '排放活动',
+  `emission_source`     varchar(32)     not null                     comment '排放源',
+  `gas_category`        varchar(128)    not null                     comment '气体类别',
+  `factor_value`        double          default null                 comment '排放因子',
+  `create_time`         datetime        default CURRENT_TIMESTAMP    comment '创建时间',
+  `update_time`         datetime        default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
+  primary key (`id`)
+) engine=innodb auto_increment=1 comment = '碳核算账户配置表';
+
+INSERT INTO `adm_ems_carbon_account_cfg` (`cfg_code`, `definition`, `emission_activity`, `emission_source`, `gas_category`, `factor_value`) VALUES ('direct.gas.statCombustion', '直接温室气体排放', '固定源化石燃料燃烧排放', '柴油发电机', 'CO₂', null);
+INSERT INTO `adm_ems_carbon_account_cfg` (`cfg_code`, `definition`, `emission_activity`, `emission_source`, `gas_category`, `factor_value`) VALUES ('direct.gas.movCombustion', '直接温室气体排放', '移动源化石燃料燃烧排放', '柴油发电机', 'CH₄,N₂O', null);
+INSERT INTO `adm_ems_carbon_account_cfg` (`cfg_code`, `definition`, `emission_activity`, `emission_source`, `gas_category`, `factor_value`) VALUES ('indirect.gas.electricity', '间接温室气体排放', '外购电力生产消耗排放', '外购电力使用', 'CO₂', null);
+
+
+-- ----------------------------
+-- 能源设施告警表策略表
+-- ----------------------------
+drop table if exists adm_op_alarm_policy;
+create table adm_op_alarm_policy  (
+  `id`                      bigint(20)      not null auto_increment      comment '序号',
+  `policy_code`             varchar(16)     not null                     comment '策略代码',
+  `policy_name`             varchar(32)     not null                     comment '策略名称',
+  `alarm_obj_type`          int             not null                     comment '告警对象类型',
+  `alarm_obj_index`         varchar(64)     not null                     comment '告警对象指标',
+  `alarm_rule_type`         int             default null                 comment '告警规则 1:大于 2:小于',
+  `alarm_threshold_value`   double          default null                 comment '告警阈值',
+  `alarm_code`              varchar(64)     default null                 comment '告警代码',
+  `alarm_msg`               varchar(200)    default null                 comment '告警描述',
+  `alarm_type`              int             default null                 comment '告警类型 1:一般告警 2:重要告警 3:紧急告警 4:恢复告警 5:诊断告警 6:其他告警',
+  primary key (`id`)
+) engine=innodb auto_increment=1 comment = '能源设施告警表策略表';
+
+
+-- ----------------------------
+-- 能源设施告警表
+-- ----------------------------
+drop table if exists adm_op_alarm;
+create table adm_op_alarm  (
+  `id`                  bigint(20)      not null auto_increment      comment '序号',
+  `area_code`           varchar(32)     not null                     comment '园区代码',
+  `obj_type`            int             not null                     comment '对象类型 0:园区,1:区块,2:设施,3:设备',
+  `obj_code`            varchar(32)     not null                     comment '对象代码',
+  `alarm_date`          date            default null                 comment '告警日期',
+  `alarm_time`          datetime        default null                 comment '告警时间',
+  `alarm_code`          varchar(64)     default null                 comment '告警代码',
+  `alarm_msg`           varchar(64)     default null                 comment '告警描述',
+  `alarm_type`          int             default null                 comment '告警类型 1:一般告警 2:重要告警 3:紧急告警 4:恢复告警 5:诊断告警 6:其他告警',
+  `alarm_state`         int             default null                 comment '告警状态 0-新增,1-处置中,2-已处置,3-消散',
+  primary key (`id`),
+  key inx_op_alarm_date(`alarm_date`)
+) engine=innodb auto_increment=1 comment = '能源设施告警表';
+
+
+-- ----------------------------
+-- 巡检任务表
+-- ----------------------------
+drop table if exists adm_op_inspection_task;
+create table adm_op_inspection_task (
+  `id`              bigint(20)      not null auto_increment      comment '序号',
+  `task_code`       varchar(16)     not null                     comment '任务代码',
+  `task_name`       varchar(16)     not null                     comment '任务名称',
+  `task_type`       int             default null                 comment '任务类型 1:自动,2:手动',
+  `task_status`     int             default null                 comment '任务名称 0:未执行 1:执行中 2:已完成',
+  `start_time`      datetime        default null                 comment '开始时间',
+  `end_time`        datetime        default null                 comment '结束时间',
+  `executor`        varchar(32)     default null                 comment '执行人',
+  `target_type`     int             default null                 comment '1:设施  2:设备',
+  `target_facs`     text            default null                 comment '设施编码',
+  `target_device`        text       default null                 comment '设备编码',
+  primary key (`id`),
+  unique key ux_op_inspection_task_code(`task_code`)
+) engine=innodb auto_increment=1 comment = '巡检任务表';
+
+
+-- ----------------------------
+-- 巡检报告表
+-- ----------------------------
+drop table if exists adm_op_inspection_report;
+create table adm_op_inspection_report (
+  `id`              bigint(20)      not null auto_increment      comment '序号',
+  `task_code`       varchar(16)     not null                     comment '任务代码',
+  `result_status`   int             not null                     comment '结果状态 0:正常  1:异常',
+  `result_msg`      text            default null                 comment '结果描述',
+  `finish_time`     datetime        default null                 comment '完成时间',
+  `sub_time`        datetime        default null                 comment '提交时间',
+  `submitter`       varchar(32)     default null                 comment '提交人',
+  primary key (`id`),
+  key inx_op_inspection_report(`task_code`)
+) engine=innodb auto_increment=1 comment = '巡检报告表';
+
+
+-- ----------------------------
+-- 电网供应计量表
+-- ----------------------------
+drop table if exists adm_ems_pg_supply_h;
+create table adm_ems_pg_supply_h (
+  `id`                 bigint(20)      not null auto_increment      comment '序号',
+  `area_code`          varchar(16)     not null                     comment '园区代码',
+  `facs_code`          varchar(16)     not null                     comment '设施代码',
+  `date`               date            not null                     comment '日期 yyyy-MM-dd',
+  `time`               time            not null                     comment '时间 HH:mm:ss',
+  `time_index`         int             not null                     comment '时间序列',
+  `meter_type`         int             default null                 comment '计量类型 1:峰电计量  2:谷电计量',
+  `meter_unit_price`   double          default null                 comment '单位电价(1度电)',
+  `use_elec_reading`   double          default null                 comment '用电读数',
+  `use_elec_quantity`  double          default null                 comment '用电量 单位:kW-h(千瓦时)',
+  `use_elec_cost`      double          default null                 comment '用电电费 单位: ¥(元)',
+  `up_elec_reading`    double          default null                 comment '上网读数',
+  `up_elec_quantity`   double          default null                 comment '上网电量 单位:kW-h(千瓦时)',
+  `up_elec_earn`       double          default null                 comment '上网收益 单位: ¥(元)',
+  primary key (`id`),
+  unique key ux_ems_pg_supply_h(`area_code`, `facs_code`, `date`, `time_index`)
+) engine=innodb auto_increment=1 comment = '电网供应计量表-小时';
+
+
+-- ----------------------------
+-- 光伏并网计量表
+-- ----------------------------
+drop table if exists adm_ems_pv_supply_h;
+create table adm_ems_pv_supply_h (
+  `id`                 bigint(20)      not null auto_increment      comment '序号',
+  `area_code`          varchar(16)     not null                     comment '园区代码',
+  `facs_code`          varchar(16)     not null                     comment '设施代码',
+  `date`               date            not null                     comment '日期 yyyy-MM-dd',
+  `time`               time            not null                     comment '时间 HH:mm:ss',
+  `time_index`         int             not null                     comment '时间序列',
+  `meter_type`         int             default null                 comment '计量类型 1:峰电计量  2:谷电计量',
+  `meter_unit_price`   double          default null                 comment '单位电价(1度电)',
+  `elec_reading`       double          default null                 comment '用电读数',
+  `elec_quantity`      double          default null                 comment '发电量 单位:kW-h(千瓦时)',
+  `elec_earn`          double          default null                 comment '发电收益 单位: ¥(元)',
+  primary key (`id`),
+  unique key ux_ems_pg_supply_h(`area_code`, `facs_code`, `date`, `time_index`)
+) engine=innodb auto_increment=1 comment = '光伏并网计量表光伏并网计量表-小时';
+
+
+-- ----------------------------
+-- 用能计量表
+-- ----------------------------
+drop table if exists adm_ems_facs_use_h;
+create table adm_ems_facs_use_h (
+  `id`                 bigint(20)      not null auto_increment      comment '序号',
+  `area_code`          varchar(16)     not null                     comment '园区代码',
+  `facs_code`          varchar(16)     not null                     comment '设施代码',
+  `facs_type`          varchar(16)     not null                     comment '设施类型',
+  `facs_subtype`       varchar(16)     not null                     comment '设施子类',
+  `date`               date            not null                     comment '日期 yyyy-MM-dd',
+  `time`               time            not null                     comment '时间 HH:mm:ss',
+  `time_index`         int             not null                     comment '时间序列',
+  `elec_reading`       double          default null                 comment '电表读数',
+  `elec_quantity`      double          default null                 comment '用电量 单位:kW-h(千瓦时)',
+  `elec_cost`          double          default null                 comment '电费 单位: ¥(元)',
+  primary key (`id`),
+  unique key ux_ems_facs_use_h(`area_code`, `facs_code`, `date`, `time_index`)
+) engine=innodb auto_increment=1 comment = '用能计量表-小时';
+
+
+-- ----------------------------
+-- 储能计量表
+-- ----------------------------
+drop table if exists adm_ems_elec_store_h;
+create table adm_ems_elec_store_h (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `time`                      time            not null                     comment '时间 HH:mm:ss',
+  `time_index`                int             not null                     comment '时间序列',
+  `charge_elec_quantity`      double          default null                 comment '充电电量 单位:kW-h(千瓦时)',
+  `discharge_elec_quantity`   double          default null                 comment '放电电量 单位:kW-h(千瓦时)',
+  primary key (`id`),
+  unique key ux_ems_elec_store_h(`area_code`, `facs_code`, `date`, `time_index`)
+) engine=innodb auto_increment=1 comment = '储能计量表-小时';
+
+
+-- ----------------------------
+-- 电能计量日表
+-- ----------------------------
+drop table if exists adm_ems_elec_meter_d;
+create table adm_ems_elec_meter_d (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `total_use_quantity`        double          default null                 comment '总用电量 单位:kW-h(千瓦时)',
+  `pg_quantity`               double          default null                 comment '电网供应电量 单位:kW-h(千瓦时)',
+  `pv_gen_quantity`           double          default null                 comment '光伏发电电量 单位:kW-h(千瓦时)',
+  `pv_online_quantity`        double          default null                 comment '光伏上网电量 单位:kW-h(千瓦时)',
+  `pv_oneself_quantity`       double          default null                 comment '光伏自用电量 单位:kW-h(千瓦时)',
+  `pg_cost`                   double          default null                 comment '电网电量花费 单位:¥(元)',
+  `pv_online_earn`            double          default null                 comment '光伏上网营收 单位:¥(元)',
+  `pv_oneself_save_cost`      double          default null                 comment '光伏自用节省支出 单位:¥(元)',
+  primary key (`id`),
+  unique key ux_ems_elec_meter_d(`area_code`, `date`)
+) engine=innodb auto_increment=1 comment = '电能计量日表';
+
+
+-- ----------------------------
+-- 碳计量日表
+-- ----------------------------
+drop table if exists adm_ems_ca_meter_d;
+create table adm_ems_ca_meter_d (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `ca_emission_quantity`      double          default null                 comment '碳排放量 单位:单位:kg(千克)',
+  `ca_sink_quantity`          double          default null                 comment '碳汇量 单位:单位:kg(千克)',
+  primary key (`id`),
+  unique key ux_ems_elec_meter_d(`area_code`, `date`)
+) engine=innodb auto_increment=1 comment = '碳计量日表';
+
+
+-- ----------------------------
+-- 电网设施指标表
+-- ----------------------------
+drop table if exists adm_ems_elec_pg_index;
+create table adm_ems_elec_pg_index (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `time`                      datetime        not null                     comment '时间 yyyy-MM-dd HH:mm:ss',
+  `voltage`                   double          default null                 comment '电压 单位:kV(千伏)',
+  `amperage`                  double          default null                 comment '电流 单位:A(安培)',
+  `power`                     double          default null                 comment '功率 单位:kW(千瓦)',
+  primary key (`id`),
+  unique key ux_ems_elec_pg_index(`facs_code`, `time`)
+) engine=innodb auto_increment=1 comment = '电网设施指标表';
+
+
+-- ----------------------------
+-- 光伏设施指标表
+-- ----------------------------
+drop table if exists adm_ems_elec_pv_index;
+create table adm_ems_elec_pv_index (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `time`                      datetime        not null                     comment '时间 yyyy-MM-dd HH:mm:ss',
+  `voltage`                   double          default null                 comment '电压 单位:kV(千伏)',
+  `amperage`                  double          default null                 comment '电流 单位:A(安培)',
+  `power`                     double          default null                 comment '功率 单位:kW(千瓦)',
+  primary key (`id`),
+  unique key ux_ems_elec_pg_index(`facs_code`, `time`)
+) engine=innodb auto_increment=1 comment = '光伏设施指标表';
+
+
+-- ----------------------------
+-- 储能设施指标表
+-- ----------------------------
+drop table if exists adm_ems_elec_store_index;
+create table adm_ems_elec_store_index (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `time`                      datetime        not null                     comment '时间 yyyy-MM-dd HH:mm:ss',
+  `input_voltage`             double          default null                 comment '输入电压 单位:kV(千伏)',
+  `input_amperage`            double          default null                 comment '输入电流 单位:A(安培)',
+  `output_voltage`            double          default null                 comment '输出电压 单位:kV(千伏)',
+  `output_amperage`           double          default null                 comment '输出电流 单位:A(安培)',
+  `current_capacity`          double          default null                 comment '当前容量 单位:kW-h(千瓦·时)',
+  primary key (`id`),
+  unique key ux_ems_elec_store_index(`facs_code`, `time`)
+) engine=innodb auto_increment=1 comment = '储能设施指标表';
+
+
+-- ----------------------------
+-- 电力负荷设施指标表
+-- ----------------------------
+drop table if exists adm_ems_elec_load_index;
+create table adm_ems_elec_load_index (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `time`                      datetime        not null                     comment '时间 yyyy-MM-dd HH:mm:ss',
+  `voltage`                   double          default null                 comment '电压 单位:kV(千伏)',
+  `amperage`                  double          default null                 comment '电流 单位:A(安培)',
+  `power`                     double          default null                 comment '功率 单位:kW(千瓦)',
+  primary key (`id`),
+  unique key ux_ems_elec_load_index(`facs_code`, `time`)
+) engine=innodb auto_increment=1 comment = '电力负荷设施指标表';
+
+
+-- ----------------------------
+-- 电力产能预测表
+-- ----------------------------
+drop table if exists adm_ems_elec_prod_forecast;
+create table adm_ems_elec_prod_forecast (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `facs_code`                 varchar(16)     not null                     comment '设施代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `elec_prod_quantity`        double          not null                     comment '发电量 单位:kW-h(千瓦·时)',
+  `avg_power`                 double          default null                 comment '功率 单位:kW(千瓦)',
+  primary key (`id`),
+  unique key ux_ems_elec_prod_forecast(`facs_code`, `date`)
+) engine=innodb auto_increment=1 comment = '电力产能预测表';
+
+
+-- ----------------------------
+-- 电力消耗预测表
+-- ----------------------------
+drop table if exists adm_ems_elec_expend_forecast;
+create table adm_ems_elec_expend_forecast (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `obj_code`                  varchar(32)     not null                     comment '对象代码',
+  `obj_type`                  int             not null                     comment '1-建筑 2-设施 3-设备',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `elec_use_quantity`         double          default null                 comment '功率 单位:kW(千瓦)',
+  primary key (`id`),
+  unique key ux_ems_elec_expend_forecast(`obj_code`, `date`)
+) engine=innodb auto_increment=1 comment = '电力消耗预测表';
+
+
+-- ----------------------------
+-- 碳排放预测表
+-- ----------------------------
+drop table if exists adm_ems_ca_emission_forecast;
+create table adm_ems_ca_emission_forecast (
+  `id`                        bigint(20)      not null auto_increment      comment '序号',
+  `area_code`                 varchar(16)     not null                     comment '园区代码',
+  `date`                      date            not null                     comment '日期 yyyy-MM-dd',
+  `ca_emission`               double          default null                 comment '单位:kg(千克)',
+  primary key (`id`),
+  unique key ux_ems_ca_emission_forecast(`area_code`, `date`)
+) engine=innodb auto_increment=1 comment = '碳排放预测表';