Skip to content

Work Instruction Editing Backend Logic Overhaul, DTOs for the Phoebe Work Instruction Editor#151

Merged
EyeBrawler merged 27 commits intomainfrom
work-instruction-dto
Mar 3, 2026
Merged

Work Instruction Editing Backend Logic Overhaul, DTOs for the Phoebe Work Instruction Editor#151
EyeBrawler merged 27 commits intomainfrom
work-instruction-dto

Conversation

@EyeBrawler
Copy link
Copy Markdown
Collaborator

Bug Fixes

This pull request features a complete refactor of the Phoebe Work Instruction Editor to utilize data transfer objects (DTOs).
It also includes a complete rewrite of work instruction updating logic, which should be much more robust and less error prone.

No database migrations are required.

* Removal based on the logic that summary DTOs should not be used to create entities.
…estSummariesAsync, GetFormByIdAsync, and DeleteNodesAsync (that accepts ids).
…Node File DTOs. Calls are made to child mapper methods.
…ames and numbers together for export with the PartNodeFileDTO
* Some bugs are present, such as products not keeping there associations.
* This commit integrates various DTOs into the codebase such as the WorkInstructionFormDTO, the WorkInstructionSummaryDTO, and the ProductDetailDTO.
* Import and export now uses the WorkInstructionFileDTO and import no longer saves the work instruction to the database, only loads it in memory.
…rt Definitions. These fixes will be made obsolete with DTOs here in the future.
…FormDTOs for Code Clarity. ToEntity() does indeed make a new entity, which can cause tracking issues on update.
…ired on Initialization. Should help mitigate EF tracking issues.
…ructionUpdater Class (utilizing dependency injection). Should fix many of the work instruction save errors.
… WorkInstructionService and WorkInstructionEditorService tests.
@EyeBrawler EyeBrawler merged commit 0c3bfd4 into main Mar 3, 2026
1 check passed
@EyeBrawler EyeBrawler deleted the work-instruction-dto branch March 3, 2026 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant