批量优化功能

This commit is contained in:
2026-09-30 00:57:36 +08:00
parent ca4220f92c
commit e3db229f41
43 changed files with 2959 additions and 207 deletions
+24 -1
View File
@@ -25,6 +25,7 @@ type adminUserDTO struct {
Email *string `json:"email"`
Qq *string `json:"qq"`
Sex uint8 `json:"sex"`
Birth *string `json:"birth"`
Avatar *string `json:"avatar"`
Rid uint64 `json:"rid"`
LoginCount uint64 `json:"login_count"`
@@ -34,6 +35,18 @@ type adminUserDTO struct {
UpdateTime *string `json:"update_time"`
}
// formatPlatformBirth 空串统一返回 nil,避免前端拿到空字符串
func formatPlatformBirth(birth *string) *string {
if birth == nil {
return nil
}
s := strings.TrimSpace(*birth)
if s == "" {
return nil
}
return &s
}
func toAdminUserDTO(u models.AdminUser) adminUserDTO {
var updateTime *string
if u.UpdateTime != nil {
@@ -48,6 +61,7 @@ func toAdminUserDTO(u models.AdminUser) adminUserDTO {
Email: u.Email,
Qq: u.Qq,
Sex: u.Sex,
Birth: formatPlatformBirth(u.Birth),
Avatar: u.Avatar,
Rid: u.RoleID,
LoginCount: u.LoginCount,
@@ -111,6 +125,7 @@ type adminAddUserPayload struct {
Email *string `json:"email"`
Qq *string `json:"qq"`
Sex *uint8 `json:"sex"`
Birth *string `json:"birth"`
Avatar *string `json:"avatar"`
Rid *uint64 `json:"rid"`
Status *uint8 `json:"status"`
@@ -152,7 +167,7 @@ func (c *PlatformAdminUserController) AddUser() {
roleID = *p.Rid
}
id, err := services.CreateAdminUser(p.Account, p.Password, p.Name, p.Phone, p.Email, p.Qq, p.Avatar, sex, roleID, status)
id, err := services.CreateAdminUser(p.Account, p.Password, p.Name, p.Phone, p.Email, p.Qq, p.Avatar, formatPlatformBirth(p.Birth), sex, roleID, status)
if err != nil {
c.Data["json"] = map[string]interface{}{"code": 500, "msg": "添加失败"}
_ = c.ServeJSON()
@@ -175,6 +190,7 @@ type editUserPayload struct {
Email *string `json:"email"`
Qq *string `json:"qq"`
Sex *uint8 `json:"sex"`
Birth *string `json:"birth"`
Avatar *string `json:"avatar"`
Rid *uint64 `json:"rid"`
Status *uint8 `json:"status"`
@@ -220,6 +236,13 @@ func (c *PlatformAdminUserController) EditUser() {
if p.Sex != nil {
fields["sex"] = *p.Sex
}
if p.Birth != nil {
if birth := formatPlatformBirth(p.Birth); birth != nil {
fields["birth"] = *birth
} else {
fields["birth"] = nil
}
}
if p.Avatar != nil {
fields["avatar"] = *p.Avatar
}