Merge branch 'main' of http://10.10.1.136:3000/ismail/haikal into frontend
This commit is contained in:
commit
75f5874814
@ -21,8 +21,8 @@ def is_negative(value):
|
||||
try:
|
||||
return float(value) < 0
|
||||
except (ValueError, TypeError):
|
||||
return False
|
||||
|
||||
return False
|
||||
|
||||
@register.filter
|
||||
def get_percentage(value, total):
|
||||
try:
|
||||
@ -498,7 +498,7 @@ def bill_item_formset_table(context, item_formset):
|
||||
form.fields["item_model"].queryset = form.fields["item_model"].queryset.exclude(
|
||||
item_role="product"
|
||||
)
|
||||
for item in item_formset:
|
||||
for item in item_formset:
|
||||
if item:
|
||||
print(item.fields["item_model"])
|
||||
item.initial["quantity"] = item.instance.po_quantity if item.instance.po_quantity else item.instance.quantity
|
||||
@ -710,3 +710,13 @@ def invoice_item_formset_table(context, itemtxs_formset):
|
||||
"total_amount__sum": context["total_amount__sum"],
|
||||
"itemtxs_formset": itemtxs_formset,
|
||||
}
|
||||
|
||||
|
||||
@register.filter
|
||||
def filter_by_status(queryset, status):
|
||||
if status == "active":
|
||||
return queryset.filter(active=True)
|
||||
elif status == "locked":
|
||||
return queryset.filter(locked=True)
|
||||
else:
|
||||
return queryset
|
||||
|
||||
@ -4360,7 +4360,7 @@ class AccountListView(LoginRequiredMixin, PermissionRequiredMixin, ListView):
|
||||
def get_queryset(self):
|
||||
query = self.request.GET.get("q")
|
||||
dealer = get_user_type(self.request)
|
||||
coa = ChartOfAccountModel.objects.get(entity=dealer.entity,pk=self.kwargs["coa_pk"]) or self.request.entity.get_default_coa()
|
||||
coa = ChartOfAccountModel.objects.get(entity=dealer.entity,pk=self.kwargs["coa_pk"]) or self.request.entity.get_default_coa()
|
||||
accounts = coa.get_coa_accounts()
|
||||
return apply_search_filters(accounts, query)
|
||||
def get_context_data(self, **kwargs):
|
||||
@ -4411,18 +4411,8 @@ class AccountCreateView(
|
||||
permission_required = ["django_ledger.add_accountmodel"]
|
||||
|
||||
def form_valid(self, form):
|
||||
dealer = get_user_type(self.request)
|
||||
instance = form.save(commit=False)
|
||||
dealer = get_user_type(self.request)
|
||||
coa = ChartOfAccountModel.objects.get(entity=dealer.entity,pk=self.kwargs["coa_pk"]) or self.request.entity.get_default_coa()
|
||||
# coa.insert_account(account_model=instance)
|
||||
account = coa.entity.create_account(
|
||||
coa_model=coa,
|
||||
code=instance.code,
|
||||
name=instance.name,
|
||||
role=instance.role,
|
||||
balance_type=_(instance.balance_type),
|
||||
active=True,
|
||||
)
|
||||
form.instance.entity_model = dealer.entity
|
||||
form.instance.coa_model = coa
|
||||
form.instance.depth = 0
|
||||
@ -4450,13 +4440,13 @@ class AccountCreateView(
|
||||
def get_context_data(self,**kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
context["url_kwargs"] = self.kwargs
|
||||
coa_pk = context["url_kwargs"]["coa_pk"]
|
||||
coa_pk = context["url_kwargs"]["coa_pk"]
|
||||
try:
|
||||
context["coa_model"] = ChartOfAccountModel.objects.get(entity=self.request.entity,pk=coa_pk)
|
||||
except Exception:
|
||||
context["coa_model"] = self.request.entity.get_default_coa()
|
||||
return context
|
||||
|
||||
|
||||
class AccountDetailView(LoginRequiredMixin, PermissionRequiredMixin, DetailView):
|
||||
"""
|
||||
Represents the detailed view for an account with additional context data related to account
|
||||
@ -4555,11 +4545,11 @@ class AccountUpdateView(
|
||||
form.fields["_ref_node_id"].widget = HiddenInput()
|
||||
form.fields["_position"].widget = HiddenInput()
|
||||
return form
|
||||
|
||||
|
||||
def form_valid(self, form):
|
||||
form.instance.coa_model = ChartOfAccountModel.objects.get(pk=self.kwargs['coa_pk']) or self.request.entity.get_default_coa()
|
||||
return super().form_valid(form)
|
||||
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse_lazy(
|
||||
"account_list", kwargs={"dealer_slug": self.kwargs["dealer_slug"],"coa_pk":self.kwargs["coa_pk"]}
|
||||
@ -11454,7 +11444,7 @@ def staff_password_reset_view(request, dealer_slug, user_pk):
|
||||
|
||||
if request.method == 'POST':
|
||||
form = forms.CustomSetPasswordForm(staff.user, request.POST)
|
||||
|
||||
|
||||
if form.is_valid():
|
||||
print(form.cleaned_data['new_password1'])
|
||||
print(form.cleaned_data['new_password2'])
|
||||
@ -11703,7 +11693,7 @@ def ticket_update(request, ticket_id):
|
||||
# permission_required = 'django_ledger.view_chartofaccountmodel'
|
||||
class ChartOfAccountModelCreateView(ChartOfAccountModelCreateViewBase):
|
||||
template_name = 'chart_of_accounts/coa_create.html'
|
||||
permission_required = 'django_ledger.add_chartofaccountmodel'
|
||||
permission_required = 'django_ledger.add_chartofaccountmodel'
|
||||
class ChartOfAccountModelListView(ChartOfAccountModelListViewBase):
|
||||
template_name = 'chart_of_accounts/coa_list.html'
|
||||
permission_required = 'django_ledger.view_chartofaccountmodel'
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
{% load django_ledger %}
|
||||
{% load custom_filters %}
|
||||
{% load i18n %}
|
||||
{% now "Y" as current_year %}
|
||||
<div class="card shadow-sm border-0 mb-4">
|
||||
@ -47,15 +48,15 @@
|
||||
<div class="col-sm-6">
|
||||
<div class="mb-2">
|
||||
<span class="fw-bold"><i class="fas fa-list-alt me-1"></i> {% trans 'Total Accounts' %}:</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_total__count }}</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_set.all|length }}</span>
|
||||
</div>
|
||||
<div class="mb-2">
|
||||
<span class="fw-bold text-info"><i class="fas fa-check-circle me-1"></i> {% trans 'Active Accounts' %}:</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_active__count }}</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_set|filter_by_status:'active'|length }}</span>
|
||||
</div>
|
||||
<div class="mb-2">
|
||||
<span class="fw-bold text-danger"><i class="fas fa-lock me-1"></i> {% trans 'Locked Accounts' %}:</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_locked__count }}</span>
|
||||
<span class="ms-2">{{ coa_model.accountmodel_set|filter_by_status:'locked'|length }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user