diff --git a/deployments/staging/docker-compose.yaml b/deployments/staging/docker-compose.yaml index 3ac8ca5..e31e044 100644 --- a/deployments/staging/docker-compose.yaml +++ b/deployments/staging/docker-compose.yaml @@ -31,7 +31,7 @@ services: - PAYMENT_MICROSERVICE_GRPC_HOST=10.6.0.11:9085 - VERIFICATION_MICROSERVICE_USER_URL=http://10.6.0.11:7035/verification - TEMPLATEGEN_MICROSERVICE_URL=10.6.0.17 - - API_URL=connect.mailclient.bz + - API_URL=https://api.smtp.bz/v1/smtp/send - MAIL_SENDER=noreply@mailing.pena.digital - MAIL_API_KEY=P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev - MAIL_AUTH_USERNAME=kotilion.95@gmail.com diff --git a/internal/interface/client/mail.go b/internal/interface/client/mail.go index 03ab6be..afc566d 100644 --- a/internal/interface/client/mail.go +++ b/internal/interface/client/mail.go @@ -63,6 +63,7 @@ func (receiver *MailClient) SendMessage(userEmail string, verification *models.V return handleError(receiver.deps.Logger, "Error closing form writer", err) } + fmt.Println("SEEEEEND", receiver.deps.ApiUrl) req := receiver.deps.FiberClient.Post(receiver.deps.ApiUrl).Body(form.Bytes()).ContentType(writer.FormDataContentType()) if receiver.deps.ApiKey != "" { req.Set("Authorization", receiver.deps.ApiKey) diff --git a/internal/interface/client/verification.go b/internal/interface/client/verification.go index 862051d..2cef4fc 100644 --- a/internal/interface/client/verification.go +++ b/internal/interface/client/verification.go @@ -23,7 +23,6 @@ type VerificationClient struct { } func NewVerificationClient(deps VerificationClientDeps) *VerificationClient { - fmt.Println("AAAAAABAAAAa", deps) if deps.Logger == nil { log.Panicln("logger is nil on ") } @@ -38,8 +37,7 @@ func NewVerificationClient(deps VerificationClientDeps) *VerificationClient { } } -func (receiver *VerificationClient) GetVerification(ctx context.Context, userID string) (*models.Verification, errors.Error) { - fmt.Println("AAAAAAAAAAAa", receiver) +func (receiver *VerificationClient) GetVerification(ctx context.Context, token, userID string) (*models.Verification, errors.Error) { verifURL, err := url.JoinPath(receiver.urls.Verification, userID) if err != nil { return nil, errors.New( @@ -50,9 +48,13 @@ func (receiver *VerificationClient) GetVerification(ctx context.Context, userID response, err := client.Get[models.Verification, models.FastifyError](ctx, &client.RequestSettings{ URL: verifURL, - Headers: map[string]string{"Content-Type": "application/json"}, + Headers: map[string]string{ + "Content-Type": "application/json", + "Authorization": token, + }, }) if err != nil { + fmt.Println("AAAAAAAAAAAa", err, verifURL, response) if response.StatusCode == 404 { return nil, errors.New(err, errors.ErrNotFound) } diff --git a/internal/interface/controller/rest/wallet/wallet.go b/internal/interface/controller/rest/wallet/wallet.go index 1727f88..b076efa 100644 --- a/internal/interface/controller/rest/wallet/wallet.go +++ b/internal/interface/controller/rest/wallet/wallet.go @@ -144,7 +144,10 @@ func (receiver *Controller) PostWalletRspay(ctx echo.Context) error { )) } - if err := receiver.walletService.PostWalletRspay(ctx.Request().Context(), userID, req); err != nil { + token := ctx.Request().Header.Get("Authorization") + fmt.Println("HEADERS", ctx.Request().Header) + + if err := receiver.walletService.PostWalletRspay(ctx.Request().Context(), token, userID, req); err != nil { if err == errors.ErrNoAccess { return errors.HTTP(ctx, err) } diff --git a/internal/interface/swagger/api.2.go b/internal/interface/swagger/api.2.go index 601b8d1..3e7a168 100644 --- a/internal/interface/swagger/api.2.go +++ b/internal/interface/swagger/api.2.go @@ -705,8 +705,10 @@ func (api *API2) SendReport(ctx echo.Context) error { ) return api.errorOld(ctx, err) } + token := ctx.Request().Header.Get("Authorization") + fmt.Println("HEADERS", ctx.Request().Header) - verifuser, err := api.clients.verify.GetVerification(ctx.Request().Context(), tariffs.UserID) + verifuser, err := api.clients.verify.GetVerification(ctx.Request().Context(),token, tariffs.UserID) if err != nil { api.logger.Error("failed to get user verification on of ", zap.Error(err), @@ -785,8 +787,10 @@ func (api *API2) PostWalletRspay(ctx echo.Context) error { if user.Status != models.AccountStatusNko && user.Status != models.AccountStatusOrg { return api.error(ctx, http.StatusForbidden, "not allowed for non organizations") } + token := ctx.Request().Header.Get("Authorization") + fmt.Println("HEADERS", ctx.Request().Header) - verification, err := api.clients.verify.GetVerification(ctx.Request().Context(), userID) + verification, err := api.clients.verify.GetVerification(ctx.Request().Context(),token, userID) if err == errors.ErrNotFound { return api.error(ctx, http.StatusForbidden, "no verification data found") } diff --git a/internal/service/wallet/wallet.go b/internal/service/wallet/wallet.go index 697051b..6e822ff 100644 --- a/internal/service/wallet/wallet.go +++ b/internal/service/wallet/wallet.go @@ -23,7 +23,7 @@ type currencyClient interface { } type verificationClient interface { - GetVerification(ctx context.Context, userID string) (*models.Verification, errors.Error) + GetVerification(ctx context.Context, token, userID string) (*models.Verification, errors.Error) } type authClient interface { @@ -55,7 +55,6 @@ type Service struct { } func New(deps Deps) *Service { - fmt.Println("AAAAABBAAAAa", deps) if deps.Logger == nil { log.Panicln("logger is nil on ") } @@ -286,7 +285,7 @@ func (receiver *Service) ChangeCurrency(ctx context.Context, userID string, curr return updatedAccount, nil } -func (receiver *Service) PostWalletRspay(ctx context.Context, userID string, req swagger.PostWalletRspayJSONBody) errors.Error { +func (receiver *Service) PostWalletRspay(ctx context.Context, token, userID string, req swagger.PostWalletRspayJSONBody) errors.Error { user, err := receiver.repository.FindByUserID(ctx, userID) if err != nil { return err @@ -298,8 +297,7 @@ func (receiver *Service) PostWalletRspay(ctx context.Context, userID string, req ) } - fmt.Println("AAAAABBBAAAa", receiver.verificationClient) - verification, err := receiver.verificationClient.GetVerification(ctx, userID) + verification, err := receiver.verificationClient.GetVerification(ctx, token, userID) if err == errors.ErrNotFound { return errors.New( fmt.Errorf("no verification data found"), diff --git a/pkg/client/request.go b/pkg/client/request.go index b1deabe..f2cbe87 100644 --- a/pkg/client/request.go +++ b/pkg/client/request.go @@ -2,6 +2,7 @@ package client import ( "context" + "fmt" "github.com/go-resty/resty/v2" ) @@ -43,6 +44,7 @@ func makeRequest[T any, R any](url string, requestMethod func(url string) (*rest Error: responseBody, }, nil } + fmt.Println("OOOOO", responseInstance.RawResponse) responseBody, parseErr := parseResponse[T](responseInstance.Body(), responseInstance.RawResponse) if parseErr != nil { diff --git a/pkg/client/response.go b/pkg/client/response.go index e905a7f..f52ac1e 100644 --- a/pkg/client/response.go +++ b/pkg/client/response.go @@ -3,12 +3,14 @@ package client import ( "bytes" "net/http" + "fmt" "penahub.gitlab.yandexcloud.net/pena-services/customer/pkg/json" ) func parseResponse[T any](body []byte, response *http.Response) (*T, error) { isJSONResponse := response.Header.Get("Content-Type") == "application/json" + fmt.Println("1OOOO", response.Header.Get("Content-Type"), string(body)) if !isJSONResponse { responseBody, unmarshalErr := json.Unmarshal[T](body)