Browse Source

fix(用户被删除的情况):新增逻辑处理,用户被删除后,需要有解绑逻辑

Roc 3 years ago
parent
commit
27fcb766a8
1 changed files with 11 additions and 10 deletions
  1. 11 10
      services/admin.go

+ 11 - 10
services/admin.go

@@ -48,18 +48,19 @@ func GetAdminUserItemByOpenId(openid string) (item *custom.AdminWx, err error) {
 
 	item, adminInfoErr := admin.GetAdminWxById(adminRecord.UserId)
 	if adminInfoErr != nil {
-		//用户被删除了,但是user_record没有删除对应的关系,那么去解除绑定
-		userUnbindErr := admin_record.UnBindAdminRecordByOpenid(openid)
-		if userUnbindErr != nil {
-			err = userUnbindErr
+		//如果是找不到该用户
+		if adminInfoErr.Error() == utils.ErrNoRow() {
+			//用户被删除了,但是user_record没有删除对应的关系,那么去解除绑定
+			userUnbindErr := admin_record.UnBindAdminRecordByOpenid(openid)
+			if userUnbindErr != nil {
+				err = userUnbindErr
+				return
+			}
+			err = ERR_ADMIN_NOT_BIND
+			//格式化返回用户数据
+			formatWxUserAndUserRecord(item, adminRecord)
 			return
 		}
-		//返回状态为 用户未绑定 逻辑代码
-		err = ERR_ADMIN_NOT_BIND
-		adminRecord.UserId = 0
-		//格式化返回用户数据
-		formatWxUserAndUserRecord(item, adminRecord)
-		return
 
 		err = adminInfoErr