models.py 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844
  1. # coding: utf-8
  2. from sqlalchemy import CHAR, Column, DECIMAL, Date, DateTime, Float, Index, String, TIMESTAMP, Table, Text, text
  3. from sqlalchemy.dialects.mysql import BIGINT, DATETIME, INTEGER, LONGBLOB, LONGTEXT, TEXT, TINYINT, VARCHAR
  4. from sqlalchemy.ext.declarative import declarative_base
  5. Base = declarative_base()
  6. metadata = Base.metadata
  7. t_algo_adjustable_param = Table(
  8. 'algo_adjustable_param', metadata,
  9. Column('id', BIGINT(20), comment='id'),
  10. Column('algo_id', INTEGER(11), comment='算法ID'),
  11. Column('pack_code', String(255), comment='电池包包号'),
  12. Column('param', String(510), comment='可调报警参数'),
  13. Column('param_ai', String(255), comment='AI算法可调报警参数'),
  14. Column('create_time', DateTime, comment='算法创建时间'),
  15. Column('create_by', String(255), comment='算法创建人'),
  16. Column('update_by', String(255), comment='算法更新人'),
  17. Column('is_delete', String(255), comment='是否删除'),
  18. Column('update_time', DateTime, comment='更新时间'),
  19. Column('remark', String(255), comment='备注'),
  20. comment='算法可调参数表'
  21. )
  22. class AlgoAilipltdResult(Base):
  23. __tablename__ = 'algo_ailipltd_result'
  24. __table_args__ = {'comment': '电池析锂信息统计表'}
  25. id = Column(BIGINT(255), primary_key=True)
  26. create_time = Column(DateTime, comment='创建时间')
  27. time_cal = Column(String(55), comment='开始计算时间')
  28. imei = Column(String(55), comment='imei')
  29. sn = Column(String(55), comment='sn')
  30. num = Column(String(255), comment='电芯序号')
  31. liplted_amount_temp = Column(String(255), comment='单次析锂时长')
  32. chrgr_rest = Column(String(255), comment='充电序号')
  33. y_pred = Column(String(255), comment='是否析锂')
  34. liplted_amount = Column(String(255), comment='累计析锂次数')
  35. liplted_amount_10 = Column(String(255), comment='近十次累计析锂次数')
  36. mean_liplted_amount = Column(String(255), comment='历史平均析锂量')
  37. liplted_forget = Column(String(255), comment='各指标不再超出报警阈值的时长')
  38. cusum_10 = Column(String(255), comment='近十次累计析锂量')
  39. diff_liplted = Column(String(255), comment='近十次平均析锂量-总平均析锂量')
  40. cusum = Column(String(255), comment='累计析锂量')
  41. index_score = Column(Float(50), comment='析锂指数')
  42. class AlgoAllFaultInfoDone(Base):
  43. __tablename__ = 'algo_all_fault_info_done'
  44. __table_args__ = {'comment': '已结束故障统计表'}
  45. id = Column(BIGINT(11), primary_key=True, nullable=False, comment='id')
  46. date_info = Column(DateTime, primary_key=True, nullable=False, server_default=text("'1900-01-01 00:00:00'"), comment='时间分区字段')
  47. start_time = Column(DateTime, comment='结束时间')
  48. end_time = Column(DateTime, comment='结束时间')
  49. sn = Column(String(255), comment='sn')
  50. imei = Column(String(255), comment='vin')
  51. model = Column(String(255), comment='车型')
  52. fault_level = Column(TINYINT(1), comment='故障级别')
  53. fault_code = Column(String(255), comment='故障码')
  54. fault_info = Column(String(2550), comment='故障信息')
  55. fault_location = Column(String(255), comment='故障位置')
  56. fault_advice = Column(String(255), comment='故障建议')
  57. fault_reason = Column(String(255), comment='故障归因')
  58. device_status = Column(TINYINT(1), comment='电池状态 0-充电 1-放电 2-静置 3-离线')
  59. odo = Column(Float(10), comment='里程')
  60. create_time = Column(DateTime, comment='创建时间')
  61. create_by = Column(String(255), comment='创建人')
  62. update_time = Column(DateTime, comment='更新时间')
  63. update_by = Column(String(255), comment='更新人')
  64. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  65. comment = Column(String(2000), comment='备注')
  66. class AlgoAllFaultInfoIng(Base):
  67. __tablename__ = 'algo_all_fault_info_ing'
  68. __table_args__ = {'comment': '正在进行故障统计表'}
  69. id = Column(BIGINT(11), primary_key=True, nullable=False, comment='id')
  70. date_info = Column(DateTime, primary_key=True, nullable=False, server_default=text("'1900-01-01 00:00:00'"), comment='时间分区字段')
  71. start_time = Column(DateTime, comment='开始时间')
  72. end_time = Column(String(255), comment='结束时间')
  73. sn = Column(String(255), comment='sn')
  74. imei = Column(String(255), comment='vin')
  75. model = Column(String(255), comment='车型')
  76. fault_level = Column(TINYINT(1), comment='故障级别')
  77. fault_code = Column(String(255), comment='故障码')
  78. fault_info = Column(VARCHAR(2550), comment='故障信息')
  79. fault_reason = Column(String(255), comment='故障归因')
  80. fault_location = Column(String(255), comment='故障位置')
  81. fault_advice = Column(String(255), comment='故障建议')
  82. device_status = Column(TINYINT(1), comment='电池状态 0-静置 1=快充; 2=慢充; 3=行车 4=离线')
  83. odo = Column(Float(10), comment='里程')
  84. create_time = Column(DateTime, comment='创建时间')
  85. create_by = Column(String(255), comment='创建人')
  86. update_time = Column(DateTime, comment='更新时间')
  87. update_by = Column(String(255), comment='更新人')
  88. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  89. comment = Column(String(2000), comment='备注')
  90. class AlgoChargeInfo(Base):
  91. __tablename__ = 'algo_charge_info'
  92. id = Column(BIGINT(11), primary_key=True)
  93. add_time = Column(String(255))
  94. update_time = Column(String(255))
  95. sn = Column(String(255))
  96. time_st = Column(String(255), comment='起始时间')
  97. time_end = Column(String(255), comment='结束时间')
  98. status = Column(String(255), comment='行程状态')
  99. delta_time = Column(Float(255), comment='相对时间')
  100. soc_st = Column(Float(255), comment='起始SOC')
  101. soc_end = Column(Float(255), comment='结束SOC')
  102. volt_st = Column(Float(255), comment='起始电压')
  103. volt_end = Column(Float(255), comment='结束电压')
  104. diffvolt_st = Column(Float(255), comment='起始压差')
  105. diffvolt_end = Column(Float(255), comment='结束压差')
  106. temp_max = Column(Float(255), comment='行程最大温度')
  107. temp_min = Column(Float(255), comment='行程最小温度')
  108. temp_incr = Column(Float(255), comment='行程温升')
  109. temp_mean = Column(Float(255), comment='行程温度均值')
  110. temp_st_mean = Column(Float(255), comment='起始温度均值')
  111. temp_end_mean = Column(Float(255), comment='结束温度均值')
  112. difftem_max = Column(Float(255), comment='最大温差')
  113. meancrnt = Column(Float(255), comment='电流倍率')
  114. max_meancrnt = Column(Float(255), comment='最大电流倍率')
  115. chrgah = Column(Float(255), comment='累计充电安时容量')
  116. chrgkwh = Column(Float(255), comment='累计充电能量')
  117. sts_flg = Column(INTEGER(255), comment='充电类型标志位 0-慢充 1-快充')
  118. full_chrg_flg = Column(INTEGER(255), comment='满充标志位 0-非满充 1-满充')
  119. ovchrg_flg = Column(INTEGER(255), comment='过充标志位 0-未过充 1-过充')
  120. ovchrg_prop = Column(INTEGER(255), comment='过充量')
  121. gps_lon = Column(Float(255), comment='经度')
  122. gps_lat = Column(Float(255), comment='纬度')
  123. standtime_f = Column(Float(255), comment='充电前静置时长')
  124. standtime_b = Column(Float(255), comment='充电后静置时长')
  125. city = Column(VARCHAR(255), comment='电池所在城市')
  126. airtemp_st = Column(Float(255), comment='行程起始环境温度')
  127. airtemp_end = Column(Float(255), comment='行程结束环境温度')
  128. charge_env = Column(INTEGER(255), comment='0 室外 1 疑似室内 2 室内\\r\\n')
  129. class AlgoDwdDfChargeStaticBase(Base):
  130. __tablename__ = 'algo_dwd_df_charge_static_base'
  131. id = Column(BIGINT(20), primary_key=True, comment='主键')
  132. sn = Column(String(255), comment='电池标号')
  133. charge_block = Column(INTEGER(11), comment='充电时段编号')
  134. Time_b = Column(DateTime, comment='开始时间')
  135. Time_e = Column(DateTime, comment='结束时间')
  136. PackCrnt_b = Column(Float, comment='开始电流')
  137. PackCrnt_e = Column(Float, comment='结束电流')
  138. PackVolt_b = Column(Float, comment='开始电压')
  139. PackVolt_e = Column(Float, comment='结束电压')
  140. PackSoc_b = Column(INTEGER(11), comment='开始SOC')
  141. PackSoc_e = Column(INTEGER(11), comment='结束SOC')
  142. latitude_b = Column(Float, comment='开始纬度')
  143. longitude_b = Column(Float, comment='开始经度')
  144. latitude_e = Column(Float, comment='结束经度')
  145. longitude_e = Column(Float, comment='结束纬度')
  146. time_diff = Column(Float, comment='充电时间')
  147. Date_b = Column(DateTime, comment='开始日期')
  148. Date_e = Column(DateTime, comment='结束日期')
  149. Day_b = Column(INTEGER(11))
  150. Day_e = Column(INTEGER(11))
  151. Hour_b = Column(INTEGER(11), comment='开始时刻')
  152. Hour_e = Column(INTEGER(11), comment='结束时刻')
  153. Time_slot_b = Column(String(255), comment='开始小时段')
  154. Time_slot_e = Column(String(255), comment='结束小时段')
  155. Pv_b = Column(String(255), comment='开始峰谷段')
  156. Pv_e = Column(String(255), comment='结束峰谷段')
  157. soc_diff = Column(INTEGER(11), comment='SOC变化')
  158. class AlgoDwdDfDriveStaticBase(Base):
  159. __tablename__ = 'algo_dwd_df_drive_static_base'
  160. id = Column(BIGINT(20), primary_key=True, comment='主键')
  161. sn = Column(String(255), comment='电池编号')
  162. drive_block = Column(INTEGER(11), comment='行驶段')
  163. Time_b = Column(DateTime, comment='行驶段开始时间')
  164. Time_e = Column(DateTime, comment='行驶段结束时间')
  165. PackCrnt_b = Column(Float(255), comment='行驶段开始的电流')
  166. PackCrnt_e = Column(Float(255), comment='行驶段结束的电流')
  167. PackVolt_b = Column(Float(255), comment='行驶段开始的电压')
  168. PackVolt_e = Column(Float, comment='行驶段结束的电压')
  169. PackSoc_b = Column(INTEGER(11), comment='行驶段开始的SOC')
  170. PackSoc_e = Column(INTEGER(11), comment='行驶段结束的SOC')
  171. latitude_b = Column(Float, comment='行驶段开始的纬度')
  172. longitude_b = Column(Float, comment='行驶段开始的经度')
  173. latitude_e = Column(Float, comment='行驶度结束的纬度')
  174. longitude_e = Column(Float, comment='行驶度结束的经度')
  175. time_diff = Column(Float, comment='行驶段时长')
  176. Day_b = Column(INTEGER(11), comment='行驶段开始所在日')
  177. Day_e = Column(INTEGER(11), comment='行驶段结束所在日')
  178. Hour_b = Column(INTEGER(11), comment='行驶段开始所在时刻')
  179. Hour_e = Column(INTEGER(11), comment='行驶段结束所在时刻')
  180. Date_b = Column(DateTime, comment='行驶段开始日期')
  181. Date_e = Column(DateTime, comment='行驶段结束日期')
  182. Time_slot_b = Column(String(255), comment='行驶段开始的半小时段')
  183. Time_slot_e = Column(String(255), comment='行驶段结束的半小时段')
  184. Pv_b = Column(String(255), comment='行驶段开始的峰谷')
  185. Pv_e = Column(String(255), comment='行驶段结束的峰谷')
  186. soc_diff = Column(Float, comment='行驶段SOC变化')
  187. end_change = Column(INTEGER(11), comment='行驶段结束是否充换电')
  188. begin_change = Column(INTEGER(11), comment='行驶段开始是否充换电')
  189. charge_block = Column(INTEGER(11), comment='充换电周期编号')
  190. class AlgoDwdDfDriveStaticPeriod(Base):
  191. __tablename__ = 'algo_dwd_df_drive_static_period'
  192. id = Column(BIGINT(20), primary_key=True, comment='主键')
  193. sn = Column(String(255), comment='电池编号')
  194. charge_block = Column(INTEGER(8), comment='充换电周期编号')
  195. Time_b = Column(DateTime, comment='开始时间')
  196. Time_e = Column(DateTime, comment='结束时间')
  197. PackSoc_b = Column(INTEGER(8), comment='开始的SOC')
  198. PackSoc_e = Column(INTEGER(8), comment='结束的SOC')
  199. time_diff = Column(Float, comment='时长')
  200. Date_b = Column(DateTime, comment='开始日期')
  201. Date_e = Column(DateTime, comment='结束日期')
  202. Day_b = Column(INTEGER(8), comment='开始日')
  203. Day_e = Column(INTEGER(8), comment='结束日')
  204. Hour_b = Column(INTEGER(8), comment='开始时刻')
  205. Hour_e = Column(INTEGER(8), comment='结束时刻')
  206. Time_slot_b = Column(String(255), comment='开始的半小段')
  207. Time_slot_e = Column(String(255), comment='结束的半小时段')
  208. Pv_b = Column(String(255), comment='开始的峰谷段')
  209. Pv_e = Column(String(255), comment='结束的峰谷段')
  210. soc_diff = Column(Float, comment='SOC变化值')
  211. time_free = Column(Float, comment='空闲时间')
  212. class AlgoDwdDfStandStaticBase(Base):
  213. __tablename__ = 'algo_dwd_df_stand_static_base'
  214. id = Column(BIGINT(20), primary_key=True, comment='主键')
  215. sn = Column(String(255), comment='电池编号')
  216. stand_block = Column(INTEGER(11), comment='静置分段编号')
  217. Time_b = Column(DateTime, comment='开始时间')
  218. Time_e = Column(DateTime, comment='结束时间')
  219. PackCrnt_b = Column(Float, comment='开始电流')
  220. PackCrnt_e = Column(Float, comment='结束电流')
  221. PackVolt_b = Column(Float, comment='开始电压')
  222. PackVolt_e = Column(Float, comment='结束电压')
  223. PackSoc_b = Column(INTEGER(11), comment='开始SOC')
  224. PackSoc_e = Column(INTEGER(11), comment='结束SOC')
  225. latitude_b = Column(Float, comment='开始纬度')
  226. longitude_b = Column(Float, comment='开始经度')
  227. latitude_e = Column(Float, comment='结束纬度')
  228. longitude_e = Column(Float, comment='结束经度')
  229. time_diff = Column(Float, comment='静置时长')
  230. class AlgoDwdIndicator(Base):
  231. __tablename__ = 'algo_dwd_indicator'
  232. id = Column(BIGINT(20), primary_key=True, comment='ID')
  233. create_time = Column(DateTime)
  234. sn = Column(String(255))
  235. start_time = Column(DateTime, comment='过程开始时间')
  236. end_time = Column(DateTime, comment='过程结束时间')
  237. delta_time = Column(Float, comment='过程时长')
  238. soc_st = Column(Float, comment='过程起始SOC')
  239. soc_end = Column(Float, comment='过程结束SOC')
  240. temp_max = Column(Float, comment='过程最大温度')
  241. temp_min = Column(Float, comment='过程最低温度')
  242. temp_incr = Column(Float, comment='过程最大温升')
  243. chrgah = Column(Float, comment='充电过程累计安时数')
  244. chrgkwh = Column(Float, comment='充电过程累计千瓦时数')
  245. meancrnt = Column(Float, comment='等效倍率')
  246. sts_flg = Column(INTEGER(255), comment='状态值:0为静置,1为快充,2位慢充,3为放电')
  247. full_chrg_flg = Column(INTEGER(255), comment='状态值:1为满充,0为非满充')
  248. status = Column(VARCHAR(255), comment='充放电状态')
  249. volt_st = Column(Float, comment='开始电压')
  250. volt_end = Column(Float, comment='结束电压')
  251. diffvolt_st = Column(Float, comment='开始压差')
  252. diffvolt_end = Column(Float, comment='结束压差')
  253. temp_mean = Column(Float, comment='全程平均单体温度')
  254. temp_st_mean = Column(Float, comment='起始平均单体温度')
  255. temp_end_mean = Column(Float, comment='结束平均单体温度')
  256. difftem_max = Column(Float, comment='全程最大单体温差\\r\\n')
  257. max_meancrnt = Column(Float, comment='最大倍率\\r\\n')
  258. ovchrg_flg = Column(INTEGER(11), comment='过充\\r\\n')
  259. ovchrg_prop = Column(INTEGER(11), comment='过充量\\r\\n')
  260. gps_lon = Column(Float, comment='经度\\r\\n')
  261. gps_lat = Column(Float, comment='纬度\\r\\n纬度')
  262. standtime_f = Column(Float, comment='充电前静置时长')
  263. standtime_b = Column(Float, comment='充电后静置时长')
  264. city = Column(VARCHAR(255), comment='城市')
  265. airtemp_st = Column(Float, comment='起始气温')
  266. airtemp_end = Column(Float, comment='结束气温')
  267. t_algo_dwd_sheduling_base = Table(
  268. 'algo_dwd_sheduling_base', metadata,
  269. Column('sn', Text),
  270. Column('time_date', Date),
  271. Column('time_slot', Text),
  272. Column('slot_first', DateTime),
  273. Column('slot_last', DateTime),
  274. Column('charge_first', Float(asdecimal=True)),
  275. Column('soc_first', Float(asdecimal=True)),
  276. Column('lat_first', Float(asdecimal=True)),
  277. Column('lon_first', Float(asdecimal=True)),
  278. Column('charge_last', Float(asdecimal=True)),
  279. Column('soc_last', Float(asdecimal=True)),
  280. Column('lat_last', Float(asdecimal=True)),
  281. Column('lon_last', Float(asdecimal=True)),
  282. Column('full_unused', BIGINT(20)),
  283. Column('charge_ing', BIGINT(20)),
  284. Column('c_time', Float(asdecimal=True)),
  285. Column('charge_full_next', BIGINT(20)),
  286. Column('charge_full_next2', BIGINT(20)),
  287. Column('charge_full', BIGINT(20)),
  288. Column('full_out', BIGINT(20)),
  289. Column('charge_out', BIGINT(20)),
  290. Column('charge_in', BIGINT(20)),
  291. Column('dist', Float(asdecimal=True)),
  292. Column('soc_low_1', BIGINT(20)),
  293. Column('soc_low_2', BIGINT(20)),
  294. Column('soc_low_3', BIGINT(20)),
  295. Column('dist_close_1', BIGINT(20)),
  296. Column('dist_close_2', BIGINT(20)),
  297. Column('dist_close_3', BIGINT(20)),
  298. Column('in_pro_1', BIGINT(20)),
  299. Column('in_pro_2', BIGINT(20)),
  300. Column('in_pro_3', BIGINT(20))
  301. )
  302. class AlgoDwdShedulingStatic(Base):
  303. __tablename__ = 'algo_dwd_sheduling_static'
  304. id = Column(BIGINT(20), primary_key=True)
  305. time_date = Column(DateTime)
  306. time_slot = Column(String(255))
  307. full_unused = Column(INTEGER(8))
  308. charge_ing = Column(INTEGER(8))
  309. charge_full = Column(INTEGER(8))
  310. full_out = Column(INTEGER(8))
  311. charge_out = Column(INTEGER(8))
  312. charge_in = Column(INTEGER(8))
  313. charge_full_next = Column(INTEGER(8))
  314. charge_full_next2 = Column(INTEGER(8))
  315. soc_low_1 = Column(INTEGER(8))
  316. soc_low_2 = Column(INTEGER(8))
  317. soc_low_3 = Column(INTEGER(8))
  318. dist_close_1 = Column(INTEGER(8))
  319. dist_close_2 = Column(INTEGER(8))
  320. dist_close_3 = Column(INTEGER(8))
  321. in_pro_1 = Column(INTEGER(8))
  322. in_pro_2 = Column(INTEGER(8))
  323. in_pro_3 = Column(INTEGER(8))
  324. load_rate = Column(Float)
  325. class AlgoExchangeStationChargeNeed(Base):
  326. __tablename__ = 'algo_exchange_station_charge_need'
  327. id = Column(BIGINT(20), primary_key=True, comment='主键')
  328. Time = Column(DateTime)
  329. time_slot = Column(String(255), comment='时间段')
  330. charge_need = Column(String(255), comment='充电调度值')
  331. charge_need_remain = Column(INTEGER(11), comment='延后充电的数量')
  332. class AlgoHealthScore(Base):
  333. __tablename__ = 'algo_health_score'
  334. __table_args__ = {'comment': '电池健康评分'}
  335. id = Column(BIGINT(20), primary_key=True, comment='ID')
  336. time = Column(DateTime, comment='更新时间')
  337. health_state = Column(Float, comment='健康评分')
  338. reason = Column(VARCHAR(255), comment='扣分原因')
  339. sn = Column(VARCHAR(255), comment='SN')
  340. class AlgoHoursStatu(Base):
  341. __tablename__ = 'algo_hours_status'
  342. id = Column(INTEGER(11), primary_key=True)
  343. create_time = Column(DateTime, comment='创建时间')
  344. update_time = Column(DateTime, comment='更新时间')
  345. sn = Column(String(255), comment='sn')
  346. bat_status = Column(INTEGER(2), comment='电池状态 0-静置 1=快充; 2=慢充; 3=行车 4=离线')
  347. hour_state = Column(INTEGER(2), comment='统计时间 0至23时')
  348. class AlgoList(Base):
  349. __tablename__ = 'algo_list'
  350. __table_args__ = {'comment': '电池报警项列表'}
  351. id = Column(BIGINT(20), primary_key=True, comment='ID')
  352. create_time = Column(DateTime, comment='创建时间')
  353. create_by = Column(VARCHAR(255), comment='创建人')
  354. update_by = Column(VARCHAR(255), comment='更新人')
  355. algo_id = Column(INTEGER(3), comment='算法ID')
  356. update_time = Column(DateTime, comment='更新时间')
  357. algo_name = Column(VARCHAR(255), comment='算法名称')
  358. is_activate = Column(TINYINT(4), comment='是否启动')
  359. global_param = Column(VARCHAR(255), comment='不可调参数')
  360. fault_level = Column(INTEGER(1), comment='故障等级')
  361. fault_code = Column(VARCHAR(4), comment='故障代码')
  362. fault_influence = Column(VARCHAR(255), comment='故障影响')
  363. model_type = Column(VARCHAR(255), comment='模型类型')
  364. configurable_flag = Column(VARCHAR(255), comment='是否可配')
  365. is_delete = Column(TINYINT(4), server_default=text("'0'"), comment='是否删除')
  366. model_alarm_type = Column(TINYINT(1), nullable=False, server_default=text("'1'"), comment='故障类型 0-风险 1-故障 2-事故')
  367. dept_id_list = Column(String(255), comment='机构列表')
  368. remark = Column(String(255), comment='备注')
  369. class AlgoMidIntershortResult(Base):
  370. __tablename__ = 'algo_mid_intershort_result'
  371. __table_args__ = {'comment': '电池内短路统计详情'}
  372. id = Column(BIGINT(20), primary_key=True, nullable=False, comment='ID')
  373. add_time = Column(TIMESTAMP, primary_key=True, nullable=False, server_default=text("CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP"), comment='添加时间')
  374. update_time = Column(TIMESTAMP, comment='更新时间')
  375. time_st = Column(TIMESTAMP, comment='计算开始时间')
  376. time_sp = Column(TIMESTAMP, comment='计算结束时间')
  377. sn = Column(VARCHAR(255), comment='SN')
  378. method = Column(INTEGER(11), comment='计算方法')
  379. short_current = Column(TEXT, comment='内短路电流')
  380. baltime = Column(TEXT, comment='均衡时间')
  381. class AlgoMidSorout(Base):
  382. __tablename__ = 'algo_mid_sorout'
  383. __table_args__ = {'comment': '内阻计算结果表单'}
  384. id = Column(BIGINT(20), primary_key=True, nullable=False)
  385. add_time = Column(DateTime, comment='添加时间')
  386. update_time = Column(DateTime, comment='更新时间')
  387. sn = Column(String(64), comment='sn')
  388. time = Column(DateTime, primary_key=True, nullable=False, comment='内阻计算时间')
  389. sor = Column(Text, comment='内阻值')
  390. sor_diff = Column(Float, comment='内阻差')
  391. sor_sigma = Column(Text, comment='内阻3sigma值')
  392. soc = Column(Text, comment='计算内阻时的SOC')
  393. temp = Column(Text, comment='计算内阻时的温度')
  394. delta_time = Column(Float, comment='计算时间段')
  395. class AlgoMidUniformResult(Base):
  396. __tablename__ = 'algo_mid_uniform_result'
  397. id = Column(BIGINT(20), primary_key=True)
  398. add_time = Column(DateTime, comment='添加时间')
  399. update_time = Column(DateTime, comment='更新时间')
  400. time = Column(TIMESTAMP, comment='计算时间')
  401. sn = Column(VARCHAR(255), comment='sn')
  402. bmssoc = Column(Float(5), comment='计算一致性时的bmssoc')
  403. cellsoc_diff = Column(Float, comment='soc一致性结果')
  404. cellvolt_diff = Column(Float, comment='电压一致性结果')
  405. cellmin_num = Column(INTEGER(11), comment='最小电压序号')
  406. cellmax_num = Column(INTEGER(11), comment='最大电压序号')
  407. cellsocmax = Column(Float(5), comment='最低soc')
  408. cellsocmin = Column(Float(5), comment='最高soc')
  409. cellvolt_rank = Column(String(255), comment='电压排名')
  410. celltemp_diff = Column(Float(5), comment='温差')
  411. class AlgoPackParam(Base):
  412. __tablename__ = 'algo_pack_param'
  413. id = Column(BIGINT(255), primary_key=True, comment='ID')
  414. pack_code = Column(VARCHAR(255), comment='电池包型号')
  415. param = Column(LONGTEXT, comment='参数')
  416. create_time = Column(DateTime, comment='创建时间')
  417. create_by = Column(VARCHAR(255), comment='创建人')
  418. update_by = Column(VARCHAR(255), comment='更新人')
  419. is_delete = Column(TINYINT(255), comment='是否删除')
  420. update_time = Column(DateTime, comment='更新时间')
  421. class AlgoSafetyScoreD(Base):
  422. __tablename__ = 'algo_safety_score_d'
  423. id = Column(BIGINT(255), primary_key=True)
  424. create_time = Column(DateTime)
  425. update_time = Column(DateTime)
  426. sn = Column(VARCHAR(255))
  427. score_d = Column(Float(5))
  428. risk_index = Column(LONGTEXT)
  429. class AlgoSafetyScoreH(Base):
  430. __tablename__ = 'algo_safety_score_h'
  431. id = Column(BIGINT(255), primary_key=True)
  432. create_time = Column(DateTime)
  433. update_time = Column(DateTime)
  434. sn = Column(VARCHAR(255))
  435. hour_h = Column(INTEGER(2))
  436. score_h = Column(Float(5))
  437. risk_index = Column(LONGTEXT)
  438. t_algo_soc_cor = Table(
  439. 'algo_soc_cor', metadata,
  440. Column('sn', String(255), comment='sn号'),
  441. Column('time', DateTime, comment='校准时刻'),
  442. Column('soc', Float, comment='校准时自身SOC'),
  443. Column('soc_real', Float, comment='校准后SOC'),
  444. Column('soc_delta', Float, comment='SOC差值'),
  445. Column('method', INTEGER(10), comment='SOC校准方法'),
  446. Column('odo', Float, comment='使用里程'),
  447. comment='soc校准'
  448. )
  449. class AlgoSoh(Base):
  450. __tablename__ = 'algo_soh'
  451. id = Column(BIGINT(20), primary_key=True)
  452. create_time = Column(DateTime)
  453. update_time = Column(DateTime)
  454. sn = Column(String(255))
  455. time_st = Column(DateTime)
  456. time_sp = Column(DateTime)
  457. method = Column(INTEGER(2))
  458. soh = Column(Float)
  459. soh_real = Column(Float)
  460. cellsoh_diff = Column(Float)
  461. cellsoh = Column(Text)
  462. charge_ah = Column(Float)
  463. discharge_ah = Column(Float)
  464. odo = Column(Float(10))
  465. class RBatteryFolder(Base):
  466. __tablename__ = 'r_battery_folder'
  467. __table_args__ = {'comment': '电池-故障-数据集'}
  468. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  469. update_time = Column(DateTime, comment='更新时间')
  470. create_time = Column(DateTime, comment='创建时间')
  471. create_by = Column(VARCHAR(255), comment='创建人')
  472. update_by = Column(VARCHAR(255), comment='更新人')
  473. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  474. battery_id = Column(BIGINT(20), comment='电池id')
  475. folder_id = Column(BIGINT(20), comment='收藏文件夹id')
  476. folder_type = Column(TINYINT(1), comment='文件夹类型 0-电池收藏 1-故障收藏 2-数据集收藏')
  477. sn = Column(VARCHAR(255), comment='电池编号')
  478. vin = Column(VARCHAR(255), comment='车架号')
  479. remark = Column(VARCHAR(255), comment='备注')
  480. user_id = Column(BIGINT(11), comment='用户id')
  481. alarm_name = Column(VARCHAR(255), comment='故障名称')
  482. class RBatteryTag(Base):
  483. __tablename__ = 'r_battery_tag'
  484. __table_args__ = {'comment': '电池标签表'}
  485. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  486. update_time = Column(DateTime, comment='更新时间')
  487. create_time = Column(DateTime, comment='创建时间')
  488. create_by = Column(VARCHAR(255), comment='创建人')
  489. update_by = Column(VARCHAR(255), comment='更新人')
  490. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  491. object_id = Column(BIGINT(20), comment='电池id')
  492. tag_id = Column(BIGINT(11), comment='标签id')
  493. child_tag_list = Column(VARCHAR(255), comment='子标签,多个逗号隔开')
  494. tag_remark = Column(VARCHAR(255), comment='标签说明')
  495. tag_type = Column(TINYINT(1), comment='标签类型 1-故障标签 0-电池标签 2-数据集标签')
  496. remark = Column(String(255), comment='备注')
  497. class RDeptMenu(Base):
  498. __tablename__ = 'r_dept_menu'
  499. __table_args__ = {'comment': '机构关联菜单'}
  500. id = Column(BIGINT(20), primary_key=True, comment='自增主键')
  501. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='删除标识1-删除 0-未删除')
  502. dept_id = Column(BIGINT(20), comment='机构id')
  503. menu_id = Column(BIGINT(20), comment='菜单id')
  504. class RDeptModel(Base):
  505. __tablename__ = 'r_dept_model'
  506. __table_args__ = {'comment': '机构关联模型表'}
  507. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  508. update_time = Column(DateTime, comment='更新时间')
  509. create_time = Column(DateTime, comment='创建时间')
  510. create_by = Column(String(255), comment='创建人')
  511. update_by = Column(String(255), comment='更新人')
  512. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  513. dept_id = Column(BIGINT(20), comment='机构id')
  514. model_id = Column(BIGINT(20), comment='模型编码')
  515. remark = Column(String(255), comment='备注')
  516. model_alarm_type = Column(TINYINT(1), server_default=text("'1'"), comment='预警类型 0-风险 1-故障 2-事故')
  517. flag = Column(TINYINT(1), server_default=text("'0'"), comment='是否选中 0-未选中 1-选中')
  518. class RDeptModelSelf(Base):
  519. __tablename__ = 'r_dept_model_self'
  520. __table_args__ = {'comment': '机构关联模型表'}
  521. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  522. update_time = Column(DateTime, comment='更新时间')
  523. create_time = Column(DateTime, comment='创建时间')
  524. create_by = Column(String(255), comment='创建人')
  525. update_by = Column(String(255), comment='更新人')
  526. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  527. dept_id = Column(BIGINT(20), comment='机构id')
  528. model_id = Column(BIGINT(20), comment='模型编码')
  529. remark = Column(String(255), comment='备注')
  530. class RRiskModel(Base):
  531. __tablename__ = 'r_risk_model'
  532. __table_args__ = {'comment': '风险关联模型表'}
  533. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  534. update_time = Column(DateTime, comment='更新时间')
  535. create_time = Column(DateTime, comment='创建时间')
  536. create_by = Column(String(255), comment='创建人')
  537. update_by = Column(String(255), comment='更新人')
  538. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  539. risk_code = Column(String(255), comment='风险类型编码')
  540. model_id = Column(BIGINT(20), comment='模型id')
  541. remark = Column(String(255), comment='备注')
  542. enabled = Column(TINYINT(1), server_default=text("'0'"), comment='是否启用 0-否 1-是')
  543. model_alarm_type = Column(TINYINT(1), server_default=text("'1'"), comment='预警类型 0-风险 1-故障 2-事故')
  544. risk_type = Column(String(255), comment='风险类型')
  545. dept_id = Column(BIGINT(20), comment='机构id')
  546. class SysDept(Base):
  547. __tablename__ = 'sys_dept'
  548. __table_args__ = {'comment': '部门表'}
  549. dept_id = Column(BIGINT(20), primary_key=True, comment='部门id')
  550. parent_id = Column(BIGINT(20), server_default=text("'0'"), comment='父部门id')
  551. ancestors = Column(String(50), server_default=text("''"), comment='祖级列表')
  552. dept_name = Column(String(30), server_default=text("''"), comment='部门名称')
  553. order_num = Column(INTEGER(4), server_default=text("'0'"), comment='显示顺序')
  554. leader = Column(String(20), comment='负责人')
  555. phone = Column(String(11), comment='联系电话')
  556. email = Column(String(50), comment='邮箱')
  557. status = Column(CHAR(1), server_default=text("'0'"), comment='部门状态(0正常 1停用)')
  558. del_flag = Column(CHAR(1), server_default=text("'0'"), comment='删除标志(0代表存在 2代表删除)')
  559. create_by = Column(String(64), server_default=text("''"), comment='创建者')
  560. create_time = Column(DateTime, comment='创建时间')
  561. update_by = Column(String(64), server_default=text("''"), comment='更新者')
  562. update_time = Column(DateTime, comment='更新时间')
  563. organ_code = Column(String(255), comment='机构编码')
  564. province_code = Column(String(255), comment='省份编码')
  565. city_code = Column(String(255), comment='市区编码')
  566. province = Column(String(255), comment='省份')
  567. city = Column(String(255), comment='市区')
  568. address_detail = Column(String(1000), comment='详细地址')
  569. parent_name = Column(String(255), comment='父级机构名称')
  570. dead_line = Column(DateTime, comment='有效期至')
  571. logo = Column(String(255), comment='公司logo')
  572. platform = Column(String(255), comment='平台名称')
  573. remark = Column(String(255), comment='备注')
  574. dept_level = Column(TINYINT(1), comment='部门等级')
  575. class SysDictDatum(Base):
  576. __tablename__ = 'sys_dict_data'
  577. __table_args__ = {'comment': '字典数据表'}
  578. dict_code = Column(BIGINT(20), primary_key=True, comment='字典编码')
  579. dict_sort = Column(INTEGER(4), server_default=text("'0'"), comment='字典排序')
  580. dict_label = Column(String(100), server_default=text("''"), comment='字典标签')
  581. dict_value = Column(String(100), server_default=text("''"), comment='字典键值')
  582. dict_type = Column(String(100), server_default=text("''"), comment='字典类型')
  583. css_class = Column(String(100), comment='样式属性(其他样式扩展)')
  584. list_class = Column(String(100), comment='表格回显样式')
  585. is_default = Column(CHAR(1), server_default=text("'N'"), comment='是否默认(Y是 N否)')
  586. status = Column(CHAR(1), server_default=text("'0'"), comment='状态(0正常 1停用)')
  587. create_by = Column(String(64), server_default=text("''"), comment='创建者')
  588. create_time = Column(DateTime, comment='创建时间')
  589. update_by = Column(String(64), server_default=text("''"), comment='更新者')
  590. update_time = Column(DateTime, comment='更新时间')
  591. remark = Column(String(500), comment='备注')
  592. class TAlgoAlarmDataTag(Base):
  593. __tablename__ = 't_algo_alarm_data_tag'
  594. __table_args__ = {'comment': '算法标签记录'}
  595. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  596. update_time = Column(DateTime, comment='更新时间')
  597. create_time = Column(DateTime, comment='创建时间')
  598. create_by = Column(String(255), comment='创建人')
  599. update_by = Column(String(255), comment='更新人')
  600. factory = Column(String(255), comment='厂家')
  601. sn = Column(String(255), comment='电池编号')
  602. start_time = Column(DateTime, comment='开始时间')
  603. end_time = Column(DateTime, comment='结束时间')
  604. tag = Column(INTEGER(11), comment='标签')
  605. tag_child = Column(INTEGER(11), comment='子标签')
  606. remark = Column(VARCHAR(255), comment='备注')
  607. organ_code = Column(String(255), comment='机构编码')
  608. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  609. class TDevice(Base):
  610. __tablename__ = 't_device'
  611. __table_args__ = {'comment': '设备信息表'}
  612. device_status = Column(TINYINT(1), comment='电池运行状态')
  613. id = Column(BIGINT(20), primary_key=True, comment='主键')
  614. create_time = Column(DateTime)
  615. update_time = Column(DateTime)
  616. update_by = Column(String(255), comment='更新人')
  617. create_by = Column(String(255), comment='创建人')
  618. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='删除标识')
  619. remark = Column(String(500), comment='备注')
  620. status = Column(TINYINT(4), comment='当前状态(1:正常,2:异常))')
  621. omp_status = Column(TINYINT(4), comment='运维状态(0: 正常, 1:待处理, 2:待回调,3:待售后, 4:已完结))')
  622. sn = Column(VARCHAR(32), nullable=False, comment='sn号')
  623. imei = Column(VARCHAR(255), comment='imei号')
  624. producer = Column(VARCHAR(255), comment='品牌')
  625. device_type = Column(INTEGER(11), server_default=text("'1'"), comment='设备类型(1:产品, 2:配件)')
  626. product_type = Column(INTEGER(11), server_default=text("'1'"), comment='产品/配件 类型(1:电池, 2:电动车 3:充电器')
  627. model = Column(VARCHAR(255), comment='型号')
  628. third_sn = Column(VARCHAR(50), comment='第三方电池编号')
  629. vin = Column(String(50), comment='车架号')
  630. organ_code = Column(VARCHAR(255), comment='机构编码')
  631. battery_model = Column(String(255), comment='电池型号')
  632. factory = Column(String(255), comment='品牌')
  633. device_cell_type = Column(String(255), comment='电芯类型')
  634. pack_model = Column(String(255), comment='电池包型号')
  635. cell_model = Column(String(255), comment='电芯型号')
  636. capacity = Column(DECIMAL(11, 2), comment='容量')
  637. scrap_status = Column(TINYINT(1), server_default=text("'1'"), comment='报废状态 0-禁用 1-正常 2-故障 3-返修 4-损毁 5-丢失已赔偿 6-丢失未赔偿 7-测试')
  638. class TFactory(Base):
  639. __tablename__ = 't_factory'
  640. id = Column(INTEGER(11), primary_key=True)
  641. create_time = Column(DateTime)
  642. update_time = Column(DateTime, server_default=text("CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP"))
  643. factory = Column(String(255), comment='厂家')
  644. create_by = Column(String(255), comment='创建人')
  645. update_by = Column(String(255), comment='更新人')
  646. class TProductType(Base):
  647. __tablename__ = 't_product_type'
  648. __table_args__ = {'comment': '电池类型'}
  649. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  650. create_time = Column(DateTime, comment='创建时间')
  651. update_time = Column(DateTime, comment='更新时间')
  652. create_by = Column(VARCHAR(255), comment='创建人')
  653. update_by = Column(VARCHAR(255), comment='更新人')
  654. sn_type = Column(String(255), nullable=False, comment='sn切片对应的类型')
  655. sn_type_code = Column(String(255), nullable=False, comment='sn切片对应类型的实际数据编号')
  656. sn_type_desc = Column(String(255), nullable=False, comment='sn切片对应类型的实际数据描述')
  657. operator = Column(String(255), nullable=False, comment='操作者')
  658. status = Column(INTEGER(255), comment='状态码,停用为0')
  659. sn_type_en = Column(INTEGER(1), comment='sn类型编码 1=产品类型代码,2=PACK制造商简称,3=电芯厂家名称,4=化学体系,5=电压,6=电量,7=产品扩展代码,8=生产日期,9=序列号')
  660. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='删除标识')
  661. remark = Column(String(255), comment='备注')
  662. class TScrapDevice(Base):
  663. __tablename__ = 't_scrap_device'
  664. __table_args__ = {'comment': '设备报废信息表'}
  665. id = Column(BIGINT(20), primary_key=True, comment='主键')
  666. create_time = Column(DateTime)
  667. update_time = Column(DateTime)
  668. update_by = Column(String(255), comment='更新人')
  669. create_by = Column(String(255), comment='创建人')
  670. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='删除标识')
  671. remark = Column(String(500), comment='备注')
  672. sn = Column(String(55), comment='报废电池sn')
  673. reason = Column(String(255), comment='报废原因')
  674. scrap_time = Column(DateTime, comment='报废时间')
  675. organ_code = Column(VARCHAR(255), comment='机构编码')
  676. scrap_status = Column(TINYINT(1), comment='状态 1-已回收 2-已退回 3-已报废 4-丢失')
  677. class TTag(Base):
  678. __tablename__ = 't_tag'
  679. __table_args__ = {'comment': '标签表'}
  680. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  681. update_time = Column(DateTime, comment='更新时间')
  682. create_time = Column(DateTime, comment='创建时间')
  683. create_by = Column(VARCHAR(255), comment='创建人')
  684. update_by = Column(VARCHAR(255), comment='更新人')
  685. tag_name = Column(VARCHAR(255), comment='标签名称')
  686. tag_type = Column(TINYINT(1), comment='标签类型 1-故障标签 2-电池标签 3-数据集标签')
  687. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  688. remark = Column(String(255), comment='备注')
  689. tag_remark = Column(VARCHAR(255), comment='标签备注')
  690. status = Column(TINYINT(1), server_default=text("'1'"), comment='状态 1-启用 0-停用')
  691. organ_code = Column(String(255), comment='机构id')
  692. class TTagChild(Base):
  693. __tablename__ = 't_tag_child'
  694. __table_args__ = {'comment': '子标签表'}
  695. id = Column(BIGINT(11), primary_key=True, comment='主键id')
  696. update_time = Column(DateTime, comment='更新时间')
  697. create_time = Column(DateTime, comment='创建时间')
  698. create_by = Column(VARCHAR(255), comment='创建人')
  699. update_by = Column(VARCHAR(255), comment='更新人')
  700. parent_id = Column(BIGINT(11), comment='父标签id')
  701. name = Column(VARCHAR(255), comment='子标签名称')
  702. is_delete = Column(TINYINT(1), server_default=text("'0'"), comment='是否删除 0-否 1-是')
  703. type = Column(VARCHAR(255), comment='子标签类别')
  704. status = Column(TINYINT(1), server_default=text("'1'"), comment='子标签状态 1-启用 0-停用')
  705. tag_type = Column(TINYINT(1), comment='标签类型 1-故障标签 2-电池标签 3-数据集标签')
  706. remark = Column(String(255), comment='备注')
  707. organ_code = Column(String(255), comment='机构id')
  708. class Test2(Base):
  709. __tablename__ = 'test2'
  710. id = Column(INTEGER(11), primary_key=True)
  711. field1 = Column(VARCHAR(255))
  712. field2 = Column(VARCHAR(255))
  713. t_undo_log = Table(
  714. 'undo_log', metadata,
  715. Column('branch_id', BIGINT(20), nullable=False, comment='branch transaction id'),
  716. Column('xid', String(100), nullable=False, comment='global transaction id'),
  717. Column('context', String(128), nullable=False, comment='undo_log context,such as serialization'),
  718. Column('rollback_info', LONGBLOB, nullable=False, comment='rollback info'),
  719. Column('log_status', INTEGER(11), nullable=False, comment='0:normal status,1:defense status'),
  720. Column('log_created', DATETIME(fsp=6), nullable=False, comment='create datetime'),
  721. Column('log_modified', DATETIME(fsp=6), nullable=False, comment='modify datetime'),
  722. Index('ux_undo_log', 'xid', 'branch_id', unique=True),
  723. comment='AT transaction mode undo table'
  724. )