裕隆城折扣合作@中興低碳 折扣報表
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

1051 líneas
41KB

  1. using System;
  2. using System.Collections.Generic;
  3. using Microsoft.EntityFrameworkCore;
  4. namespace CouponReport.Models.Parkingeyes;
  5. public partial class ParkingEyesContext : DbContext
  6. {
  7. public ParkingEyesContext()
  8. {
  9. }
  10. public ParkingEyesContext(DbContextOptions<ParkingEyesContext> options)
  11. : base(options)
  12. {
  13. }
  14. public virtual DbSet<AggregatedCounter> AggregatedCounters { get; set; }
  15. public virtual DbSet<AlertLpr> AlertLprs { get; set; }
  16. public virtual DbSet<AlertSetting> AlertSettings { get; set; }
  17. public virtual DbSet<Camera> Cameras { get; set; }
  18. public virtual DbSet<CarEnter> CarEnters { get; set; }
  19. public virtual DbSet<CarIdentityCounter> CarIdentityCounters { get; set; }
  20. public virtual DbSet<ChargingBill> ChargingBills { get; set; }
  21. public virtual DbSet<ChargingBillDetail> ChargingBillDetails { get; set; }
  22. public virtual DbSet<ChargingBillSession> ChargingBillSessions { get; set; }
  23. public virtual DbSet<ChargingPile> ChargingPiles { get; set; }
  24. public virtual DbSet<ChargingSession> ChargingSessions { get; set; }
  25. public virtual DbSet<CommonQueue> CommonQueues { get; set; }
  26. public virtual DbSet<Counter> Counters { get; set; }
  27. public virtual DbSet<Division> Divisions { get; set; }
  28. public virtual DbSet<DivisionDisplay> DivisionDisplays { get; set; }
  29. public virtual DbSet<EventLog> EventLogs { get; set; }
  30. public virtual DbSet<Hash> Hashes { get; set; }
  31. public virtual DbSet<Job> Jobs { get; set; }
  32. public virtual DbSet<JobParameter> JobParameters { get; set; }
  33. public virtual DbSet<JobQueue> JobQueues { get; set; }
  34. public virtual DbSet<List> Lists { get; set; }
  35. public virtual DbSet<MergedCarEnter> MergedCarEnters { get; set; }
  36. public virtual DbSet<ParkingColumn> ParkingColumns { get; set; }
  37. public virtual DbSet<ParkingLot> ParkingLots { get; set; }
  38. public virtual DbSet<ParkingStationExtendSetting> ParkingStationExtendSettings { get; set; }
  39. public virtual DbSet<PaymentDevice> PaymentDevices { get; set; }
  40. public virtual DbSet<PendingCarRecord> PendingCarRecords { get; set; }
  41. public virtual DbSet<RoadsideQueue> RoadsideQueues { get; set; }
  42. public virtual DbSet<RoadsideSignRecord> RoadsideSignRecords { get; set; }
  43. public virtual DbSet<RoadsideTicket> RoadsideTickets { get; set; }
  44. public virtual DbSet<Schema> Schemas { get; set; }
  45. public virtual DbSet<Server> Servers { get; set; }
  46. public virtual DbSet<Set> Sets { get; set; }
  47. public virtual DbSet<State> States { get; set; }
  48. public virtual DbSet<TypeDef> TypeDefs { get; set; }
  49. protected override void OnModelCreating(ModelBuilder modelBuilder)
  50. {
  51. modelBuilder.Entity<AggregatedCounter>(entity =>
  52. {
  53. entity.HasKey(e => e.Key).HasName("PK_HangFire_CounterAggregated");
  54. entity.ToTable("AggregatedCounter", "HangFire");
  55. entity.HasIndex(e => e.ExpireAt, "IX_HangFire_AggregatedCounter_ExpireAt").HasFilter("([ExpireAt] IS NOT NULL)");
  56. entity.Property(e => e.Key).HasMaxLength(100);
  57. entity.Property(e => e.ExpireAt).HasColumnType("datetime");
  58. });
  59. modelBuilder.Entity<AlertLpr>(entity =>
  60. {
  61. entity.HasKey(e => e.LprId);
  62. entity.ToTable("AlertLpr");
  63. entity.Property(e => e.LprId)
  64. .HasMaxLength(40)
  65. .HasComment("車牌序號");
  66. entity.Property(e => e.AlertId)
  67. .HasMaxLength(40)
  68. .HasComment("通知編號");
  69. entity.Property(e => e.LprNo)
  70. .HasMaxLength(30)
  71. .HasDefaultValue(",,,")
  72. .HasComment("車牌號碼,以\",\"分開");
  73. entity.Property(e => e.LprNo2)
  74. .HasMaxLength(4000)
  75. .HasComputedColumnSql("(replace([LprNo],'''',''))", false)
  76. .HasComment("運算欄位,無逗號的車牌");
  77. entity.HasOne(d => d.Alert).WithMany(p => p.AlertLprs)
  78. .HasForeignKey(d => d.AlertId)
  79. .HasConstraintName("FK_AlertLpr_AlertSetting");
  80. });
  81. modelBuilder.Entity<AlertSetting>(entity =>
  82. {
  83. entity.HasKey(e => e.AlertId);
  84. entity.ToTable("AlertSetting");
  85. entity.Property(e => e.AlertId)
  86. .HasMaxLength(40)
  87. .HasComment("通知編號");
  88. entity.Property(e => e.AlertName)
  89. .HasMaxLength(20)
  90. .HasDefaultValue("")
  91. .HasComment("名稱");
  92. entity.Property(e => e.Enbale)
  93. .HasMaxLength(1)
  94. .IsUnicode(false)
  95. .HasDefaultValue("N")
  96. .IsFixedLength()
  97. .HasComment("啟動");
  98. entity.Property(e => e.GroupBy)
  99. .HasDefaultValue(1)
  100. .HasComment("類型 1,依照車格 2 依照車號");
  101. entity.Property(e => e.Inbound)
  102. .HasMaxLength(1)
  103. .IsUnicode(false)
  104. .HasDefaultValue("N")
  105. .IsFixedLength()
  106. .HasComment("進場警示");
  107. entity.Property(e => e.Message)
  108. .HasMaxLength(500)
  109. .HasDefaultValue("")
  110. .HasComment("通知訊息");
  111. entity.Property(e => e.Outbound)
  112. .HasMaxLength(1)
  113. .IsUnicode(false)
  114. .HasDefaultValue("N")
  115. .IsFixedLength()
  116. .HasComment("出場警示");
  117. entity.HasMany(d => d.Lots).WithMany(p => p.Alerts)
  118. .UsingEntity<Dictionary<string, object>>(
  119. "AlertParkingLot",
  120. r => r.HasOne<ParkingLot>().WithMany()
  121. .HasForeignKey("LotId")
  122. .OnDelete(DeleteBehavior.ClientSetNull)
  123. .HasConstraintName("FK_AlertParkingLots_ParkingLot"),
  124. l => l.HasOne<AlertSetting>().WithMany()
  125. .HasForeignKey("AlertId")
  126. .OnDelete(DeleteBehavior.ClientSetNull)
  127. .HasConstraintName("FK_AlertParkingLots_AlertSetting"),
  128. j =>
  129. {
  130. j.HasKey("AlertId", "LotId");
  131. j.ToTable("AlertParkingLots");
  132. j.IndexerProperty<string>("AlertId").HasMaxLength(40);
  133. j.IndexerProperty<string>("LotId").HasMaxLength(40);
  134. });
  135. });
  136. modelBuilder.Entity<Camera>(entity =>
  137. {
  138. entity.ToTable("Camera");
  139. entity.Property(e => e.CameraId)
  140. .HasMaxLength(40)
  141. .HasComment("攝影機序號");
  142. entity.Property(e => e.AiLocation)
  143. .HasMaxLength(150)
  144. .HasDefaultValue("")
  145. .HasComment("AI的IP,暫時為背景寫入值");
  146. entity.Property(e => e.CameraTypeId)
  147. .HasDefaultValue(1)
  148. .HasComment("種類");
  149. entity.Property(e => e.Enable)
  150. .HasMaxLength(1)
  151. .IsUnicode(false)
  152. .HasDefaultValue("N")
  153. .IsFixedLength()
  154. .HasComment("啟用否");
  155. entity.Property(e => e.Ip)
  156. .HasMaxLength(150)
  157. .HasComment("IP")
  158. .HasColumnName("IP");
  159. entity.HasOne(d => d.CameraType).WithMany(p => p.Cameras)
  160. .HasForeignKey(d => d.CameraTypeId)
  161. .HasConstraintName("FK_Camera_TypeDef");
  162. });
  163. modelBuilder.Entity<CarEnter>(entity =>
  164. {
  165. entity.HasKey(e => e.SerialNo);
  166. entity.ToTable("CarEnter");
  167. entity.Property(e => e.SerialNo)
  168. .HasMaxLength(50)
  169. .IsUnicode(false);
  170. entity.Property(e => e.CarIdentity).HasDefaultValue(1);
  171. entity.Property(e => e.CarNo).HasMaxLength(30);
  172. entity.Property(e => e.CarNoSimple)
  173. .HasMaxLength(30)
  174. .IsUnicode(false);
  175. entity.Property(e => e.CarType)
  176. .HasMaxLength(1)
  177. .IsUnicode(false);
  178. entity.Property(e => e.CreateFromCloud).HasComment("從雲端建立資料");
  179. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  180. entity.Property(e => e.DataHandleType).HasComment("資料處理的方式(0:一般, 1:程式處理)");
  181. entity.Property(e => e.DepartureDateTime).HasColumnType("datetime");
  182. entity.Property(e => e.DepartureLaneNo)
  183. .HasMaxLength(20)
  184. .IsUnicode(false);
  185. entity.Property(e => e.DeparturePhotoPath)
  186. .HasMaxLength(255)
  187. .IsUnicode(false);
  188. entity.Property(e => e.DeparturePhotoUrlPath).IsUnicode(false);
  189. entity.Property(e => e.DepartureSourceDeviceId)
  190. .HasMaxLength(30)
  191. .IsUnicode(false);
  192. entity.Property(e => e.EnterDateTime).HasColumnType("datetime");
  193. entity.Property(e => e.EnterPhotoPath)
  194. .HasMaxLength(255)
  195. .IsUnicode(false);
  196. entity.Property(e => e.EnterPhotoUrlPath).IsUnicode(false);
  197. entity.Property(e => e.Etag)
  198. .HasMaxLength(30)
  199. .IsUnicode(false);
  200. entity.Property(e => e.GridNumber)
  201. .HasMaxLength(6)
  202. .IsUnicode(false);
  203. entity.Property(e => e.LaneNo)
  204. .HasMaxLength(20)
  205. .IsUnicode(false);
  206. entity.Property(e => e.LimitedTimeDeparture).HasColumnType("datetime");
  207. entity.Property(e => e.OriginalDepartureDateTime).HasColumnType("datetime");
  208. entity.Property(e => e.PayDateTime).HasColumnType("datetime");
  209. entity.Property(e => e.PayDeviceId)
  210. .HasMaxLength(30)
  211. .IsUnicode(false);
  212. entity.Property(e => e.PayType)
  213. .HasMaxLength(30)
  214. .IsUnicode(false);
  215. entity.Property(e => e.Remark)
  216. .HasMaxLength(255)
  217. .IsUnicode(false);
  218. entity.Property(e => e.SourceDeviceId)
  219. .HasMaxLength(30)
  220. .IsUnicode(false);
  221. entity.Property(e => e.StationId)
  222. .HasMaxLength(10)
  223. .IsUnicode(false);
  224. entity.Property(e => e.UpdateDate).HasColumnType("datetime");
  225. entity.Property(e => e.ValuationDateTime).HasColumnType("datetime");
  226. });
  227. modelBuilder.Entity<CarIdentityCounter>(entity =>
  228. {
  229. entity.HasKey(e => new { e.StationId, e.CounterId }).HasName("PK_Counter");
  230. entity.ToTable("CarIdentityCounter");
  231. entity.Property(e => e.StationId)
  232. .HasMaxLength(10)
  233. .IsUnicode(false);
  234. entity.Property(e => e.CounterId)
  235. .HasMaxLength(10)
  236. .IsUnicode(false);
  237. entity.Property(e => e.AdamIp)
  238. .HasMaxLength(150)
  239. .IsUnicode(false)
  240. .HasColumnName("AdamIP");
  241. entity.Property(e => e.CounterName)
  242. .HasMaxLength(50)
  243. .IsUnicode(false);
  244. entity.Property(e => e.CounterType)
  245. .HasMaxLength(10)
  246. .IsUnicode(false);
  247. entity.Property(e => e.DisplayType).HasComment("顯示類別");
  248. entity.Property(e => e.Enable).HasDefaultValue(true);
  249. entity.Property(e => e.ReservedQty).HasColumnType("decimal(5, 0)");
  250. entity.Property(e => e.ScheduleSet).HasComment("預先設定要等排程處理的Flag");
  251. entity.Property(e => e.Setting888)
  252. .HasMaxLength(500)
  253. .IsUnicode(false);
  254. entity.Property(e => e.TotalQty).HasColumnType("decimal(5, 0)");
  255. entity.Property(e => e.UsedQty).HasColumnType("decimal(5, 0)");
  256. });
  257. modelBuilder.Entity<ChargingBill>(entity =>
  258. {
  259. entity.HasKey(e => e.BillingNo);
  260. entity.ToTable("ChargingBill");
  261. entity.Property(e => e.BillingNo)
  262. .ValueGeneratedNever()
  263. .HasComment("帳單編號");
  264. entity.Property(e => e.CarNo).HasMaxLength(30);
  265. entity.Property(e => e.CenterSerialNo)
  266. .HasMaxLength(50)
  267. .IsUnicode(false)
  268. .HasComment("中控進場序號");
  269. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  270. entity.Property(e => e.LimitedTimeDeparture).HasColumnType("datetime");
  271. entity.Property(e => e.PaidDateTime)
  272. .HasComment("付款時間")
  273. .HasColumnType("datetime");
  274. entity.Property(e => e.PayDeviceId)
  275. .HasMaxLength(100)
  276. .IsUnicode(false)
  277. .HasComment("繳費裝置");
  278. entity.Property(e => e.TotalAmount)
  279. .HasComment("金額")
  280. .HasColumnType("decimal(5, 2)");
  281. entity.Property(e => e.UpdateDate).HasColumnType("datetime");
  282. entity.Property(e => e.ValuationDateTime).HasColumnType("datetime");
  283. });
  284. modelBuilder.Entity<ChargingBillDetail>(entity =>
  285. {
  286. entity.HasKey(e => new { e.BillingNo, e.LineNo });
  287. entity.Property(e => e.BillingNo).HasComment("帳單編號");
  288. entity.Property(e => e.LineNo).HasComment("行號");
  289. entity.Property(e => e.ChargingDescription)
  290. .HasMaxLength(50)
  291. .HasComment("敘述");
  292. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  293. entity.Property(e => e.DetailAmount)
  294. .HasComment("小計")
  295. .HasColumnType("decimal(5, 2)");
  296. entity.Property(e => e.FeeType)
  297. .HasMaxLength(50)
  298. .IsUnicode(false)
  299. .HasComment("收費類型");
  300. entity.Property(e => e.LotNo)
  301. .HasMaxLength(20)
  302. .HasComment("車格號");
  303. entity.Property(e => e.SumKwh).HasComment("瓦數總和");
  304. entity.Property(e => e.SumSec).HasComment("秒數總和");
  305. entity.HasOne(d => d.BillingNoNavigation).WithMany(p => p.ChargingBillDetails)
  306. .HasForeignKey(d => d.BillingNo)
  307. .OnDelete(DeleteBehavior.ClientSetNull)
  308. .HasConstraintName("FK_ChargingBillDetails_ChargingBill");
  309. });
  310. modelBuilder.Entity<ChargingBillSession>(entity =>
  311. {
  312. entity.HasKey(e => new { e.BillingNo, e.SessionId });
  313. entity.Property(e => e.BillingNo).HasComment("帳單編號");
  314. entity.Property(e => e.SessionId).HasComment("充電資訊ID");
  315. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  316. entity.HasOne(d => d.BillingNoNavigation).WithMany(p => p.ChargingBillSessions)
  317. .HasForeignKey(d => d.BillingNo)
  318. .OnDelete(DeleteBehavior.ClientSetNull)
  319. .HasConstraintName("FK_ChargingBillSessions_ChargingBill");
  320. entity.HasOne(d => d.Session).WithMany(p => p.ChargingBillSessions)
  321. .HasForeignKey(d => d.SessionId)
  322. .OnDelete(DeleteBehavior.ClientSetNull)
  323. .HasConstraintName("FK_ChargingBillSessions_ChargingBillSessions");
  324. });
  325. modelBuilder.Entity<ChargingPile>(entity =>
  326. {
  327. entity.HasKey(e => new { e.ChargingPileId, e.SubPort });
  328. entity.ToTable("ChargingPile");
  329. entity.Property(e => e.ChargingPileId)
  330. .HasMaxLength(40)
  331. .HasComment("充電樁序號");
  332. entity.Property(e => e.SubPort)
  333. .HasMaxLength(2)
  334. .IsUnicode(false)
  335. .HasComment("槍號");
  336. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  337. entity.Property(e => e.Enable)
  338. .HasDefaultValue(true)
  339. .HasComment("啟用");
  340. entity.Property(e => e.LotNo)
  341. .HasMaxLength(20)
  342. .HasComment("車格號");
  343. entity.Property(e => e.UpdateDate).HasColumnType("datetime");
  344. });
  345. modelBuilder.Entity<ChargingSession>(entity =>
  346. {
  347. entity.ToTable("ChargingSession");
  348. entity.Property(e => e.Id)
  349. .ValueGeneratedNever()
  350. .HasComment("充電資訊ID");
  351. entity.Property(e => e.ChargeKwh).HasComment("充電瓦數");
  352. entity.Property(e => e.ChargeSec).HasComment("充電秒數");
  353. entity.Property(e => e.ChargeStatus)
  354. .HasMaxLength(20)
  355. .IsUnicode(false)
  356. .HasComment("充電狀態");
  357. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  358. entity.Property(e => e.EndTime)
  359. .HasComment("結束時間")
  360. .HasColumnType("datetime");
  361. entity.Property(e => e.ExternalSerialNo)
  362. .HasMaxLength(50)
  363. .IsUnicode(false);
  364. entity.Property(e => e.ExternalSessionId)
  365. .HasMaxLength(50)
  366. .IsUnicode(false)
  367. .HasComment("外部充電資訊Id");
  368. entity.Property(e => e.IsChargeAction).HasComment("是否有充電行為");
  369. entity.Property(e => e.LotNo)
  370. .HasMaxLength(20)
  371. .HasComment("車格號");
  372. entity.Property(e => e.SerialNo)
  373. .HasMaxLength(50)
  374. .IsUnicode(false)
  375. .HasComment("進場序號");
  376. entity.Property(e => e.StartTime)
  377. .HasComment("起始時間")
  378. .HasColumnType("datetime");
  379. });
  380. modelBuilder.Entity<CommonQueue>(entity =>
  381. {
  382. entity.HasKey(e => e.Id).HasName("CommonQueue_pk");
  383. entity.ToTable("CommonQueue");
  384. entity.Property(e => e.CreationTime).HasColumnType("datetime");
  385. entity.Property(e => e.ErrorCount).HasComment("失敗次數");
  386. entity.Property(e => e.EventTime)
  387. .HasComment("時間發生時間")
  388. .HasColumnType("datetime");
  389. entity.Property(e => e.ExtendField).HasComment("客制欄位");
  390. entity.Property(e => e.NextProcessTime)
  391. .HasComment("下次執行時間")
  392. .HasColumnType("datetime");
  393. entity.Property(e => e.ProcessingTime)
  394. .HasComment("處理時間")
  395. .HasColumnType("datetime");
  396. entity.Property(e => e.ReadyToDeleteTime)
  397. .HasComment("距離可刪除的時間,null 表示不可刪除")
  398. .HasColumnType("datetime");
  399. entity.Property(e => e.SerialNo)
  400. .HasMaxLength(64)
  401. .HasComment("進場序號");
  402. entity.Property(e => e.Status)
  403. .HasMaxLength(30)
  404. .HasComment("InQueue, Processing, Fail");
  405. entity.Property(e => e.Type)
  406. .HasMaxLength(30)
  407. .HasComment("進場:In, 出場: Out");
  408. });
  409. modelBuilder.Entity<Counter>(entity =>
  410. {
  411. entity
  412. .HasNoKey()
  413. .ToTable("Counter", "HangFire");
  414. entity.HasIndex(e => e.Key, "CX_HangFire_Counter").IsClustered();
  415. entity.Property(e => e.ExpireAt).HasColumnType("datetime");
  416. entity.Property(e => e.Key).HasMaxLength(100);
  417. });
  418. modelBuilder.Entity<Division>(entity =>
  419. {
  420. entity.ToTable("Division");
  421. entity.Property(e => e.DivisionId)
  422. .HasMaxLength(40)
  423. .HasComment("區域編號");
  424. entity.Property(e => e.DivisionName)
  425. .HasMaxLength(40)
  426. .HasDefaultValue("")
  427. .HasComment("名稱");
  428. entity.Property(e => e.DivisionType)
  429. .HasDefaultValue(2)
  430. .HasComment("區域類別");
  431. entity.Property(e => e.Enable)
  432. .HasMaxLength(1)
  433. .IsUnicode(false)
  434. .HasDefaultValue("Y")
  435. .IsFixedLength();
  436. entity.HasOne(d => d.DivisionTypeNavigation).WithMany(p => p.Divisions)
  437. .HasForeignKey(d => d.DivisionType)
  438. .HasConstraintName("FK_Division_TypeDef");
  439. entity.HasMany(d => d.Lots).WithMany(p => p.Divisions)
  440. .UsingEntity<Dictionary<string, object>>(
  441. "DivisionParkingLot",
  442. r => r.HasOne<ParkingLot>().WithMany()
  443. .HasForeignKey("LotId")
  444. .OnDelete(DeleteBehavior.ClientSetNull)
  445. .HasConstraintName("FK_DivisionParkingLots_ParkingLot"),
  446. l => l.HasOne<Division>().WithMany()
  447. .HasForeignKey("DivisionId")
  448. .OnDelete(DeleteBehavior.ClientSetNull)
  449. .HasConstraintName("FK_DivisionParkingLots_Division"),
  450. j =>
  451. {
  452. j.HasKey("DivisionId", "LotId");
  453. j.ToTable("DivisionParkingLots");
  454. j.IndexerProperty<string>("DivisionId")
  455. .HasMaxLength(40)
  456. .HasComment("區域序號");
  457. j.IndexerProperty<string>("LotId")
  458. .HasMaxLength(40)
  459. .HasComment("車格序號");
  460. });
  461. });
  462. modelBuilder.Entity<DivisionDisplay>(entity =>
  463. {
  464. entity.HasKey(e => e.DisplayId);
  465. entity.ToTable("DivisionDisplay");
  466. entity.Property(e => e.DisplayId)
  467. .HasMaxLength(40)
  468. .HasComment("顯示器編號")
  469. .HasColumnName("DisplayID");
  470. entity.Property(e => e.AdamIp)
  471. .HasMaxLength(150)
  472. .HasDefaultValue("")
  473. .HasComment("ADAM IP")
  474. .HasColumnName("AdamIP");
  475. entity.Property(e => e.AlarmSec).HasComment("警報秒數");
  476. entity.Property(e => e.DisplayType).HasComment("顯示類別");
  477. entity.Property(e => e.DivisionId)
  478. .HasMaxLength(40)
  479. .HasComment("區域序號");
  480. entity.Property(e => e.DoPort).HasComment("Do Port");
  481. entity.Property(e => e.Enable)
  482. .HasMaxLength(1)
  483. .IsUnicode(false)
  484. .HasDefaultValue("N")
  485. .IsFixedLength()
  486. .HasComment("啟用");
  487. entity.Property(e => e.Port).HasDefaultValue(17494);
  488. entity.Property(e => e.ReserveQty)
  489. .HasDefaultValue(0)
  490. .HasComment("保留車格");
  491. entity.Property(e => e.ScheduleSet).HasComment("預先設定要等PE處理的Flag");
  492. entity.Property(e => e.SetAsFull)
  493. .HasMaxLength(1)
  494. .IsUnicode(false)
  495. .HasDefaultValue("N")
  496. .IsFixedLength()
  497. .HasComment("強制滿位");
  498. entity.HasOne(d => d.Division).WithMany(p => p.DivisionDisplays)
  499. .HasForeignKey(d => d.DivisionId)
  500. .OnDelete(DeleteBehavior.ClientSetNull)
  501. .HasConstraintName("FK_DivisionDisplay_Division");
  502. });
  503. modelBuilder.Entity<EventLog>(entity =>
  504. {
  505. entity.HasKey(e => e.EventId);
  506. entity.ToTable("EventLog");
  507. entity.Property(e => e.EventId)
  508. .HasMaxLength(40)
  509. .HasComment("事件編號");
  510. entity.Property(e => e.CloudSyncTime)
  511. .HasComment("雲端同步日期")
  512. .HasColumnType("smalldatetime");
  513. entity.Property(e => e.CreateDate)
  514. .HasComment("建立日期")
  515. .HasColumnType("smalldatetime");
  516. entity.Property(e => e.DeviceId)
  517. .HasMaxLength(40)
  518. .HasComment("裝置編號");
  519. entity.Property(e => e.EventCode).HasComment("事件類別");
  520. entity.Property(e => e.EventDate)
  521. .HasComment("事件時間(可能調整)")
  522. .HasColumnType("smalldatetime");
  523. entity.Property(e => e.Info)
  524. .HasMaxLength(500)
  525. .HasComment("資訊");
  526. entity.Property(e => e.LotId)
  527. .HasMaxLength(40)
  528. .HasComment("車格號");
  529. entity.Property(e => e.LprNo)
  530. .HasMaxLength(30)
  531. .HasComment("車牌號碼");
  532. entity.Property(e => e.RelatedEventId)
  533. .HasMaxLength(40)
  534. .HasComment("歸連事件編號,通常應用在出場事件");
  535. entity.Property(e => e.UnlockDate)
  536. .HasComment("異常事件解除日期")
  537. .HasColumnType("smalldatetime");
  538. entity.HasOne(d => d.EventCodeNavigation).WithMany(p => p.EventLogs)
  539. .HasForeignKey(d => d.EventCode)
  540. .OnDelete(DeleteBehavior.ClientSetNull)
  541. .HasConstraintName("FK_EventLog_TypeDef");
  542. entity.HasOne(d => d.Lot).WithMany(p => p.EventLogs)
  543. .HasForeignKey(d => d.LotId)
  544. .HasConstraintName("FK_EventLog_ParkingLot");
  545. });
  546. modelBuilder.Entity<Hash>(entity =>
  547. {
  548. entity.HasKey(e => new { e.Key, e.Field }).HasName("PK_HangFire_Hash");
  549. entity.ToTable("Hash", "HangFire");
  550. entity.HasIndex(e => e.ExpireAt, "IX_HangFire_Hash_ExpireAt").HasFilter("([ExpireAt] IS NOT NULL)");
  551. entity.Property(e => e.Key).HasMaxLength(100);
  552. entity.Property(e => e.Field).HasMaxLength(100);
  553. });
  554. modelBuilder.Entity<Job>(entity =>
  555. {
  556. entity.HasKey(e => e.Id).HasName("PK_HangFire_Job");
  557. entity.ToTable("Job", "HangFire");
  558. entity.HasIndex(e => e.ExpireAt, "IX_HangFire_Job_ExpireAt").HasFilter("([ExpireAt] IS NOT NULL)");
  559. entity.HasIndex(e => e.StateName, "IX_HangFire_Job_StateName").HasFilter("([StateName] IS NOT NULL)");
  560. entity.Property(e => e.CreatedAt).HasColumnType("datetime");
  561. entity.Property(e => e.ExpireAt).HasColumnType("datetime");
  562. entity.Property(e => e.StateName).HasMaxLength(20);
  563. });
  564. modelBuilder.Entity<JobParameter>(entity =>
  565. {
  566. entity.HasKey(e => new { e.JobId, e.Name }).HasName("PK_HangFire_JobParameter");
  567. entity.ToTable("JobParameter", "HangFire");
  568. entity.Property(e => e.Name).HasMaxLength(40);
  569. entity.HasOne(d => d.Job).WithMany(p => p.JobParameters)
  570. .HasForeignKey(d => d.JobId)
  571. .HasConstraintName("FK_HangFire_JobParameter_Job");
  572. });
  573. modelBuilder.Entity<JobQueue>(entity =>
  574. {
  575. entity.HasKey(e => new { e.Queue, e.Id }).HasName("PK_HangFire_JobQueue");
  576. entity.ToTable("JobQueue", "HangFire");
  577. entity.Property(e => e.Queue).HasMaxLength(50);
  578. entity.Property(e => e.Id).ValueGeneratedOnAdd();
  579. entity.Property(e => e.FetchedAt).HasColumnType("datetime");
  580. });
  581. modelBuilder.Entity<List>(entity =>
  582. {
  583. entity.HasKey(e => new { e.Key, e.Id }).HasName("PK_HangFire_List");
  584. entity.ToTable("List", "HangFire");
  585. entity.HasIndex(e => e.ExpireAt, "IX_HangFire_List_ExpireAt").HasFilter("([ExpireAt] IS NOT NULL)");
  586. entity.Property(e => e.Key).HasMaxLength(100);
  587. entity.Property(e => e.Id).ValueGeneratedOnAdd();
  588. entity.Property(e => e.ExpireAt).HasColumnType("datetime");
  589. });
  590. modelBuilder.Entity<MergedCarEnter>(entity =>
  591. {
  592. entity.HasKey(e => e.IncomingSerialNo);
  593. entity.ToTable("MergedCarEnter");
  594. entity.Property(e => e.IncomingSerialNo)
  595. .HasMaxLength(50)
  596. .IsUnicode(false);
  597. entity.Property(e => e.CreationDate).HasColumnType("datetime");
  598. entity.Property(e => e.SerialNo)
  599. .HasMaxLength(50)
  600. .IsUnicode(false);
  601. });
  602. modelBuilder.Entity<ParkingColumn>(entity =>
  603. {
  604. entity.HasKey(e => e.CameraId);
  605. entity.ToTable("ParkingColumn");
  606. entity.Property(e => e.CameraId).HasMaxLength(40);
  607. entity.Property(e => e.DeviceId).HasMaxLength(40);
  608. entity.Property(e => e.LastHeartBeat)
  609. .HasComment("最後一次心跳包時間")
  610. .HasColumnType("datetime");
  611. entity.Property(e => e.ParkingNo).HasMaxLength(6);
  612. entity.Property(e => e.PassTime).HasColumnType("datetime");
  613. });
  614. modelBuilder.Entity<ParkingLot>(entity =>
  615. {
  616. entity.HasKey(e => e.LotId);
  617. entity.ToTable("ParkingLot");
  618. entity.Property(e => e.LotId)
  619. .HasMaxLength(40)
  620. .HasComment("車格序號");
  621. entity.Property(e => e.AliasName)
  622. .HasMaxLength(50)
  623. .HasDefaultValue("")
  624. .HasComment("別名");
  625. entity.Property(e => e.CameraId)
  626. .HasMaxLength(40)
  627. .HasComment("隸屬攝影機");
  628. entity.Property(e => e.Enable)
  629. .HasMaxLength(1)
  630. .IsUnicode(false)
  631. .HasDefaultValue("Y")
  632. .IsFixedLength()
  633. .HasComment("啟用否");
  634. entity.Property(e => e.IsBackShot).HasComment("是否是後拍");
  635. entity.Property(e => e.IsChargePole).HasComment("是否為充電車格");
  636. entity.Property(e => e.LastEvent)
  637. .HasMaxLength(40)
  638. .HasComment("上次事件");
  639. entity.Property(e => e.LotNo)
  640. .HasMaxLength(20)
  641. .HasComment("車格編號");
  642. entity.Property(e => e.SortOrder)
  643. .HasComment("車格排序")
  644. .HasColumnType("decimal(5, 3)");
  645. entity.HasOne(d => d.Camera).WithMany(p => p.ParkingLots)
  646. .HasForeignKey(d => d.CameraId)
  647. .OnDelete(DeleteBehavior.ClientSetNull)
  648. .HasConstraintName("FK_ParkingLot_Camera");
  649. });
  650. modelBuilder.Entity<ParkingStationExtendSetting>(entity =>
  651. {
  652. entity.ToTable("ParkingStationExtendSetting");
  653. entity.Property(e => e.Remark).HasMaxLength(500);
  654. entity.Property(e => e.SiteId).HasMaxLength(20);
  655. entity.Property(e => e.Type).HasMaxLength(50);
  656. entity.Property(e => e.Value).HasMaxLength(450);
  657. });
  658. modelBuilder.Entity<PaymentDevice>(entity =>
  659. {
  660. entity.HasKey(e => e.DeviceId);
  661. entity.ToTable("PaymentDevice");
  662. entity.Property(e => e.DeviceId)
  663. .HasMaxLength(40)
  664. .HasComment("裝置序號");
  665. entity.Property(e => e.DeviceType)
  666. .HasDefaultValue(1)
  667. .HasComment("類別, APS=1");
  668. entity.Property(e => e.Enable)
  669. .HasMaxLength(1)
  670. .IsUnicode(false)
  671. .HasDefaultValue("N")
  672. .IsFixedLength()
  673. .HasComment("啟用否");
  674. entity.Property(e => e.Ip)
  675. .HasMaxLength(150)
  676. .HasDefaultValue("")
  677. .HasComment("IP位置")
  678. .HasColumnName("IP");
  679. });
  680. modelBuilder.Entity<PendingCarRecord>(entity =>
  681. {
  682. entity.HasKey(e => e.Id).HasName("PK__PendingC__ED1E36611F7D7D33");
  683. entity.ToTable("PendingCarRecord");
  684. entity.Property(e => e.CreationDate)
  685. .HasDefaultValueSql("(getdate())")
  686. .HasColumnType("datetime");
  687. entity.Property(e => e.GuidNum)
  688. .HasMaxLength(50)
  689. .IsUnicode(false);
  690. entity.Property(e => e.IoTime).HasColumnType("datetime");
  691. entity.Property(e => e.Iotype)
  692. .HasMaxLength(30)
  693. .HasColumnName("IOType");
  694. entity.Property(e => e.LprNo).HasMaxLength(30);
  695. entity.Property(e => e.ProcessedTime).HasColumnType("datetime");
  696. entity.Property(e => e.Remark).HasMaxLength(255);
  697. entity.Property(e => e.SpotNo).HasMaxLength(6);
  698. entity.Property(e => e.StationId).HasMaxLength(10);
  699. });
  700. modelBuilder.Entity<RoadsideQueue>(entity =>
  701. {
  702. entity.HasKey(e => e.Id).HasName("RoadsideQueue_pk");
  703. entity.ToTable("RoadsideQueue");
  704. entity.Property(e => e.CreationTime).HasColumnType("datetime");
  705. entity.Property(e => e.ErrorCount).HasComment("失敗次數");
  706. entity.Property(e => e.EventTime)
  707. .HasComment("時間發生時間")
  708. .HasColumnType("datetime");
  709. entity.Property(e => e.NextProcessTime)
  710. .HasComment("下次執行時間")
  711. .HasColumnType("datetime");
  712. entity.Property(e => e.ProcessingTime)
  713. .HasComment("處理時間")
  714. .HasColumnType("datetime");
  715. entity.Property(e => e.SerialNo)
  716. .HasMaxLength(64)
  717. .HasComment("進場序號");
  718. entity.Property(e => e.Status)
  719. .HasMaxLength(30)
  720. .HasComment("InQueue, Processing, Fail");
  721. entity.Property(e => e.TicketNo)
  722. .HasMaxLength(15)
  723. .IsUnicode(false)
  724. .HasComment("路邊單號");
  725. entity.Property(e => e.Type)
  726. .HasMaxLength(30)
  727. .HasComment("開單:OpenTicket, 加簽: AddSign, 結單: CloseTicket, 改單:ChangeTicket, 檢查結單了但未離場: CheckLeave, 繳費通加: PaidNotify");
  728. });
  729. modelBuilder.Entity<RoadsideSignRecord>(entity =>
  730. {
  731. entity.HasKey(e => e.Id).HasName("PK__Roadside__3213E83F6C1E942A");
  732. entity.Property(e => e.Id).HasColumnName("id");
  733. entity.Property(e => e.CreateTime)
  734. .HasDefaultValueSql("(getdate())")
  735. .HasColumnType("datetime");
  736. entity.Property(e => e.DeviceReceivable)
  737. .HasComment("繳費機的應收金額")
  738. .HasColumnType("decimal(5, 2)");
  739. entity.Property(e => e.IsDeleted).HasComment("簽單是否被刪除(取消)");
  740. entity.Property(e => e.Minutes).HasComment("加簽分鐘數");
  741. entity.Property(e => e.Receivable)
  742. .HasComment("路邊的應收金額")
  743. .HasColumnType("decimal(5, 2)");
  744. entity.Property(e => e.RoadsideTicketNo)
  745. .HasMaxLength(15)
  746. .IsUnicode(false)
  747. .HasComment("路邊單號");
  748. entity.Property(e => e.SerialNo)
  749. .HasMaxLength(50)
  750. .IsUnicode(false)
  751. .HasComment("進場序號");
  752. entity.Property(e => e.SignPhotoPath).HasComment("開單照片實體路徑");
  753. entity.Property(e => e.StartTime)
  754. .HasComment("加簽開始時間")
  755. .HasColumnType("datetime");
  756. entity.HasOne(d => d.RoadsideTicket).WithMany(p => p.RoadsideSignRecords)
  757. .HasForeignKey(d => d.RoadsideTicketId)
  758. .OnDelete(DeleteBehavior.ClientSetNull)
  759. .HasConstraintName("FK__RoadsideS__Roads__4119A21D");
  760. });
  761. modelBuilder.Entity<RoadsideTicket>(entity =>
  762. {
  763. entity.HasKey(e => e.Id).HasName("PK__Roadside__3213E83F69F2066F");
  764. entity.Property(e => e.Id).HasColumnName("id");
  765. entity.Property(e => e.CarIdentity).HasComment("計價身份別");
  766. entity.Property(e => e.CarNo)
  767. .HasMaxLength(30)
  768. .HasComment("車號");
  769. entity.Property(e => e.CarType)
  770. .HasMaxLength(1)
  771. .IsUnicode(false)
  772. .HasComment("車種");
  773. entity.Property(e => e.CardNumber)
  774. .HasMaxLength(50)
  775. .IsUnicode(false)
  776. .HasComment("卡片號碼");
  777. entity.Property(e => e.CardSn)
  778. .HasMaxLength(50)
  779. .IsUnicode(false)
  780. .HasComment("卡片序號")
  781. .HasColumnName("CardSN");
  782. entity.Property(e => e.ClosePhotoPath).HasComment("結單照片實體路徑");
  783. entity.Property(e => e.CloseTime)
  784. .HasComment("結單時間")
  785. .HasColumnType("datetime");
  786. entity.Property(e => e.CreateTime)
  787. .HasDefaultValueSql("(getdate())")
  788. .HasColumnType("datetime");
  789. entity.Property(e => e.DeviceReceivable)
  790. .HasComment("繳費機的應收金額")
  791. .HasColumnType("decimal(5, 2)");
  792. entity.Property(e => e.EnterTime)
  793. .HasComment("進格時間")
  794. .HasColumnType("datetime");
  795. entity.Property(e => e.IsAutoPay).HasComment("是否自動扣繳");
  796. entity.Property(e => e.IsFree).HasComment("是否為公務車");
  797. entity.Property(e => e.LastQueryTime)
  798. .HasComment("上次查詢時間")
  799. .HasColumnType("datetime");
  800. entity.Property(e => e.LastestSignTime)
  801. .HasComment("最新加簽時間")
  802. .HasColumnType("datetime");
  803. entity.Property(e => e.NextSignTime)
  804. .HasComment("下次加簽時間")
  805. .HasColumnType("datetime");
  806. entity.Property(e => e.OpenPhotoPath).HasComment("開單照片實體路徑");
  807. entity.Property(e => e.OpenTime)
  808. .HasComment("開單時間")
  809. .HasColumnType("datetime");
  810. entity.Property(e => e.PaidDueDate)
  811. .HasComment("繳費期限")
  812. .HasColumnType("datetime");
  813. entity.Property(e => e.PaidTime)
  814. .HasComment("繳費時間")
  815. .HasColumnType("datetime");
  816. entity.Property(e => e.Receivable)
  817. .HasComment("路邊的應收金額")
  818. .HasColumnType("decimal(5, 2)");
  819. entity.Property(e => e.RoadsideTicketNo)
  820. .HasMaxLength(15)
  821. .IsUnicode(false)
  822. .HasComment("路邊單號");
  823. entity.Property(e => e.SendToRoadsidePaidTime)
  824. .HasComment("傳給路邊的付款時間")
  825. .HasColumnType("datetime");
  826. entity.Property(e => e.SerialNo)
  827. .HasMaxLength(50)
  828. .IsUnicode(false)
  829. .HasComment("進場序號");
  830. entity.Property(e => e.SiteId)
  831. .HasMaxLength(10)
  832. .IsUnicode(false)
  833. .HasComment("場站代碼");
  834. entity.Property(e => e.Status)
  835. .HasMaxLength(10)
  836. .IsUnicode(false)
  837. .HasComment("狀態: Open, Close");
  838. });
  839. modelBuilder.Entity<Schema>(entity =>
  840. {
  841. entity.HasKey(e => e.Version).HasName("PK_HangFire_Schema");
  842. entity.ToTable("Schema", "HangFire");
  843. entity.Property(e => e.Version).ValueGeneratedNever();
  844. });
  845. modelBuilder.Entity<Server>(entity =>
  846. {
  847. entity.HasKey(e => e.Id).HasName("PK_HangFire_Server");
  848. entity.ToTable("Server", "HangFire");
  849. entity.HasIndex(e => e.LastHeartbeat, "IX_HangFire_Server_LastHeartbeat");
  850. entity.Property(e => e.Id).HasMaxLength(200);
  851. entity.Property(e => e.LastHeartbeat).HasColumnType("datetime");
  852. });
  853. modelBuilder.Entity<Set>(entity =>
  854. {
  855. entity.HasKey(e => new { e.Key, e.Value }).HasName("PK_HangFire_Set");
  856. entity.ToTable("Set", "HangFire");
  857. entity.HasIndex(e => e.ExpireAt, "IX_HangFire_Set_ExpireAt").HasFilter("([ExpireAt] IS NOT NULL)");
  858. entity.HasIndex(e => new { e.Key, e.Score }, "IX_HangFire_Set_Score");
  859. entity.Property(e => e.Key).HasMaxLength(100);
  860. entity.Property(e => e.Value).HasMaxLength(256);
  861. entity.Property(e => e.ExpireAt).HasColumnType("datetime");
  862. });
  863. modelBuilder.Entity<State>(entity =>
  864. {
  865. entity.HasKey(e => new { e.JobId, e.Id }).HasName("PK_HangFire_State");
  866. entity.ToTable("State", "HangFire");
  867. entity.Property(e => e.Id).ValueGeneratedOnAdd();
  868. entity.Property(e => e.CreatedAt).HasColumnType("datetime");
  869. entity.Property(e => e.Name).HasMaxLength(20);
  870. entity.Property(e => e.Reason).HasMaxLength(100);
  871. entity.HasOne(d => d.Job).WithMany(p => p.States)
  872. .HasForeignKey(d => d.JobId)
  873. .HasConstraintName("FK_HangFire_State_Job");
  874. });
  875. modelBuilder.Entity<TypeDef>(entity =>
  876. {
  877. entity.HasKey(e => e.TypeId).HasName("PK_CameraType");
  878. entity.ToTable("TypeDef");
  879. entity.Property(e => e.TypeId)
  880. .ValueGeneratedNever()
  881. .HasComment("類別編號");
  882. entity.Property(e => e.CategoryId).HasComment("主要類別");
  883. entity.Property(e => e.TypeName)
  884. .HasMaxLength(40)
  885. .HasComment("類別名稱");
  886. });
  887. OnModelCreatingPartial(modelBuilder);
  888. }
  889. partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
  890. }