47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package db
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 	"time"
 | |
| 
 | |
| 	db "management/internal/db/sqlc"
 | |
| 	"management/internal/pkg/crypto"
 | |
| 	"management/internal/pkg/rand"
 | |
| 
 | |
| 	"github.com/google/uuid"
 | |
| )
 | |
| 
 | |
| func initUser(departID int32, roleID int32) (*db.SysUser, error) {
 | |
| 	salt, err := rand.String(10)
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	password := "secret"
 | |
| 	hashedPassword, err := crypto.BcryptHashPassword(password + salt)
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	initTime, err := time.ParseInLocation(time.DateTime, "0001-01-01 00:00:00", time.Local)
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 	arg := db.CreateSysUserParams{
 | |
| 		Uuid:             uuid.Must(uuid.NewV7()),
 | |
| 		Email:            "1185230223@qq.com",
 | |
| 		Username:         "kenneth",
 | |
| 		HashedPassword:   hashedPassword,
 | |
| 		Salt:             salt,
 | |
| 		Avatar:           "/statics/admin/images/avatar.jpg",
 | |
| 		Gender:           1,
 | |
| 		DepartmentID:     departID,
 | |
| 		RoleID:           roleID,
 | |
| 		Status:           0,
 | |
| 		ChangePasswordAt: initTime,
 | |
| 		CreatedAt:        time.Now(),
 | |
| 		UpdatedAt:        time.Now(),
 | |
| 	}
 | |
| 	return db.Engine.CreateSysUser(context.Background(), &arg)
 | |
| }
 |