Class OnboardingService

java.lang.Object
es.kukenan.smartfi.microservice.onboarding.service.OnboardingService

@Service public class OnboardingService extends Object
General management service.
  • Field Details

    • CREDIT_PRODUCT

      private static final String CREDIT_PRODUCT
      Credit constant.
      See Also:
    • doUltraFaceValidation

      @Value("${ultraface.doValidation}") private boolean doUltraFaceValidation
      Do UltraFace validation flag.
    • log

      private final es.kukenan.smartfi.logger.WalletLogger log
      Wallet logger.
    • annualRevenuesRepository

      @Autowired AnnualRevenuesRepository annualRevenuesRepository
      Annual Revenues repository.
    • userLanguageRepository

      @Autowired UserLanguageRepository userLanguageRepository
      User Language repository.
    • sourceFundsRepository

      @Autowired SourceFundsRepository sourceFundsRepository
      Source of Funds repository.
    • reasonUseRepository

      @Autowired ReasonUseRepository reasonUseRepository
      Reason of Use repository.
    • workerTypeRepository

      @Autowired WorkerTypeRepository workerTypeRepository
      Worker Type repository.
    • userGenderRepository

      @Autowired private UserGenderRepository userGenderRepository
      userGender repository use for database queries.
    • userCivilStatusRepository

      @Autowired private UserCivilStatusRepository userCivilStatusRepository
      userCivilStatus repository use for database queries.
    • userRepository

      @Autowired UserRepository userRepository
      Users repository.
    • otpForOnboardingResponseHandler

      @Autowired private OtpForOnboardingResponseHandler otpForOnboardingResponseHandler
      Specific response handler for the OTP required to extend the time granted to open a session (SCA device login date extension).
    • addressRepository

      @Autowired AddressRepository addressRepository
      Address repository.
    • jobRepository

      @Autowired JobRepository jobRepository
      Job repository.
    • backofficeRepository

      @Autowired BackOfficeRepository backofficeRepository
      Backoffice repository.
    • countryRepository

      @Autowired CountryRepository countryRepository
      Country repository.
    • documentTypeRepository

      @Autowired DocumentTypeRepository documentTypeRepository
      Document Type repository.
    • employmentStatusRepository

      @Autowired EmploymentStatusRepository employmentStatusRepository
      Employment Status repository.
    • userBackofficeRepository

      @Autowired UserBackofficeRepository userBackofficeRepository
      User Backoffice repository.
    • userTypeRepository

      @Autowired UserTypeRepository userTypeRepository
      User Type repository.
    • nationalityRepository

      @Autowired NationalityRepository nationalityRepository
      Job repository.
    • onboardingInitiatedEventMapper

      @Autowired OnboardingInitiatedEventMapper onboardingInitiatedEventMapper
      User created Event mapper.
    • onboardingUpdateEventMapper

      @Autowired OnboardingUpdateEventMapper onboardingUpdateEventMapper
      User updated Event mapper.
    • userDocumentRepository

      @Autowired UserDocumentRepository userDocumentRepository
      UserDocument repository.
    • documentStatusRepository

      @Autowired DocumentStatusRepository documentStatusRepository
      DocumentStatus repository.
    • backofficeService

      @Autowired BackofficeService backofficeService
      Backoffice service.
    • amqpController

      @Autowired private AmqpController amqpController
      Amqp Controller.
    • kafkaController

      @Autowired private KafkaController kafkaController
      Kafka Controller.
    • otpService

      @Autowired protected OtpService otpService
      Service utilities for SCA.
    • onboardingService

      @Autowired OnboardingService onboardingService
      Service for basic Onboarding.
    • backofficeRequestedFilesEndpoint

      @Autowired private BackofficeRequestedFilesEndpoint backofficeRequestedFilesEndpoint
      Backoffice requested files endpoint.
    • internalProductsApiClient

      @Autowired private InternalProductsApiClient internalProductsApiClient
      Core api client.
    • ultraFaceApiClient

      @Autowired private UltraFaceApiClient ultraFaceApiClient
      UltraFace api client.
  • Constructor Details

    • OnboardingService

      public OnboardingService()
  • Method Details

    • checkEmailPhoneAvailability

      public boolean checkEmailPhoneAvailability(User user)
      Check if Email and Phone are available.
      Parameters:
      user - user information
      Returns:
      data availability
    • getData

      public org.springframework.http.ResponseEntity<Object> getData(String language)
      Get data.
      Parameters:
      language - language name.
      Returns:
      the data for language.
    • sendUserOtp

      public org.springframework.http.ResponseEntity<Object> sendUserOtp(String userId)
      Send OTP to user.
      Parameters:
      userId - user identifier.
      Returns:
      the inserted instance data
    • saveUser

      public org.springframework.http.ResponseEntity<es.kukenan.smartfi.dto.ResponseDTO<es.kukenan.smartfi.dto.UserResponseDTO>> saveUser(User user, Job job, Address address, es.kukenan.smartfi.microservice.onboarding.events.common.CompanyDto company, org.springframework.validation.BindingResult bindingResult, String product, es.kukenan.smartfi.dto.onboarding.ultraface.VerificationDto verification, es.kukenan.smartfi.microservice.onboarding.events.common.BankAccountDto bankAccount, Boolean firstDataCheck)
      Create the given user, that must previously exist.
      Parameters:
      user - the new user to create.
      job - job entity.
      address - address entity.
      company - company dto.
      bindingResult - binding result from validate.
      product - product from onboarding.
      verification - dto for Api UltraFace validation.
      bankAccount - user bank account details.
      firstDataCheck - flag to check data on first login.
      Returns:
      the inserted instance data
    • uploadFiles

      public org.springframework.http.ResponseEntity<Object> uploadFiles(String userId, String contractId, List<org.springframework.web.multipart.MultipartFile> files)
      Save files uploaded by the user.
      Parameters:
      userId - user identifier.
      contractId - Application identifier.
      files - files uploaded.
      Returns:
      the inserted instance data
    • saveJobAndAddress

      public void saveJobAndAddress(User user, Job job, Address address)
      Save Job and Address info for User.
      Parameters:
      user - database user
      job - job information
      address - address information