324 lines
12 KiB
HTML
324 lines
12 KiB
HTML
{% extends "base.html" %}
|
|
{% comment %}
|
|
The Mia Accounting Application
|
|
cash.html: The template for the cash account reports
|
|
|
|
Copyright (c) 2020 imacat.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
|
|
Author: imacat@mail.imacat.idv.tw (imacat)
|
|
First written: 2020/7/20
|
|
{% endcomment %}
|
|
{% load static %}
|
|
{% load i18n %}
|
|
{% load humanize %}
|
|
{% load mia_core %}
|
|
{% load accounting %}
|
|
|
|
{% block settings %}
|
|
{% blocktrans asvar title with prep_period=request.resolver_match.kwargs.period.prep_desc %}Balance Sheet {{ prep_period }}{% endblocktrans %}
|
|
{% setvar "title" title %}
|
|
{% setvar "use_period_chooser" True %}
|
|
{% static "accounting/css/report.css" as file %}{% add_css file %}
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
|
|
<div class="btn-group btn-actions">
|
|
<div class="btn-group">
|
|
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
|
|
<i class="fas fa-edit"></i>
|
|
{{ _("New")|force_escape }}
|
|
</button>
|
|
<div class="dropdown-menu">
|
|
<a class="dropdown-item" href="{% url_with_return "accounting:transactions.create" "expense" %}">
|
|
{{ _("Cash Expense")|force_escape }}
|
|
</a>
|
|
<a class="dropdown-item" href="{% url_with_return "accounting:transactions.create" "income" %}">
|
|
{{ _("Cash Income")|force_escape }}
|
|
</a>
|
|
<a class="dropdown-item" href="{% url_with_return "accounting:transactions.create" "transfer" %}">
|
|
{{ _("Transfer")|force_escape }}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
{% with current_report_icon="fas fa-balance-scale" current_report_title=_("Balance Sheet") period=request.resolver_match.kwargs.period %}
|
|
{% include "accounting/include/report-chooser.html" %}
|
|
{% endwith %}
|
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#period-modal">
|
|
<i class="far fa-calendar-alt"></i>
|
|
<span class="d-none d-md-inline">{{ request.resolver_match.kwargs.period.description }}</span>
|
|
<span class="d-md-none">{{ _("Period")|force_escape }}</span>
|
|
</button>
|
|
</div>
|
|
|
|
{% with period=request.resolver_match.kwargs.period %}
|
|
{% include "mia_core/include/period-chooser.html" %}
|
|
{% endwith %}
|
|
|
|
{# The table for large screens #}
|
|
<div class="d-none d-lg-block report-block report-block-lg">
|
|
<div class="row justify-content-center">
|
|
<h2>{{ title|title_case }}</h2>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
<table class="table table-borderless table-hover table-sm balance-sheet-table">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="3" scope="col">{{ assets.title|title_case }}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for group in assets.groups %}
|
|
<tr class="group-title">
|
|
<td><div>{{ group.title|title_case }}</div></td>
|
|
<td class="amount"></td>
|
|
<td class="actions"></td>
|
|
</tr>
|
|
{% for account in group.details %}
|
|
<tr>
|
|
<td><div class="account">{{ account.title|title_case }}</div></td>
|
|
<td class="amount {% if account.amount < 0 %} text-danger {% endif %}">{{ account.amount|accounting_amount }}</td>
|
|
<td class="actions">
|
|
<a href="{{ account.url }}" class="btn btn-info" role="button">
|
|
<i class="fas fa-eye"></i>
|
|
{{ _("View")|force_escape }}
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="col-sm-6">
|
|
<table class="table table-borderless table-hover table-sm balance-sheet-table">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="3" scope="col">{{ liabilities.title|title_case }}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for group in liabilities.groups %}
|
|
<tr class="group-title">
|
|
<td><div>{{ group.title|title_case }}</div></td>
|
|
<td class="amount"></td>
|
|
<td class="actions"></td>
|
|
</tr>
|
|
{% for account in group.details %}
|
|
<tr>
|
|
<td><div class="account">{{ account.title|title_case }}</div></td>
|
|
<td class="amount {% if account.amount < 0 %} text-danger {% endif %}">{{ account.amount|accounting_amount }}</td>
|
|
<td class="actions">
|
|
<a href="{{ account.url }}" class="btn btn-info" role="button">
|
|
<i class="fas fa-eye"></i>
|
|
{{ _("View")|force_escape }}
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</tbody>
|
|
<tfoot>
|
|
<tr class="total">
|
|
<td>{{ _("Total")|force_escape }}</td>
|
|
<td class="amount {% if liabilities.amount < 0 %} text-danger {% endif %}">
|
|
{{ liabilities.amount|accounting_amount }}
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
|
|
<table class="table table-borderless table-hover table-sm balance-sheet-table">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="3" scope="col">{{ owners_equity.title|title_case }}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for group in owners_equity.groups %}
|
|
<tr class="group-title">
|
|
<td><div>{{ group.title|title_case }}</div></td>
|
|
<td class="amount"></td>
|
|
<td class="actions"></td>
|
|
</tr>
|
|
{% for account in group.details %}
|
|
<tr>
|
|
<td><div class="account">{{ account.title|title_case }}</div></td>
|
|
<td class="amount {% if account.amount < 0 %} text-danger {% endif %}">{{ account.amount|accounting_amount }}</td>
|
|
<td class="actions">
|
|
<a href="{{ account.url }}" class="btn btn-info" role="button">
|
|
<i class="fas fa-eye"></i>
|
|
{{ _("View")|force_escape }}
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</tbody>
|
|
<tfoot>
|
|
<tr class="total">
|
|
<td>{{ _("Total")|force_escape }}</td>
|
|
<td class="amount {% if owners_equity.amount < 0 %} text-danger {% endif %}">
|
|
{{ owners_equity.amount|accounting_amount }}
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-sm-6 assets-total">
|
|
<table class="table table-borderless table-hover table-sm balance-sheet-total-table">
|
|
<tfoot>
|
|
<tr class="total">
|
|
<td class="align-middle">{{ _("Total")|force_escape }}</td>
|
|
<td class="text-right align-middle font-italic {% if assets.amount < 0 %} text-danger {% endif %}">
|
|
{{ assets.amount|accounting_amount }}
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="col-sm-6 liabilities-total">
|
|
<table class="table table-borderless table-hover table-sm balance-sheet-total-table">
|
|
<tfoot>
|
|
<tr class="total">
|
|
<td class="align-middle">{{ _("Total")|force_escape }}</td>
|
|
<td class="text-right align-middle font-italic {% if liabilities.amount|add:owners_equity.amount < 0 %} text-danger {% endif %}">
|
|
{{ liabilities.amount|add:owners_equity.amount|accounting_amount }}
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{# The list for small screens #}
|
|
<div class="d-lg-none report-block report-block-sm">
|
|
<div class="row justify-content-center">
|
|
<h2>{{ title|escape }}</h2>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
<ul class="list-group balance-sheet-list">
|
|
<li class="list-group-item section-title">
|
|
{{ assets.title|title_case }}
|
|
</li>
|
|
{% for group in assets.groups %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center group-title">
|
|
{{ group.title|title_case }}
|
|
</li>
|
|
{% for account in group.details %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center account">
|
|
<a class="list-group-item-action" href="{{ account.url }}">
|
|
{{ account.title|title_case }}
|
|
<div class="float-right">
|
|
<span class="badge {% if account.amount < 0 %} badge-warning {% else %} badge-secondary {% endif %} badge-pill">
|
|
{{ account.amount|accounting_amount }}
|
|
</span>
|
|
</div>
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center grand-total">
|
|
{{ _("Total")|force_escape }}
|
|
<span class="badge {% if assets.amount < 0 %} badge-danger {% else %} badge-info {% endif %} badge-pill">
|
|
{{ assets.amount|accounting_amount }}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="col-sm-6">
|
|
<ul class="list-group balance-sheet-list">
|
|
<li class="list-group-item section-title">
|
|
{{ liabilities.title|title_case }}
|
|
</li>
|
|
{% for group in liabilities.groups %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center group-title">
|
|
{{ group.title|title_case }}
|
|
</li>
|
|
{% for account in group.details %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center account">
|
|
<a class="list-group-item-action" href="{{ account.url }}">
|
|
{{ account.title|title_case }}
|
|
<div class="float-right">
|
|
<span class="badge {% if account.amount < 0 %} badge-warning {% else %} badge-secondary {% endif %} badge-pill">
|
|
{{ account.amount|accounting_amount }}
|
|
</span>
|
|
</div>
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center total">
|
|
{{ _("Total")|force_escape }}
|
|
<span class="badge {% if liabilities.amount < 0 %} badge-danger {% else %} badge-info {% endif %} badge-pill">
|
|
{{ liabilities.amount|accounting_amount }}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class="list-group balance-sheet-list">
|
|
<li class="list-group-item section-title">
|
|
{{ owners_equity.title|title_case }}
|
|
</li>
|
|
{% for group in owners_equity.groups %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center group-title">
|
|
{{ group.title|title_case }}
|
|
</li>
|
|
{% for account in group.details %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center account">
|
|
<a class="list-group-item-action" href="{{ account.url }}">
|
|
{{ account.title|title_case }}
|
|
<div class="float-right">
|
|
<span class="badge {% if account.amount < 0 %} badge-warning {% else %} badge-secondary {% endif %} badge-pill">
|
|
{{ account.amount|accounting_amount }}
|
|
</span>
|
|
</div>
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
<li class="list-group-item d-flex justify-content-between align-items-center total">
|
|
{{ _("Total")|force_escape }}
|
|
<span class="badge {% if owners_equity.amount < 0 %} badge-danger {% else %} badge-info {% endif %} badge-pill">
|
|
{{ owners_equity.amount|accounting_amount }}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class="list-group balance-sheet-list">
|
|
<li class="list-group-item d-flex justify-content-between align-items-center grand-total">
|
|
{{ _("Total")|force_escape }}
|
|
<span class="badge {% if liabilities.amount|add:owners_equity.amount < 0 %} badge-danger {% else %} badge-info {% endif %} badge-pill">
|
|
{{ liabilities.amount|add:owners_equity.amount|accounting_amount }}
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{% endblock %}
|