Handle amount in import and display

This commit is contained in:
Jan Bader 2021-12-02 20:49:07 +00:00
parent db7f0bfb7b
commit 696469f6c2
3 changed files with 21 additions and 2 deletions

View File

@ -123,7 +123,16 @@ func GetAmount(inflow string, outflow string) (pgtype.Numeric, error) {
num := pgtype.Numeric{} num := pgtype.Numeric{}
err := num.Set(inflow) err := num.Set(inflow)
if err != nil { if err != nil {
return num, fmt.Errorf("Could not inflow %s: %w", inflow, err) return num, fmt.Errorf("Could not parse inflow %s: %w", inflow, err)
}
if num.Int.Int64() != 0 {
return num, nil
}
err = num.Set("-" + outflow)
if err != nil {
return num, fmt.Errorf("Could not parse outflow %s: %w", inflow, err)
} }
return num, nil return num, nil
} }

View File

@ -43,3 +43,13 @@ func (tx Transaction) GetAmount() float64 {
} }
return amount return amount
} }
func (tx Transaction) GetAmountString() string {
amount := tx.GetAmount()
return fmt.Sprintf("%.2f", amount)
}
func (tx Transaction) GetPositive() bool {
amount := tx.GetAmount()
return amount >= 0
}

View File

@ -19,7 +19,7 @@
<td> <td>
<a href="transaction/{{.ID}}">{{.Memo}}</a> <a href="transaction/{{.ID}}">{{.Memo}}</a>
</td> </td>
<td>{{.GetAmount}}</td> <td style="text-align: right;{{if .GetPositive()}}{{else}}color: red;{{end}}">{{.GetAmount}}</td>
</tr> </tr>
{{end}} {{end}}
</table> </table>