|
@@ -52,13 +52,110 @@ func (*subaccount) CreateSubAccount(ctx context.Context, request *http_model.Add
|
|
}
|
|
}
|
|
|
|
|
|
// UpdateSubAccount 修改子账号
|
|
// UpdateSubAccount 修改子账号
|
|
-func (*subaccount) UpdateSubAccount(ctx context.Context, request http_model.UpdateSubAccountRequest) (*http_model.UpdateSubAccountInfo, error) {
|
|
|
|
- //var newSubAccount *gorm_model.YounggeeSubAccount
|
|
|
|
- //newSubAccount = &gorm_model.YounggeeSubAccount{}
|
|
|
|
- //// 1. 若修改绑定手机号
|
|
|
|
- //if request.Phone != "" {
|
|
|
|
- //}
|
|
|
|
- return nil, nil
|
|
|
|
|
|
+func (l *loginAuth) UpdateSubAccount(ctx context.Context, req http_model.UpdateSubAccountRequest) (int, *http_model.UpdateSubAccountInfo, error) {
|
|
|
|
+
|
|
|
|
+ // 1. 若修改绑定手机号
|
|
|
|
+ if req.Phone != "" {
|
|
|
|
+ vCode, codeErr := l.getSessionCode(ctx, req.Phone)
|
|
|
|
+ if codeErr != nil {
|
|
|
|
+ return 0, nil, codeErr
|
|
|
|
+ }
|
|
|
|
+ // fmt.Printf("缓存的验证码 vCode: %v,实际填入的 code:%v", vCode, code)
|
|
|
|
+ if vCode != req.Code {
|
|
|
|
+ // 验证码错误
|
|
|
|
+ // logrus.Debugf("[AuthCode] auth fail,phone:%+v", phone)
|
|
|
|
+ return 1, nil, nil
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 是否其他子账号注册
|
|
|
|
+ subAccountInfo, subAccountErr := db.FindSubAccountByPhone(ctx, req.Phone)
|
|
|
|
+ if subAccountErr != nil {
|
|
|
|
+ return 0, nil, subAccountErr
|
|
|
|
+ }
|
|
|
|
+ if subAccountInfo != nil {
|
|
|
|
+ // 已被其他子账号注册
|
|
|
|
+ return 3, nil, nil
|
|
|
|
+ } else {
|
|
|
|
+ // 未被其他子账号注册
|
|
|
|
+ // 判断是否被主账号注册
|
|
|
|
+ supplierUserInfo, supplierUserErr := db.GetUserByPhone(ctx, req.Phone)
|
|
|
|
+ if supplierUserErr != nil {
|
|
|
|
+ return 0, nil, supplierUserErr
|
|
|
|
+ }
|
|
|
|
+ if supplierUserInfo != nil {
|
|
|
|
+ if supplierUserInfo.AuthStatus != 1 {
|
|
|
|
+ // 被未认证主账号注册
|
|
|
|
+ subAccountUserInfo, subAccountUserErr := db.GetUserByPhone(ctx, req.Phone)
|
|
|
|
+ if subAccountUserErr != nil {
|
|
|
|
+ return 0, nil, subAccountUserErr
|
|
|
|
+ }
|
|
|
|
+ var subAccountUser *gorm_model.YounggeeUser
|
|
|
|
+ subAccountUser = &gorm_model.YounggeeUser{}
|
|
|
|
+ subAccountUser.Phone = req.Phone
|
|
|
|
+ subAccountUser.ID = subAccountUserInfo.ID
|
|
|
|
+ updateUserErr := db.UpdateUserById(ctx, subAccountUser)
|
|
|
|
+ if updateUserErr != nil {
|
|
|
|
+ return 0, nil, updateUserErr
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 更新subAccount信息
|
|
|
|
+ getSubAccount, getSubAccountErr := db.FindSubAccountById(ctx, req.SubAccountId)
|
|
|
|
+ if getSubAccountErr != nil {
|
|
|
|
+ return 0, nil, getSubAccountErr
|
|
|
|
+ }
|
|
|
|
+ if getSubAccount != nil {
|
|
|
|
+ var subAccount *gorm_model.YounggeeSubAccount
|
|
|
|
+ subAccount = &gorm_model.YounggeeSubAccount{}
|
|
|
|
+ subAccount.SubAccountId = getSubAccount.SubAccountId
|
|
|
|
+ subAccount.SubAccountName = getSubAccount.SubAccountName
|
|
|
|
+ subAccount.JobId = getSubAccount.JobId
|
|
|
|
+ subAccount.PhoneNumber = getSubAccount.PhoneNumber
|
|
|
|
+ updateSubAccountErr := db.UpdateSubAccount(ctx, subAccount)
|
|
|
|
+ if updateSubAccountErr != nil {
|
|
|
|
+ return 0, nil, updateSubAccountErr
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return 0, nil, nil
|
|
|
|
+ }
|
|
|
|
+ // 被认证主账号注册
|
|
|
|
+ return 2, nil, nil
|
|
|
|
+ } else {
|
|
|
|
+ // 更新User信息
|
|
|
|
+ subAccountUserInfo, subAccountUserErr := db.GetSubUserByPhone(ctx, req.Phone)
|
|
|
|
+ if subAccountUserErr != nil {
|
|
|
|
+ return 0, nil, subAccountUserErr
|
|
|
|
+ }
|
|
|
|
+ var subAccountUser *gorm_model.YounggeeUser
|
|
|
|
+ subAccountUser = &gorm_model.YounggeeUser{}
|
|
|
|
+ subAccountUser.Phone = req.Phone
|
|
|
|
+ subAccountUser.ID = subAccountUserInfo.ID
|
|
|
|
+ updateUserErr := db.UpdateUserById(ctx, subAccountUser)
|
|
|
|
+ if updateUserErr != nil {
|
|
|
|
+ return 0, nil, updateUserErr
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 更新subAccount信息
|
|
|
|
+ getSubAccount, getSubAccountErr := db.FindSubAccountById(ctx, req.SubAccountId)
|
|
|
|
+ if getSubAccountErr != nil {
|
|
|
|
+ return 0, nil, getSubAccountErr
|
|
|
|
+ }
|
|
|
|
+ if getSubAccount != nil {
|
|
|
|
+ var subAccount *gorm_model.YounggeeSubAccount
|
|
|
|
+ subAccount = &gorm_model.YounggeeSubAccount{}
|
|
|
|
+ subAccount.SubAccountId = getSubAccount.SubAccountId
|
|
|
|
+ subAccount.SubAccountName = getSubAccount.SubAccountName
|
|
|
|
+ subAccount.JobId = getSubAccount.JobId
|
|
|
|
+ subAccount.PhoneNumber = getSubAccount.PhoneNumber
|
|
|
|
+ updateSubAccountErr := db.UpdateSubAccount(ctx, subAccount)
|
|
|
|
+ if updateSubAccountErr != nil {
|
|
|
|
+ return 0, nil, updateSubAccountErr
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return 0, nil, nil
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return 0, nil, nil
|
|
}
|
|
}
|
|
|
|
|
|
// DeleteSubAccount 删除子账号
|
|
// DeleteSubAccount 删除子账号
|