| 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/payroll/__pycache__/ |
Upload File : |
o
hͦhF � @ s� d Z ddlZddlZddlmZmZ ddlmZ ddlm Z ddl
mZmZ ddl
mZ dd lmZmZ d
d� Zdd
� Zdd� Zdd� Zedd� dD ��sfe� Zejeddd� ejeddd� e�� dS dS )z?
scheduler.py
This module is used to register scheduled tasks
� N)�date� timedelta)�BackgroundScheduler)�
relativedelta)�calculate_employer_contribution�save_payslip)�payroll_calculation� )�Contract�Payslipc C s t jjdt�� d�jdd� dS )z
Finds all active contracts whose end date is earlier than the current date
and updates their status to "expired".
�active)�contract_status�contract_end_date__lt�expired)r
N)r
�objects�filterr �today�update� r r �!/var/www/erp/payroll/scheduler.py�expire_contract s ��r c C s� ddl m} | } |j�� }|dkr||jjdd�B }|r*|D ]}||jj|d�B }q|jddd�}|�� }| td d
� }| td d� }|D ]�} tjj| ||d�� � }
|
rUqEt
jj| dd
�� � }||jk reqE||jk rm|j}t| ||�}|
|d<