vpp_schema.sql 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661
  1. -- VPP专属业务表 DDL
  2. -- 来源: 虚拟电厂平台数据库设计文档 V1.0
  3. CREATE TABLE `vpp_customer` (
  4. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  5. `account_no` VARCHAR(32) NOT NULL COMMENT '电力户号,全局唯一',
  6. `customer_name` VARCHAR(200) NOT NULL COMMENT '客户名称',
  7. `customer_type` TINYINT NOT NULL COMMENT '1高压 2低压商用 3居民充电桩 4自有资产',
  8. `power_company` VARCHAR(50) NOT NULL COMMENT '供电公司简称',
  9. `contract_capacity` DECIMAL(12,4) NOT NULL COMMENT '用电容量 kVA/kW',
  10. `credit_status` TINYINT NULL COMMENT '1正常 2关注 3不良',
  11. `lifecycle_status` TINYINT NOT NULL COMMENT '1待准入 2已准入 3已签约 4履约中 5待续约 6已续约 7已解约',
  12. `dr_notify_minutes` INT NULL COMMENT '需求响应提前通知分钟数,默认30',
  13. `dr_up_capacity_kw` DECIMAL(12,4) NULL COMMENT '登记上调能力 kW',
  14. `dr_down_capacity_kw` DECIMAL(12,4) NULL COMMENT '登记下调能力 kW',
  15. `province` VARCHAR(50) NULL COMMENT '省',
  16. `city` VARCHAR(50) NULL COMMENT '市',
  17. `district` VARCHAR(50) NULL COMMENT '区',
  18. `address` VARCHAR(500) NULL COMMENT '详细地址',
  19. `business_license_url` VARCHAR(500) NULL COMMENT '营业执照附件',
  20. `remark` VARCHAR(500) NULL COMMENT '备注',
  21. `tenant_id` INT NULL COMMENT '租户ID',
  22. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  23. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  24. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  25. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  26. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  27. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  28. PRIMARY KEY (`id`),
  29. UNIQUE KEY `uk_customer_account_no` (account_no),
  30. KEY `idx_customer_name` (customer_name),
  31. KEY `idx_customer_lifecycle` (lifecycle_status, deleted_at)
  32. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户档案';
  33. CREATE TABLE `vpp_customer_access` (
  34. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  35. `apply_no` VARCHAR(32) NOT NULL COMMENT '申请编号',
  36. `account_no` VARCHAR(32) NOT NULL COMMENT '电力户号',
  37. `customer_name` VARCHAR(200) NOT NULL COMMENT '客户名称',
  38. `customer_type` TINYINT NOT NULL COMMENT '客户类型',
  39. `power_company` VARCHAR(50) NOT NULL COMMENT '供电公司',
  40. `contract_capacity` DECIMAL(12,4) NOT NULL COMMENT '用电容量',
  41. `business_license_url` VARCHAR(500) NULL COMMENT '营业执照',
  42. `credit_status` TINYINT NULL COMMENT '信用状况',
  43. `access_status` TINYINT NOT NULL COMMENT '0待审核 1通过 2驳回',
  44. `audit_opinion` VARCHAR(500) NULL COMMENT '审核意见',
  45. `audit_at` DATETIME(3) NULL COMMENT '审核时间',
  46. `customer_id` BIGINT NULL COMMENT '关联客户ID',
  47. `apply_at` DATETIME(3) NOT NULL COMMENT '申请时间',
  48. `tenant_id` INT NULL COMMENT '租户ID',
  49. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  50. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  51. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  52. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  53. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  54. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  55. PRIMARY KEY (`id`),
  56. UNIQUE KEY `uk_access_apply_no` (apply_no),
  57. KEY `idx_access_status` (access_status, apply_at)
  58. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='准入申请';
  59. CREATE TABLE `vpp_customer_contact` (
  60. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  61. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  62. `contact_name` VARCHAR(100) NOT NULL COMMENT '联系人姓名',
  63. `contact_phone` VARCHAR(20) NOT NULL COMMENT '联系电话',
  64. `contact_email` VARCHAR(100) NULL COMMENT '邮箱',
  65. `is_primary` TINYINT NOT NULL COMMENT '是否主联系人 0否 1是',
  66. `position` VARCHAR(50) NULL COMMENT '职务',
  67. `tenant_id` INT NULL COMMENT '租户ID',
  68. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  69. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  70. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  71. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  72. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  73. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  74. PRIMARY KEY (`id`),
  75. KEY `idx_contact_customer` (customer_id)
  76. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户联系人';
  77. CREATE TABLE `vpp_contract` (
  78. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  79. `contract_no` VARCHAR(64) NOT NULL COMMENT '合同编号',
  80. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  81. `template_id` BIGINT NULL COMMENT '模板ID',
  82. `contract_type` TINYINT NOT NULL COMMENT '1购售电 2需求响应合作 3聚合代理 4服务代理 5居民充电桩 6自有资产',
  83. `contract_name` VARCHAR(200) NOT NULL COMMENT '合同名称',
  84. `contract_status` TINYINT NOT NULL COMMENT '0草稿 1审核中 2已生效 3已到期 4已终止',
  85. `sign_date` DATE NULL COMMENT '签订日期',
  86. `effective_date` DATE NULL COMMENT '生效日期',
  87. `expire_date` DATE NULL COMMENT '到期日期',
  88. `file_url` VARCHAR(500) NULL COMMENT '合同文件URL',
  89. `share_ratio` DECIMAL(5,2) NULL COMMENT '分成比例%',
  90. `price_json` JSON NULL COMMENT '电价条款JSON',
  91. `account_info_json` JSON NULL COMMENT '分成账户信息',
  92. `remark` VARCHAR(500) NULL COMMENT '备注',
  93. `tenant_id` INT NULL COMMENT '租户ID',
  94. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  95. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  96. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  97. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  98. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  99. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  100. PRIMARY KEY (`id`),
  101. UNIQUE KEY `uk_contract_no` (contract_no),
  102. KEY `idx_contract_customer` (customer_id),
  103. KEY `idx_contract_status` (contract_status, sign_date)
  104. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='合同';
  105. CREATE TABLE `vpp_contract_template` (
  106. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  107. `template_code` VARCHAR(32) NOT NULL COMMENT '模板编码',
  108. `template_name` VARCHAR(200) NOT NULL COMMENT '模板名称',
  109. `contract_type` TINYINT NOT NULL COMMENT '合同类型',
  110. `version` VARCHAR(20) NOT NULL COMMENT '版本号',
  111. `file_url` VARCHAR(500) NOT NULL COMMENT '模板文件URL',
  112. `variables_json` JSON NULL COMMENT '占位符变量定义',
  113. `is_enabled` TINYINT NOT NULL COMMENT '是否启用',
  114. `tenant_id` INT NULL COMMENT '租户ID',
  115. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  116. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  117. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  118. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  119. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  120. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  121. PRIMARY KEY (`id`),
  122. UNIQUE KEY `uk_template_code` (template_code)
  123. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='合同模板';
  124. CREATE TABLE `vpp_contract_audit_log` (
  125. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  126. `contract_id` BIGINT NOT NULL COMMENT '合同ID',
  127. `action` TINYINT NOT NULL COMMENT '1提交 2通过 3驳回 4归档',
  128. `opinion` VARCHAR(500) NULL COMMENT '意见',
  129. `tenant_id` INT NULL COMMENT '租户ID',
  130. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  131. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  132. PRIMARY KEY (`id`),
  133. KEY `idx_contract_audit_contract` (contract_id, create_time)
  134. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='合同审核流水';
  135. CREATE TABLE `vpp_resource_point` (
  136. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  137. `resource_code` VARCHAR(64) NOT NULL COMMENT '资源编号',
  138. `resource_name` VARCHAR(200) NOT NULL COMMENT '资源名称',
  139. `customer_id` BIGINT NOT NULL COMMENT '所属客户ID',
  140. `resource_type` VARCHAR(16) NOT NULL COMMENT 'PV/ESS/EVCS/IND_LOAD/COM_BLDG',
  141. `capacity_kw` DECIMAL(12,4) NOT NULL COMMENT '装机容量 kW',
  142. `adjustable_kw` DECIMAL(12,4) NULL COMMENT '可调容量 kW',
  143. `province` VARCHAR(50) NULL COMMENT '省',
  144. `city` VARCHAR(50) NULL COMMENT '市',
  145. `district` VARCHAR(50) NULL COMMENT '区/区域',
  146. `address` VARCHAR(500) NULL COMMENT '地址',
  147. `longitude` DECIMAL(10,6) NULL COMMENT '经度',
  148. `latitude` DECIMAL(10,6) NULL COMMENT '纬度',
  149. `owner_name` VARCHAR(200) NULL COMMENT '业主名称',
  150. `contact_name` VARCHAR(100) NULL COMMENT '联系人',
  151. `contact_phone` VARCHAR(20) NULL COMMENT '联系电话',
  152. `run_status` TINYINT NOT NULL COMMENT '0离线 1在线 2故障 3维护',
  153. `response_priority` TINYINT NULL COMMENT '响应优先级1-10',
  154. `un_resource_id` VARCHAR(64) NULL COMMENT '运管平台分路资源ID',
  155. `remark` VARCHAR(500) NULL COMMENT '备注',
  156. `tenant_id` INT NULL COMMENT '租户ID',
  157. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  158. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  159. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  160. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  161. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  162. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  163. PRIMARY KEY (`id`),
  164. UNIQUE KEY `uk_resource_code` (resource_code),
  165. KEY `idx_resource_customer` (customer_id),
  166. KEY `idx_resource_type_status` (resource_type, run_status, deleted_at)
  167. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='资源点';
  168. CREATE TABLE `vpp_resource_point_config` (
  169. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  170. `resource_id` BIGINT NOT NULL COMMENT '资源点ID',
  171. `collect_interval_sec` INT NOT NULL COMMENT '采集频率秒 60/300/900',
  172. `power_upper_limit` DECIMAL(12,4) NULL COMMENT '功率上限告警',
  173. `power_lower_limit` DECIMAL(12,4) NULL COMMENT '功率下限告警',
  174. `soc_upper_limit` DECIMAL(5,2) NULL COMMENT 'SOC上限%',
  175. `soc_lower_limit` DECIMAL(5,2) NULL COMMENT 'SOC下限%',
  176. `offline_timeout_sec` INT NULL COMMENT '离线超时秒',
  177. `alarm_rule_json` JSON NULL COMMENT '扩展告警规则',
  178. `tenant_id` INT NULL COMMENT '租户ID',
  179. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  180. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  181. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  182. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  183. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  184. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  185. PRIMARY KEY (`id`),
  186. UNIQUE KEY `uk_config_resource` (resource_id)
  187. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='资源点运行参数';
  188. CREATE TABLE `vpp_device` (
  189. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  190. `device_code` VARCHAR(64) NOT NULL COMMENT '设备编号',
  191. `device_name` VARCHAR(200) NOT NULL COMMENT '设备名称',
  192. `resource_id` BIGINT NOT NULL COMMENT '所属资源点ID',
  193. `device_type` VARCHAR(32) NOT NULL COMMENT 'INVERTER/PCS/EVCS/METER/Gateway等',
  194. `manufacturer` VARCHAR(100) NULL COMMENT '厂商',
  195. `model` VARCHAR(100) NULL COMMENT '型号',
  196. `rated_power_kw` DECIMAL(12,4) NULL COMMENT '额定功率',
  197. `firmware_version` VARCHAR(50) NULL COMMENT '固件版本',
  198. `last_online_at` DATETIME(3) NULL COMMENT '最后在线时间',
  199. `gateway_id` VARCHAR(64) NULL COMMENT 'IoT网关标识',
  200. `remark` VARCHAR(500) NULL COMMENT '备注',
  201. `tenant_id` INT NULL COMMENT '租户ID',
  202. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  203. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  204. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  205. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  206. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  207. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  208. PRIMARY KEY (`id`),
  209. UNIQUE KEY `uk_device_code` (device_code),
  210. KEY `idx_device_resource` (resource_id),
  211. KEY `idx_device_comm` (comm_status, run_status)
  212. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='设备';
  213. CREATE TABLE `vpp_device_control_log` (
  214. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  215. `device_id` BIGINT NOT NULL COMMENT '设备ID',
  216. `control_type` VARCHAR(32) NOT NULL COMMENT 'START/STOP/CONFIG/OTA',
  217. `control_params` JSON NULL COMMENT '控制参数',
  218. `control_result` TINYINT NOT NULL COMMENT '0失败 1成功 2执行中',
  219. `result_message` VARCHAR(500) NULL COMMENT '结果说明',
  220. `tenant_id` INT NULL COMMENT '租户ID',
  221. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  222. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  223. PRIMARY KEY (`id`),
  224. KEY `idx_control_device` (device_id, create_time)
  225. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='设备远程控制日志';
  226. CREATE TABLE `vpp_energy_reading_monthly` (
  227. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  228. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  229. `site_id` BIGINT NULL COMMENT '站点ID,可空表示户号级',
  230. `settle_year` SMALLINT NOT NULL COMMENT '结算年',
  231. `settle_month` TINYINT NOT NULL COMMENT '结算月',
  232. `total_energy_kwh` DECIMAL(18,4) NOT NULL COMMENT '总用电量 kWh',
  233. `peak_energy_kwh` DECIMAL(18,4) NULL COMMENT '峰电量',
  234. `flat_energy_kwh` DECIMAL(18,4) NULL COMMENT '平电量',
  235. `valley_energy_kwh` DECIMAL(18,4) NULL COMMENT '谷电量',
  236. `sharp_energy_kwh` DECIMAL(18,4) NULL COMMENT '尖电量',
  237. `gen_energy_kwh` DECIMAL(18,4) NULL COMMENT '发电量 kWh',
  238. `calc_status` TINYINT NOT NULL COMMENT '0待核算 1已核算 2异常',
  239. `calc_at` DATETIME(3) NULL COMMENT '核算时间',
  240. `tenant_id` INT NULL COMMENT '租户ID',
  241. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  242. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  243. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  244. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  245. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  246. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  247. PRIMARY KEY (`id`),
  248. UNIQUE KEY `uk_energy_monthly` (customer_id, site_id, settle_year, settle_month),
  249. KEY `idx_energy_period` (settle_year, settle_month)
  250. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='月度电量核算';
  251. CREATE TABLE `vpp_energy_summary_daily` (
  252. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  253. `summary_date` DATE NOT NULL COMMENT '汇总日期',
  254. `resource_id` BIGINT NULL COMMENT '资源点ID,NULL表示全站',
  255. `resource_type` VARCHAR(16) NULL COMMENT '资源类型',
  256. `gen_energy_kwh` DECIMAL(18,4) NULL COMMENT '发电量',
  257. `use_energy_kwh` DECIMAL(18,4) NULL COMMENT '用电量',
  258. `green_ratio` DECIMAL(5,2) NULL COMMENT '绿电消纳比例%',
  259. `max_power_kw` DECIMAL(12,4) NULL COMMENT '日最大有功功率',
  260. `avg_power_kw` DECIMAL(12,4) NULL COMMENT '日平均有功功率',
  261. `tenant_id` INT NULL COMMENT '租户ID',
  262. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  263. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  264. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  265. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  266. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  267. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  268. PRIMARY KEY (`id`),
  269. UNIQUE KEY `uk_summary_daily` (summary_date, resource_id),
  270. KEY `idx_summary_date` (summary_date)
  271. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='日度能源汇总';
  272. CREATE TABLE `vpp_settlement_bill` (
  273. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  274. `bill_no` VARCHAR(64) NOT NULL COMMENT '账单编号',
  275. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  276. `site_id` BIGINT NULL COMMENT '站点ID,可空表示户号级',
  277. `settle_year` SMALLINT NOT NULL COMMENT '结算年',
  278. `settle_month` TINYINT NOT NULL COMMENT '结算月',
  279. `total_energy_kwh` DECIMAL(18,4) NOT NULL COMMENT '总用电量',
  280. `total_amount` DECIMAL(18,4) NOT NULL COMMENT '应付金额',
  281. `paid_amount` DECIMAL(18,4) NOT NULL COMMENT '已付金额,默认0',
  282. `payment_status` TINYINT NOT NULL COMMENT '0未缴 1部分 2已缴 3逾期',
  283. `due_date` DATE NULL COMMENT '缴费截止日期',
  284. `bill_file_url` VARCHAR(500) NULL COMMENT '账单PDF',
  285. `generated_at` DATETIME(3) NULL COMMENT '生成时间',
  286. `tenant_id` INT NULL COMMENT '租户ID',
  287. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  288. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  289. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  290. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  291. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  292. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  293. PRIMARY KEY (`id`),
  294. UNIQUE KEY `uk_bill_no` (bill_no),
  295. KEY `idx_bill_customer` (customer_id, settle_year, settle_month),
  296. KEY `idx_bill_payment` (payment_status)
  297. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='电费账单';
  298. CREATE TABLE `vpp_settlement_bill_detail` (
  299. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  300. `bill_id` BIGINT NOT NULL COMMENT '账单ID',
  301. `time_period` TINYINT NOT NULL COMMENT '1尖 2峰 3平 4谷',
  302. `energy_kwh` DECIMAL(18,4) NOT NULL COMMENT '时段电量',
  303. `price` DECIMAL(10,4) NOT NULL COMMENT '时段电价',
  304. `amount` DECIMAL(18,4) NOT NULL COMMENT '时段金额',
  305. `tenant_id` INT NULL COMMENT '租户ID',
  306. PRIMARY KEY (`id`),
  307. KEY `idx_bill_detail_bill` (bill_id)
  308. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='账单分时明细';
  309. CREATE TABLE `vpp_payment_record` (
  310. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  311. `bill_id` BIGINT NOT NULL COMMENT '账单ID',
  312. `payment_amount` DECIMAL(18,4) NOT NULL COMMENT '缴费金额',
  313. `payment_method` TINYINT NOT NULL COMMENT '1线下转账 2电费抵扣 3其他',
  314. `payment_date` DATE NOT NULL COMMENT '缴费日期',
  315. `voucher_url` VARCHAR(500) NULL COMMENT '缴费凭证',
  316. `remark` VARCHAR(500) NULL COMMENT '对账备注',
  317. `tenant_id` INT NULL COMMENT '租户ID',
  318. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  319. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  320. PRIMARY KEY (`id`),
  321. KEY `idx_payment_bill` (bill_id)
  322. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='缴费记录';
  323. CREATE TABLE `vpp_report_task` (
  324. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  325. `task_no` VARCHAR(64) NOT NULL COMMENT '任务编号',
  326. `task_name` VARCHAR(200) NOT NULL COMMENT '任务名称',
  327. `report_org` TINYINT NOT NULL COMMENT '1交易中心 2能监局 3经信委 4国网上海',
  328. `report_cycle` TINYINT NOT NULL COMMENT '1月报 2年报 3临时',
  329. `report_type` VARCHAR(64) NOT NULL COMMENT '报表类型编码',
  330. `deadline` DATETIME(3) NOT NULL COMMENT '截止日期',
  331. `task_status` TINYINT NOT NULL COMMENT '0待填报 1待审核 2报送中 3已完成 4已逾期',
  332. `assignee_id` BIGINT NULL COMMENT '填报人',
  333. `remind_days` INT NULL COMMENT '提前提醒天数',
  334. `site_ids` JSON NULL COMMENT '关联站点ID列表',
  335. `tenant_id` INT NULL COMMENT '租户ID',
  336. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  337. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  338. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  339. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  340. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  341. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  342. PRIMARY KEY (`id`),
  343. UNIQUE KEY `uk_report_task_no` (task_no),
  344. KEY `idx_report_task_status` (task_status, deadline)
  345. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报送任务';
  346. CREATE TABLE `vpp_report_record` (
  347. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  348. `task_id` BIGINT NOT NULL COMMENT '任务ID',
  349. `record_no` VARCHAR(64) NOT NULL COMMENT '报送记录编号',
  350. `report_period` VARCHAR(32) NOT NULL COMMENT '报送周期标识 如2026-05',
  351. `submit_mode` TINYINT NOT NULL COMMENT '1接口推送 2手动上传',
  352. `record_status` TINYINT NOT NULL COMMENT '0草稿 1待审核 2报送中 3成功 4失败',
  353. `report_file_url` VARCHAR(500) NULL COMMENT '报送文件',
  354. `receipt_file_url` VARCHAR(500) NULL COMMENT '官方回执',
  355. `retry_count` TINYINT NOT NULL COMMENT '重试次数,默认0',
  356. `submitted_at` DATETIME(3) NULL COMMENT '报送时间',
  357. `archived_at` DATETIME(3) NULL COMMENT '归档时间',
  358. `tenant_id` INT NULL COMMENT '租户ID',
  359. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  360. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  361. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  362. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  363. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  364. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  365. PRIMARY KEY (`id`),
  366. UNIQUE KEY `uk_report_record_no` (record_no),
  367. KEY `idx_report_record_task` (task_id),
  368. KEY `idx_report_record_period` (report_period)
  369. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报送记录';
  370. CREATE TABLE `vpp_report_data` (
  371. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  372. `record_id` BIGINT NOT NULL COMMENT '报送记录ID',
  373. `form_data` JSON NOT NULL COMMENT '填报表单JSON',
  374. `validation_errors` JSON NULL COMMENT '校验异常项',
  375. `is_draft` TINYINT NOT NULL COMMENT '是否草稿',
  376. `tenant_id` INT NULL COMMENT '租户ID',
  377. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  378. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  379. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  380. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  381. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  382. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  383. PRIMARY KEY (`id`),
  384. UNIQUE KEY `uk_report_data_record` (record_id)
  385. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报送填报数据';
  386. CREATE TABLE `vpp_report_audit_log` (
  387. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  388. `record_id` BIGINT NOT NULL COMMENT '报送记录ID',
  389. `audit_level` TINYINT NOT NULL COMMENT '1填报 2复核 3审批',
  390. `action` TINYINT NOT NULL COMMENT '1提交 2通过 3驳回',
  391. `opinion` VARCHAR(500) NULL COMMENT '意见',
  392. `operator_ip` VARCHAR(64) NULL COMMENT '操作IP',
  393. `tenant_id` INT NULL COMMENT '租户ID',
  394. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  395. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  396. PRIMARY KEY (`id`),
  397. KEY `idx_report_audit_record` (record_id, create_time)
  398. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报送审核流水';
  399. CREATE TABLE `vpp_dr_event` (
  400. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  401. `event_id` VARCHAR(64) NOT NULL COMMENT '运管平台事件ID',
  402. `event_name` VARCHAR(200) NULL COMMENT '事件名称',
  403. `response_type` TINYINT NOT NULL COMMENT '1日前 2日内 3秒级',
  404. `event_type` TINYINT NULL COMMENT '1削峰 2填谷',
  405. `start_time` DATETIME(3) NOT NULL COMMENT '响应开始',
  406. `end_time` DATETIME(3) NOT NULL COMMENT '响应结束',
  407. `declare_deadline` DATETIME(3) NULL COMMENT '申报截止时间',
  408. `invite_scope` VARCHAR(500) NULL COMMENT '邀约范围',
  409. `target_capacity_kw` DECIMAL(12,4) NOT NULL COMMENT '邀约规模 kW',
  410. `cleared_capacity_kw` DECIMAL(12,4) NULL COMMENT '出清规模 kW',
  411. `remark` VARCHAR(500) NULL COMMENT '备注',
  412. `attachment_url` VARCHAR(500) NULL COMMENT '附件URL',
  413. `attachment_name` VARCHAR(200) NULL COMMENT '附件名称',
  414. `subsidy_price` DECIMAL(10,4) NULL COMMENT '补贴标准 元/kWh',
  415. `event_status` TINYINT NOT NULL COMMENT '0待参与 1已申报 2执行中 3已结束 4已取消',
  416. `raw_payload` JSON NULL COMMENT '原始邀约报文',
  417. `tenant_id` INT NULL COMMENT '租户ID',
  418. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  419. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  420. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  421. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  422. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  423. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  424. PRIMARY KEY (`id`),
  425. UNIQUE KEY `uk_dr_event_id` (event_id),
  426. KEY `idx_dr_event_time` (start_time, event_status)
  427. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='需求响应事件';
  428. CREATE TABLE `vpp_dr_participation` (
  429. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  430. `event_id` BIGINT NOT NULL COMMENT '事件ID',
  431. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  432. `resource_id` BIGINT NULL COMMENT '资源点ID',
  433. `participate_status` TINYINT NOT NULL COMMENT '0待确认 1参与 2拒绝',
  434. `declared_capacity_kw` DECIMAL(12,4) NULL COMMENT '申报出清容量',
  435. `cleared_capacity_kw` DECIMAL(12,4) NULL COMMENT '出清容量',
  436. `completion_rate` DECIMAL(12,4) NULL COMMENT '完成率=出清容量/申报出清容量',
  437. `declared_at` DATETIME(3) NULL COMMENT '申报时间',
  438. `tenant_id` INT NULL COMMENT '租户ID',
  439. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  440. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  441. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  442. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  443. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  444. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  445. PRIMARY KEY (`id`),
  446. KEY `idx_dr_part_event` (event_id),
  447. UNIQUE KEY `uk_dr_part` (event_id, customer_id, resource_id)
  448. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='事件参与记录';
  449. CREATE TABLE `vpp_dr_invitation` (
  450. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  451. `invitation_no` VARCHAR(32) NOT NULL COMMENT '邀约编号',
  452. `dr_event_id` BIGINT NOT NULL COMMENT '需求响应事件ID',
  453. `customer_id` BIGINT NOT NULL COMMENT '客户ID',
  454. `site_id` BIGINT NULL COMMENT '站点ID',
  455. `execute_start_date` DATE NOT NULL COMMENT '执行开始日期',
  456. `execute_end_date` DATE NOT NULL COMMENT '执行结束日期',
  457. `reply_deadline` DATETIME(3) NOT NULL COMMENT '邀约回复截止日期',
  458. `issue_time` DATETIME(3) NOT NULL COMMENT '下发时间',
  459. `transaction_type` TINYINT NULL COMMENT '交易类型 1削峰 2填谷',
  460. `response_type` TINYINT NOT NULL COMMENT '1日前 2日内 3秒级',
  461. `demand_capacity_kw` DECIMAL(12,4) NOT NULL COMMENT '需求容量/邀约规模 kW',
  462. `declared_capacity_kw` DECIMAL(12,4) NULL COMMENT '申报出清容量 kW',
  463. `actual_cleared_capacity_kw` DECIMAL(12,4) NULL COMMENT '实际出清 kW(电网审核通过)',
  464. `estimated_response_capacity_kw` DECIMAL(12,4) NULL COMMENT '预估响应容量 kW(响应完成后本平台评估)',
  465. `actual_response_capacity_kw` DECIMAL(12,4) NULL COMMENT '实际响应容量 kW(电网评估最终结果)',
  466. `response_completion_rate` DECIMAL(12,4) NULL COMMENT '响应完成率=实际响应容量/邀约规模',
  467. `is_winning_bid` TINYINT NULL COMMENT '是否中标 0否 1是',
  468. `reply_status` TINYINT NOT NULL COMMENT '0待回复 1参与 2拒绝 3超时',
  469. `response_status` TINYINT NOT NULL COMMENT '0待响应 1已申报 2执行中 3已结束 4已取消',
  470. `sms_notify_status` TINYINT NOT NULL DEFAULT 0 COMMENT '0未发送 1已发送 2发送失败',
  471. `sms_notify_at` DATETIME(3) NULL COMMENT '短信通知时间',
  472. `sms_contact_id` BIGINT NULL COMMENT '通知联系人ID',
  473. `participation_id` BIGINT NULL COMMENT '关联参与记录ID',
  474. `remark` VARCHAR(500) NULL COMMENT '备注',
  475. `tenant_id` INT NULL COMMENT '租户ID',
  476. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  477. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  478. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  479. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  480. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  481. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  482. PRIMARY KEY (`id`),
  483. UNIQUE KEY `uk_dr_invitation_no` (invitation_no),
  484. UNIQUE KEY `uk_dr_invitation_event_customer` (dr_event_id, customer_id),
  485. KEY `idx_dr_invitation_customer` (customer_id, reply_status),
  486. KEY `idx_dr_invitation_issue` (issue_time, response_type)
  487. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='需求响应企业邀约';
  488. CREATE TABLE `vpp_dr_strategy` (
  489. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  490. `strategy_code` VARCHAR(64) NOT NULL COMMENT '策略编码',
  491. `strategy_name` VARCHAR(200) NOT NULL COMMENT '策略名称',
  492. `response_type` TINYINT NOT NULL COMMENT '适用响应类型',
  493. `adjust_step_kw` DECIMAL(12,4) NULL COMMENT '调节步长 kW',
  494. `execute_mode` TINYINT NOT NULL COMMENT '1并行 2串行',
  495. `strategy_config` JSON NULL COMMENT '策略扩展配置',
  496. `is_default` TINYINT NOT NULL COMMENT '是否默认策略',
  497. `is_enabled` TINYINT NOT NULL COMMENT '是否启用',
  498. `tenant_id` INT NULL COMMENT '租户ID',
  499. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  500. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  501. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  502. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  503. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  504. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  505. PRIMARY KEY (`id`),
  506. UNIQUE KEY `uk_dr_strategy_code` (strategy_code)
  507. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='响应策略';
  508. CREATE TABLE `vpp_dr_strategy_resource` (
  509. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  510. `strategy_id` BIGINT NOT NULL COMMENT '策略ID',
  511. `resource_id` BIGINT NOT NULL COMMENT '资源点ID',
  512. `priority` TINYINT NOT NULL COMMENT '优先级序号',
  513. `max_adjust_kw` DECIMAL(12,4) NULL COMMENT '最大调节量',
  514. `tenant_id` INT NULL COMMENT '租户ID',
  515. PRIMARY KEY (`id`),
  516. UNIQUE KEY `uk_strategy_resource` (strategy_id, resource_id),
  517. KEY `idx_strategy_resource_priority` (strategy_id, priority)
  518. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='策略-资源关联';
  519. CREATE TABLE `vpp_dr_execution` (
  520. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  521. `event_id` BIGINT NOT NULL COMMENT '事件ID',
  522. `resource_id` BIGINT NOT NULL COMMENT '资源点ID',
  523. `target_kw` DECIMAL(12,4) NOT NULL COMMENT '目标调节量',
  524. `actual_kw` DECIMAL(12,4) NULL COMMENT '实际调节量',
  525. `execute_status` TINYINT NOT NULL COMMENT '0待执行 1执行中 2完成 3异常',
  526. `started_at` DATETIME(3) NULL COMMENT '开始时间',
  527. `finished_at` DATETIME(3) NULL COMMENT '结束时间',
  528. `tenant_id` INT NULL COMMENT '租户ID',
  529. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  530. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  531. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  532. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  533. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  534. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  535. PRIMARY KEY (`id`),
  536. KEY `idx_dr_exec_event` (event_id),
  537. KEY `idx_dr_exec_resource` (resource_id)
  538. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='响应执行明细';
  539. CREATE TABLE `vpp_dr_evaluation` (
  540. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  541. `event_id` BIGINT NOT NULL COMMENT '事件ID',
  542. `actual_capacity_kw` DECIMAL(12,4) NULL COMMENT '实际响应容量',
  543. `response_duration_min` INT NULL COMMENT '响应时长分钟',
  544. `subsidy_amount` DECIMAL(18,4) NULL COMMENT '补贴金额',
  545. `qualified_rate` DECIMAL(5,2) NULL COMMENT '执行合格率%',
  546. `report_file_url` VARCHAR(500) NULL COMMENT '评估报告URL',
  547. `evaluated_at` DATETIME(3) NULL COMMENT '评估时间',
  548. `tenant_id` INT NULL COMMENT '租户ID',
  549. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  550. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  551. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  552. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  553. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  554. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  555. PRIMARY KEY (`id`),
  556. UNIQUE KEY `uk_dr_eval_event` (event_id)
  557. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='响应效果评估';
  558. CREATE TABLE `vpp_registration` (
  559. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  560. `dn_id` VARCHAR(64) NOT NULL COMMENT '虚拟电厂运营商ID',
  561. `registration_id` VARCHAR(128) NOT NULL COMMENT '运管平台registrationID',
  562. `reg_status` TINYINT NOT NULL COMMENT '0未注册 1已注册 2需重新注册',
  563. `registered_at` DATETIME(3) NULL COMMENT '注册时间',
  564. `meta_report_id` VARCHAR(128) NULL COMMENT '元数据报告ID',
  565. `tenant_id` INT NULL COMMENT '租户ID',
  566. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  567. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  568. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  569. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  570. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  571. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  572. PRIMARY KEY (`id`),
  573. UNIQUE KEY `uk_vpp_dn_id` (dn_id)
  574. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='运管平台注册信息';
  575. CREATE TABLE `vpp_report_log` (
  576. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  577. `report_type` VARCHAR(64) NOT NULL COMMENT 'MomentData/IntervalData/RegisterReport等',
  578. `request_id` VARCHAR(64) NULL COMMENT '请求ID',
  579. `report_status` TINYINT NOT NULL COMMENT '0失败 1成功',
  580. `response_code` INT NULL COMMENT '响应码',
  581. `error_message` VARCHAR(500) NULL COMMENT '错误信息',
  582. `payload_size` INT NULL COMMENT '报文大小字节',
  583. `reported_at` DATETIME(3) NOT NULL COMMENT '上报时间',
  584. `tenant_id` INT NULL COMMENT '租户ID',
  585. PRIMARY KEY (`id`),
  586. KEY `idx_vpp_report_type_time` (report_type, reported_at)
  587. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='数据上报日志';
  588. CREATE TABLE vpp_file_archive (
  589. id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  590. file_name VARCHAR(255) NOT NULL COMMENT '原始文件名',
  591. file_url VARCHAR(500) NOT NULL COMMENT '存储路径',
  592. file_type VARCHAR(32) NOT NULL COMMENT '文件类型',
  593. file_size BIGINT NULL COMMENT '文件大小字节',
  594. biz_type VARCHAR(32) NOT NULL COMMENT '业务类型',
  595. biz_id BIGINT NOT NULL COMMENT '业务主键',
  596. remark VARCHAR(500) NULL COMMENT '备注',
  597. tenant_id INT NULL COMMENT '租户ID',
  598. create_time DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  599. update_time DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  600. created_by VARCHAR(30) NULL COMMENT '上传人',
  601. updated_by VARCHAR(30) NULL COMMENT '更新人',
  602. delete_flag INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  603. deleted_at DATETIME(3) NULL COMMENT '软删除时间',
  604. PRIMARY KEY (id),
  605. KEY idx_file_archive_biz (biz_type, biz_id)
  606. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='电子档案';
  607. CREATE TABLE `vpp_bidding_config` (
  608. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
  609. `config_name` VARCHAR(200) NOT NULL COMMENT '配置名称',
  610. `effective_start` DATETIME(3) NOT NULL COMMENT '适用开始时间',
  611. `effective_end` DATETIME(3) NOT NULL COMMENT '适用结束时间',
  612. `attachment_url` VARCHAR(500) NULL COMMENT '附件URL',
  613. `attachment_name` VARCHAR(200) NULL COMMENT '附件原始文件名',
  614. `bidding_mode` TINYINT NOT NULL COMMENT '1分时段竞价 2整体竞价',
  615. `typical_coefficient` DECIMAL(6,4) NOT NULL COMMENT '典型系数',
  616. `notice_min_hours` decimal(5,1) DEFAULT NULL COMMENT '提前通知最小小时数(下限,不含本值,如 8 表示 >8)',
  617. `notice_max_hours` decimal(5,1) DEFAULT NULL COMMENT '提前通知最大小时数(上限,含本值,如 24 表示 ≤24)',
  618. `max_price` DECIMAL(12,4) NOT NULL COMMENT '最高价格(元)',
  619. `min_price` DECIMAL(12,4) NOT NULL COMMENT '最低价格(元)',
  620. `site_ids` JSON NULL COMMENT '关联站点ID列表',
  621. `tenant_id` INT NULL COMMENT '租户ID',
  622. `create_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  623. `update_time` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  624. `created_by` VARCHAR(30) NULL COMMENT '创建人',
  625. `updated_by` VARCHAR(30) NULL COMMENT '更新人',
  626. `delete_flag` INT(1) NOT NULL DEFAULT 0 COMMENT '删除标识 0未删除 1已删除',
  627. `deleted_at` DATETIME(3) NULL COMMENT '软删除时间',
  628. PRIMARY KEY (`id`),
  629. KEY `idx_bidding_config_effective` (effective_start, effective_end),
  630. KEY `idx_bidding_config_name` (config_name)
  631. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='竞价配置';