saleflag.go 631 B

12345678910111213141516171819202122232425262728293031
  1. package model
  2. import (
  3. "time"
  4. )
  5. // SaleFlag...售卖状态状态
  6. const (
  7. SaleFlagNotBegin = 1 // 未开售
  8. SaleFlagBegin = 2 // 预售中
  9. SaleFlagEnd = 3 // 已停售
  10. SaleFlagNotSale = 5 // 不可售
  11. SaleFlagOut = 4 // 已售罄
  12. SaleFlagTight = 6 // 库存紧张
  13. )
  14. // CalTkSaleFlag 计算SaleFlag
  15. func (tk *TicketInfo) CalTkSaleFlag() (flag int32) {
  16. current := time.Now().Unix()
  17. if tk.IsSale == 0 {
  18. flag = SaleFlagNotSale
  19. } else if int64(tk.SaleStart) > current {
  20. flag = SaleFlagNotBegin
  21. } else if int64(tk.SaleEnd) < current {
  22. flag = SaleFlagEnd
  23. } else {
  24. flag = SaleFlagBegin
  25. }
  26. return
  27. }