www.hubleto.eu Reddit User Guide Stack Overflow LinkedIn Community Report an issue

HR Community Apps

Following set of prompts was used to generate first version of all HR* community apps.

Prompt 1

Read https://developer.hubleto.eu/v2
Read `src/apps` folder and learn how models, record managers, views, controllers and app loader are created.
Research functionality implemented in modern human resources management CRM systems.
Do not duplicate models and controllers in existing apps in `src/apps` folder, but o the best to integrate these features to new apps. For example, integrate calendar.
Create apps that cover human resources functionality.
All new apps names must start with `Hr`.

Prompt 2

add first migrations to all models in hr* apps

Prompt 3

add describeTable() and describeForm() to each model in hr* apps

Prompt 4

create Form tsx component for each model in hr* apps

Prompt 5

add renderSecondSidebar() into Loader of each hr* app

Prompt 6

remove "app-main-title" and "nav" from all views in hr* apps

Prompt 7

remove description ui title from all describeTable() in all hr* apps

Prompt 8

Research what sidebar badge numbers are reasonable and add Counter class service and getSidebarBadgeNumber() to all hr* apps.

Prompt 9

Read `src/apps` to learn how integration with `Workflows` app works.
A model needs to have `id_workflow` and `id_workflow_step` columns.
A workflow must be integrated using `$workflowManager->addWorkflowGroup` in app's Loader.
Create workflow groups and integrate models with workflow where appropriate in all hr* apps.
Update Models and RecordManagers. Create second Migration for each model.

Prompt 10

modify Workflow Loader installApp() and include recordCreate for all workflows and steps in all hr* apps

Prompt 11

create generateDemoData() in Loader classes of all hr* apps with relevant demo data for each app

Prompt 12

add all hr* apps into CommandInit packages into group 'human-resources'

Prompt 13

add more generateDemoData() in Loader classes of all hr* apps with relevant demo data for each app

Prompt 14

In HrEmployees app convert `Employment status`, `Employment type` and `Work location` to Lookup columns.
Add for each new Lookup column: Model, RecordManager, Migration.
Include each new column in Loader installApp().
Modify generateDemoData() to include each new column.
Add Table and Form tsx components for each new model.
Add buttons in renderSecondSidebar() for each new Model.

Prompt 15

In HrRecruitment JobOpenings convert `Opened`, `Employment type` and `Work location` to Lookup columns.
In HrRecruitment Applications remove `Stage` and `Status`.
In HrLeave Requests remove `Status`.
In HrAttendance Records remove `Status`.
Add for each new Lookup column: Model, RecordManager, Migration.
Include each new column in Loader installApp().
Modify generateDemoData() to include each new column.
Add Table and Form tsx components for each new model.
Add buttons in renderSecondSidebar() for each new Model.