123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415 |
- package model
- import (
- "go-common/library/time"
- )
- //allowance origin
- const (
- AllowanceNone = iota
- AllowanceSystemAdmin
- AllowanceBusinessReceive
- )
- // blance change type
- const (
- VipSalary int64 = iota + 1
- SystemAdminSalary
- Consume
- ConsumeFaildBack
- )
- // coupon type
- const (
- CouponVideo = iota + 1
- CouponCartoon
- CouponAllowance
- CouponAllowanceCode
- )
- // coupon state.
- const (
- NotUsed = iota
- InUse
- Used
- Expire
- Block
- )
- // allowance explain
- const (
- NoLimitExplain = "不限定"
- ScopeFmt = "仅限%s端使用"
- )
- // batch state
- const (
- BatchStateNormal int8 = iota
- BatchStateBlock
- )
- // batch origin
- const (
- AdminSalaryOrigin int64 = iota + 1
- )
- // allowance change type
- const (
- AllowanceSalary int8 = iota + 1
- AllowanceConsume
- AllowanceCancel
- AllowanceConsumeSuccess
- AllowanceConsumeFaild
- AllowanceBlock
- AllowanceUnBlock
- )
- // coupon_batch_info表 product_limit_renewal字段.
- const (
- ProdLimRenewalAll int8 = iota
- ProdLimRenewalAuto
- ProdLimRenewalNotAuto
- )
- // coupon_batch_info表 product_limit_renewal字段.
- const (
- None int8 = 0
- ProdLimMonth1 = 1
- ProdLimMonth3 = 3
- ProdLimMonth12 = 12
- )
- // ProdLimit .
- var (
- ProdLimMonthMap = map[int8]string{None: "", ProdLimMonth1: "1月", ProdLimMonth3: "3月", ProdLimMonth12: "12月"}
- ProdLimRenewalMap = map[int8]string{ProdLimRenewalAll: "", ProdLimRenewalAuto: "自动续期", ProdLimRenewalNotAuto: "非自动续期"}
- )
- // PageInfo common page info.
- type PageInfo struct {
- Count int `json:"count"`
- CurrentPage int `json:"currentPage,omitempty"`
- Item interface{} `json:"item"`
- }
- // CouponBatchInfo info.
- type CouponBatchInfo struct {
- ID int64 `json:"id"`
- AppID int64 `json:"app_id"`
- Name string `json:"name"`
- BatchToken string `json:"batch_token"`
- MaxCount int64 `json:"max_count"`
- CurrentCount int64 `json:"current_count"`
- StartTime int64 `json:"start_time"`
- ExpireTime int64 `json:"expire_time"`
- ExpireDay int64 `json:"expire_day"`
- Ver int64 `json:"ver"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- Operator string `json:"operator"`
- LimitCount int64 `json:"limit_count"`
- FullAmount float64 `json:"full_amount"`
- Amount float64 `json:"amount"`
- State int8 `json:"state"`
- CouponType int8 `json:"coupon_type"`
- PlatformLimit string `json:"platform_limit"`
- ProdLimMonth int8 `json:"product_limit_month"`
- ProdLimRenewal int8 `json:"product_limit_Renewal"`
- }
- // ArgBatchInfo arg.
- type ArgBatchInfo struct {
- AppID int64 `form:"app_id" validate:"required,min=1,gte=1"`
- Name string `form:"name" validate:"required"`
- MaxCount int64 `form:"max_count" validate:"required,min=1,gte=1"`
- LimitCount int64 `form:"limit_count"`
- StartTime int64 `form:"start_time" validate:"required,min=1,gte=1"`
- ExpireTime int64 `form:"end_time" validate:"required,min=1,gte=1"`
- }
- // ArgAllowanceBatchInfo allowance arg.
- type ArgAllowanceBatchInfo struct {
- AppID int64 `form:"app_id" validate:"required,min=1,gte=1"`
- Name string `form:"name" validate:"required"`
- MaxCount int64 `form:"max_count"`
- LimitCount int64 `form:"limit_count"`
- StartTime int64 `form:"start_time"`
- ExpireTime int64 `form:"end_time"`
- ExpireDay int64 `form:"expire_day" default:"-1"`
- Amount float64 `form:"amount" validate:"required,min=1,gte=1"`
- FullAmount float64 `form:"full_amount" validate:"required,min=1,gte=1"`
- PlatformLimit []int64 `form:"platform_limit,split"`
- ProdLimMonth int8 `form:"product_limit_month"`
- ProdLimRenewal int8 `form:"product_limit_Renewal" validate:"gte=0,lte=2"`
- }
- // ArgAllowanceBatchInfoModify allowance modify arg.
- type ArgAllowanceBatchInfoModify struct {
- ID int64 `form:"id" validate:"required,min=1,gte=1"`
- AppID int64 `form:"app_id" validate:"required,min=1,gte=1"`
- Name string `form:"name" validate:"required"`
- MaxCount int64 `form:"max_count" `
- LimitCount int64 `form:"limit_count"`
- PlatformLimit []int64 `form:"platform_limit,split"`
- ProdLimMonth int8 `form:"product_limit_month" validate:"gte=0"`
- ProdLimRenewal int8 `form:"product_limit_Renewal" validate:"gte=0,lte=2"`
- }
- // ArgAllowance arg.
- type ArgAllowance struct {
- ID int64 `form:"id" validate:"required,min=1,gte=1"`
- }
- // ArgAllowanceInfo arg.
- type ArgAllowanceInfo struct {
- BatchToken string `form:"batch_token" validate:"required"`
- }
- // ArgAllowanceSalary allowance salary arg.
- type ArgAllowanceSalary struct {
- Mids []int64 `form:"mids,split"`
- BatchToken string `form:"batch_token" validate:"required"`
- MsgType string `form:"msg_type" default:"vip"`
- }
- // ArgAllowanceState arg.
- type ArgAllowanceState struct {
- Mid int64 `form:"mid" validate:"required,min=1,gte=1"`
- CouponToken string `form:"coupon_token" validate:"required"`
- }
- // ArgBatchList arg.
- type ArgBatchList struct {
- AppID int64 `form:"app_id"`
- Type int8 `form:"type" default:"3"`
- }
- // ArgSalaryCoupon salary coupon.
- type ArgSalaryCoupon struct {
- Mid int64 `form:"mid" validate:"required,min=1,gte=1"`
- CouponType int64 `form:"coupon_type" validate:"required,min=1,gte=1"`
- Count int `form:"count" validate:"required,min=1,gte=1"`
- BranchToken string `form:"branch_token" validate:"required"`
- }
- // ArgUploadFile upload file arg.
- type ArgUploadFile struct {
- FileURL string `form:"url" validate:"required"`
- }
- // CouponBatchResp resp.
- type CouponBatchResp struct {
- ID int64 `json:"id"`
- AppID int64 `json:"app_id"`
- AppName string `json:"app_name"`
- Name string `json:"name"`
- BatchToken string `json:"batch_token"`
- MaxCount int64 `json:"max_count"`
- CurrentCount int64 `json:"current_count"`
- StartTime int64 `json:"start_time"`
- ExpireTime int64 `json:"expire_time"`
- ExpireDay int64 `json:"expire_day"`
- Operator string `json:"operator"`
- LimitCount int64 `json:"limit_count"`
- ProductLimitExplain string `json:"product_limit_explain"`
- PlatfromLimit []int64 `json:"platform_limit"`
- UseLimitExplain string `json:"use_limit_explain"`
- State int8 `json:"state"`
- Amount float64 `json:"amount"`
- FullAmount float64 `json:"full_amount"`
- ProdLimMonth int8 `json:"product_limit_month"`
- ProdLimRenewal int8 `json:"product_limit_Renewal"`
- }
- // AppInfo app info.
- type AppInfo struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- Appkey string `json:"appkey"`
- NotifyURL string `json:"notify_url"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- }
- // CouponResp def.
- type CouponResp struct {
- Token string `json:"token"`
- Mid int64 `json:"mid"`
- GrantTime int64 `json:"grant_time"`
- UseTime int64 `json:"use_time"`
- State int8 `json:"state"`
- Remark int8 `json:"remark"`
- }
- // CouponAllowanceInfo coupon allowance info.
- type CouponAllowanceInfo struct {
- ID int64 `json:"id"`
- CouponToken string `json:"coupon_token"`
- Mid int64 `json:"mid"`
- State int32 `json:"state"`
- StartTime int64 `json:"start_time"`
- ExpireTime int64 `json:"expire_time"`
- Origin int64 `json:"origin"`
- OrderNO string `json:"order_no"`
- Ver int64 `json:"ver"`
- Remark string `json:"remark"`
- CTime time.Time `json:"ctime"`
- MTime time.Time `json:"mtime"`
- BatchToken string `json:"batch_token"`
- Amount float64 `json:"amount"`
- FullAmount float64 `json:"full_amount"`
- AppID int64 `json:"app_id"`
- }
- // CouponAllowanceChangeLog coupon allowance change log.
- type CouponAllowanceChangeLog struct {
- ID int64 `json:"-"`
- CouponToken string `json:"coupon_token"`
- OrderNO string `json:"order_no"`
- Mid int64 `json:"mid"`
- State int8 `json:"state"`
- ChangeType int8 `json:"change_type"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- }
- // ProdLimExplainFmt .
- func (c *CouponBatchResp) ProdLimExplainFmt(prodLimMonth, prodLimRenewal int8) {
- if prodLimMonth == None && prodLimRenewal == None {
- c.ProductLimitExplain = NoLimitExplain
- }
- pstr := ""
- if limm, ok := ProdLimMonthMap[prodLimMonth]; ok {
- pstr += limm
- }
- if limr, ok := ProdLimRenewalMap[prodLimRenewal]; ok {
- pstr += "、" + limr
- }
- c.ProductLimitExplain = pstr
- }
- //Sizer .
- type Sizer interface {
- Size() int64
- }
- //ArgCouponViewBatch .
- type ArgCouponViewBatch struct {
- ID int64 `form:"id"`
- Name string `form:"name" validate:"required"`
- AppID int64 `form:"app_id" validate:"required,min=1"`
- MaxCount int64 `form:"max_count" default:"-1"`
- CurrentCount int64 `form:"current_count"`
- LimitCount int64 `form:"limit_count" default:"-1"`
- StartTime int64 `form:"start_time" validate:"required,min=1"`
- ExpireTime int64 `form:"end_time" validate:"required,min=1"`
- Operator string `form:"operator"`
- Ver int64
- BatchToken string
- CouponType int8
- }
- //ArgSearchCouponView .
- type ArgSearchCouponView struct {
- PN int `form:"pn" default:"1"`
- PS int `form:"ps" default:"20"`
- Mid int64 `form:"mid" validate:"required"`
- CouponToken string `form:"coupon_token"`
- AppID int64 `form:"app_id"`
- BatchToken string `form:"batch_token"`
- BatchTokens []string
- }
- //CouponInfo .
- type CouponInfo struct {
- CouponToken string `json:"coupon_token"`
- Mid int64 `json:"mid"`
- State int8 `json:"state"`
- StartTime int64 `json:"start_time"`
- ExpireTime int64 `json:"expire_time"`
- Origin int8 `json:"origin"`
- CouponType int8 `json:"coupon_type"`
- OrderNo string `json:"order_no"`
- OID int32 `json:"oid"`
- Remark string `json:"remark"`
- UseVer int64 `json:"use_ver"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- BatchToken string `json:"batch_token"`
- Title string `json:"title"`
- BatchName string `json:"batch_name"`
- }
- //PGCInfoResq .
- type PGCInfoResq struct {
- Title string `json:"title"`
- }
- //CouponChangeLog .
- type CouponChangeLog struct {
- CouponToken string `json:"coupon_token"`
- Mid int64 `json:"mid"`
- State int8 `json:"state"`
- }
- // ArgBatchSalaryCoupon batch salary coupon.
- type ArgBatchSalaryCoupon struct {
- FileURL string `form:"file_url" validate:"required"`
- Count int64 `form:"count" validate:"required,min=1,gte=1"`
- BranchToken string `form:"branch_token" validate:"required"`
- SliceSize int `form:"slice_size" default:"100" validate:"min=100,max=10000"`
- }
- // ArgCouponCode coupon code.
- type ArgCouponCode struct {
- ID int64 `form:"id"`
- BatchToken string `form:"batch_token"`
- State int32 `form:"state"`
- Code string `form:"code"`
- Mid int64 `form:"mid"`
- CouponType int32 `form:"coupon_type"`
- CouponToken string `form:"coupon_token"`
- Pn int `form:"pn"`
- Ps int `form:"ps"`
- }
- // CouponCode coupon code.
- type CouponCode struct {
- ID int64 `json:"id"`
- BatchToken string `json:"batch_token"`
- State int32 `json:"state"`
- Code string `json:"code"`
- Mid int64 `json:"mid"`
- CouponType int32 `json:"coupon_type"`
- CouponToken string `json:"coupon_token"`
- Ver int64 `json:"ver"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- }
- // CodePage code page.
- type CodePage struct {
- Count int64 `json:"count"`
- CodeList []*CouponCode `json:"code_list"`
- }
- // coupon code state.
- const (
- CodeStateNotUse = iota + 1
- CodeStateUsed
- CodeStateBlock
- CodeStateExpire
- )
- // batch code max count.
- const (
- BatchCodeMaxCount = 50000
- BatchAddCodeSlice = 100
- )
- // code batch state.
- const (
- CodeBatchUsable = iota
- CodeBatchBlock
- CodeBatchExpire
- )
|