| Server IP : 65.108.144.40 / Your IP : 216.73.217.165 Web Server : Apache/2.4.52 (Ubuntu) System : Linux ubuntu-8gb-hel1-1 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64 User : dev ( 1000) PHP Version : 8.2.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/erp/employee/__pycache__/ |
Upload File : |
o
hͦh�� � @ s d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z mZm
Z
ddlmZ ddl
ZddlmZ ddlmZ ddlmZ ddlmZ dd lmZ dd
lmZmZ ddlmZmZ ddlm Z dd
l!m"Z"m#Z# ddl$m%Z%m&Z&m'Z'm(Z( ddl)m*Z*m+Z+m,Z, ddl-m.Z. ddl/m0Z0 ddl1m2Z3 ddl1m4Z5 ddl6m7Z7 ddl8m9Z9 ddl:m;Z; ddl<m=Z= ddl>m?Z? ddl@mAZA ddlBmCZCmDZDmEZEmFZFmGZGmHZH ddlImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZV ddlWmXZXmYZYmZZZ ddl[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZh ddlimjZjmkZkmlZlmmZmmnZnmoZompZpmqZqmrZrmsZsmtZtmuZu ddlvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~ dd lm�Z�m�Z�m�Z�m�Z�m�Z�m�Z� dd!l�m�Z� dd"l�m�Z� dd#l�m�Z� dd$l�m�Z� dd%l�m�Z�m�Z� dd&l�m�Z�m�Z�m�Z�m�Z� dd'l�m�Z�m�Z� dd(l�m�Z� d)d*� Z�ej�ej�ej�ej�ej�ej�ej�e�d+�Z�d,d-d.� id,d/d.� id,d0d.� id,d1d.� id2�Z�d3d4� Z�e�d5d6� �Z�e�d7d8� �Z�e�e9d9d:d;�d<d=� ��Z�d>d?� Z�e�e9d@dAe�dB�dCdD� ��Z�e�e�dEdF� ��Z�e�e�e�dGex�dHdI� ���Z�e�e�dJ�dKdL� ��Z�e�e�e�dJ�dMdN� ���Z�e�e�e�dO�dPdQ� ���Z�e�e�e�dR�dSdT� ���Z�e�e�e�dUex�dVdW� ���Z�e�e�e�dXex�dYdZ� ���Z�e�d[d\� �Z�e�e�d]d^� ��Z�e�e�d_d`� ��Z�e�e�dadb� ��Z�dcdd� Z�e�e�e�dX�dedf� ���Z�e�e�e�dX�dgdh� ���Z�e�e�dX�didj� ��Z�e�e�dX�dkdl� ��Z�e�e7dmg�dndo� ��Z�e�e�dp�dqdr� ��Z�e�e�ds�e7dmg�dtdu� ���Z�dvdw� Z�e�e9dxdAe�dB�dydx� ��Z�e�e�d:�dzd{� ��Z�e�e�d:�d|d}� ��Z�e�e�d:�d~d� ��Z�e�e�d��d�d�� ��Z�e�e�d:�d�d�� ��Z�e�e7dmg�e�d:�d�d�� ���Z�e�e7dmg�d�d�� ��Z�e�e7d�g�e�d:�d�d�� ���Z�e�e7d�g�d�d�� ��Z�e�e�d:�e7dmg��dd�d�����Z�e�e�d��e7dmg��dd�d�����Z�e�e�d��e7dmg��dd�d�����Z�e�e�e9dxdAe�dB�d�d�� ���Z�e�e�dA�e�d�d�� ���Z�e�e�dA�e�d�d�� ���Z�e�e�e�dA�d�d�� ���Z�e�e�d��e7dmg�d�d�� ���Z�e�e�d��d�d�� ��Z�e�e�d��e7dmg�d�d�� ���Z�e�e�e�d��d�d�� ���Z�e�e�d:�d�d�� ��Z�e�e�dA�d�d�� ��Z�e�e9dxdAe�dB�d�d�� ��Z�e�e�d��e7dmg�d�d�� ���Z�e�e�d��e7dmg�d�d�� ���Z�e�e�d��e7dmg�d�d�� ���Z�e�e�d��e7dmg�d�d�� ���Z�e�e�d��e7dmd�g�d�d�� ���Z�e�e�d��d�d�� ��Z�e�e�d��d�d�� ��Z�d�d�� Zse�e�d��d�d�� ��Z�e�e�dA�d�dÄ ��Z�d�dń Z�e�d�dDŽ �Z�e�e�dA�d�dɄ ��Z�e�d�d˄ �Z�e�d�d̈́ �Z�e�d�dτ �Z�e�d�dф �Z�e�d�dӄ �Z�e�d�dՄ �Z�e�d�dׄ �Z�e�d�dل �Z�e�e�dA�d�dۄ ��Z�e�e�e�d�dݍd�d߄ ���Z�e�e�e�d�dݍ�dd�d����Z�e�e�d�dݍd�d� ��Z�e�e�d�dݍd�d� ��Z�e�e�e�d�dݍd�d� ���Z�e�e�e�d�dݍd�d� ���Z�e�e�e�d�ex�d�d� ���Z�e�e�d�dݍd�d� ��Z�e�e�d�ex�d�d�� ��Z�e�d�d�� �Z�e�e�d��d�d�� ��Z�e�e�d��d�d�� ��Z�e�e�dA�d��d � ��Z�e�e�e�dA��d�d� ���Z�e��d�d� �Z�e��d�d� �Z�e�e��d��d�d � ��Z�e�e�e��d
��d�d� ���Z�e�e�e��d
��d
�d� ���Z�dS ( a�
views.py
This module contains the view functions for handling HTTP requests and rendering
responses in your application.
Each view function corresponds to a specific URL route and performs the necessary
actions to handle the request, process data, and generate a response.
This module is part of the recruitment project and is intended to
provide the main entry points for interacting with the application's functionality.
� N)�date�datetime� timedelta)�parse_qs)�apps)�settings)�messages)�User)�cache)�models�transaction)�F�ProtectedError)�QuerySet)� DateInput�Select)�HttpResponse�HttpResponseRedirect�JsonResponse� QueryDict)�get_object_or_404�redirect�render)�reverse)�timezone)�gettext)�gettext_lazy)�require_http_methods)�enter_if_accessible)�#update_employee_accessibility_cache)�ACCESSIBILITY_CACHE_USER_KEYS)�DefaultAccessibility)� ModelForm)�choosesubordinates�filtersubordinates�filtersubordinatesemployeemodel�get_key_instances�get_pagination�sortby)
�Company�
Department�EmailLog�
EmployeeShift�EmployeeType�JobPosition�JobRole�RotatingShiftAssign�RotatingWorkTypeAssign�ShiftRequest�WorkType�WorkTypeRequest�clear_messages)�DocumentRequestFilter�EmployeeFilter�EmployeeReGroup)
�BonusPointAddForm�BonusPointRedeemForm�BulkUpdateFieldForm�EmployeeBankDetailsForm�EmployeeBankDetailsUpdateForm�EmployeeExportExcelForm�EmployeeForm� EmployeeGeneralSettingPrefixForm�EmployeeNoteForm�EmployeeTagForm�EmployeeWorkInformationForm�!EmployeeWorkInformationUpdateForm�
excel_columns)�bulk_create_department_import�bulk_create_employee_import�bulk_create_employee_types�bulk_create_job_position_import�bulk_create_job_role_import�bulk_create_shifts�bulk_create_user_import�bulk_create_work_info_import�bulk_create_work_types�convert_nan�get_ordered_badge_ids�set_initial_password)�
BonusPoint�Employee�EmployeeBankDetails�EmployeeGeneralSetting�EmployeeNote�EmployeeTag�EmployeeWorkInformation� NoteFiles)�hx_request_required�logger�login_required�manager_can_enter�owner_can_enter�permission_required)�HorillaPaginator)�group_by_queryset)�HORILLA_DATE_FORMATS)�get_horilla_model_class)�AccountBlockUnblock�HistoryTrackingFields)�DocumentForm�DocumentRejectForm�DocumentRequestForm�DocumentUpdateForm)�Document�DocumentRequest)�notifyc C s d S �N� )�a�brn rn �/var/www/erp/employee/views.py�return_none� s rr )�equal�notequal�lt�gt�le�ge� icontains�range�filterc C � | |j jdd�S )NT)�employee_id�work_type_id__id�attendance_validated)�work_type_id�id��employee� allowancern rn rq �<lambda>� � �r� c C r| )NT)r} �shift_id__idr )�shift_idr� r� rn rn rq r� � r� c C s | ddd�S )NT)r} �attendance_overtime_approver rn r� rn rn rq r� � s �c C s
| dd�S )NT)r} r rn r� rn rn rq r� � s �)r� r� �overtime�
attendancec C s | j j}|j�� S rm )�user�employee_get�reporting_manager�exists)�requestr� rn rn rq �_check_reporting_manager� s
r� c C s | j }td|i�S )z�
Retrieve the language code for the current request.
This view function extracts the LANGUAGE_CODE from the request object and
returns it as a JSON response. This function requires the user to be logged in.
�
language_code)�
LANGUAGE_CODEr )r� r� rn rn rq �get_language_code� s r� c C s, | j j}t�� }t�� }t| d|||d��S )z>
This method is used to view own profile of employee.
z"employee/profile/profile_view.html)r� �current_date�now)r� r� r �todayr r� r )r� r� r� r� rn rn rq �employee_profile� s ��r� �profile_edit�employee.change_employee)�feature�permc C s> | j }tjj|d��� }|j}ttjj|d��� d�}ttjj|d��� d�}| j r�| j �
d�duretjj| j d��� }t| j |d�}|�� rd|jdd�}||_
|jdu rX||_|�� t�| td�� n1| j �
d �dur�tjj|d��� }t| j |d�}|�� r�|jdd�}||_|�� t�| td
�� t| d||d��S )
zC
This method is used to update own profile of an employee.
��employee_user_id�r} ��instance�employee_first_nameNF��commit�Profile updated.�any_other_code1zBank details updated.zemployee/profile/profile.html)�form� bank_form)r� rS �objectsr{ �first�badge_idr<