| Nghiệp vụ | IT |
|---|
Người lập | Người duyệt | Người lập | Người duyệt |
Họ & Tên | Bùi Nguyệt Anh | Nguyễn Đức Trung | Nguyễn Anh Tuấn | Phạm Văn Quân |
|---|
Tài khoản email/MS Team | anhbn4 | trungnd3 |
| Quanpv3 |
|---|
Chức danh | Business Analyst (BA) | Product Owner (P.O) | Dev member | Techlead |
|---|
Ngày soạn thảo/phê duyệt | |
| 26.06.2025 |
|
|---|
Jira Ticket | [BSHKVH-1049] Màn hình danh sách gói thầu (Site đấu thầu) - Jira |
|
|
|
|---|
1. Card (Mô tả tính năng)
Là thành viên Hội đồng thầu tôi muốn quản lý tập trung các gói thầu của tôi trong 1 menu
2. Confirmation/ Acceptance Criteria (Tiêu chí nghiệm thu)
- Phân quyền truy cập
- Chỉ cán bộ nhân viên tham gia vào gói thầu mới được quyền truy cập vào gói thầu
- Cấp quản lý được truy cập toàn bộ các gói thầu mà đơn vị đó tham gia
- Cán bộ nhân viên sau khi từ chối công việc sẽ không còn quyền truy cập gói thầu
- Hiển thị Danh sách các gói thầu với các thông tin:
- Mã gói thầu
- Tên gói thầu
- Tên dự án
- Lĩnh vực
- Đơn vị thụ hưởng
- Thời gian bắt đầu (thời gian bắt đầu hình thành công việc A1.02)
- Thời gian kết thúc (thời gian dự kiến Phê duyệt Báo cáo thầu A1.10)
- Trạng thái gói thầu:
- Đang thực hiện
- Hoàn thành
- Hủy
- Tìm kiếm nhanh + Bộ lọc
- Tìm kiếm theo
- Lọc nhiều điều kiện
- Khoảng thời gian
- Dự án
- Lĩnh vực
- Đơn vị thụ hưởng
- Trạng thái
3. Conversation (Mô tả chi tiết)
3.1 UIUX:
3.1.1. Màn hình Site đấu thầu - Danh sách gói thầu

3.1.2. Màn hình Site đấu thầu - Danh sách gói thầu nếu không tìm thấy dữ liệu phù hợp → hiển thị màn hình "Ở đây chưa có gì cả. Hiện tại chưa có gói thầu nào"

