acc.setAccountCommentMatchGroup(pa.getAccountCommentMatchGroup());
if (pa.getCurrencyMatchGroup() == null) {
- final Integer currencyId = pa.getCurrency();
- if (currencyId != null && currencyId > 0)
- acc.setCurrency(Currency.loadById(currencyId));
+ acc.setCurrency(pa.getCurrencyObject());
}
else
acc.setCurrencyMatchGroup(pa.getCurrencyMatchGroup());
PossiblyMatchedValue.withLiteralString("");
private final PossiblyMatchedValue<Float> amount =
PossiblyMatchedValue.withLiteralFloat(null);
- private final PossiblyMatchedValue<Currency> currency = new PossiblyMatchedValue<>();
+ private final PossiblyMatchedValue<net.ktnx.mobileledger.db.Currency> currency =
+ new PossiblyMatchedValue<>();
private boolean negateAmount;
public AccountRow() {
super(Type.ACCOUNT_ITEM);
public void setCurrencyMatchGroup(int group) {
currency.setMatchGroup(group);
}
- public Currency getCurrency() {
+ public net.ktnx.mobileledger.db.Currency getCurrency() {
return currency.getValue();
}
- public void setCurrency(Currency currency) {
+ public void setCurrency(net.ktnx.mobileledger.db.Currency currency) {
this.currency.setValue(currency);
}
public int getAccountNameMatchGroup() {
public boolean hasLiteralAccountComment() {
return accountComment.hasLiteralValue();
}
+ public boolean hasLiteralCurrency() { return currency.hasLiteralValue(); }
public boolean equalContents(AccountRow o) {
if (position != o.position) {
Logger.debug("cmpAcc",
public void switchToLiteralAmount() {
amount.switchToLiteral();
}
+ public void switchToLiteralCurrency() {
+ currency.switchToLiteral();
+ }
public void switchToLiteralAccountName() {
accountName.switchToLiteral();
}
result.setNegateAmount(negateAmount ? true : null);
}
+ if (currency.hasLiteralValue()) {
+ net.ktnx.mobileledger.db.Currency c = currency.getValue();
+ result.setCurrency((c == null) ? null : c.getId());
+ }
+ else {
+ result.setCurrencyMatchGroup(currency.getMatchGroup());
+ }
+
return result;
}
public boolean isEmpty() {