from django import forms from common.forms import DepartmentSelectionForm from .models import * class EmployeeInformationForm(forms.ModelForm): class Meta: model = EmployeeInformation fields = [field.name for field in EmployeeInformation._meta.fields if field.name not in ['resignation_type', 'resignation_reason', 'resignation_date']] widgets = { 'birthday': forms.DateInput(attrs={'type': 'date'}), 'entry_date': forms.DateInput(attrs={'type': 'date'}), 'regularization_date': forms.DateInput(attrs={'type': 'date'}), 'departure_date': forms.DateInput(attrs={'type': 'date'}), 'contract_end_date': forms.DateInput(attrs={'type': 'date'}), } class EmployeeInformationAddForm(DepartmentSelectionForm, forms.ModelForm): class Meta: model = EmployeeInformation fields = [field.name for field in EmployeeInformation._meta.fields if field.name not in ['resignation_type', 'resignation_reason', 'resignation_date']] widgets = { 'birthday': forms.DateInput(attrs={'type': 'date'}), 'entry_date': forms.DateInput(attrs={'type': 'date'}), 'regularization_date': forms.DateInput(attrs={'type': 'date'}), 'departure_date': forms.DateInput(attrs={'type': 'date'}), 'contract_end_date': forms.DateInput(attrs={'type': 'date'}), 'resignation_date': forms.DateInput(attrs={'type': 'date'}), 'base_salary': forms.NumberInput() } class EmployeeInformationEditForm(DepartmentSelectionForm, forms.ModelForm): class Meta: model = EmployeeInformation fields = '__all__' widgets = { 'birthday': forms.DateInput(attrs={'type': 'date'}), 'entry_date': forms.DateInput(attrs={'type': 'date'}), 'regularization_date': forms.DateInput(attrs={'type': 'date'}), 'departure_date': forms.DateInput(attrs={'type': 'date'}), 'contract_end_date': forms.DateInput(attrs={'type': 'date'}), 'resignation_date': forms.DateInput(attrs={'type': 'date'}), 'base_salary': forms.NumberInput() } class EmployeeAttendanceRecordForm(forms.ModelForm): class Meta: model = EmployeeAttendanceRecord fields = '__all__' widgets = { 'year_month': forms.DateInput(attrs={'type': 'month'}), 'late': forms.NumberInput(), 'early_leave': forms.NumberInput(), 'absenteeism': forms.NumberInput(), 'annual_leave': forms.NumberInput(), 'personal_leave': forms.NumberInput(), 'sick_leave': forms.NumberInput(), 'other_leave_details_id': forms.NumberInput(), } class OtherLeaveDetailsForm(forms.ModelForm): class Meta: model = OtherLeaveDetails fields = '__all__' widgets = { 'description': forms.Textarea(attrs={'rows': 3}), } class AnnualLeaveRecordForm(forms.ModelForm): class Meta: model = AnnualLeaveRecord fields = '__all__' widgets = { 'year': forms.NumberInput(), 'total_annual_leave': forms.NumberInput(), 'used_annual_leave': forms.NumberInput(), 'remaining_annual_leave': forms.NumberInput(), } class RankForm(forms.ModelForm): class Meta: model = Rank fields = '__all__' widgets = { 'rank_name': forms.TextInput(attrs={'class': 'form-control'}), 'rank_description': forms.Textarea(attrs={'class': 'form-control', 'rows': 3}), } class PositionForm(forms.ModelForm): class Meta: model = Position fields = '__all__' widgets = { 'position_name': forms.TextInput(attrs={'class': 'form-control'}), 'position_description': forms.Textarea(attrs={'class': 'form-control', 'rows': 3}), } class PerformanceEvaluationForm(forms.ModelForm): class Meta: model = PerformanceEvaluation fields = '__all__' class PerformanceEvaluationAddForm(forms.ModelForm): class Meta: model = PerformanceEvaluation fields = '__all__'