邹方成 81e2fb5a75
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 41s
feat(activity): 实现抽奖随机承诺与验证功能
新增随机种子生成与验证逻辑,包括:
1. 添加随机承诺生成接口
2. 实现抽奖执行与验证流程
3. 新增批量用户创建与删除功能
4. 添加抽奖收据记录表
5. 完善配置管理与错误码

新增测试用例验证随机算法正确性
2025-11-15 20:39:13 +08:00

35 lines
806 B
Go

package user
import (
"context"
"time"
"bindbox-game/internal/repository/mysql/model"
)
type CreateUserInput struct {
Nickname string
OpenID string
Avatar string
}
func (s *service) CreateUser(ctx context.Context, in CreateUserInput) (*model.Users, error) {
now := time.Now()
u := &model.Users{
Nickname: in.Nickname,
Openid: in.OpenID,
Avatar: in.Avatar,
Status: 1,
CreatedAt: now,
UpdatedAt: now,
}
if err := s.writeDB.Users.WithContext(ctx).Create(u); err != nil {
return nil, err
}
return u, nil
}
func (s *service) DeleteUser(ctx context.Context, userID int64) error {
_, err := s.writeDB.Users.WithContext(ctx).Where(s.writeDB.Users.ID.Eq(userID)).Delete()
return err
}