mia-accounting-django/accounting/templates/accounting/report-cash.html

207 lines
9.1 KiB
HTML

{% extends "base.html" %}
{% comment %}
The Mia Accounting Application
report-cash.html: The template for the cash accounts
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/1
{% endcomment %}
{% load static %}
{% load i18n %}
{% load humanize %}
{% load mia_core %}
{% load accounting %}
{% block settings %}
{% blocktrans asvar title with account=request.resolver_match.kwargs.account.title prep_period=request.resolver_match.kwargs.period.prep_desc %}Cash Account for {{ account }} {{ 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>
{% trans "New" context "Accounting" as text %}{{ text|force_escape }}
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="{% url "accounting:transactions.create" "expense" as url %}{% url_with_return url %}">
{{ _("Cash Expense")|force_escape }}
</a>
<a class="dropdown-item" href="{% url "accounting:transactions.create" "income" as url %}{% url_with_return url %}">
{{ _("Cash Income")|force_escape }}
</a>
<a class="dropdown-item" href="{% url "accounting:transactions.create" "transfer" as url %}{% url_with_return url %}">
{{ _("Transfer")|force_escape }}
</a>
</div>
</div>
{% with current_report_icon="fas fa-money-bill-wave" current_report_title=_("Cash Account") cash_account=request.resolver_match.kwargs.account period=request.resolver_match.kwargs.period %}
{% include "accounting/include/report-chooser.html" %}
{% endwith %}
<div class="btn-group">
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
<span class="d-none d-md-inline">{{ request.resolver_match.kwargs.account.title|title_case }}</span>
<span class="d-md-none">{{ _("Account")|force_escape }}</span>
</button>
<div class="dropdown-menu account-picker">
<div class="dropdown-header">{{ _("Shortcuts")|force_escape }}</div>
{% for account in shortcut_accounts %}
<a class="dropdown-item {% if account.code == request.resolver_match.kwargs.account.code %} active {% endif %}>" href="{% url "accounting:cash" account request.resolver_match.kwargs.period %}">
{{ account.title|title_case }}
</a>
{% endfor %}
<div class="dropdown-header">{{ _("All")|force_escape }}</div>
{% for account in all_accounts %}
<a class="dropdown-item {% if account.code == request.resolver_match.kwargs.account.code %} active {% endif %}>" href="{% url "accounting:cash" account request.resolver_match.kwargs.period %}">
{{ account.code }} {{ account.title|title_case }}
</a>
{% endfor %}
</div>
</div>
<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 %}
{% if record_list %}
{% include "mia_core/include/pagination.html" %}
{# The table for large screens #}
<table class="table table-striped table-hover d-none d-md-table general-journal-table">
<thead>
<tr>
<th scope="col">{{ _("Date")|force_escape }}</th>
<th scope="col">{{ _("Account")|force_escape }}</th>
<th scope="col">{{ _("Summary")|force_escape }}</th>
<th class="amount" scope="col">{{ _("Income")|force_escape }}</th>
<th class="amount" scope="col">{{ _("Expense")|force_escape }}</th>
<th class="amount" scope="col">{{ _("Balance")|force_escape }}</th>
<th class="actions" scope="col">{{ _("View")|force_escape }}</th>
</tr>
</thead>
<tbody>
{% for record in record_list %}
<tr class="{% if not record.is_balanced or record.has_order_hole %} table-danger {% endif %}">
<td>{{ record.transaction.date|smart_date }}</td>
<td>{{ record.account.title|title_case }}</td>
<td>{{ record.summary|default:"" }}{% if not record.is_balanced %}
<span class="badge badge-danger badge-pill">
{{ _("Unbalanced")|force_escape }}
</span>
{% endif %}{% if record.has_order_hole %}
<span class="badge badge-danger badge-pill">
{{ _("Need Reorder")|force_escape }}
</span>
{% endif %}</td>
<td class="amount">{{ record.credit_amount|accounting_amount }}</td>
<td class="amount">{{ record.debit_amount|accounting_amount }}</td>
<td class="amount {% if record.balance < 0 %} text-danger {% endif %}">{{ record.balance|accounting_amount }}</td>
<td class="actions">
{% if record.pk is not None %}
<a href="{% url "accounting:transactions.detail" record.transaction.type record.transaction as url %}{% url_with_return url %}" class="btn btn-info" role="button">
<i class="fas fa-eye"></i>
<span class="d-none d-lg-inline">{{ _("View")|force_escape }}</span>
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
{# The list for small screens #}
<ul class="list-group d-md-none">
{% for record in record_list %}
<li class="list-group-item {% if not record.is_balanced or record.has_order_hole %} list-group-item-danger {% endif %}">
{% if record.pk is not None %}
<a class="list-group-item-action" href="{% url "accounting:transactions.detail" record.transaction.type record.transaction as url %}{% url_with_return url %}">
<div class="date-account-line d-flex justify-content-between align-items-center">
{{ record.transaction.date|smart_date }} {{ record.account.title|title_case }}
</div>
<div class="d-flex justify-content-between align-items-center">
<div>
{{ record.summary|default:"" }}
{% if not record.is_balanced %}
<span class="badge badge-danger badge-pill">
{{ _("Unbalanced")|force_escape }}
</span>
{% endif %}
{% if record.has_order_hole %}
<span class="badge badge-danger badge-pill">
{{ _("Need Reorder")|force_escape }}
</span>
{% endif %}
</div>
</div>
<div>
{% if record.credit_amount is not None %}
<span class="badge badge-success badge-pill">
{{ record.credit_amount|intcomma:False }}
</span>
{% endif %}
{% if record.debit_amount is not None %}
<span class="badge badge-warning badge-pill">
-{{ record.debit_amount|intcomma:False }}
</span>
{% endif %}
<span class="badge {% if record.balance < 0 %} badge-danger {% else %} badge-primary {% endif %} badge-pill">
{{ record.balance|intcomma:False }}
</span>
</div>
</a>
{% else %}
<div class="date-account-line d-flex justify-content-between align-items-center">
{{ record.transaction.date|smart_date }} {{ record.account.title }}
</div>
<div class="d-flex justify-content-between align-items-center">
<div>{{ record.summary|default:"" }}</div>
</div>
<div>
{% if record.credit_amount is not None %}
<span class="badge badge-success badge-pill">
{{ record.credit_amount|intcomma:False }}
</span>
{% endif %}
{% if record.debit_amount is not None %}
<span class="badge badge-warning badge-pill">
-{{ record.debit_amount|intcomma:False }}
</span>
{% endif %}
<span class="badge {% if record.balance < 0 %} badge-danger {% else %} badge-primary {% endif %} badge-pill">
{{ record.balance|intcomma:False }}
</span>
</div>
{% endif %}
</li>
{% endfor %}
</ul>
{% else %}
<p>{{ _("There is currently no data.")|force_escape }}</p>
{% endif %}
{% endblock %}