package service import ( "amocrm/internal/models" "context" "go.uber.org/zap" ) func (s *Service) UpdateListUsers(ctx context.Context) error { err := s.repository.UpdateListUsers(ctx) if err != nil { return err } return nil } func (s *Service) GettingUserFromCash(ctx context.Context) (*models.UserListResp, error) { response, err := s.repository.GettingUserFromCash(ctx) if err != nil { return nil, err } return response, nil } func (s *Service) SoftDeleteAccount(ctx context.Context, accountID string) error { err := s.repository.SoftDeleteAccount(ctx, accountID) if err != nil { s.logger.Error("error soft delete current account in softDeleteAccount service", zap.Error(err)) return err } return nil } func (s *Service) GetCurrentAccount(ctx context.Context, accountID string) (*models.GetCurrentAccountResp, error) { user, err := s.repository.GetCurrentAccount(ctx, accountID) if err != nil { s.logger.Error("error getting current account in getCurrentAccount service", zap.Error(err)) return nil, err } response := models.GetCurrentAccountResp{ ID: user.ID, Name: user.Name, Subdomain: user.Subdomain, Accountid: user.Accountid, Amouserid: user.Amouserid, Amocrmid: user.Amocrmid, Country: user.Country, Createdat: user.Createdat, } return &response, nil } func (s *Service) ConnectAccount(ctx context.Context, accountID string) (*models.ConnectAccountResp, error) { err := s.repository.CreateAccount(ctx, accountID) if err != nil { s.logger.Error("error create account in connectAccount service", zap.Error(err)) return nil, err } shifr, err := s.encrypt.EncryptStr(accountID) if err != nil { s.logger.Error("error encrypted account id in service ConnectAccount:", zap.Error(err)) return nil, err } link, err := s.socialAuthClient.GenerateAmocrmAuthURL(string(shifr)) if err != nil { s.logger.Error("error sending request to pena social auth service:", zap.Error(err)) } response := models.ConnectAccountResp{ Link: link, } return &response, nil }