|
@@ -105,6 +105,107 @@ func (*supplier) GetSupplierAccountInfo(ctx context.Context, req *http_model.Get
|
|
|
return supplierUserInfo, nil
|
|
|
}
|
|
|
|
|
|
+// UpdateSupplierAccountInfo 更新服务商账号信息
|
|
|
+func (l *loginAuth) UpdateSupplierAccountInfo(ctx context.Context, req *http_model.UpdateAccountInfoRequest) (*http_model.UpdateAccountInfoData, int, error) {
|
|
|
+
|
|
|
+ var supplierUserInfo *http_model.UpdateAccountInfoData
|
|
|
+ supplierUserInfo = &http_model.UpdateAccountInfoData{}
|
|
|
+ supplierUserInfo.SupplierName = req.SupplierName
|
|
|
+ supplierUserInfo.Avatar = req.Avatar
|
|
|
+ supplierUserInfo.Phone = req.Phone
|
|
|
+ supplierUserInfo.SubAccountName = req.SubAccountName
|
|
|
+
|
|
|
+ if req.SubAccountId == 0 {
|
|
|
+ // 服务商主账号
|
|
|
+ // 1. 若修改绑定手机号
|
|
|
+ if req.Phone != "" {
|
|
|
+ // 1.1. 校验验证码
|
|
|
+ vCode, err := l.getSessionCode(ctx, req.Phone)
|
|
|
+ if err != nil {
|
|
|
+ return nil, 0, err
|
|
|
+ }
|
|
|
+ if vCode != req.Code {
|
|
|
+ return nil, 1, nil
|
|
|
+ }
|
|
|
+ // 1.2. 手机号是否已经被其他主账号绑定
|
|
|
+ supplierNum, supplierNumErr := db.CountSupplierUserByPhone(ctx, req.Phone)
|
|
|
+ if supplierNumErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", supplierNumErr)
|
|
|
+ return nil, 0, supplierNumErr
|
|
|
+ }
|
|
|
+ if supplierNum != 0 {
|
|
|
+ return nil, 2, nil
|
|
|
+ }
|
|
|
+ // 1.3. 手机号是否被子账号绑定
|
|
|
+ subAccountNum, SubAccountErr := db.CountSubAccountUserByPhone(ctx, req.Phone)
|
|
|
+ if SubAccountErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", SubAccountErr)
|
|
|
+ return nil, 0, SubAccountErr
|
|
|
+ }
|
|
|
+ if subAccountNum != 0 {
|
|
|
+ return nil, 3, nil
|
|
|
+ }
|
|
|
+ // 1.4. 修改Supplier信息
|
|
|
+ var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
+ supplierInfo = &gorm_model.YoungeeSupplier{}
|
|
|
+ supplierInfo.SupplierId = req.SupplierId
|
|
|
+ supplierInfo.SupplierName = req.SupplierName
|
|
|
+ supplierInfo.Avatar = req.Avatar
|
|
|
+ supplierInfo.PhoneNumber = req.Phone
|
|
|
+ updateSupplierErr := db.UpdateSupplier(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, 0, updateSupplierErr
|
|
|
+ }
|
|
|
+ // 1.5. 修改User表信息
|
|
|
+ supplierInfoQuery, supplierInfoQueryErr := db.GetSupplierById(ctx, supplierInfo.SupplierId)
|
|
|
+ if supplierInfoQueryErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", supplierInfoQueryErr)
|
|
|
+ return nil, 0, supplierInfoQueryErr
|
|
|
+ }
|
|
|
+ if supplierInfoQuery != nil {
|
|
|
+ var userInfo *gorm_model.YounggeeUser
|
|
|
+ userInfo = &gorm_model.YounggeeUser{}
|
|
|
+ userInfo.ID = supplierInfoQuery.UserId
|
|
|
+ userInfo.Phone = supplierInfoQuery.PhoneNumber
|
|
|
+ userInfo.Username = supplierInfoQuery.PhoneNumber
|
|
|
+ updateUserInfoErr := db.UpdateUserById(ctx, userInfo)
|
|
|
+ if updateUserInfoErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", updateUserInfoErr)
|
|
|
+ return nil, 0, updateUserInfoErr
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
+ supplierInfo = &gorm_model.YoungeeSupplier{}
|
|
|
+ supplierInfo.SupplierId = req.SupplierId
|
|
|
+ supplierInfo.SupplierName = req.SupplierName
|
|
|
+ supplierInfo.Avatar = req.Avatar
|
|
|
+ supplierInfo.PhoneNumber = req.Phone
|
|
|
+ updateSupplierErr := db.UpdateSupplier(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, 0, updateSupplierErr
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 服务商子账号
|
|
|
+ var subAccountInfo *gorm_model.YounggeeSubAccount
|
|
|
+ subAccountInfo = &gorm_model.YounggeeSubAccount{}
|
|
|
+ subAccountInfo.SupplierId = req.SupplierId
|
|
|
+ subAccountInfo.SubAccountName = req.SubAccountName
|
|
|
+ subAccountInfo.Avatar = req.Avatar
|
|
|
+ subAccountInfo.PhoneNumber = req.Phone
|
|
|
+ updateSubAccountErr := db.UpdateSubAccount(ctx, subAccountInfo)
|
|
|
+ if updateSubAccountErr != nil {
|
|
|
+ log.Infof("[GetSupplierAccountInfo] fail,err:%+v", updateSubAccountErr)
|
|
|
+ return nil, 0, updateSubAccountErr
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return supplierUserInfo, 0, nil
|
|
|
+}
|
|
|
+
|
|
|
// GetSupplierReviewInfo 查询服务商认证信息
|
|
|
func (*supplier) GetSupplierReviewInfo(ctx context.Context, req *http_model.GetReviewInfoRequest) (*http_model.GetReviewInfoData, error) {
|
|
|
|
|
@@ -167,11 +268,127 @@ func (*supplier) GetSupplierContactInfo(ctx context.Context, req *http_model.Get
|
|
|
contactInfo.WechatNumber = subAccountInfo.WechatNumber
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
return contactInfo, nil
|
|
|
}
|
|
|
|
|
|
-// SaveSupplierReviewInfo 保存服务商联系方式
|
|
|
+// UpdateSupplierContactInfo 更新服务商联系方式
|
|
|
+func (l *loginAuth) UpdateSupplierContactInfo(ctx context.Context, req *http_model.UpdateContactInfoRequest) (*http_model.UpdateContactInfoData, bool, error) {
|
|
|
+
|
|
|
+ var contactInfo *http_model.UpdateContactInfoData
|
|
|
+ contactInfo = &http_model.UpdateContactInfoData{}
|
|
|
+
|
|
|
+ // 主账号
|
|
|
+ if req.SubAccountId == 0 {
|
|
|
+ // 1. 若更新联系电话则需要验证码校验
|
|
|
+ if req.ContactPhone != "" {
|
|
|
+ vcode, err := l.getSessionCode(ctx, req.ContactPhone)
|
|
|
+ if err != nil {
|
|
|
+ return nil, false, err
|
|
|
+ }
|
|
|
+ // fmt.Printf("缓存的验证码 vcode: %v,实际填入的 code:%v", vcode, req.Code)
|
|
|
+ if vcode != req.Code {
|
|
|
+ // 验证码错误
|
|
|
+ return nil, true, err
|
|
|
+ }
|
|
|
+ var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
+ supplierInfo = &gorm_model.YoungeeSupplier{}
|
|
|
+ supplierInfo.ContactPhone = req.ContactPhone
|
|
|
+ supplierInfo.SupplierId = req.SupplierId
|
|
|
+ updateSupplierErr := db.UpdateSupplier(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.ContactPhone = req.ContactPhone
|
|
|
+ }
|
|
|
+
|
|
|
+ // 2. 微信二维码更新
|
|
|
+ if req.WechatQRCode != "" {
|
|
|
+ var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
+ supplierInfo = &gorm_model.YoungeeSupplier{}
|
|
|
+ supplierInfo.WechatQrCode = req.WechatQRCode
|
|
|
+ supplierInfo.SupplierId = req.SupplierId
|
|
|
+ updateSupplierErr := db.UpdateSupplier(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.WechatQRCode = req.WechatQRCode
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 2. 微信号码更新
|
|
|
+ if req.WechatNumber != "" {
|
|
|
+ var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
+ supplierInfo = &gorm_model.YoungeeSupplier{}
|
|
|
+ supplierInfo.WechatNumber = req.WechatNumber
|
|
|
+ supplierInfo.SupplierId = req.SupplierId
|
|
|
+ updateSupplierErr := db.UpdateSupplier(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.WechatNumber = req.WechatNumber
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 子账号
|
|
|
+ // 1. 若更新联系电话则需要验证码校验
|
|
|
+ if req.ContactPhone != "" {
|
|
|
+ vcode, err := l.getSessionCode(ctx, req.ContactPhone)
|
|
|
+ if err != nil {
|
|
|
+ return nil, false, err
|
|
|
+ }
|
|
|
+ // fmt.Printf("缓存的验证码 vcode: %v,实际填入的 code:%v", vcode, req.Code)
|
|
|
+ if vcode != req.Code {
|
|
|
+ // 验证码错误
|
|
|
+ return nil, true, err
|
|
|
+ }
|
|
|
+ var supplierInfo *gorm_model.YounggeeSubAccount
|
|
|
+ supplierInfo = &gorm_model.YounggeeSubAccount{}
|
|
|
+ supplierInfo.ContactPhone = req.ContactPhone
|
|
|
+ supplierInfo.SubAccountId = req.SubAccountId
|
|
|
+ updateSupplierErr := db.UpdateSubAccount(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.ContactPhone = req.ContactPhone
|
|
|
+ }
|
|
|
+
|
|
|
+ // 2. 微信二维码更新
|
|
|
+ if req.WechatQRCode != "" {
|
|
|
+ var supplierInfo *gorm_model.YounggeeSubAccount
|
|
|
+ supplierInfo = &gorm_model.YounggeeSubAccount{}
|
|
|
+ supplierInfo.WechatQRCode = req.WechatQRCode
|
|
|
+ supplierInfo.SubAccountId = req.SubAccountId
|
|
|
+ updateSupplierErr := db.UpdateSubAccount(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.WechatQRCode = req.WechatQRCode
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 2. 微信号码更新
|
|
|
+ if req.WechatNumber != "" {
|
|
|
+ var supplierInfo *gorm_model.YounggeeSubAccount
|
|
|
+ supplierInfo = &gorm_model.YounggeeSubAccount{}
|
|
|
+ supplierInfo.WechatNumber = req.WechatNumber
|
|
|
+ supplierInfo.SubAccountId = req.SubAccountId
|
|
|
+ updateSupplierErr := db.UpdateSubAccount(ctx, supplierInfo)
|
|
|
+ if updateSupplierErr != nil {
|
|
|
+ log.Infof("[UpdateSupplierContactInfo] fail,err:%+v", updateSupplierErr)
|
|
|
+ return nil, false, updateSupplierErr
|
|
|
+ }
|
|
|
+ contactInfo.WechatNumber = req.WechatNumber
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return contactInfo, true, nil
|
|
|
+}
|
|
|
+
|
|
|
+// SaveSupplierReviewInfo 保存服务商认证信息
|
|
|
func (*supplier) SaveSupplierReviewInfo(ctx context.Context, req *http_model.SaveReviewRequest) error {
|
|
|
var supplierInfo *gorm_model.YoungeeSupplier
|
|
|
supplierInfo = &gorm_model.YoungeeSupplier{}
|