Product Requirements Document (PRD): Updated File Management System
Objective
Revamp the file management system in Agency Handy to provide a structured folder hierarchy that enables users to organize and locate files more efficiently while supporting client-specific organization. Clients can only see their own folders and have limited file management actions, while SuperAdmins and Admins have full control over file movements and copying.
User Stories
As an admin, I want a dedicated folder for each client, containing subfolders for their orders and tickets, to simplify file organization. Clients can only see their own folders and files. As an admin, I want all files related to a specific client's orders to be stored in the “Orders” subfolder within the client folder. Clients can only view files associated with their own orders. As an admin, I want ticket-related files stored in a “Tickets” subfolder within the client folder for better tracking. Clients can only view files related to their own tickets. As a superadmin, I want the ability to create custom folders at any level for additional file organization needs. Clients can create additional folders within their own designated folder. As a user, I want to upload files into specific folders to maintain clear associations with orders, tickets, or custom categories. SuperAdmin or Admin can create additional custom folders within client orders. Clients can upload files within their folder and subfolders. Clients can see only their own folders and files. Clients can add files to their folders. Clients can create additional folders within their designated folder. Clients can delete only their own uploaded files within their folders. Clients can copy or move files they have uploaded within their own accessible folders. SuperAdmins and Admins can copy or move files across folders, including between client folders and subfolders. SuperAdmins and Admins can view, move, and manage files across all client folders and custom folders. Functional Requirements
[Client Name]: Dedicated folder for each client. Orders: Contains files related to all orders for the client. Tickets: Contains files related to tickets for the client. Additional custom folders can be created by SuperAdmin or Admin anywhere within the hierarchy. Clients can only see their own [Client Name] folder. Clients can create subfolders under their designated [Client Name] folder for better organization. Clients can upload files into their subfolders and other sections within their [Client Name] folder. Clients can delete only their own uploaded files within their folders. Clients can copy or move files they have uploaded to other folders they have access to (within their own folder). Orders Folder: Automatically create a new folder for each order inside the Orders subfolder (e.g., "Order ID 12345"). For recurring orders, create a separate folder for each new instance using the recurring Order ID. Tickets Folder: Automatically create a new folder for each ticket inside the Tickets subfolder (e.g., "Ticket ID 67890"). Directly into Orders or Tickets folders. Files uploaded into Orders or Tickets folders will automatically associate with the respective order or ticket. Into any custom folder created by the SuperAdmin or Admin. Order Details Sidebar: Files uploaded into the Orders folder should appear in the order details sidebar for quick access to order files. Feedback/annotate (notifications/email will be sent to those with access to the file) Delete (clients can delete only their uploaded files) Copy or Move (Clients can only copy/move files they have uploaded within their own accessible folders, while Admins can move/copy files across client folders). SuperAdmin, Admin: Full access to all files and folders. Can move and copy files between folders. PM: Access only to the Orders folders where they are assigned and other non-client-specific custom folders. Client: Access only to their own folder and files. Can create and delete subfolders and files within their folder. Clients can copy or move files they uploaded within their accessible folders. Global Search across the file management system (Version 2). By folder location (Orders, Tickets, or Custom). Implement breadcrumb navigation to allow users to track their current folder location and easily navigate back to higher levels. Manual Client Addition: Admins can manually add clients to the system. Convert Leads to Clients: Ability to convert leads into clients within the system. Client from Catalog: Automatically create a client when a purchase is made from the catalog. Acceptance Criteria (Checklist)
Folder Creation: A dedicated folder is created for each client, with subfolders for Orders and Tickets. Dynamic Folder Creation: New folders are dynamically created for each order and ticket within the respective client subfolders. File Association: Files uploaded to Orders or Tickets subfolders are automatically linked to the respective order or ticket. Client-Specific Access: Clients can only view their own [Client Name] folder and subfolders. File Permissions: Clients can create, upload, move, copy, and delete only their own files in their [Client Name] folder. Custom Folder Management: SuperAdmin and Admin can create, rename, or delete custom folders at any level. File Permissions: Access controls are correctly enforced based on user roles. File Search and Navigation: Users can search for files globally and filter results by folder or client name. Breadcrumb Navigation: Breadcrumb navigation accurately represents the current folder path. Client Creation: Clients can be added manually, converted from leads, or automatically created when making a catalog purchase. Future Scope
Advanced Search Enhancements: Include metadata-based filtering (e.g., upload date, file type). Maintain file version history for uploaded files, enabling users to track and compare changes. Allow files to sync with third-party storage services like Google Drive or Dropbox. Conclusion
This updated file management system provides a clear, scalable, and organized file structure, tailored to client-specific needs while offering flexibility for additional organization through custom folders. This will enhance file retrieval efficiency and support structured tracking of orders, tickets, and client management within Agency Handy.