public CounterpartyEntity saveIncomingOriginator()

in src/main/java/org/openvasp/host/service/impl/CounterparyServiceImpl.java [40:98]


    public CounterpartyEntity saveIncomingOriginator(@NonNull final Originator originator) {
        val result = new CounterpartyEntity();

        // An incoming originator becomes a beneficiary regarding to incoming transfers
        result.setRole(CounterpartyRole.BENEFICIARY);

        result.setVaan(originator.getVaan());
        result.setName(originator.getName());

        val postalAddressEntity = new PostalAddressEntity();
        result.setPostalAddress(postalAddressEntity);
        val postalAddress = originator.getAddress();
        if (postalAddress != null) {
            postalAddressEntity.setAdrline(postalAddress.getAdrline());
            postalAddressEntity.setNumber(postalAddress.getNumber());
            postalAddressEntity.setStreet(postalAddress.getStreet());
            postalAddressEntity.setPostCode(postalAddress.getPostCode());
            postalAddressEntity.setTown(postalAddress.getTown());
            postalAddressEntity.setCountry(postalAddress.getCountry());
        }

        if (StringUtils.isNotEmpty(originator.getBic())) {
            result.setType(CounterpartyType.BANK);
            result.setBic(originator.getBic());
        } else if (!CollectionUtils.isEmpty(originator.getJur())) {
            result.setType(CounterpartyType.JURIDICAL_PERSON);
            result.setJurIds(new HashSet<>());
            for (val jur : originator.getJur()) {
                val jurIdEntity = new JurIdEntity();
                jurIdEntity.setIdType(jur.getJurIdType());
                jurIdEntity.setIdStr(jur.getJurId());
                jurIdEntity.setIssuer(jur.getJurIdIssuer());
                jurIdEntity.setCountry(jur.getJurIdCountry());
                result.getJurIds().add(jurIdEntity);
            }
        } else {
            result.setType(CounterpartyType.NATURAL_PERSON);
            val birthInfoEntity = new BirthInfoEntity();
            result.setBirth(birthInfoEntity);
            if (originator.getBirth() != null) {
                birthInfoEntity.setBirthDate(originator.getBirth().getBirthDate());
                birthInfoEntity.setBirthTown(originator.getBirth().getBirthCity());
                birthInfoEntity.setBirthCountry(originator.getBirth().getBirthCountry());
            }
            result.setNatIds(new HashSet<>());
            if (!CollectionUtils.isEmpty(originator.getNat())) {
                for (val nat : originator.getNat()) {
                    val natIdEntity = new NatIdEntity();
                    natIdEntity.setIdType(nat.getNatIdType());
                    natIdEntity.setIdStr(nat.getNatId());
                    natIdEntity.setIssuer(nat.getNatIdIssuer());
                    natIdEntity.setCountry(nat.getNatIdCountry());
                    result.getNatIds().add(natIdEntity);
                }
            }
        }

        return save(result);
    }