feat(assets): ITIL category + lifecycle stage pickers on asset forms (PMS-476) #325
No reviewers
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
psa-systems/mokosh-apps!325
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/PMS-476-itil-pickers"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
PMS-456 phase 1 added
asset_types.itil_category+assets.itil_lifecycle_stageserver-side, but the SPA had no inputs for either - operators had to set them by direct SQL. PMS-476 adds the editor surface:Asset Typessettings form (inpages/settings.rs::AssetTypeFormModal) gains an "ITIL category" input. Free-text so a tenant can coin a value beyond the v3 service-asset-and-configuration-mgmt set; the help text lists the standard classes (hardware / software / service / network / document / location) as suggestions. The save body sendsitil_categoryalongside the existing fields;AssetTypeRowdeserialises it with#[serde(default)]so types created before the column shipped still load cleanly.Asset edit modal (in
pages/assets.rs) gains an "ITIL lifecycle stage" input with the same free-text shape; help text suggestsplanned / in_service / retired. A newe_itil_stagesignal seeds from the asset on edit-open and rides into the PUT body asitil_lifecycle_stage.RemoteAssetgainsitil_lifecycle_stage: Option<String>(also#[serde(default)]).Asset detail page renders the current lifecycle stage as a gray badge in the Status sidebar card, between Status and Warranty. Hidden when unset so assets that pre-date the column stay visually clean.
The asset-list
itil_categoryfilter from AC4 is deferred to a follow-up - the existing filter sidebar is a heavier refactor than the rest of this ticket warrants, and the pickers + detail render are the immediate operator value.#PMS-476