3.2 Luồng:
3.3 API Spec: <gắn link tài liệu mô tả API vào đây>
Method | Get | URL | /application/bidPackage/list |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzOTgyNDUsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.qRoaRDxjqyWS-3Az_ZqLmR0KAcPTM7jXggW1Ja5wpEc |
|
|
|
|
|
|
|
|
|
|
2. ParamSTT | Field | Required | Data Type / Length | Description | Note |
|---|
| 1 | name | false | String | Tên gói thầu |
| | 2 | fieldId | false | Integer | Mã lĩnh vực |
| | 3 | projectId | false | Integer | Mã dự án |
| | 4 | status | false | Integer | Trạng thái (0: Hủy, 1: Đang thực hiện, 2: Hoàn thành) |
| | 5 | departmentId | false | Integer | Mã phòng ban |
| | 6 | investorId | false | Integer | Mã đơn vị thụ hưởng |
| | 7 | startTime | false | String | Thời gian bắt đầu | VD:12/07/2025 | | 8 | endTime | false | String | Thời gian kết thúc | VD:12/07/2025 | | 9 | limit | false | Integer | Số bản ghi trong trên 1 trang |
| | 10 | page | false | Integer | Số trang |
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note |
|---|
| 1 | id | Integer | ID gói thầu |
| | 2 | code | String | Mã gói thầu |
| | 3 | name | String | Tên gói thầu |
| | 4 | startTime | Timestamp | Thời gian bắt đầu |
| | 5 | endTime | Timestamp | Thời gian kết thúc |
| | 6 | status | Integer | Trạng thái (0: Hủy, 1: Đang thực hiện, 2: Hoàn thành) |
| | 7 | potId | Integer | ID của hồ sơ |
| | 8 | pteName | String | Tên pte (Process Task Executor) | UserTask, ServiceTask, ... | | 9 | fieldName | String | Tên lĩnh vực |
| | 10 | projectName | String | Tên dự án |
| | 11 | departmentName | String | Tên phòng ban liên quan (Bộ phận yêu cầu) |
| | 12 | procurementTypeName | String | Tên hồ sơ mời thầu |
| | 13 | nodeName | String | Tên của node |
| | 14 | investorName | String | Tên đơn vị thụ hưởng |
|
|
3.4. Mô tả các trường dữ liệu trên màn hình:
3.4.1. Màn hình danh sách gói thầu (Site đấu thầu)
3.4.1.1. Phân quyền dữ liệu hệ thống:
Hệ thống cho phép phân quyền hiển thị dữ liệu gói thầu trên màn hình danh sách dựa trên trạng thái công việc của nhân sự liên quan. Nhân sự đã phát sinh công việc (trừ các công việc bị từ chối tiếp nhận) sẽ được phép nhìn thấy gói thầu.
Ví dụ minh họa:
Nhân sự có công việc đã phát sinh → Được xem
Nhân sự có công việc đã hoàn thành → Được xem
Nhân sự chỉ có công việc đã từ chối tiếp nhận (không phải yêu cầu điều chỉnh) → Không được xem
Nhân sự có công việc bị từ chối tiếp nhận nhưng đồng thời còn các công việc khác (trạng thái chưa tiếp nhận, đã tiếp nhận, tạm dừng, hoàn thành hoặc yêu cầu điều chỉnh) → Được xem
3.4.1.2. Mô tả các trường dữ liệu trên màn hình danh sách gói thầu (Site đấu thầu):
| Trường/Nút chức năng | Kiểu dữ liệu | Điều kiện | Quy định | Mô tả |
|---|
| 1 | Mã gói thầu | Text | Bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Mã định danh duy nhất của gói thầu. |
| 2 | Tên gói thầu | Hyperlink | Bắt buộc | | Tên hiển thị của gói thầu, người dùng có thể nhấn để xem chi tiết. |
| 3 | Dự án | Text | Không bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Tên dự án mà gói thầu thuộc về. |
| 4 | Lĩnh vực | Text | Không bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Lĩnh vực chuyên môn của gói thầu. |
| 5 | Đơn vị thụ hưởng | Text (Dropdown) | Không bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Tên chủ đầu tư của gói thầu. |
| 6 | Thời gian bắt đầu | Date | Bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Thể hiện thời điểm hoàn thành bước khởi tạo YCMS/TT Chủ trương trong bước A1.01 trong quy trình xử lý gói thầu. Không lấy dữ liệu nếu yêu cầu mua sắm đang ở trạng thái lưu nháp. Dữ liệu được ghi nhận cho cả các trường hợp:
|
| 7 | Thời gian kết thúc | Date | Bắt buộc | Dữ liệu lấy tự động từ nền tảng BPM1, người dùng không được phép chỉnh sửa. | Ngày kết thúc dự là thời gian kết thúc quy trình |
| 8 | Trạng thái | Enum / Label | Bắt buộc |
| Trạng thái hiện tại của gói thầu, phản ánh tiến độ xử lý theo quy trình đấu thầu: - Đang thực hiện: Gói thầu đang trong quá trình triển khai
- Hoàn thành: Gói thầu đã được phê duyệt báo cáo thầu
- Hủy : Gói thầu bị hủy
|
| 9 | Biểu tượng tìm kiếm (Kính lúp/Icon Search) | Button/Icon | Không bắt buộc | - Chỉ thực hiện tìm kiếm khi ô nhập liệu có giá trị hợp l
| - Biểu tượng cho phép người dùng click vào biểu tượng để thực hiện tìm kiếm theo từ khóa đã nhập.
|
| 10 | Ô nhập liệu (Search Box) | Textbox | | Cho phép nhập ký tự chữ và số Hỗ trợ tìm kiếm theo 2 tiêu chí: Mã gói thầu và Tên gói thầu Mã gói thầu: Không giới hạn độ dài từ khóa. Tên gói thầu: Không giới hạn độ dài từ khóa. Không phân biệt chữ hoa/thường khi tìm kiếm Cho phép nhấn Enter thay cho click biểu tượng kính lúp Nếu không tìm thấy dữ liệu phù hợp → hiển thị màn hình "Ở đây chưa có gì cả. Hiện tại chưa có gói thầu nào" - Hỗ trợ multi-keyword: AND giữa các từ (tách từ theo dấu cách).
| - Nếu ô tìm kiếm trống → hệ thống không thực hiện tìm kiếm, ô nhập liệu hiển thị placeholder “Tìm kiếm"
- Ví dụ: nhập "Gia Lộc" → trả về các gói có chứa đồng thời "gia" và "loc" (không phân biệt hoa/thường, không phân biệt dấu) trong Mã hoặc Tên gói thầu.
|
| 11 | Nút "Lọc" | Button | Không bắt buộc | Khi người nhấn vào nút "Lọc | - Nút mở bộ lọc để lọc danh sách theo các tiêu chí: Trạng thái, Thời gian, Lĩnh vực, Tên chủ đầu tư.
- Người dùng có thể chọn 1 hoặc nhiều tiêu chí kết hợp.
|
3.4.2. Mô tả bộ lọc trên màn hình danh sách nhà thầu (Site đấu thầu):
| Trường/Nút chức năng | Kiểu dữ liệu | Điều kiện | Quy định | Mô tả |
|---|
| 1 | Khoảng thời gian | Date picker | Không bắt buộc | Gồm: - Gồm 2 trường: Từ ngày và Đến ngày (Date picker, định dạng dd/MM/yyyy)
- Nếu Từ ngày > Đến ngày → hiển thị cảnh báo "Tham số ngày không hợp lệ" và không cho phép lọc.
| Thể hiện Khoảng thời gian dùng để lọc các gói thầu theo ngày tạo hoặc ngày nghiệp vụ khác được quy định trong API. |
| 2 | Dự án | Dropdown (Danh sách chọn). | Không bắt buộc | - Trường Dự án sử dụng dropdown với placeholder hiển thị: “Chọn dự án”
- Nếu người dùng không chọn, trường được coi là không áp dụng lọc theo Dự án.
- Danh sách giá trị được lấy từ Danh mục Dự án trong màn hình Quản lý danh mục.
| Thể hiện tên Dự án mà gói thầu thuộc về |
| 3 | Lĩnh vực | Dropdown (Danh sách chọn). | Không bắt buộc | - Trường Lĩnh vực sử dụng Dropdown (Danh sách chọn).
- Hiển thị placeholder: “Chọn lĩnh vực”.
- Nếu người dùng không chọn, trường được coi là không áp dụng lọc theo Lĩnh vực.
- Danh sách giá trị được lấy từ Danh mục Lĩnh vực trong màn hình Quản lý danh mục.
| Thể hiện lĩnh vực chuyên môn của gói thầu. |
| 4 | Đơn vị thụ hưởng | Dropdown (Danh sách chọn). | Không bắt buộc | - Trường Đơn vị thụ hưởng sử dụng Dropdown (Danh sách chọn).
- Hiển thị placeholder: “Chọn đơn vị thụ hưởng”.
- Nếu người dùng không chọn, trường được coi là không áp dụng lọc theo Đơn vị thụ hưởng.
- Danh sách giá trị được lấy từ Danh mục Đơn vị thụ hưởng trong màn hình Quản lý danh mục.
| Thể hiện tên đơn vị được hưởng lợi từ gói thầu. |
| 5 | Trạng thái | Enum / Label | Không bắt buộc | - Trường Trạng thái sử dụng Dropdown (Danh sách chọn).
- Hiển thị placeholder: “Chọn trạng thái”.
- Danh sách giá trị bao gồm: Đã đóng, Chưa đóng, Xin gia hạn.
- Nếu người dùng không chọn, trường được coi là không áp dụng lọc theo Trạng thái.
| Thể hiện trạng thái của gói thầu |
| 6 | Nút "Áp dụng" | Button | Không bắt buộc | - Sau khi người dùng nhấn nút "Áp dụng", popup Bộ lọc sẽ được đóng. Hệ thống chỉ hiển thị màn hình Danh sách gói thầu (Site đấu thầu) đã được áp dụng bộ lọc.
- Bộ lọc không hiển thị trên màn hình sau khi áp dụng, người dùng có thể nhấn lại nút "Lọc" nếu muốn thay đổi tiêu chí lọc.
| Thể hiện thao tác xác nhận và áp dụng các điều kiện lọc đã chọn để hiển thị danh sách kết quả phù hợp. |
| 7 | Nút "Đặt lại" | Button | Không bắt buộc | - Khi người dùng nhấn nút "Đặt lại", toàn bộ các trường trong Bộ lọc sẽ được chuyển về giá trị mặc định:
- Sau khi nhấn "Đặt lại", pop-up Bộ lọc vẫn được giữ trạng thái mở để người dùng có thể tiếp tục thao tác.
| Thể hiện thao tác khôi phục tất cả tiêu chí lọc về trạng thái mặc định ban đầu, giúp người dùng bắt đầu chọn lọc mới dễ dàng hơn. |