Hãy đóng vai một lập trình viên full-stack xuất sắc và chuyên gia UI/UX. Cập nhật, tái cấu trúc và hoàn thiện hệ thống quản lý dự án và kho vận doanh nghiệp của chúng tôi với 11 tính năng và sửa đổi toàn diện dưới đây. Đảm bảo quản lý trạng thái tuyệt đối bằng React hooks, xác thực dữ liệu nghiêm ngặt, luồng công việc động và hiển thị có điều kiện (conditional rendering) với độ chính xác cao. 1. Cô lập Đăng nhập Đa Dự án Đa Thuê bao (Multi-Tenant Multi-Project Login Isolation) * Hành vi: Triển khai quy tắc xác thực đa thuê bao dựa trên tổ hợp duy nhất gồm Tên Công ty (Company Name), Tên Dự án (Project Name) và Mật khẩu (Password). * Logic: Nếu người dùng A đăng nhập với Công ty A và Dự án CC, họ phải nhìn thấy tập dữ liệu A riêng biệt. Nếu người dùng B đăng nhập với Công ty B và Dự án CC, hệ thống phải coi đây là một dự án duy nhất hoàn toàn tách biệt vì Tên Công ty khác nhau. Ngăn chặn triệt để tình trạng nhiễm chéo dữ liệu giữa các công ty khác nhau có sử dụng tên dự án trùng nhau. 2. Giao diện Menu Yêu cầu Kho đã nhận (Store Request Received) & Nhãn Cột * Luồng trang: Trên Trang Kho (Store Page) -> Menu Yêu cầu Đã nhận (Request Received Menu) -> phần Xem (View): * Cập nhật UI: Hiển thị phần Mô tả (Description) của vật tư. Đổi tên tiêu đề cột Parameter thành "Unit", và đổi tên tiêu đề cột Note thành "Remark". * Hiển thị dữ liệu: Đảm bảo dữ liệu của cột "Unit" và "Quantity (QTY)" BẮT BUỘC phải hiển thị đầy đủ và dễ đọc đối với người dùng dưới các cột tương ứng. Không được ẩn các chi tiết giao dịch cốt lõi này. * Nhận diện thương hiệu ở tiêu đề (Header Branding): Liên kết động Tên Công ty đã nhập lúc đăng nhập vào bố cục tiêu đề của các phiếu SR, PR và toàn bộ chứng từ trong hệ thống. 3. Xác thực Trường Dữ liệu Chứng từ & Tệp Đính kèm Tùy chọn * Xác thực: Khi gửi Phiếu Yêu cầu Vật tư Kho (Store Requisition - SR), Bóc tách Khối lượng Vật tư (Material Take-Off - MTO) hoặc Phiếu Xuất Kho (Store Issue Voucher - SIV), hãy áp dụng cơ chế kiểm tra hợp lệ nghiêm ngặt yêu cầu tất cả các trường nhập liệu cấu trúc trên biểu mẫu phải được điền đầy đủ. * Cơ chế Đính kèm: Thao tác tải lên tài liệu PDF hoàn toàn là TÙY CHỌN (Không bắt buộc). Người dùng có thể gửi biểu mẫu thành công mà không cần tệp đính kèm. * Thao tác với tệp: Nếu người dùng chọn đính kèm tệp, hãy cung cấp liên kết Nhấn để Xem (Click to View) cho các tệp PDF đã tải lên, nút Xóa (Delete) để gỡ bỏ tệp đã chọn trước khi gửi, và nút điều hướng Quay lại (Back) hoạt động đầy đủ để hủy thao tác. 4. Luồng Công việc Liên trang từ MTO sang Kho & Tự động hóa Dữ liệu * Thông báo & Trạng thái ban đầu: Khi một phiếu MTO được chuyển tới đơn hàng dự án, hãy kích hoạt Huy hiệu Thông báo Đỏ (Red Notification Badge) trên Menu MTO của dự án đích. Bên trong menu này, chỉ hiển thị hai tùy chọn: Ready và View. * Thao tác PDF Xuất Tức thì (Instant Out PDF): Nhấn vào View sẽ mở ra một cửa sổ (modal) hiển thị dữ liệu giao dịch được kết xuất thuần túy dưới định dạng PDF "INST_OUT". Sau khi kiểm tra xong, người dùng nhấn vào nút Ready. * Ánh xạ Vật tư: Khi nhấn Ready, hệ thống phải tự động đưa dữ liệu vật tư được yêu cầu vào dòng của bảng REF_OUT thông qua một bộ chọn thả xuống (drop-down selector) động. * Chuyển tiếp Trạng thái SR: Tự động chuyển trạng thái trên Trang SR sang "Ready to Issue". 5. Luồng Hậu cần & Điều phối cho SR ở trạng thái "Ready to Issue" * Cửa sổ Hậu cần (Logistics Modal): Trên Trang SR, khi một đơn hàng đạt tới trạng thái "Ready to Issue", việc nhấn vào nút View tương ứng phải mở ra Biểu mẫu Điều phối Hậu cần (Logistics Dispatch Form) chuyên biệt. * Đầu vào của Người dùng: Nhân viên vận hành trên trang này phải điền đầy đủ các trường siêu dữ liệu vận chuyển hậu cần động: "Receiver / Driver Name", "Dispatch Date", "Departure Time", và biển số phương tiện vận chuyển "Plate No". * Điều hướng Dữ liệu: Khi nhấn nút hành động Send trên mô-đun điều phối này, hệ thống phải đóng gói tập dữ liệu hậu cần đó và định tuyến an toàn trực tiếp sang thiết bị đầu cuối nhà kho trên Trang Kho (Store Page).