Roc 1 year ago
parent
commit
fc8931411e
2 changed files with 16 additions and 0 deletions
  1. 9 0
      models/user_record.go
  2. 7 0
      services/user.go

+ 9 - 0
models/user_record.go

@@ -89,3 +89,12 @@ func (item *UserRecord) Update(cols []string) (err error) {
 	_, err = o.Update(item, cols...)
 	return
 }
+
+// ModifyUserIdByUnionId 根据unionId更改user_id
+func ModifyUserIdByUnionId(unionId string, userId int) (err error) {
+	o := orm.NewOrm()
+	sql := `UPDATE user_record SET user_id=?  WHERE union_id = ? AND user_id = 0 `
+	_, err = o.Raw(sql, userId, unionId).Exec()
+
+	return
+}

+ 7 - 0
services/user.go

@@ -272,6 +272,13 @@ func BindWxUser(openid, mobile, email string, areaNum, registerPlatform int) (wx
 		}
 	}
 
+	if userRecord.UnionId != `` {
+		tmpErr := models.ModifyUserIdByUnionId(userRecord.UnionId, userRecord.UserId)
+		if tmpErr != nil {
+			utils.FileLog.Info("通过用户unionId修改所有未绑定用户的id失败,Err:" + err.Error())
+		}
+	}
+
 	//格式化用户数据
 	formatWxUserAndUserRecord(wxUser, userRecord)
 	return