use of com.axelor.apps.base.db.Bank in project axelor-open-suite by axelor.
the class ImportBank method setCountry.
@Transactional(rollbackOn = Exception.class)
public Object setCountry(Object bean, Map<String, Object> values) throws AxelorException {
assert bean instanceof Bank;
Bank bank = (Bank) bean;
String code = (String) values.get("code");
String codeCountry = code.substring(4, 6);
Country country = countryRepository.all().filter("self.alpha2Code = :codeCountry").bind("codeCountry", codeCountry).fetchOne();
if (country != null) {
bank.setCountry(country);
}
bankRepository.save(bank);
return bank;
}
use of com.axelor.apps.base.db.Bank in project axelor-open-suite by axelor.
the class BankOrderLineService method createBankOrderLine.
/**
* Generic method to create a BankOrderLine
*
* @param receiverCompany
* @param partner
* @param bankDetails
* @param amount
* @param receiverReference
* @param receiverLabel
* @return
* @throws AxelorException
*/
public BankOrderLine createBankOrderLine(BankOrderFileFormat bankOrderFileFormat, Company receiverCompany, Partner partner, BankDetails bankDetails, BigDecimal amount, Currency currency, LocalDate bankOrderDate, String receiverReference, String receiverLabel, Model origin) throws AxelorException {
BankOrderLine bankOrderLine = new BankOrderLine();
bankOrderLine.setReceiverCompany(receiverCompany);
bankOrderLine.setPartner(partner);
bankOrderLine.setReceiverBankDetails(bankDetails);
bankOrderLine.setBankOrderAmount(amount);
if (bankOrderFileFormat.getIsMultiCurrency()) {
bankOrderLine.setBankOrderCurrency(currency);
}
if (bankOrderFileFormat.getIsMultiDate()) {
bankOrderLine.setBankOrderDate(bankOrderDate);
}
bankOrderLine.setReceiverReference(receiverReference);
bankOrderLine.setReceiverLabel(receiverLabel);
if (origin != null) {
bankOrderLine.addBankOrderLineOriginListItem(bankOrderLineOriginService.createBankOrderLineOrigin(origin));
}
if (bankOrderFileFormat.getOrderFileFormatSelect().equals(BankOrderFileFormatRepository.FILE_FORMAT_PAIN_XXX_CFONB320_XCT)) {
bankOrderLine.setBankOrderEconomicReason(bankOrderFileFormat.getBankOrderEconomicReason());
bankOrderLine.setReceiverCountry(bankOrderFileFormat.getReceiverCountry());
if (bankDetails != null) {
Bank bank = bankDetails.getBank();
if (bank != null && bank.getCountry() != null) {
bankOrderLine.setReceiverCountry(bank.getCountry());
}
} else {
throw new AxelorException(bankOrderLine, TraceBackRepository.CATEGORY_INCONSISTENCY, I18n.get(IExceptionMessage.BANK_ORDER_LINE_BANK_DETAILS_MISSING));
}
bankOrderLine.setPaymentModeSelect(bankOrderFileFormat.getPaymentModeSelect());
bankOrderLine.setFeesImputationModeSelect(bankOrderFileFormat.getFeesImputationModeSelect());
bankOrderLine.setReceiverAddressStr(getReceiverAddress(partner));
}
return bankOrderLine;
}
Aggregations