feat: openid login
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
package logic
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"lone-services/pkg/rpcclient"
|
||||
"lone-services/pkg/utils"
|
||||
salepb "lone-services/rpc/sale/pb"
|
||||
"lone-services/services/user/internal/dao"
|
||||
|
||||
"google.golang.org/grpc/codes"
|
||||
"google.golang.org/grpc/status"
|
||||
)
|
||||
|
||||
func fetchSaleByUserId(ctx context.Context, saleSvcName string, userId int64) (*salepb.InfoData, error) {
|
||||
if saleSvcName == utils.StringEmpty || userId < utils.NumberOne {
|
||||
return nil, nil
|
||||
}
|
||||
cli, err := rpcclient.Get(saleSvcName)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
data, err := salepb.NewSaleClient(cli.Conn()).InfoByUserId(ctx, &salepb.InfoByUserIdReq{UserId: userId})
|
||||
if err != nil {
|
||||
if st, ok := status.FromError(err); ok && st.Code() == codes.NotFound {
|
||||
return nil, nil
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
return data, nil
|
||||
}
|
||||
|
||||
func fetchSaleById(ctx context.Context, saleSvcName string, saleId int64) (*salepb.InfoData, error) {
|
||||
if saleSvcName == utils.StringEmpty || saleId < utils.NumberOne {
|
||||
return nil, nil
|
||||
}
|
||||
cli, err := rpcclient.Get(saleSvcName)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
data, err := salepb.NewSaleClient(cli.Conn()).InfoInternal(ctx, &salepb.InfoReq{Id: saleId})
|
||||
if err != nil {
|
||||
if st, ok := status.FromError(err); ok && st.Code() == codes.NotFound {
|
||||
return nil, nil
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
return data, nil
|
||||
}
|
||||
|
||||
func toProfileSale(data *salepb.InfoData) *dao.ProfileSaleData {
|
||||
if data == nil {
|
||||
return nil
|
||||
}
|
||||
out := &dao.ProfileSaleData{
|
||||
Id: data.Id,
|
||||
SaleId: data.SaleId,
|
||||
Name: data.Name,
|
||||
Mobile: data.Mobile,
|
||||
OriginMobile: data.OriginMobile,
|
||||
Avatar: data.Avatar,
|
||||
Account: data.Account,
|
||||
Type: data.Type,
|
||||
Sex: data.Sex,
|
||||
BirthDate: data.BirthDate,
|
||||
Status: data.Status,
|
||||
GroupId: data.GroupId,
|
||||
Address: data.Address,
|
||||
ProvinceId: data.ProvinceId,
|
||||
CityId: data.CityId,
|
||||
DistrictId: data.DistrictId,
|
||||
TerritoryId: data.TerritoryId,
|
||||
TerritoryName: data.TerritoryName,
|
||||
IdCardFront: data.IdCardFront,
|
||||
IdCardBack: data.IdCardBack,
|
||||
BusinessLicense: data.BusinessLicense,
|
||||
}
|
||||
if data.Group != nil {
|
||||
out.GroupName = data.Group.Name
|
||||
}
|
||||
if data.Region != nil {
|
||||
out.Region = &dao.ProfileSaleRegion{
|
||||
Province: data.Region.Province,
|
||||
City: data.Region.City,
|
||||
District: data.Region.District,
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
Reference in New Issue
Block a user