session.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package request
  2. import "time"
  3. // ResolveActiveSessionRequest 使用会话编号、车牌或 RFID 定位停车会话,至少需要提供一个标识。
  4. type ResolveActiveSessionRequest struct {
  5. SessionID uint
  6. PlateNumber string
  7. RFIDTag string
  8. }
  9. // EntryAccessProfile 描述车辆在停车场满位时参与准入判断的身份。
  10. // 同一车辆可以同时具有多个身份,只要任一身份被停车场允许即可入场。
  11. type EntryAccessProfile struct {
  12. IsTemporary bool
  13. HasValidMonthlyCard bool
  14. IsVIP bool
  15. }
  16. // OpenSessionRequest 保存一次停车会话不可变的入场信息。
  17. type OpenSessionRequest struct {
  18. PlateNumber string
  19. RFIDTag string
  20. ParkingLotID uint
  21. ParkingSpaceID uint
  22. EntryChannelID uint
  23. EntryChannelCode string
  24. EntryChannelName string
  25. EntryDeviceCode string
  26. EntryDeviceName string
  27. EntryImage string
  28. EntryTime time.Time
  29. AccessProfile EntryAccessProfile
  30. }
  31. // CloseSessionRequest 保存一次停车会话的最终结算与出场信息。
  32. // 支付信息仅作为会话摘要,支付流水仍以 payment_record 为准。
  33. type CloseSessionRequest struct {
  34. SessionID uint
  35. ExitTime time.Time
  36. StayTime int64
  37. Fee float64
  38. PaymentStatus string
  39. PaymentEntry string
  40. PaymentMethod string
  41. ExitImage string
  42. ExitChannelID uint
  43. ExitChannelCode string
  44. ExitChannelName string
  45. ExitDeviceCode string
  46. ExitDeviceName string
  47. }