Untitled
unknown
plain_text
a year ago
27 kB
5
Indexable
package es.isban.api.loaniq.service.kodokan; import es.isban.api.loaniq.constants.Constants; import es.isban.api.loaniq.model.loandb.VlsCustLocationCustom; import es.isban.api.loaniq.model.web.*; import es.isban.api.loaniq.model.web.functional.*; import es.isban.api.loaniq.repository.loandb.VlsCustLocationCustomRepository; import es.isban.api.loaniq.repository.loandb.VlsHostBankCustomRepository; import es.isban.api.loaniq.service.GlsOrJToExternalIdService; import es.isban.api.loaniq.service.TrimService; import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; import java.util.Objects; public class Facility extends Translator { private final TrimService trimService; private final VlsHostBankCustomRepository vlsHostBankCustomRepository; private final VlsCustLocationCustomRepository vlsCustLocationCustomRepository; public Facility(GlsOrJToExternalIdService glsOrJToExternalIdService, TrimService trimService, VlsHostBankCustomRepository vlsHostBankCustomRepository, VlsCustLocationCustomRepository vlsCustLocationCustomRepository) { super(glsOrJToExternalIdService); this.trimService = trimService; this.vlsHostBankCustomRepository = vlsHostBankCustomRepository; this.vlsCustLocationCustomRepository = vlsCustLocationCustomRepository; } public void translate(CreateOperationRequest operationPublisher, CustomCreateOperationRequest operationRequest){ if (null != operationRequest.getTramos() && !operationRequest.getTramos().isEmpty()) { operationPublisher.setFacilities(new ArrayList<>()); for (CustomCreateFacilityRequest ccfr : operationRequest.getTramos()){ CreateFacilityRequest cfr = new CreateFacilityRequest(); translateFacilityGeneralData(cfr, ccfr, operationPublisher); translateFacilityServicingGroup(cfr, ccfr, operationPublisher); translateFacilityRisks(cfr, ccfr); translateFacilityProductCurrencies(cfr, ccfr); translateFacilityLoanPurposes(cfr, ccfr); translateFacilityMisCodes(cfr, ccfr); translateFacilityFeePricings(cfr, ccfr); translateFacilityInterestPricings(cfr, ccfr); translateFacilityOngoingFeeDates(cfr, ccfr); translateFacilityAmortizationSchedules(cfr, ccfr, operationPublisher); translateFacilityInterestPricingOption(cfr, ccfr); translateInterestPricingOptionFacility(cfr, ccfr); translateFacilitySublimits(cfr, ccfr); translateFacilityAddBorrowers(cfr, ccfr, operationPublisher); translateFacilityAdditionalFields(cfr, ccfr); operationPublisher.getFacilities().add(cfr); } } } private void translateFacilityGeneralData(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr, CreateOperationRequest cor){ if(null != ccfr.getGeneralData()){ String externalId = glsOrJToExternalIdService.getXidFromGlsOrJ( ccfr.getGeneralData().getPrimaryBorrower(), cor.getDeal().getGeneralDealInformation().getBranch()); FacilityGeneralDataRequest facilityGeneralDataRequest = new FacilityGeneralDataRequest(); facilityGeneralDataRequest.setAddWellKnownCurrenciesIndicator(ccfr.getGeneralData().getAddWellKnownCurrenciesIndicator()); facilityGeneralDataRequest.setAgreementDate(ccfr.getGeneralData().getAgreementDate()); facilityGeneralDataRequest.setAliasDealName(cor.getDeal().getGeneralDealInformation().getDealAlias()); facilityGeneralDataRequest.setBranch(cor.getDeal().getGeneralDealInformation().getBranch()); facilityGeneralDataRequest.setClosingCommitment(ccfr.getGeneralData().getClosingCommitment()); facilityGeneralDataRequest.setCurrency(ccfr.getGeneralData().getCurrency()); facilityGeneralDataRequest.setDealFXRate(ccfr.getGeneralData().getDealFXRate()); facilityGeneralDataRequest.setEffectiveDate(ccfr.getGeneralData().getEffectiveDate()); facilityGeneralDataRequest.setExpiryDate(ccfr.getGeneralData().getExpiryDate()); facilityGeneralDataRequest.setFacilityName(ccfr.getGeneralData().getName()); facilityGeneralDataRequest.setFacilityType(ccfr.getGeneralData().getType()); facilityGeneralDataRequest.setFacilityControlNumber(null == ccfr.getGeneralData().getFacilityControlNumber() || ccfr.getGeneralData().getFacilityControlNumber().isEmpty() ? null : ccfr.getGeneralData().getFacilityControlNumber()); facilityGeneralDataRequest.setFinalMaturityDate(ccfr.getGeneralData().getFinalMaturityDate()); facilityGeneralDataRequest.setLoanRepricingFxToleranceRateForFacility(ccfr.getGeneralData().getLoanRepricingFxToleranceRate()); facilityGeneralDataRequest.setMaximumCurrenciesOutstanding(ccfr.getGeneralData().getMaximumCurrenciesOutstanding()); facilityGeneralDataRequest.setPerformingStatus(Constants.EMPTY.equals(ccfr.getGeneralData().getPerformingStatus()) ? null : ccfr.getGeneralData().getPerformingStatus()); facilityGeneralDataRequest.setPrimaryBorrowerExternalId(externalId); facilityGeneralDataRequest.setProcessingAreaCode(cor.getDeal().getGeneralDealInformation().getProcessingAreaCode()); facilityGeneralDataRequest.setProposedCommitmentAmount(ccfr.getGeneralData().getProposedCommitmentAmount()); facilityGeneralDataRequest.setUnavailableCommitment(ccfr.getGeneralData().getUnavailableCommitment()); cfr.setFacilityGeneralData(facilityGeneralDataRequest); } } private void translateFacilityServicingGroup(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr, CreateOperationRequest cor){ if(null != ccfr.getServicingGroup()){ ServicingGroupRequest sgr = new ServicingGroupRequest(); sgr.setCustomerExternalId(trimService.trimIfNotNull(vlsHostBankCustomRepository.findByBrnCdeBranch(cor.getDeal().getGeneralDealInformation().getBranch()).getCustLiqCode())); sgr.setAlias(ccfr.getServicingGroup().getAliasSg()); sgr.setLocationCode(ccfr.getServicingGroup().getLocationCode()); sgr.setProfileType(Constants.PROFILE_LENDER); cfr.setServicingGroup(sgr); } } private void translateFacilityRisks(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getRisks() && !ccfr.getRisks().isEmpty()){ cfr.setRisks(new ArrayList<>()); for(CustomRiskRequest crr : ccfr.getRisks()){ RiskRequest riskRequest = new RiskRequest(); riskRequest.setRiskTypeCode(crr.getRiskTypeCode()); cfr.getRisks().add(riskRequest); } } } private void translateFacilityProductCurrencies(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getProductCurrencies() && !ccfr.getProductCurrencies().isEmpty()){ cfr.setProductCurrency(new ArrayList<>()); for(CustomProductCurrencyRequest cpcr : ccfr.getProductCurrencies()){ ProductCurrencyRequest productCurrencyRequest = new ProductCurrencyRequest(); productCurrencyRequest.setCurrency(cpcr.getCurrency()); productCurrencyRequest.setRacApplies(cpcr.getRacApplies()); productCurrencyRequest.setServicingGroupId(getServicingGroupId(cfr)); productCurrencyRequest.setOverrideFXRate(cpcr.getOverrideFXRate()); cfr.getProductCurrency().add(productCurrencyRequest); } } } private void translateInterestPricingOptionFacility(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getInterestPricingOptions() && !ccfr.getInterestPricingOptions().isEmpty()){ cfr.setInterestPricingOptions(new ArrayList<>()); for(CustomInterestPricingOptionFacilityRequest cipofr : ccfr.getInterestPricingOptions()){ InterestPricingOptionFacilityRequest ipofr = new InterestPricingOptionFacilityRequest(); ipofr.setAlternateReferenceRatesRateBasis(cipofr.getAlternateReferenceRatesRateBasis()); ipofr.setLockoutDays(cipofr.getLockoutDays()); ipofr.setLookbackDays(cipofr.getLookbackDays()); ipofr.setObservPeriodShift(cipofr.getObservPeriodShift()); ipofr.setPaymentMode(cipofr.getPaymentMode()); cfr.getInterestPricingOptions().add(ipofr); } } } private void translateFacilityInterestPricingOption(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getFacilityInterestPricingOptions() && !ccfr.getFacilityInterestPricingOptions().isEmpty()){ cfr.setFacilityInterestPricingOptions(new ArrayList<>()); for(CustomFacilityInterestPricingOptionRequest cfipor : ccfr.getFacilityInterestPricingOptions()){ FacilityInterestPricingOptionRequest fipor = new FacilityInterestPricingOptionRequest(); fipor.setAdjustedDueDateRule(cfipor.getAdjustedDueDateRule()); fipor.setAlternateReferenceRatesRateBasis(cfipor.getAlternateReferenceRatesRateBasis()); fipor.setCapAndFloorRateChangeMethod(cfipor.getCapAndFloorRateChangeMethod()); fipor.setInterestScheduleForRepricingDates(cfipor.getInterestScheduleForRepricingDates()); fipor.setLockoutDays(cfipor.getLockoutDays()); fipor.setLookbackDays(cfipor.getLookbackDays()); fipor.setMaximumDrawdownAmount(cfipor.getMaximumDrawdownAmount()); fipor.setMessageID(cfipor.getMessageID()); fipor.setMinimumAmountMultiples(cfipor.getMinimumAmountMultiples()); fipor.setMinimumDrawdownAmount(cfipor.getMinimumDrawdownAmount()); fipor.setMinimumLenderShareMultiples(cfipor.getMinimumLenderShareMultiples()); fipor.setMinimumPaymentAmount(cfipor.getMinimumPaymentAmount()); fipor.setObservPeriodShift(cfipor.getObservPeriodShift()); fipor.setPercentOfRateFormulaUsage(cfipor.getPercentOfRateFormulaUsage()); fipor.setPricingCurrency(cfipor.getPricingCurrency()); fipor.setPricingOption(cfipor.getPricingOption()); fipor.setRemoveOverrides(cfipor.getRemoveOverrides()); fipor.setRepricingAnniversaryDateApplies(cfipor.getRepricingAnniversaryDateApplies()); fipor.setRoundingApplicationMethod(cfipor.getRoundingApplicationMethod()); fipor.setSynchronizeBillingIndicator(cfipor.getSynchronizeBillingIndicator()); fipor.setPaymentMode(cfipor.getPaymentMode()); cfr.getFacilityInterestPricingOptions().add(fipor); } } } private String getServicingGroupId(CreateFacilityRequest cfr) { ServicingGroupRequest sgr = cfr.getServicingGroup(); List<VlsCustLocationCustom> listSgrIds = vlsCustLocationCustomRepository .findByCloCidCustIdAndFrgNmeAliasAndCloCdeLocation( sgr.getCustomerExternalId(), sgr.getLocationCode(), sgr.getAlias()); return listSgrIds.stream().filter(Objects::nonNull).findFirst().orElse(new VlsCustLocationCustom()).getFrgRidFaxGroup(); } private void translateFacilityLoanPurposes(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getLoanPurposes() && !ccfr.getLoanPurposes().isEmpty()){ cfr.setLoanPurposes(new ArrayList<>()); for(CustomLoanPurposeRequest clpr : ccfr.getLoanPurposes()){ LoanPurposeRequest loanPurposeRequest = new LoanPurposeRequest(); loanPurposeRequest.setLoanPurposeCode(clpr.getLoanPurposeCode()); cfr.getLoanPurposes().add(loanPurposeRequest); } } } private void translateFacilityMisCodes(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getMisCodes() && !ccfr.getMisCodes().isEmpty()){ cfr.setMisCodes(new ArrayList<>()); for(CustomMISCodeRequest cmiscr : ccfr.getMisCodes()){ MISCodeRequest mISCodeRequest = new MISCodeRequest(); mISCodeRequest.setType(cmiscr.getType()); mISCodeRequest.setValueType(cmiscr.getValueType()); cfr.getMisCodes().add(mISCodeRequest); } } } private void translateFacilityFeePricings(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getFeePricings() && !ccfr.getFeePricings().isEmpty()){ cfr.setFeePricings(new ArrayList<>()); for(CustomFeePricingRequest cfpr : ccfr.getFeePricings()){ FeePricingRequest feePricingRequest = new FeePricingRequest(); feePricingRequest.setAccrualEndDate(cfpr.getAccrualEndDate()); feePricingRequest.setAccrue(cfpr.getAccrue()); feePricingRequest.setActualDueDate(cfpr.getActualDueDate()); feePricingRequest.setActualExpiryDate(cfpr.getActualExpiryDate()); feePricingRequest.setAdjustedDueDate(cfpr.getAdjustedDueDate()); feePricingRequest.setCategory(cfpr.getCategory()); feePricingRequest.setCycleFrequency(cfpr.getCycleFrequency()); feePricingRequest.setEffectiveDate(cfpr.getEffectiveDate()); feePricingRequest.setFloatRateStartDate(cfpr.getFloatRateStartDate()); if(null != cfpr.getPayInArrears() && Constants.Y.equals(cfpr.getPayInArrears())){ feePricingRequest.setPayInAdvance(Constants.N); feePricingRequest.setPayInArrears(Constants.Y); }else{ feePricingRequest.setPayInAdvance(Constants.Y); feePricingRequest.setPayInArrears(Constants.N); } feePricingRequest.setRate(cfpr.getRate()); feePricingRequest.setRateBasis(cfpr.getRateBasis()); feePricingRequest.setType(cfpr.getType()); cfr.getFeePricings().add(feePricingRequest); } } } private void translateFacilityInterestPricings(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getInterestPricings() && !ccfr.getInterestPricings().isEmpty()){ cfr.setFacilityInterestPricings(new ArrayList<>()); for(CustomFacilityInterestPricingRequest cfipr : ccfr.getInterestPricings()){ FacilityInterestPricingRequest facilityInterestPricingRequest = new FacilityInterestPricingRequest(); facilityInterestPricingRequest.setBaseRate(cfipr.getBaseRate()); facilityInterestPricingRequest.setOptionName(cfipr.getOptionName()); facilityInterestPricingRequest.setRateBasis(cfipr.getRateBasis()); facilityInterestPricingRequest.setSpread(cfipr.getSpread()); cfr.getFacilityInterestPricings().add(facilityInterestPricingRequest); } } } private void translateFacilityOngoingFeeDates(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getOngoingFeeDates() && !ccfr.getOngoingFeeDates().isEmpty()){ cfr.setOngoingFeeDates(new ArrayList<>()); for(CustomOngoingFeeDateRequest cofdr : ccfr.getOngoingFeeDates()){ OngoingFeeDateRequest ongoingFeeDateRequest = new OngoingFeeDateRequest(); ongoingFeeDateRequest.setAdjustedDueDate(cofdr.getAdjustedDueDate()); ongoingFeeDateRequest.setDeleteIndicator(cofdr.getDeleteIndicator()); ongoingFeeDateRequest.setEffectiveDate(cofdr.getEffectiveDate()); ongoingFeeDateRequest.setFeeCode(cofdr.getFeeCode()); cfr.getOngoingFeeDates().add(ongoingFeeDateRequest); } } } private void translateFacilityAmortizationSchedules(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr, CreateOperationRequest cor){ if(null != ccfr.getAmortizationSchedule()){ CreateFacilityAmortizationScheduleRequest cfasr = new CreateFacilityAmortizationScheduleRequest(); // General cfasr.setFacilityAmortizationScheduleGeneralRequest(new FacilityAmortizationScheduleGeneralRequest()); cfasr.getFacilityAmortizationScheduleGeneralRequest().setBulletAtMaturityInd(ccfr.getAmortizationSchedule().getGeneral().getBulletAtMaturityInd()); cfasr.getFacilityAmortizationScheduleGeneralRequest().setAliasDealName(cor.getDeal().getGeneralDealInformation().getDealAlias()); cfasr.getFacilityAmortizationScheduleGeneralRequest().setFacilityName(ccfr.getGeneralData().getName()); // Schedule if(null != ccfr.getAmortizationSchedule().getSchedules() && !ccfr.getAmortizationSchedule().getSchedules().isEmpty()){ cfasr.setAmortizationSchedule(new ArrayList<>()); for(CustomAmortizationScheduleRequest casr : ccfr.getAmortizationSchedule().getSchedules()){ AmortizationScheduleRequest asr = new AmortizationScheduleRequest(); asr.setCreateTieredSegmentsIndicator(casr.getCreateTieredSegmentsIndicator()); asr.setCyclicalScheduleFrequency(casr.getCyclicalScheduleFrequency()); asr.setCyclicalScheduleFrequencyPeriod(casr.getCyclicalScheduleFrequencyPeriod()); asr.setEom(casr.getEom()); asr.setNonBusinessDayRule(casr.getNonBusinessDayRule()); asr.setSeparateFirstItemAmount(casr.getSeparateFirstItemAmount()); asr.setSeparateFirstItemDate(casr.getSeparateFirstItemDate()); asr.setSeparateLastItemAmount(casr.getSeparateLastItemAmount()); asr.setSeparateLastItemDate(casr.getSeparateLastItemDate()); asr.setTriggerDate(casr.getTriggerDate()); cfasr.getAmortizationSchedule().add(asr); } } // Segment if(null != ccfr.getAmortizationSchedule().getSegments() && !ccfr.getAmortizationSchedule().getSegments().isEmpty()){ cfasr.setScheduleSegment(new ArrayList<>()); for(CustomScheduleSegmentRequest cssr : ccfr.getAmortizationSchedule().getSegments()){ ScheduleSegmentRequest ssr = new ScheduleSegmentRequest(); ssr.setAmount(cssr.getAmount()); ssr.setNoOfItemsInSegment(cssr.getNoOfItemsInSegment()); ssr.setPercentCurrentBalance(cssr.getPercentCurrentBalance()); cfasr.getScheduleSegment().add(ssr); } } cfr.setFacilityAmortizationSchedule(cfasr); } } private void translateFacilitySublimits(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr){ if(null != ccfr.getSublimits() && !ccfr.getSublimits().isEmpty()){ ArrayList<FacilitySublimitRequest> fsrL = new ArrayList<>(); for(CustomFacilitySublimitRequest cfsr : ccfr.getSublimits()){ FacilitySublimitRequest fsr = new FacilitySublimitRequest(); // General fsr.setAmount(cfsr.getAmount()); fsr.setDelete(cfsr.getDelete()); fsr.setDiscretionaryIndicator(cfsr.getDiscretionaryIndicator()); fsr.setEffectiveDate(cfsr.getEffectiveDate()); fsr.setExpiryDate(cfsr.getExpiryDate()); fsr.setMaturityDate(cfsr.getMaturityDate()); fsr.setName(cfsr.getName()); // Sublimit risk if(null != cfsr.getSublimitRisks() && !cfsr.getSublimitRisks().isEmpty()){ ArrayList<FacilitySublimitRiskRequest> fsrrL = new ArrayList<>(); for(CustomFacilitySublimitRiskRequest cfsrr : cfsr.getSublimitRisks()){ FacilitySublimitRiskRequest fsrr = new FacilitySublimitRiskRequest(); fsrr.setRiskTypeCode(cfsrr.getRiskTypeCode()); fsrrL.add(fsrr); } fsr.setFacilitySublimitRisks(fsrrL); } // Sublimit Associations if(null != cfsr.getSublimitAssociations() && !cfsr.getSublimitAssociations().isEmpty()){ ArrayList<SublimitAssociationRequest> sarL = new ArrayList<>(); for(CustomSublimitAssociationRequest csar : cfsr.getSublimitAssociations()){ SublimitAssociationRequest sar = new SublimitAssociationRequest(); sar.setSubordinate(csar.getSubordinate()); sarL.add(sar); } fsr.setSublimitAssociations(sarL); } fsrL.add(fsr); } cfr.setFacilitySublimits(fsrL); } } private void translateFacilityAddBorrowers(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr, CreateOperationRequest cor){ if(null != ccfr.getAddBorrowers() && !ccfr.getAddBorrowers().isEmpty()){ ArrayList<AddFacilityBorrowerRequest> afbrL = new ArrayList<>(); for(CustomAddFacilityBorrowerRequest cafbr : ccfr.getAddBorrowers()){ AddFacilityBorrowerRequest afbr = new AddFacilityBorrowerRequest(); // General // El rid de la Facility se setea en la orquestación porque no lo sabemos todavia afbr.setBorrowerExternalId(glsOrJToExternalIdService.getXidFromGlsOrJ( cafbr.getCustomerCode(), cor.getDeal().getGeneralDealInformation().getBranch())); afbr.setDealAliasName(cor.getDeal().getGeneralDealInformation().getDealAlias()); afbr.setEffectiveDate(cafbr.getEffectiveDate()); afbr.setGlobalLimit(cafbr.getGlobalLimit()); afbr.setPrivateMaturityDate(cafbr.getPrivateMaturityDate()); afbr.setUpperLimitPercentage(cafbr.getUpperLimitPercentage()); // FacilityBorrowerCurrencyLimits ArrayList<FacilityBorrowerCurrencyLimitRequest> fbclrL = new ArrayList<>(); if (!CollectionUtils.isEmpty(cafbr.getFacilityBorrowerCurrencyLimits())) { for(CustomFacilityBorrowerCurrencyLimitRequest cfbclr : cafbr.getFacilityBorrowerCurrencyLimits()){ FacilityBorrowerCurrencyLimitRequest fbclr = new FacilityBorrowerCurrencyLimitRequest(); fbclr.setCurrency(cfbclr.getCurrency()); fbclr.setDeleteIndicator(cfbclr.getDeleteIndicator()); fbclr.setLimit(cfbclr.getLimit()); fbclrL.add(fbclr); } } afbr.setFacilityBorrowerCurrencyLimits(fbclrL); // FacilityBorrowerRiskTypeLimits ArrayList<FacilityBorrowerRiskTypeLimitRequest> fbrtlrL = new ArrayList<>(); if (!CollectionUtils.isEmpty(cafbr.getFacilityBorrowerRiskTypeLimits())) { for(CustomFacilityBorrowerRiskTypeLimitRequest cfbrtlr : cafbr.getFacilityBorrowerRiskTypeLimits()){ FacilityBorrowerRiskTypeLimitRequest fbrtlr = new FacilityBorrowerRiskTypeLimitRequest(); fbrtlr.setDeleteIndicator(cfbrtlr.getDeleteIndicator()); fbrtlr.setLimit(cfbrtlr.getLimit()); fbrtlr.setRisktype(cfbrtlr.getRisktype()); fbrtlrL.add(fbrtlr); } } afbr.setFacilityBorrowerRiskTypeLimits(fbrtlrL); // FacilityBorrowerSublimitLimits ArrayList<FacilityBorrowerSublimitLimitRequest> fbslrL = new ArrayList<>(); if (!CollectionUtils.isEmpty(cafbr.getFacilityBorrowerSublimitLimits())) { for(CustomFacilityBorrowerSublimitLimitRequest cfbslr : cafbr.getFacilityBorrowerSublimitLimits()){ FacilityBorrowerSublimitLimitRequest fbslr = new FacilityBorrowerSublimitLimitRequest(); fbslr.setDeleteIndicator(cfbslr.getDeleteIndicator()); fbslr.setLimit(cfbslr.getLimit()); fbslr.setSublimit(cfbslr.getSublimit()); fbslrL.add(fbslr); } } afbr.setFacilityBorrowerSublimitLimits(fbslrL); afbrL.add(afbr); } cfr.setAddFacilityBorrowers(afbrL); } } private void translateFacilityAdditionalFields(CreateFacilityRequest cfr, CustomCreateFacilityRequest ccfr) { if(null != ccfr.getAdditionalFields() && !ccfr.getAdditionalFields().isEmpty()) { cfr.setFacilityAdditionalFields(new UpdateAdditionalFieldsRequest()); cfr.getFacilityAdditionalFields().setAdditionalFieldsGeneralData(new AdditionalFieldsGeneralData()); cfr.getFacilityAdditionalFields().getAdditionalFieldsGeneralData().setOwnerType(Constants.FAC); List<AdditionalFieldRequest> li = new ArrayList<>(); cfr.getFacilityAdditionalFields().setAdditionalFieldsRequests(li); for(CustomAdditionalFieldRequest cadd : ccfr.getAdditionalFields()) { AdditionalFieldRequest additional = new AdditionalFieldRequest(); additional.setDeleteIndicator(cadd.getDeleteIndicator()); additional.setFieldType(cadd.getFieldType()); additional.setFieldValue(cadd.getFieldValue()); cfr.getFacilityAdditionalFields().getAdditionalFieldsRequests().add(additional); } } } }
Editor is loading...
Leave a Comment