[UPDT] LEAVE: Updated leave type admin site register
This commit is contained in:
@@ -7,6 +7,8 @@ from django.apps import apps
|
||||
from django.contrib import admin
|
||||
from simple_history.admin import SimpleHistoryAdmin
|
||||
|
||||
from leave.forms import LeaveTypeAdminForm
|
||||
|
||||
from .models import (
|
||||
AvailableLeave,
|
||||
LeaveAllocationRequest,
|
||||
@@ -19,8 +21,13 @@ from .models import (
|
||||
RestrictLeave,
|
||||
)
|
||||
|
||||
|
||||
class LeaveTypeAdmin(admin.ModelAdmin):
|
||||
form = LeaveTypeAdminForm
|
||||
|
||||
|
||||
# Register your models here.
|
||||
admin.site.register(LeaveType)
|
||||
admin.site.register(LeaveType, LeaveTypeAdmin)
|
||||
admin.site.register(LeaveRequest)
|
||||
admin.site.register(AvailableLeave)
|
||||
admin.site.register(LeaveAllocationRequest, SimpleHistoryAdmin)
|
||||
|
||||
@@ -10,6 +10,7 @@ from typing import Any
|
||||
|
||||
from django import forms
|
||||
from django.apps import apps
|
||||
from django.contrib.admin.widgets import RelatedFieldWidgetWrapper
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.db.models import Q
|
||||
from django.forms.widgets import TextInput
|
||||
@@ -92,6 +93,22 @@ class ConditionForm(forms.ModelForm):
|
||||
pass
|
||||
|
||||
|
||||
class LeaveTypeAdminForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = LeaveType
|
||||
fields = "__all__"
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
if f := self.fields.get("company_id"):
|
||||
from horilla_widgets.forms import default_select_option_template
|
||||
|
||||
w = getattr(f.widget, "widget", f.widget)
|
||||
if isinstance(w, forms.Select):
|
||||
w.option_template_name = default_select_option_template
|
||||
|
||||
|
||||
class LeaveTypeForm(ConditionForm):
|
||||
|
||||
employee_id = HorillaMultiSelectField(
|
||||
|
||||
@@ -240,7 +240,7 @@ class LeaveType(HorillaModel):
|
||||
)
|
||||
is_compensatory_leave = models.BooleanField(default=False)
|
||||
company_id = models.ForeignKey(
|
||||
Company, null=True, editable=False, on_delete=models.PROTECT
|
||||
Company, null=True, blank=True, on_delete=models.PROTECT
|
||||
)
|
||||
objects = HorillaCompanyManager(related_company_field="company_id")
|
||||
|
||||
|
||||
@@ -23,23 +23,23 @@
|
||||
<div class="oh-scrollable-container oh-wrapper mb-3">
|
||||
<div class="oh-layout--grid-3 mt-2 mb-2">
|
||||
{% for user_leave in user_leaves %}
|
||||
<div class="oh-kanban-card" id="requestCreateCard" data-toggle="oh-modal-toggle" data-target="#objectCreateModal"
|
||||
hx-get="{% url 'user-request' user_leave.leave_type_id.id %}" hx-target="#objectCreateModalTarget">
|
||||
<div class="oh-kanban-card__avatar">
|
||||
<div class="oh-kanban-card__profile-container">
|
||||
<img src="{{user_leave.leave_type_id.get_avatar }}" class="oh-kanban-card__profile-image"
|
||||
alt="Leave Icon" />
|
||||
<div class="oh-kanban-card" id="requestCreateCard" data-toggle="oh-modal-toggle" data-target="#objectCreateModal"
|
||||
hx-get="{% url 'user-request' user_leave.leave_type_id.id %}" hx-target="#objectCreateModalTarget">
|
||||
<div class="oh-kanban-card__avatar">
|
||||
<div class="oh-kanban-card__profile-container">
|
||||
<img src="{{user_leave.leave_type_id.get_avatar }}" class="oh-kanban-card__profile-image"
|
||||
alt="Leave Icon" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="oh-kanban-card__details mt-2">
|
||||
<span class="oh-kanban-card__title">{{user_leave.leave_type_id|truncatechars:20}}</span>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Available Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.available_days}} {% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Carryforward Leave Days" %} :
|
||||
{{user_leave.carryforward_days}}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.total_leave_days}}{% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave taken" %} :{{user_leave.leave_taken}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="oh-kanban-card__details mt-2">
|
||||
<span class="oh-kanban-card__title">{{user_leave.leave_type_id|truncatechars:20}}</span>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Available Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.available_days}} {% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Carryforward Leave Days" %} :
|
||||
{{user_leave.carryforward_days}}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.total_leave_days}}{% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave taken" %} :{{user_leave.leave_taken}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user