初始化
This commit is contained in:
29
app/models/measurement_data.py
Normal file
29
app/models/measurement_data.py
Normal file
@@ -0,0 +1,29 @@
|
||||
from sqlalchemy import Column, BigInteger, String, DateTime
|
||||
|
||||
class MeasurementData:
|
||||
"""量测数据表结构定义 - 动态分表"""
|
||||
|
||||
@staticmethod
|
||||
def get_table_name(account_id: int) -> str:
|
||||
return f"measurement_data_{account_id}"
|
||||
|
||||
@staticmethod
|
||||
def get_create_sql(account_id: int) -> str:
|
||||
table_name = MeasurementData.get_table_name(account_id)
|
||||
return f"""
|
||||
CREATE TABLE IF NOT EXISTS `{table_name}` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`monitoring_time` datetime DEFAULT NULL COMMENT '监测时间',
|
||||
`upload_time` datetime DEFAULT NULL COMMENT '上传时间',
|
||||
`monitoring_value` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '监测值(m)',
|
||||
`deformation_value` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变形值(mm)',
|
||||
`time_interval` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '时间间隔(h)',
|
||||
`cumulative_deformation` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '累计变形量(mm)',
|
||||
`deformation_rate` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变形速率(mm/d)',
|
||||
`distance_working_face` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '距掌子面距离(m)',
|
||||
`point_id` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '测点id',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_point_id` (`point_id`),
|
||||
KEY `idx_monitoring_time` (`monitoring_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='量测数据';
|
||||
"""
|
||||
Reference in New Issue
Block a user