Skip to main content

Requests, Approvals, Assignment, and Return

Summary

The UI supports asset request creation (employee and admin), an approval confirmation modal that sets status to Issued, rejection to Rejected, and deletion. Assignment is performed through the form's Assign To field combined with approve-to-Issued. Dedicated return, damage, loss, and retire UI is verified absent, and fine-grained backend authorization is not enforced at the compatibility endpoints.

Audience

  • Developers implementing request/approval flows.
  • QA engineers validating approval, rejection, and delete paths.
  • Support engineers explaining lifecycle transitions.
  • Security engineers assessing authorization gaps.

Reference Content

Request creation

  • Employees submit via the request variant form ("Submit Request"), posting to /hr-operations/asset-requests with { assetType, assetName, returnDueDate, notes }; success shows "Asset request submitted."
  • Admins create assets via the create form ("Save Asset"), which can include an assignee via the optional Assign To field.

Approval and rejection

Row actions Approve and Reject post to /hr-operations/assets/{id}/status. Approve sends { status: "Issued" }; Reject sends { status: "Rejected" }. An approval confirmation modal ("Approve Asset Request" / "Approve Asset") precedes these actions. Toasts confirm: "Asset issued." and "Asset rejected."

Deletion

The Delete row action removes the asset and shows "Asset deleted."

Assignment

There is no dedicated assignment screen. Assignment is achieved via the form's optional Assign To (EmployeeSelect) field plus the approve action that moves the asset to Issued.

Verified absences

The following are confirmed absent from the UI:

  • No dedicated return control or return screen.
  • No damage, lost, or retire buttons.
  • No dedicated asset detail route or view.

Authorization note

The asset compatibility endpoints are tenant-scoped but not role-authorized at the backend (anonymous-by-design private mesh). Frontend gating controls visibility only; it is not backend authorization.

Interaction diagram

Source References

  • UI/salary-ui/apps/client-hrms-portal/src/pages/hr/HrOperationsPage.tsx
  • microservices/src/asset-service/Api/AssetCompatEndpoints.cs

See Also

Keywords

asset request, approval modal, assignment, issued, rejected, delete

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly