1234567891011121314151617181920212223242526272829303132333435363738 |
- package entity
- import (
- "time"
- "gopkg.in/guregu/null.v3"
- "xiaoniaokuaiyan.com/xiaoniao/cerror"
- "xiaoniaokuaiyan.com/xiaoniao/constants"
- )
- type Fcode struct {
- Id int `db:"id"`
- TypeId int `db:"type_id"`
- CodeStr string `db:"code_str"`
- TicketValue int `db:"ticket_value"`
- UseMaxValue int `db:"use_max_value"`
- UseNum int `db:"use_num"`
- AlreadyUseNum int `db:"already_use_num"`
- Deadline string `db:"deadline"`
- TicketDeadline string `db:"ticket_deadline"`
- CreatedAt string `db:"createdAt"`
- Remark null.String `db:"remark" json:"remark"`
- BindProducts null.String `db:"bind_products"`
- Usefor null.String `db:"usefor" json:"usefor"`
- TicketValidDays null.Int `db:"ticket_valid_days" json:"ticket_valid_days"`
- }
- func (codeItem *Fcode) Valid() cerror.CError {
- deadline, _ := time.Parse("2006-01-02", codeItem.Deadline)
- if deadline.Before(time.Now().AddDate(0, 0, -1)) {
- return cerror.New(constants.ERRORCODE_FCODE_EXPIRED, "code has expired|"+codeItem.Deadline)
- }
- if codeItem.AlreadyUseNum >= codeItem.UseNum {
- return cerror.New(constants.ERRORCODE_FCODE_UPEXCEED, "码的使用次数已达到上限")
- }
- return nil
- }
|