generated from PenaSide/GolangTemplate
hydrate customer struct in payment link request
This commit is contained in:
parent
2af6a6c4d1
commit
1d73b788a8
@ -54,7 +54,6 @@ func (receiver *VerificationClient) GetVerification(ctx context.Context, token,
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("AAAAAAAAAAAa", err, verifURL, response)
|
|
||||||
if response.StatusCode == 404 {
|
if response.StatusCode == 404 {
|
||||||
return &models.Verification{},nil
|
return &models.Verification{},nil
|
||||||
}
|
}
|
||||||
|
@ -59,6 +59,7 @@ func (receiver *WalletController) RequestMoney(ctx *fiber.Ctx) error {
|
|||||||
if !ok || userID == "" {
|
if !ok || userID == "" {
|
||||||
return receiver.middleWare.NoAuth(ctx)
|
return receiver.middleWare.NoAuth(ctx)
|
||||||
}
|
}
|
||||||
|
token,_ := receiver.middleWare.ExtractToken(ctx)
|
||||||
|
|
||||||
hlogger := log_mw.ExtractLogger(ctx)
|
hlogger := log_mw.ExtractLogger(ctx)
|
||||||
|
|
||||||
@ -80,7 +81,7 @@ func (receiver *WalletController) RequestMoney(ctx *fiber.Ctx) error {
|
|||||||
Body: &request,
|
Body: &request,
|
||||||
UserID: userID,
|
UserID: userID,
|
||||||
ClientIP: ctx.IP(),
|
ClientIP: ctx.IP(),
|
||||||
})
|
}, account, token)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return receiver.middleWare.ErrorOld(ctx, err)
|
return receiver.middleWare.ErrorOld(ctx, err)
|
||||||
}
|
}
|
||||||
@ -97,8 +98,9 @@ func (receiver *WalletController) RequestMoney(ctx *fiber.Ctx) error {
|
|||||||
return ctx.Status(fiber.StatusOK).JSON(&models.GetPaymentLinkResponse{Link: link})
|
return ctx.Status(fiber.StatusOK).JSON(&models.GetPaymentLinkResponse{Link: link})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLink(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLink(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, token string) (string, errors.Error) {
|
||||||
if _, userErr := receiver.authClient.GetUser(ctx, request.UserID); userErr != nil {
|
auth, userErr := receiver.authClient.GetUser(ctx , request.UserID)
|
||||||
|
if userErr != nil {
|
||||||
receiver.logger.Error("failed to get user on <GetPaymentLink> on <PaymentService>",
|
receiver.logger.Error("failed to get user on <GetPaymentLink> on <PaymentService>",
|
||||||
zap.Error(userErr),
|
zap.Error(userErr),
|
||||||
zap.String("userID", request.UserID),
|
zap.String("userID", request.UserID),
|
||||||
@ -107,25 +109,36 @@ func (receiver *WalletController) GetPaymentLink(ctx context.Context, request *m
|
|||||||
return "", userErr
|
return "", userErr
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if auth.PhoneNumber == "+7" {
|
||||||
|
auth.PhoneNumber = ""
|
||||||
|
}
|
||||||
|
|
||||||
|
verification, err := receiver.verifyClient.GetVerification(ctx, token, request.UserID)
|
||||||
|
if err != nil {
|
||||||
|
verification = &models.Verification{
|
||||||
|
TaxNumber: "",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
switch request.Body.Type {
|
switch request.Body.Type {
|
||||||
case models.PaymentTypeBankCard:
|
case models.PaymentTypeBankCard:
|
||||||
return receiver.GetPaymentLinkBankCard(ctx, request)
|
return receiver.GetPaymentLinkBankCard(ctx, request, account, auth, verification)
|
||||||
case models.PaymentTypeYoomoney:
|
case models.PaymentTypeYoomoney:
|
||||||
return receiver.GetPaymentLinkYooMoney(ctx, request)
|
return receiver.GetPaymentLinkYooMoney(ctx, request, account, auth, verification)
|
||||||
case models.PaymentTypeSberPay:
|
case models.PaymentTypeSberPay:
|
||||||
return receiver.GetPaymentLinkSberPay(ctx, request)
|
return receiver.GetPaymentLinkSberPay(ctx, request, account, auth, verification)
|
||||||
case models.PaymentTypeTinkoff:
|
case models.PaymentTypeTinkoff:
|
||||||
return receiver.GetPaymentLinkTinkoff(ctx, request)
|
return receiver.GetPaymentLinkTinkoff(ctx, request, account, auth, verification)
|
||||||
case models.PaymentTypeSBP:
|
case models.PaymentTypeSBP:
|
||||||
return receiver.GetPaymentLinkSBP(ctx, request)
|
return receiver.GetPaymentLinkSBP(ctx, request, account, auth, verification)
|
||||||
case models.PaymentTypeSberB2B:
|
case models.PaymentTypeSberB2B:
|
||||||
return receiver.GetPaymentLinkB2B(ctx, request)
|
return receiver.GetPaymentLinkB2B(ctx, request, account, auth, verification)
|
||||||
}
|
}
|
||||||
|
|
||||||
return "", errors.NewWithMessage("invalid payment method type", errors.ErrInvalidArgs)
|
return "", errors.NewWithMessage("invalid payment method type", errors.ErrInvalidArgs)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkBankCard(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkBankCard(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkBankCard(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkBankCard(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -134,6 +147,12 @@ func (receiver *WalletController) GetPaymentLinkBankCard(ctx context.Context, re
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ". " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -144,7 +163,7 @@ func (receiver *WalletController) GetPaymentLinkBankCard(ctx context.Context, re
|
|||||||
return link, nil
|
return link, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkYooMoney(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkYooMoney(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkYooMoney(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkYooMoney(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -153,6 +172,12 @@ func (receiver *WalletController) GetPaymentLinkYooMoney(ctx context.Context, re
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ", " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -163,7 +188,7 @@ func (receiver *WalletController) GetPaymentLinkYooMoney(ctx context.Context, re
|
|||||||
return link, nil
|
return link, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkSberPay(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkSberPay(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkSberPay(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkSberPay(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -172,6 +197,12 @@ func (receiver *WalletController) GetPaymentLinkSberPay(ctx context.Context, req
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ", " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -182,7 +213,7 @@ func (receiver *WalletController) GetPaymentLinkSberPay(ctx context.Context, req
|
|||||||
return link, nil
|
return link, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkTinkoff(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkTinkoff(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkTinkoff(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkTinkoff(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -191,6 +222,12 @@ func (receiver *WalletController) GetPaymentLinkTinkoff(ctx context.Context, req
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ", " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -201,7 +238,7 @@ func (receiver *WalletController) GetPaymentLinkTinkoff(ctx context.Context, req
|
|||||||
return link, nil
|
return link, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkSBP(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkSBP(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkSBP(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkSBP(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -210,6 +247,12 @@ func (receiver *WalletController) GetPaymentLinkSBP(ctx context.Context, request
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ", " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -220,7 +263,7 @@ func (receiver *WalletController) GetPaymentLinkSBP(ctx context.Context, request
|
|||||||
return link, nil
|
return link, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *WalletController) GetPaymentLinkB2B(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
func (receiver *WalletController) GetPaymentLinkB2B(ctx context.Context, request *models.GetPaymentLinkRequest, account *models.Account, auth *models.User, ver *models.Verification) (string, errors.Error) {
|
||||||
link, err := receiver.paymentClient.GetPaymentLinkSberbankB2B(ctx, &treasurer.GetPaymentLinkRequest{
|
link, err := receiver.paymentClient.GetPaymentLinkSberbankB2B(ctx, &treasurer.GetPaymentLinkRequest{
|
||||||
MainSettings: &treasurer.MainPaymentSettings{
|
MainSettings: &treasurer.MainPaymentSettings{
|
||||||
Currency: request.Body.Currency,
|
Currency: request.Body.Currency,
|
||||||
@ -229,6 +272,12 @@ func (receiver *WalletController) GetPaymentLinkB2B(ctx context.Context, request
|
|||||||
ClientIP: request.ClientIP,
|
ClientIP: request.ClientIP,
|
||||||
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
CallbackHostGRPC: []string{receiver.grpc.Domen},
|
||||||
ReturnURL: request.Body.ReturnURL,
|
ReturnURL: request.Body.ReturnURL,
|
||||||
|
Customer: &treasurer.Customer{
|
||||||
|
FullName: account.Name.Orgname + ", " + account.Name.FirstName + " " + account.Name.Secondname,
|
||||||
|
INN: ver.TaxNumber,
|
||||||
|
Email: auth.Login,
|
||||||
|
Phone: auth.PhoneNumber,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user