fix: 用户删除标记del_用户名避免查询存在情况

This commit is contained in:
TsMask
2024-04-01 16:46:09 +08:00
parent a7bb0db03a
commit 218c9172f7

View File

@@ -515,7 +515,8 @@ func (r *SysUserImpl) UpdateUser(sysUser model.SysUser) int64 {
// DeleteUserByIds 批量删除用户信息
func (r *SysUserImpl) DeleteUserByIds(userIds []string) int64 {
placeholder := repo.KeyPlaceholderByQuery(len(userIds))
sql := "update sys_user set del_flag = '1' where user_id in (" + placeholder + ")"
username := "CASE WHEN user_name = '' THEN user_name WHEN LENGTH(user_name) >= 36 THEN CONCAT('del_', SUBSTRING(user_name, 5, 36)) ELSE CONCAT('del_', user_name) END"
sql := fmt.Sprintf("update sys_user set del_flag = '1', user_name = %s where user_id in (%s)", username, placeholder)
parameters := repo.ConvertIdsSlice(userIds)
results, err := datasource.ExecDB("", sql, parameters)
if err != nil {