dainsys / human_resource
A full stack package to add human_resource functionality to Laravel applications.
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/dainsys/human_resource
Requires
- asantibanez/livewire-charts: ^2.4
- cviebrock/eloquent-sluggable: ^8.0
- dainsys/mailing: ^1.0
- illuminate/support: ^8.0|9.0
- laravel/ui: ^3.0|4.0
- livewire/livewire: ^2.10
- maatwebsite/excel: ^3.1|4.0
- php-flasher/flasher-laravel: ^1.7
- rappasoft/laravel-livewire-tables: ^2.8
Requires (Dev)
- nunomaduro/collision: v5.x-dev
- orchestra/testbench: 6.x-dev
- phpunit/php-code-coverage: 9.2.x-dev
README
A full stack package to add human_resource functionality to Laravel applications.
Features
- Events
- Email is sent when employee is created
- Email is sent when employee is terminated
- Email is sent when employee is reactivated
- Email is sent when employee is suspended
- Schedulled commands
- Daily at 3:00 am will check if a employee status needs to be changed based on wether or not it has an active suspension.
- Daily at 4:00 it will send an email with any active employee having birthday today.
- Montly at 4:00 on the 1st it will send emails with employees having birthdays this month and last month. Also on the 25th of each month it will send emails with employees having birthday next month.
- Daily report with the employees missing any information, such as supervisor, other data, afp, ars, etc.
- Dashboard
- Visit your
/hr/admin/dashboardto view all stats, such as Current Count, Suspended, MTD Attrition, Issues, Monthly Head Count, Monthly attrition and splits by different categories. You can also filter all stats by site using the Filter floating window in the UI, located at the bottom of the page.
- Visit your
- Automatic Employee Status
- The application does not give you the option to update employee status by your self. However, it is updated based on different events happening with the employee:
- When an employee is created, the status will automatically change to
Current. - When a suspension is added for the employee, it will check if the current date is within the range provided. If so, it will change the status to
Suspended. It will automatically revert toCurrentonce all suspensions are dued. - When an employee is terminated, it will automatically change its status to
Inactive. - If you reactivate the employee, it's status will revert to
Current.
- When an employee is created, the status will automatically change to
- The application does not give you the option to update employee status by your self. However, it is updated based on different events happening with the employee:
Installation
- Require using composer:
composer require dainsys/human_resource. - Use the
php artisan human_resource:installcommand, which will publish the assets and ask some configuration questions.- optionally, you can add the following line to your
composerfile, under thescriptsandpost-update-cmdkey, to publish the assets every time you update your composer dependencies:@php artisan vendor:publish --tag=human_resource:assets --force --ansi.
- optionally, you can add the following line to your
- Run the migrations:
php artisan migrate.- If you may want to customize the migrations before this step, first publish them:
@php artisan vendor:publish --force --tag=human_resource:migrations.
- If you may want to customize the migrations before this step, first publish them:
- This app requires super admin users. You can register them with any of the following steps:
- In the
registermethod of yourAppServiceProvideradd the following line:\Dainsys\HumanResource\HumanResource::registerSuperUsers(["super@user1.com", "super@user2.com"]);. - In your
.envfile, add the following line with list of users who should have super_admin access:HUMAN_RESOURCE_SUPER_USERS= some@email.com,another@email.com
- In the
- Optionally,:
- ou may want to publish and tweek the config file:
@php artisan vendor:publish --force --tag=human_resource:config. - This package has its own views, designed with livewire and CoreUi. However, if you may want to change them then you can publish them with
@php artisan vendor:publish --force --tag=human_resource:views. - Package views extend it's own layout app. However, you can change this by adding the key
INVOICE_LAYOUT_VIEWto your.envfile. Or, change it directly in thehuman_resourceconfig file, under thelayoutkey.
- ou may want to publish and tweek the config file:
Configure your application
- Visit route
/hr/adminto view the dashboard and visit various app links to prepare your sistem. - This package extends the
dainsys/mailingpackage to report events and scheduled taks, so please complete the followint two steps:- Visit the
/mailing/admin/recipientsend point and add the different recipients of you application. - Visit the
/mailing/admin/mailablesto add all of your mailables and assign them with your recipients.
- Visit the