X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fjson%2Fv1_15%2FParsedPosting.java;h=a0607512fa3aec4bf71f178f7d8448e7d869a545;hp=0789f0d9fbd8e43fea1c6afec1a1d9699e507f70;hb=86a3a3652dd2a8e6b2a403cbc816214348eaaea3;hpb=8d376242685dcbd2f99a856daccc760fcc5bb535 diff --git a/app/src/main/java/net/ktnx/mobileledger/json/v1_15/ParsedPosting.java b/app/src/main/java/net/ktnx/mobileledger/json/v1_15/ParsedPosting.java index 0789f0d9..a0607512 100644 --- a/app/src/main/java/net/ktnx/mobileledger/json/v1_15/ParsedPosting.java +++ b/app/src/main/java/net/ktnx/mobileledger/json/v1_15/ParsedPosting.java @@ -31,26 +31,53 @@ public class ParsedPosting { private String paccount; private List pamount; private String pdate = null; - public String getPdate2() { - return pdate2; - } - public void setPdate2(String pdate2) { - this.pdate2 = pdate2; - } private String pdate2 = null; private String ptype = "RegularPosting"; private String pcomment = ""; private List> ptags = new ArrayList<>(); private String poriginal = null; private int ptransaction_; + public ParsedPosting() { + } + public static ParsedPosting fromLedgerAccount(LedgerTransactionAccount acc) { + ParsedPosting result = new ParsedPosting(); + result.setPaccount(acc.getAccountName()); + + String comment = acc.getComment(); + if (comment == null) + comment = ""; + result.setPcomment(comment); + + ArrayList amounts = new ArrayList<>(); + ParsedAmount amt = new ParsedAmount(); + amt.setAcommodity((acc.getCurrency() == null) ? "" : acc.getCurrency()); + amt.setAismultiplier(false); + ParsedQuantity qty = new ParsedQuantity(); + qty.setDecimalPlaces(2); + qty.setDecimalMantissa(Math.round(acc.getAmount() * 100)); + amt.setAquantity(qty); + ParsedStyle style = new ParsedStyle(); + style.setAscommodityside('L'); + style.setAscommodityspaced(false); + style.setAsprecision(2); + style.setAsdecimalpoint('.'); + amt.setAstyle(style); + amounts.add(amt); + result.setPamount(amounts); + return result; + } + public String getPdate2() { + return pdate2; + } + public void setPdate2(String pdate2) { + this.pdate2 = pdate2; + } public int getPtransaction_() { return ptransaction_; } public void setPtransaction_(int ptransaction_) { this.ptransaction_ = ptransaction_; } - public ParsedPosting() { - } public String getPdate() { return pdate; } @@ -107,35 +134,9 @@ public class ParsedPosting { } public LedgerTransactionAccount asLedgerAccount() { ParsedAmount amt = pamount.get(0); - return new LedgerTransactionAccount(paccount, amt.getAquantity().asFloat(), - amt.getAcommodity()); - } - public static ParsedPosting fromLedgerAccount(LedgerTransactionAccount acc) { - ParsedPosting result = new ParsedPosting(); - result.setPaccount(acc.getAccountName()); - - String comment = acc.getComment(); - if (comment == null) - comment = ""; - result.setPcomment(comment); - - ArrayList amounts = new ArrayList<>(); - ParsedAmount amt = new ParsedAmount(); - amt.setAcommodity((acc.getCurrency() == null) ? "" : acc.getCurrency()); - amt.setAismultiplier(false); - ParsedQuantity qty = new ParsedQuantity(); - qty.setDecimalPlaces(2); - qty.setDecimalMantissa(Math.round(acc.getAmount() * 100)); - amt.setAquantity(qty); - ParsedStyle style = new ParsedStyle(); - style.setAscommodityside('L'); - style.setAscommodityspaced(false); - style.setAsprecision(2); - style.setAsdecimalpoint('.'); - amt.setAstyle(style); - amounts.add(amt); - result.setPamount(amounts); - return result; + return new LedgerTransactionAccount(paccount, amt.getAquantity() + .asFloat(), amt.getAcommodity(), + getPcomment()); } }