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 | ||
Tài khoản email/MS Team | anhbn4 | trungnd3 | ||
Chức danh | Business Analyst (BA) | Product Owner (P.O) | ||
Ngày soạn thảo/phê duyệt |
| |||
Jira Ticket | ||||
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 yêu cầu làm rõ hồ sơ mời thầu của nhà thầu và ý kiến phản hồi của thành viên hội đồng thầu
2. Confirmation/ Acceptance Criteria (Tiêu chí nghiệm thu)
- Thành viên hội đồng thầu xem được:
- Danh sách nhà thầu & tài khoản tương ứng các lần làm rõ của từng nhà thầu
- Thời gian xuất hiện yêu cầu làm rõ
- Trạng thái của yêu cầu làm rõ:
- Chờ phản hồi
- Đã phân công
- Chờ tổng hợp
- Đã phản hồi
- Lịch sử tổng hợp làm rõ hồ sơ mời thầu của thư ký hội đồng thầu
- Lịch sử yêu cầu làm rõ của từng nhà thầu
- Tìm kiếm nhanh theo tên nhà thầu
- Lọc theo thời gian và trạng thái xuất hiện yêu cầu làm rõ
- Thư ký hội đồng thầu có thể gửi Tổng hợp yêu cầu làm rõ (chung) cho tất cả các nhà thầu
- Thư ký hội đồng thầu có thể phân công thành viên hội đồng thầu phản hồi yêu cầu làm rõ
3. Conversation (Mô tả chi tiết)
3.1 UIUX Màn hình
3.1.1 Màn hình Quản lý yêu cầu làm rõ & Bộ lọc
3.1.2 Màn hình quản lý lịch sử tổng hợp làm rõ
Được phân quyền Thêm Được phân quyền xem
3.1.3 Màn hình Yêu cầu làm rõ
Được phân quyền Thêm Được phân quyền Xem
3.2 Luồng:
3.3 API Spec: <gắn link tài liệu mô tả API vào đây>
Method | GET | URL | <DOMAIN>/application/tenderPackage/clarificationRequest |
|---|
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. Param
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | name | String | Tên nhà thầu | ||
| 2 | tenderPackegeId | true | Integer | Id gói thầu | |
| 3 | status | Integer | Trạng thái | ||
| 4 | startDate | String | Thời gian nhận từ ngày | ||
| 5 | endDate | String | Thời gian nhận đến ngày | ||
| 6 | limit | Integer | Số bản ghi | ||
| 7 | page | Integer | Trang |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| loadMoreAble | Boolean | ||||
| preLoadAble | Boolean | ||||
| result | Object | Kết quả | |||
| result.total | Long | Tổng số bản ghi | |||
| result.page | Integer | Số trang hiện tại | |||
| result.items | List | Danh sách kết quả | |||
| result.items[?].id | Integer | Id | |||
| result.items[?].bidderId | Integer | Id nhà thầu | |||
| result.items[?].bidderName | String | Tên nhà thầu | |||
| result.items[?].contactId | Integer | Id người liên hệ | |||
| result.items[?].contactName | String | Tên người liên hệ | |||
| result.items[?].contactEmail | String | Email người liên hệ | |||
| result.items[?].round | Integer | Số lần làm rõ | |||
| result.items[?].createdTime | Timestamp | Thời gian nhận |
Method | POST | URL | <DOMAIN>/application/generalClarification/update |
|---|---|---|---|
Description | API gửi tổng hợp làm rõ HSMT | ||
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. Body
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | id | true | Integer | id tổng hợp làm rõ HSMT, mặc định thêm mới = 0 | |
| 2 | content | String | Nội dung | ||
| 3 | packageId | true | Integer | Id gói thầu | |
| 4 | attachments | String | Danh sách file |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| result | Object | Kết quả | |||
| result.id | Integer | id tổng hợp làm rõ HSMT | |||
| result.packageId | Integer | Id gói thầu | |||
| result.content | String | Nội dung | |||
| result.attachments | String | Danh sách file | |||
| result.employeeId | Integer | Người tạo | |||
| result.createdTime | Timestamp | Thời gian tạo |
Method | GET | URL | <DOMAIN>/application/generalClarification/list |
|---|---|---|---|
Description | API Lịch sử gửi tổng hợp làm rõ HSMT | ||
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. PARAM
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | packageId | true | Integer | Id gói thầu |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| result | Object | Kết quả | |||
| result[?].id | Integer | id tổng hợp làm rõ HSMT | |||
| result[?].packageId | Integer | Id gói thầu | |||
| result[?].content | String | Nội dung | |||
| result[?].attachments | String | Danh sách file | |||
| result[?].employeeId | Integer | Người tạo | |||
| result[?].createdTime | Timestamp | Thời gian tạo |
Method | GET | URL | <DOMAIN>/application/clarificationDetail/list |
|---|---|---|---|
Description | API yêu cầu làm rõ | ||
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. PARAM
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | clarificationId | true | Integer | Id gói thầu | |
| round | true | Integer | Số vòng |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| result | Object | Kết quả | |||
| result[?].id | Integer | id tổng hợp làm rõ HSMT | |||
| result[?].attachments | String | Danh sách file | |||
| result[?].content | String | Nội dung | |||
| result[?].assignTime | Timestamp | ||||
| result[?].processTime | Timestamp | ||||
| result[?].status | Integer | Trạng thái | |||
| result[?].employeeId | Integer | ||||
| result[?].employeeName | String | ||||
| result[?].documentId | Integer | ||||
| result[?].clarificationId | Integer | ||||
| result[?].organizationId | Integer | ||||
| result[?].documentName | String | ||||
| result[?].documentPosition | String | ||||
| result[?].idFromPortal | Integer | ||||
| result[?].documentType | String | ||||
| result[?].documentEmployeeName | String | ||||
| result[?].documentEmployeeId | String | ||||
| result[?].employeeIdSow | Integer | ||||
| result[?].employeeIdBom | Integer | ||||
| result[?].employeeIdEngineer | Integer | ||||
| result[?].employeeIdExperiment | Integer | ||||
| result[?].employeeIdBoq | Integer | ||||
| result[?].employeeIdDesign | Integer | ||||
| result[?].employeeIdSplcontact | Integer | ||||
| result[?].employeePackageId | Integer | ||||
| result[?].employeeNameSow | String | ||||
| result[?].employeeNameBom | String | ||||
| result[?].employeeNameEngineer | String | ||||
| result[?].employeeNameExperiment | String | ||||
| result[?].employeeNameBoq | String | ||||
| result[?].employeeNameDesign | String | ||||
| result[?].employeeNameSplcontact | String |
Method | GET | URL | <DOMAIN>/system/employee/list |
|---|---|---|---|
Description | API Danh sách nhân viên | ||
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. PARAM
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | name | String | Tên, email nhân viên | ||
| page | Integer | ||||
| limit | Integer |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| total | Long | Tổng số bản ghi | |||
| page | Integer | Số trang | |||
| result | Object | Kết quả | |||
| result.item[?].id | Integer | Id user | |||
| result.item[?].name | String | Tên | |||
| result.item[?].userName | String | Tên đăng nhập | |||
| result.item[?].avatar | String | avatar | |||
| result.item[?].phone | String | Số điện thoại | |||
| result.item[?].email | String | ||||
| result.item[?].address | String | Đại chỉ | |||
| result.item[?].jteId | Integer | ||||
| result.item[?].jteName | String | ||||
| result.item[?].departmentId | Integer | ||||
| result.item[?].roles | String | ||||
| result.item[?].leadership | Integer | ||||
| result.item[?].status | Integer | ||||
| result.item[?].position | Integer | ||||
| result.item[?].isOwner | Integer | ||||
| result.item[?].userId | Integer | ||||
| result.item[?].managerId | Integer | ||||
| result.item[?].serviceCount | Integer | ||||
| result.item[?].title | String | ||||
| result.item[?].branchName | String | ||||
| result.item[?].branchAddress | String | ||||
| result.item[?].departmentName | String | ||||
| result.item[?].viewMode | Integer | ||||
| result.item[?].idToken | String | ||||
| result.item[?].accessToken | String | ||||
| result.item[?].uniqueId | String | ||||
| result.item[?].viewCustomerMode | Integer | ||||
| result.item[?].viewBusinessPartnerMode | Integer | ||||
| result.item[?].sip | String | ||||
| result.item[?].shiftId | Integer | ||||
| result.item[?].shiftName | String | ||||
| result.item[?].branchId | Integer | ||||
| result.item[?].bsnId | Integer | ||||
| result.item[?].managerName | String | ||||
| result.item[?].managerAvatar | String | ||||
| result.item[?].lstEmployeeId | List<Integer> | ||||
| result.item[?].rank | Integer | ||||
| result.item[?].tmpId | Integer | ||||
| result.item[?].lstOrgApp | List<EBOrgApp> | public class EBOrgApp { | |||
| result.item[?].lstEmployeeRole | List<JobTitle> | public class JobTitle { |
Method | GET | URL | <DOMAIN>/application/clarificationRequest/assign |
|---|---|---|---|
Description | API Gửi phân công yêu cầu làm rõ | ||
1. Headers
STT | Field | Source Data Type / Length | Description | Sample Values |
|---|---|---|---|---|
| authorization | String | Token | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjYzMDk1MTgsInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6 puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.UGz8TQudVxEd7rp_rsLXePraHELTRWHyc7iXNvVnn14 |
2. BODY
STT | Field | Required | Data Type / Length | Description | Note |
|---|---|---|---|---|---|
| 1 | clarificationDetail | List<ClarificationDetail> | public class ClarificationDetail { |
3. Response / Incoming Data Specification
| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|---|---|---|---|---|
| code | Integer | Code | |||
| message | String | Message | |||
| result | Object | Kết quả | |||
| result.id | Integer | Id | |||
| result.round | Integer | Số vòng | |||
| result.status | Integer | Trạng thái | |||
| result.assignTime | Timestamp | Thời gian assign | |||
| result.createdTime | Timestamp | Ngày ta | |||
| result.responseTimeDay | Integer | ||||
| result.responseTimeHour | Integer | Đại chỉ | |||
| result.responseTimeMinute | Integer | ||||
| result.responseTime | Timestamp | ||||
| result.organizationId | Integer | ||||
| result.packageId | Integer | ||||
| result.projectId | Integer | ||||
| result.packageName | String | ||||
| result.projectName | String | ||||
| result.branchName | String | ||||
| result.tenderPackageName | String | ||||
| result.packageProjectName | String | ||||
| result.packageProjectCode | String | ||||
| result.idFromPortal | Integer | ||||
| result.contactId | Integer | ||||
| result.userId | Integer | ||||
| result.processingTimeDay | Integer | ||||
| result.processingTimeHour | Integer | ||||
| result.processingTimeMinute | Integer | ||||
| result.organizationName | Integer |
4. Mô tả các trường dữ liệu trên màn hình
4.1 Màn hình Quản lý yêu cầu làm rõ
Màn hình Quản lý yêu cầu làm rõ là một đối tượng để thực hiện phân quyền:
- Xem:
- Cho phép xem danh sách yêu cầu làm rõ (Màn hình quản lý yêu cầu làm rõ)
- Cho phép xem chi tiết màn hình Yêu cầu làm rõ (Pop-up yêu cầu làm rõ)
- Cho phép xem lịch sử yêu cầu làm rõ
- Thêm
- Cho phép người dùng gửi tổng hợp yêu cầu làm rõ (màn hình Gửi tổng hợp yêu cầu làm rõ, màn hình Lịch sử tổng hợp yêu cầu làm rõ)
- Cho phép người dùng Gửi yêu cầu thay đổi
STT | Trường/Nút chức năng | Kiểu dữ liệu | Điều kiện | Quy định | Mô tả |
|---|---|---|---|---|---|
Màn hình quản lý yêu cầu làm rõ | |||||
| 1 | STT | Number | Số thự tự hệ thống tự sinh | ||
| 2 | Nhà thầu | Hyperlink | Hiển thị danh sách nhà thầu gửi yêu cầu làm rõ Nhấn vào tên nhà thầu hệ thống mở Pop-up chi tiết yêu cầu làm rõ | ||
| 3 | Tên người liên hệ | Text | Hiển thị tên người liên hệ gửi yêu cầu làm rõ | ||
| 4 | Email người liên hệ | Text | Hiển thị email (tài khoản) gửi yêu cầu làm rõ | ||
| 5 | Lần làm rõ | Number | Hiển thị lần làm rõ hiện tại của nhà thầu | ||
| 6 | Thời gian nhận | Date time | Hiển thị thời gian yêu cầu làm rõ gần nhất của nhà thầu | ||
| 7 | Trạng thái | Text | Trạng thái làm rõ của nhà thầu:
| ||
| 8 | Bộ lọc | Button | Chức năng cho phép người dùng thực hiện lọc nhà thầu cần xử lý làm rõ Nhấn vào hệ thống hiển thị Pop-up điều kiện lọc | ||
| 9 | Searchbox | Searchbox | Chức năng cho phép người dùng thực hiện tìm kiếm theo tên nhà thầu | ||
Màn hình bộ lọc | |||||
| 1 | Từ ngày | Date | Cho phép người dùng nhập thông tin từ ngày | ||
| 2 | Đến ngày | Date | Cho phép người dùng nhập thông tin đến ngày | ||
| 3 | Trạng thái | Droplist | Cho phép người dùng lựa chọn các trạng thái làm rõ của nhà thầu:
| ||
| 4 | Đặt lại | Button | Chức năng cho phép người dùng xóa hết các điều kiện lọc đã chọn | ||
| 5 | Áp dụng | Button | Với trường hợp lọc nhiều điều kiện hệ thống sử dụng điều kiện And.
| Chức năng cho phép người dùng lọc dữ liệu theo các kiều kiện đã chọn. Hệ thống tắt màn hình Pop-up điều kiện lọc. | |





