@@ -0,0 +1,55 @@ | |||||
package db | |||||
import ( | |||||
"code.fnuoos.com/go_rely_warehouse/zyos_go_day_luck_draw.git/db/model" | |||||
"code.fnuoos.com/go_rely_warehouse/zyos_go_day_luck_draw.git/md" | |||||
zhios_day_luck_draw_utils "code.fnuoos.com/go_rely_warehouse/zyos_go_day_luck_draw.git/utils" | |||||
"xorm.io/xorm" | |||||
) | |||||
func GetDayLuckDrawPeriodRewardList(Db *xorm.Engine, parameter *md.DayLuckDrawPeriodRewardRequest) ([]*model.DayLuckDrawPeriodReward, int, error) { | |||||
var list []*model.DayLuckDrawPeriodReward | |||||
count := DayLuckDrawPeriodRewardGetCount(Db, parameter) | |||||
session := Db.Where("") | |||||
DayLuckDrawPeriodRewardSearchCondition(Db, session, parameter) | |||||
//分页 | |||||
if zhios_day_luck_draw_utils.StrToInt(parameter.P) > 0 && zhios_day_luck_draw_utils.StrToInt(parameter.PageSize) > 0 { | |||||
session = session.Limit(zhios_day_luck_draw_utils.StrToInt(parameter.PageSize), (zhios_day_luck_draw_utils.StrToInt(parameter.P)-1)*zhios_day_luck_draw_utils.StrToInt(parameter.PageSize)) | |||||
} | |||||
//排序 | |||||
err := session.Desc("create_time").Find(&list) | |||||
if err != nil { | |||||
return nil, 0, err | |||||
} | |||||
return list, count, nil | |||||
} | |||||
func DayLuckDrawPeriodRewardGetCount(Db *xorm.Engine, parameter *md.DayLuckDrawPeriodRewardRequest) int { | |||||
var ord model.DayLuckDrawPeriodReward | |||||
session := Db.Where("") | |||||
DayLuckDrawPeriodRewardSearchCondition(Db, session, parameter) | |||||
count, err := session.Count(&ord) | |||||
if err != nil { | |||||
return 0 | |||||
} | |||||
return int(count) | |||||
} | |||||
func DayLuckDrawPeriodRewardSearchCondition(Db *xorm.Engine, session *xorm.Session, parameter *md.DayLuckDrawPeriodRewardRequest) { | |||||
if parameter.Uid != "" { | |||||
session = session.And("uid = ? ", parameter.Uid) | |||||
} | |||||
if parameter.Phone != "" { | |||||
uid := 0 | |||||
mobile, _ := UserFindByMobile(Db, parameter.Phone) | |||||
if mobile != nil { | |||||
uid = mobile.Uid | |||||
} | |||||
session = session.And("uid = ? ", uid) | |||||
} | |||||
if parameter.StartTime != "" { | |||||
session = session.And("create_time >=?", parameter.StartTime) | |||||
} | |||||
if parameter.EndTime != "" { | |||||
session = session.And("create_time <=?", parameter.EndTime) | |||||
} | |||||
} |
@@ -0,0 +1,16 @@ | |||||
package db | |||||
import ( | |||||
"code.fnuoos.com/go_rely_warehouse/zyos_go_day_luck_draw.git/db/model" | |||||
"xorm.io/xorm" | |||||
) | |||||
// UserFindByMobile search user by mobile | |||||
func UserFindByMobile(Db *xorm.Engine, mobile string) (*model.User, error) { | |||||
var m model.User | |||||
if has, err := Db.Where("phone = ? AND delete_at = 0", mobile, mobile). | |||||
Get(&m); err != nil || has == false { | |||||
return nil, err | |||||
} | |||||
return &m, nil | |||||
} |
@@ -0,0 +1,27 @@ | |||||
package model | |||||
import ( | |||||
"time" | |||||
) | |||||
type User struct { | |||||
Uid int `json:"uid" xorm:"not null pk autoincr comment('主键ID') INT(10)"` | |||||
Username string `json:"username" xorm:"not null default '' comment('用户名') index VARCHAR(50)"` | |||||
Password string `json:"password" xorm:"not null default '' comment('密码') CHAR(32)"` | |||||
Email string `json:"email" xorm:"not null default '' comment('邮箱') VARCHAR(128)"` | |||||
Phone string `json:"phone" xorm:"not null default '' comment('联系电话') VARCHAR(20)"` | |||||
Nickname string `json:"nickname" xorm:"not null default '' comment('昵称') VARCHAR(20)"` | |||||
Level int `json:"level" xorm:"not null default 0 comment('用户等级id') INT(11)"` | |||||
InviteTotal int `json:"invite_total" xorm:"not null default 0 comment('直推邀请总人数') INT(11)"` | |||||
LevelArriveAt time.Time `json:"level_arrive_at" xorm:"not null default 'CURRENT_TIMESTAMP' comment('到达该等级的时间') TIMESTAMP"` | |||||
LevelExpireAt time.Time `json:"level_expire_at" xorm:"not null default 'CURRENT_TIMESTAMP' comment('该等级过期时间') TIMESTAMP"` | |||||
CreateAt time.Time `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' comment('创建时间') TIMESTAMP"` | |||||
UpdateAt time.Time `json:"update_at" xorm:"default 'CURRENT_TIMESTAMP' comment('最后修改资料时间') TIMESTAMP"` | |||||
LastLoginAt time.Time `json:"last_login_at" xorm:"default 'CURRENT_TIMESTAMP' comment('最近登录时间') TIMESTAMP"` | |||||
DeleteAt int `json:"delete_at" xorm:"not null default 0 comment('是否删除;0未删除;1已删除') TINYINT(1)"` | |||||
State int `json:"state" xorm:"not null default 1 comment('0未激活,1正常,2冻结') TINYINT(1)"` | |||||
LastLoginIp string `json:"last_login_ip" xorm:"not null default '' comment('最后登录IP') VARCHAR(64)"` | |||||
RegisterIp string `json:"register_ip" xorm:"not null default '' comment('注册IP') VARCHAR(64)"` | |||||
AdminId string `json:"admin_id" xorm:"not null default '' comment('管理员id') VARCHAR(5000)"` | |||||
IsFake int `json:"is_fake" xorm:"not null default 0 comment('0真实 1虚拟') TINYINT(1)"` | |||||
} |
@@ -0,0 +1,19 @@ | |||||
package md | |||||
type DayLuckDrawPeriodRewardRequest struct { | |||||
Uid string `json:"uid"` | |||||
Oid string `json:"oid"` | |||||
Pvd string `json:"pvd"` | |||||
Phone string `json:"phone"` | |||||
StartTime string `json:"start_time"` | |||||
EndTime string `json:"end_time"` | |||||
P string `json:"p"` //页 | |||||
PageSize string `json:"page_size"` //页大小 | |||||
} | |||||
type DayLuckDrawPeriodRewardOrdList struct { | |||||
Id string `json:"id" ` | |||||
Uid string `json:"uid" ` | |||||
Reward string `json:"reward"` | |||||
Period string `json:"period"` | |||||
CreateTime string `json:"create_time"` | |||||
} |