2 Star 0 Fork 0

lzz/seckilling

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
seckillaction.go 1.05 KB
一键复制 编辑 原始数据 按行查看 历史
lzz 提交于 2024-10-30 20:04 +08:00 . end seckill buy
package models
import (
"gitee.com/lzzandlyx/seckilling/database/mysql"
"gorm.io/gorm"
"time"
)
func NewSecKillAction() *SecKillAction {
return new(SecKillAction)
}
func (sa *SecKillAction) GetSecKillActions() (list []*SecKillAction, err error) {
startOfDay := time.Now().Truncate(24 * time.Hour)
endOfDay := startOfDay.Add(24 * 4 * time.Hour)
err = mysql.WithMysql(func(db *gorm.DB) error {
// 查询 start_time 在这三天内的活动数据
return db.Where("start_time >= ? AND start_time < ?", startOfDay, endOfDay).Order("start_time").Find(&list).Error
})
return
}
// 秒杀活动表
type SecKillAction struct {
gorm.Model
No string `gorm:"type:char(36);unique;not null;comment:秒杀活动唯一编号"`
StartTime time.Time `gorm:"type:datetime;index;not null;comment:开始时间"`
Duration uint64 `gorm:"type:tinyint(1);not null;default:1;comment:活动持续时间(h)"`
State string `gorm:"type:char(1);index;not null;default:0;comment:活动状态0-未开启 1-进行中 2-已结束 3-已取消 4-活动异常"`
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/lzzandlyx/seckilling.git
git@gitee.com:lzzandlyx/seckilling.git
lzzandlyx
seckilling
seckilling
b6fae9c27bc2

搜索帮助