Profit Ops Patch 2.1.16 has been released to the live environment. This document includes all changes made for the patch cycle ending 10-21-2024.
[Include special announcements or instructions here if needed.]
Global Changes
[Maintenace] DB dump update #699
This ensures database is up to date between different branches or versions and that all tables are communicating correctly.
[Maintenance] Fix npm #718
Update
package-lock.json
with new project nameChanged the project name from 'nos' to 'nos_v2' in
package-lock.json
This update aligns with the new versioning scheme for the project. No other changes were made in the file.
Add resolved URLs and integrity hashes to
package-lock.json
This commit updates the
package-lock.json
file to include resolved URLs and integrity hashes for various dependencies.Additionally, it updates several dependencies to new versions, ensuring security and integrity of the packages used in the project.
[Maintenance] Replace mysql with mariadb connection #720
We switched our database engine from mysqu to mariadb in a past update.
This task was to finish cleaning up some old connections in the backend code.
Schedule Module
Projects Module
[Bugfix] HBK-95: Pressing the back button on the browser doesn't go back to projects. #698
Fixed an issue where the browser back button doesn’t correctly return to the previous project page.
[Enhancement] HBK-90: Show the selected filtered items on the top of the list in a filter box #696
Items selected on a UI attribute filter drop down are now sorted together on the drop down for easy reference.
Added warning text if a filter has no applicable matches.
Fixed some edge case issues with the “select all” and “clear all” options.
[Bugfix] HBK-89: It's possible to add the same Service more than once #719
Fixed an issue where users were selecting the save button more than once on bad connections, causing their last request to be repeated.
This could duplicate new service creation events, circumventing validations that normally prevent it.
Once created, users could not delete the duplicated services, required a manual backend database edit.
Implemented a loading state for project save buttons that will disable them after a click event and wait until the server confirms the last event was correctly received.
[Enhancement] Prompt user before deleting a location from gallon count. #708
Prompt the user before deleting a location, where previously no warning was given.
This prevents some issues where users could accidentally delete a location while trying to update fields.
Align prompt action buttons to the center on mobile.
Work Orders
[Hotfix] Applied a quick temporary fix for issues with the print WO process. #804
[Bugfix] Stopped client frontend from sending id to server, confirm before canceling new. #723
Remove local IDs on clients before sending new location details to the server.
This is a general security improvement, closing an avenue for a possible attacker to compromise data integrity.
Manpower Module - BETA
Manpower Schedule
Manpower Crew
[Enhancement] HBK-77: List all Crews #714
Manpower Crew list view and related basic implementation.
This forms the foundation of the Manpower Crew page on which all other features are built.
[Feature] HBK-74: Create a crew #703
Crew can be created without a sub-region area or yard but must have a region.
Preset crews can now be created and saved for use on manpower assign.
Crews have active dates and are available based on location.
[Feature] HBK-75: Edit a crew #709
Existing preset crews can be updated as necessary to reflect changed in crew location or roster.
Filters and validation checks have been implemented to ensure data integrity and ease of use.
Filter supervisors, foremen, members, and Sub Regions by Region
Filter foremen and members by Yard
Validate supervisor by Region
Validate foreman by Region and Yard
Validate members by Region, Yard, and Date Range overlapping with other crew
Filter Yards by SubRegions and Regions
[Feature] HBK-76: Inactivate a crew #711
Crew can be inactivated when needed, or automatically using date selection.
Crews are automatically deactivated at the end of their active date range.
Crews can be manually deactivated as needed at any time.
When crew are inactivated, users are warned of the effects and asked to confirm.
Inactive crew no longer appear as selectable on manpower assign for future work orders.
Active crew assignments are unaffected.
[Maintence] HBK-105: Install and config horizon #713
This backend utility provides additional functions that help manage preset crew information.
Helps make the activity and inactivity systems work correctly.
Manpower Assign
[Feature] HBK-78: Assign Crew with a Created Crew #712
Preset crew can be assigned using the crew select drop down at the top left of each card.
Available crews are listed on the drop down when selected.
Choosing a crew assigns all members of that crew with a single click.
Any existing assignments are removed and replaced with a selected preset crew.
[Enhancement] HBK-91: Change UI aspects of the filter boxes #695
Adjustments to colors and spacing,
Improvements to dropdown size and positioning.
Adjustments to style behavior when opened and selected.
[Feature] HBK-46: Update the card Layout - Manpower/Assign #706
Streamlined some aspects of the cards to better accommodate click and drag functionality.
All card elements are now arranged on a preset grid chart layout.
Sizing and spacing altered for better readability, larger text and bounding boxes.
[Enhancement] HBK-73: Show created work order #716
Updates and improvements to the backend code that displays work orders on manpower assign.
remove unused routes and controller actions
rename work orders prop
fix date type warning
fix non existent search var warning
rename work orders prop
handle date change
replace visit with replace
use visit with replace
fix date object type
[Enhancement] HBK-107: Correct the subregion in the pm checkout filter #724
Fixed sub region filter to load data from
job_area
table.Related improvements to the database and automated tests.
Adjust test after replace yard filter by sub region.
Rename location relation to yard.
PM CheckOut
[Enhancement] HBK-87: Update the calendar in PM Check Out #704
Attribute filters will now apply across all days displayed, instead of being restricted to one day at a time.
Multiple improvements and adjustments to calendar backend code.
fix warn invalid prop type
remove unnecessary filter date
remove unnecessary ref
ensure omit non-datepicker attrs
remove hidden class to allow show datepicker dropdown
allow set a trigger
adds datepicker
disable time picker
management the days of week range
ensure doesn't emit event when date already in selected dates array
fix retrieve index of date in array
update the query date and adds order by
change params to accept an array od dates
ensure set selected dates from url params after reload page
ensure sort dates from url before try set week range
Customers Module
Contacts Module
Subcontractors Module
Fleet/Equipment Module
HR Self Service
HR Employee Handbook
HR Employment Opportunities
HR Refer an Employee
HR Paylocity
HR DocuSign
HR Aetna
HR Training Videos
TimeCard Approval Module
[Bugfix] Fixed an issue that was causing certain time entries to impossible to view. #721
Improve null safety and formatting in
TCASingleItem.vue
Integrated optional chaining and default values to prevent runtime errors when
tca.trip
properties are null.Fixed various instances of misplaced commas to enhance code readability and maintain consistency.
HR
Employees
[Enhancement] Edit Time Entry Permissions #795
Remove unnecessary disabled attribute check
The
:disabled
attribute on theComboboxInput
component was removed since it duplicated the logic handled elsewhere.This simplifies the code by eliminating redundancy and ensures that the form's edit state is consistently managed.
Refined the search API to allow limiting by date and added a permission for editing time entries.
Updated the API endpoint to allow filtering work orders by the 'time entry in' date.
Modified the frontend to include the 'time entry in' parameter in the API request and adjusted the backend to handle this new parameter for more precise data retrieval.
Cleaned up whitespace in route definitions for consistency.
Add edit-time-entry permission control
Introduced a new permission for editing time entries in the database.
Updated
TimeCardTableRow.vue
to conditionally display theAddEntryModal
based on the user's permissions.
Reports
Personal TimeCard Module
Announcements Module
Finance Module
Billing
By Project
Reports Module
Settings Module
Travel/MOB Module
Calendar Module
Performance Module
Inventory Module
Miscellaneous Items
Credits & Acknowledgements
Code Contributors:
@corydemille
@pemeraldy
@devsquad-pedro-silva
@devsquad-denisbeder-carvalho
Patch Notes Transcribed By:
Jason M Callahan