1. Card (Mô tả tính năng)
Là admin nghiệp vụ, tôi muốn quản lý bổ sung thông tin tại danh mục nhà cung cấp, nhà thầu
2. Confirmation/ Acceptance Criteria (Tiêu chí nghiệm thu)
- Tôi muốn quản lý được thông tin đánh giá nhà thầu theo thông tin đánh giá mới nhất:
- Ngày hoàn thành đánh giá: của đánh giá hoàn thành mới nhất
- Điểm đánh giá nhà cung cấp: Điểm đánh giá ncc, nhà thầu theo đánh giá hoàn thành mới nhất
- Xếp hạng nhà cung cấp: Xếp hạng nhà ncc, nhà thầu theo đánh giá hoàn thành mới nhất
- Đề xuất: Đề xuất nhà thầu theo đánh giá hoàn thành mới nhất
- Tôi muốn quản lý được lĩnh vực hoạt động của nhà cung cấp dưới dạng list:
- Lĩnh vực
- Ngành nghề (Theo lĩnh vực, quản lý cấp Cha-con, một lĩnh vực gồm nhiều ngành nghề)
- Loại ngành nghề: Chính/phụ
- Tôi muốn quản lý được thông tin ngân hàng thụ hưởng của nhà cung cấp, nhà thầu (Một nhà cung cấp có thể nhiều tài khoản) bao gồm:
- Tên ngân hàng
- Số tài khoản
- Tên chủ tài khoản
- Trạng thái mặc định
- Tại bước soạn thảo hợp đồng, tôi muốn lấy được thông tin ngân hàng thụ hưởng mặc định theo nhà cung cấp, nhà thầu được chọn và cho phép chọn lại
- Để lại: Liên quan đến xử lý data: Tôi muốn quản lý được thông tin đơn vị quản lý của mỗi nhà cung cấp nhà thầu bao gồm
- Mã đơn vị quản lý
- Tên đơn vị quản lý
- Thông tin đơn vị quản lý mặc định tất cả phòng ban và cho phép chọn lại một số hoặc tất cả phòng ban trong danh mục cơ cấu tổ chức
3. Conversation (Mô tả chi tiết)
3.1 UIUX:
3.1.1. Bổ sung màn hình danh sách thông tin nhà cung cấp:

3.1.2.Bổ sung màn hình tạo mới thông tin nhà cung cấp:


3.1.3.Bổ sung màn hình chi tiết thông tin nhà cung cấp sau:

3.1.4. Bổ sung màn hình chỉnh sửa thông tin nhà cung cấp sau:

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/supplierEvaluation/list |
|---|
Description | API lấy danh sách lịch sử đánh giá |
|---|
Note | API cũ, sửa lại |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
2. RequestSTT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | page | true | Integer | trang |
|
| | 2 | limit | true | Integer | số bản ghi cần lấy |
|
| | 3 | evaluationGrade | false | String | Xếp hạng |
|
| | 4 | name | false | String | tên NCC |
|
| | 5 | cityId | false | Integer | id thành phố |
|
| | 6 | businessId | false | Integer | id nghành nghề chính |
|
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | code | Integer | 0: thành công còn lại thất bại |
|
| | 2 | message | String | message |
|
| | 3 | result | Object | kết quả trả ra |
|
| | 4 | (result) total | Integer | số lượng bản ghi |
|
| | 5 | (result) page | Integer | page |
|
| | 6 | (result) items | List<Object> | danh sách bản ghi |
|
| | 7 | (items) id | Integer | id NCC |
|
| | 8 | (items) contactOrg | String | Người liên tục |
|
| | 9 | (items) capacityProfile | String | hồ sơ năng lực |
|
| | 11 | (items) type | Integer | Loại |
|
| | 12 | (items) name | String | tên NCC |
|
| | 13 | (items) taxCode | String | mã số thuế |
|
| | 14 | (items) evaluationGrade | String | Xếp hạng đánh giá |
|
| | 15 | (items) cityId | Integer | thành phố |
|
| | 16 | (items) districtId | Integer | huyện |
|
| | 17 | (items) subdistrictId | Integer | xã |
|
| | 18 | (items) address | String | địa chỉ |
|
| | 19 | (items) legalRepresentative | String | đại diện pháp lý |
|
| | 20 | (items) businessId | Integer | id ngành nghề chính |
|
| | 21 | (items) active | Integer | trạng thái |
|
| | 22 | (items) cityName | String | huyện |
|
| | 23 | (items) districtName | String | thành phố |
|
| | 24 | (items) subdistrictName | String | xã |
|
| | 25 | (items) businessName | String | tên ngành nghề chính |
|
| | 26 | (items) fieldName | String | tên lĩnh vực chính |
|
| | 27 | (items) evaluationGrade | String | xếp hạng |
|
|
|
Method | GET | URL | application/organization/get |
|---|
Description | API chi tiết NCC |
|---|
Note | API cũ, sửa lại |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
2. RequestSTT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | id | true | Integer | id NCC |
|
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | code | Integer | 0: thành công còn lại thất bại |
|
| | 2 | message | String | message |
|
| | 3 | result | Object | kết quả trả ra |
|
| | 4 | (result) id | Integer | id NCC |
|
| | 5 | (result) contactOrg | String | Người liên tục |
|
| | 6 | (result) capacityProfile | String | hồ sơ năng lực |
|
| | 7 | (result) type | Integer | Loại |
|
| | 8 | (result) name | String | tên NCC |
|
| | 9 | (result) taxCode | String | mã số thuế |
|
| | 11 | (result) evaluationGrade | String | Xếp hạng đánh giá |
|
| | 12 | (result) cityId | Integer | thành phố |
|
| | 13 | (result) districtId | Integer | huyện |
|
| | 14 | (result) subdistrictId | Integer | xã |
|
| | 15 | (result) address | String | địa chỉ |
|
| | 16 | (result) legalRepresentative | String | đại diện pháp lý |
|
| | 17 | (result) businessId | Integer | id ngành nghề chính |
|
| | 18 | (result) active | Integer | trạng thái |
|
| | 19 | (result) cityName | String | huyện |
|
| | 20 | (result) districtName | String | thành phố |
|
| | 21 | (result) subdistrictName | String | xã |
|
| | 22 | (result) businessName | String | tên ngành nghề chính |
|
| | 23 | (result) fieldName | String | tên lĩnh vực chính |
|
| | 24 | (result) evaluationGrade | String | xếp hạng |
|
| | 25 | (result) evaluationScore | String | điểm đánh giá |
|
| | 26 | (result) supplierRatingRecommended | String | đề xuất |
|
| | 27 | (result) completionDate | String | ngày hoàn thành |
|
| | 28 | (result) fields | List<Object> | Danh sách Lĩnh vực phụ |
|
| | 29 | (fields) id | Integer | id |
|
| | 30 | (fields) organizationId | Integer | id NCC |
|
| | 31 | (fields) fieldId | Integer | id lĩnh vực |
|
| | 32 | (fields) fieldName | String | tên lĩnh vực |
|
| | 33 | (result) businesses | List<Object> | Danh sách Ngành nghề phụ |
|
| | 34 | (businesses) id | Integer | id |
|
| | 35 | (businesses) organizationId | Integer | id NCC |
|
| | 36 | (businesses) businessId | Integer | id ngành nghề phụ |
|
| | 37 | (businesses) businessName | String | tên ngành nghề phụ |
|
| | 38 | (result) bankAccounts | List<Object> | Danh sách tài khoản ngân hàng |
|
| | 39 | (bankAccounts) id | Integer | id |
|
| | 40 | (bankAccounts) organizationId | Integer | id NCC |
|
| | 41 | (bankAccounts) bankName | String | tên ngân hàng |
|
| | 42 | (bankAccounts) accountNumber | String | số tài khoản |
|
| | 43 | (bankAccounts) accountHolder | String | tên tài khoản |
|
| | 44 | (bankAccounts) isDefault | Integer | đánh dấu có mặc định hay không. 1: mặc định, 0: không mặc định |
|
|
|
Method | GET | URL | application/organization/getBankAccounts |
|---|
Description | API Lấy danh sách các tài khoản ngân hàng của 1 NCC |
|---|
Note | API mới |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
2. RequestSTT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | orgId | true | Integer | id NCC |
|
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | code | Integer | 0: thành công còn lại thất bại |
|
| | 2 | message | String | message |
|
| | 3 | result | List<Object> | kết quả trả ra |
|
| | 4 | (bankAccounts) id | Integer | id NCC |
|
| | 5 | (bankAccounts) organizationId | Integer | id NCC |
|
| | 6 | (bankAccounts) bankName | String | tên ngân hàng |
|
| | 7 | (bankAccounts) accountNumber | String | số tài khoản |
|
| | 8 | (bankAccounts) accountHolder | String | tên tài khoản |
|
| | 9 | (bankAccounts) isDefault | Integer | đánh dấu có mặc định hay không. 1: mặc định, 0: không mặc định |
|
|
|
Method | GET | URL | application/organization/delete |
|---|
Description | API xóa 1 NCC |
|---|
Note | API cũ |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
2. RequestSTT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | id | true | Integer | id NCC |
|
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | code | Integer | 0: thành công còn lại thất bại |
|
| | 2 | message | String | message |
|
|
|
Method | GET | URL | application/organization/update |
|---|
Description | API thêm mới/ cập nhật NCC |
|---|
Note | API cũ, sửa lại |
|---|
1. HeadersSTT | Field | Source Data Type / Length | Description | Sample Values |
|---|
| 1 | authorization | <token> | Token của người dùng đăng nhập | Bearer eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjY0NTU3ODksInVzZXIiOiJ7XCJpZFwiOjIwMjAsXCJ1c2VybmFtZVwiOlwiMDM3NDc4ODQwNVwiLFwibmFtZVwiOlwiQ2h1IFRo4buLIExpw6puXCIsXCJyb2xlc1wiOltdLFwibWFwQmVhdXR5U2Fsb25cIjp7XCJicG0ucmVib3JuLnZuXCI6Nn0sXCJlbXBsb3llZUlkXCI6NTMxLFwiYnJhbmNoSWRcIjoyM30ifQ.wrvIFd-Q2kHgkTmPf6ryMY6aDIgXpNsWmSvvifQWc5k |
2. Request bodySTT | Field | Require | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | id | false | Integer | id NCC |
|
| | 2 | contactOr |
| String | Người liên tục |
|
| | 3 | capacityProfile |
| String | hồ sơ năng lực |
|
| | 4 | type |
| Integer | Loại |
|
| | 5 | name |
| String | tên NCC |
|
| | 6 | taxCode |
| String | mã số thuế |
|
| | 7 | evaluationGrade |
| String | Xếp hạng đánh giá |
|
| | 8 | cityId |
| Integer | thành phố |
|
| | 9 | districtId |
| Integer | huyện |
|
| | 10 | subdistrictId |
| Integer | xã |
|
| | 11 | address |
| String | địa chỉ |
|
| | 12 | legalRepresentative |
| String | đại diện pháp lý |
|
| | 13 | businessId |
| Integer | id ngành nghề chính |
|
| | 14 | active |
| Integer | trạng thái |
|
| | 15 | fieldName |
| Integer | id lĩnh vực chính |
|
| | 16 | fields |
| List<Object> | Danh sách Lĩnh vực phụ |
|
| | 17 | (fields) organizationId |
| Integer | id NCC |
|
| | 18 | (fields) fieldId |
| Integer | id lĩnh vực |
|
| | 19 | businesses |
| List<Object> | Danh sách Ngành nghề phụ |
|
| | 20 | (businesses) organizationId |
| Integer | id NCC |
|
| | 21 | (businesses) businessId |
| Integer | id ngành nghề phụ |
|
| | 22 | (result) bankAccounts |
| List<Object> | Danh sách tài khoản ngân hàng |
|
| | 23 | (bankAccounts) organizationId |
| Integer | id NCC |
|
| | 24 | (bankAccounts) bankName |
| String | tên ngân hàng |
|
| | 25 | (bankAccounts)accountNumber |
| String | số tài khoản |
|
| | 26 | (bankAccounts) accountHolder |
| String | tên tài khoản |
|
| | 27 | (bankAccounts) isDefault |
| Integer | đánh dấu có mặc định hay không. 1: mặc định, 0: không mặc định |
|
|
3. Response / Incoming Data Specification| STT | Field | Data Type / Length | Description | Note | Sample Values |
|---|
| 1 | code | Integer | 0: thành công còn lại thất bại |
|
| | 2 | message | String | message |
|
|
|
3.4 Mô tả các trường dữ liệu trên màn hình:
3.4.1. Màn hình Nhà cung cấp (Danh sách thông tin nhà cung cấp):
Cách truy cập: Phân hệ Quản lý NT/NCC > mục Danh mục NCC
Đối tượng sử dụng:
| STT | Trường thông tin/ Nút chức năng | Kiểu dữ liệu | Điều kiện | Quy định | Mô tả |
|---|
| 1 | Ô tìm kiếm | Văn bản (Text) | Không bắt buộc | - Cho phép người dùng nhập từ khóa liên quan đến "Tên nhà cung cấp". - Hệ thống thực hiện tìm kiếm và cập nhật màn hình "Nhà cung cấp" khi người dùng nhấn Enter hoặc biểu tượng kính lúp sau khi hoàn thành nhập từ khóa. - Hành vi hệ thống khi Thể hiện kết quả: - Trường hợp 1 - Có kết quả:
- Điều kiện: Có ít nhất một nhà cung cấp trong hệ thống khớp với từ khóa người dùng nhập.
- Hành vi: Hệ thống thể hiện danh sách nhà cung cấp khớp với từ khóa tìm kiếm.
- Trường hợp 2 - Không có kết quả/Danh sách trống (không có dữ liệu ban đầu):
- Điều kiện: Không có loại nhà cung cấp nào khớp với từ khóa tìm kiếm hoặc danh sách loại danh mục dùng chung ban đầu trống.
- Hành vi: Hệ thống Thể hiện thông báo "Ở đây chưa có gì cả. Hiện tại chưa có nhà cung cấp nào."
| Thể hiện ô tìm kiếm với gợi ý mặc định (placeholder) “Tìm theo tên nhà cung cấp” và biểu tượng kính lúp ở phần đầu ô nhập. |
| 2 | Nút Xuất file excel | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn để điều hướng đến màn hình pop-up "Xuất dữ liệu excel": tham chiếu mục 3.4.2. Màn hình pop-up "Xuất file excel" | Thể hiện nút chức năng mở màn hình pop-up "Xuất file excel". |
| 3 | Nút Bộ lọc | Nút chức năng (Button) | Không bắt buộc | - Cho phép người dùng nhấn để mở ra màn hình pop-up "Bộ lọc" - Màn hình pop-up "Bộ lọc": tham chiếu mục 3.4.3. Màn hình pop-up "Bộ lọc". | Thể hiện nút chức năng cho phép mở màn hình pop-up bộ lọc |
| 4 | Nút Thêm mới | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn để mở ra màn hình pop-up "Thêm mới nhà cung cấp": tham chiếu mục 3.4.4. Màn hình pop-up "Thêm mới nhà cung cấp" | Thể hiện nút chức năng cho phép mở màn hình pop-up Thêm mới nhà cung cấp |
| 5 | Hộp chọn (Select box) | Boolean (True/False) | Không bắt buộc | Cho phép người dùng tích chọn một, nhiều, hoặc tất cả bản ghi loại danh mục dùng chung để phục vụ cho chức năng xóa nhiều bản ghi | Thể hiện trường lựa chọn (select) phục vụ cho chức năng xóa nhiều bản ghi trên màn hình danh sách loại danh mục dùng chung. |
| 6 | STT | Văn bản (Text) | Không bắt buộc | - Số thứ tự động sinh, bắt đầu từ 1, tăng dần - Sau khi thêm mới bản ghi: - Khi xóa bản ghi: STT không đánh lại (giữ nguyên để đảm bảo truy vết). - Không cho phép người dùng thao tác tương tác (nhấn/chọn/sửa). | Thể hiện thứ tự các bản ghi trên màn hình danh sách loại danh mục dùng chung. |
| 7 | Tên nhà cung cấp | Đường dẫn(Hyperlink) | Không bắt buộc | Cho phép người dùng nhấn vào bản ghi để hệ thống mở màn hình Xem chi tiết nhà cung cấp: tham chiếu mục 3.4.5. Màn hình pop-up "Xem chi tiết nhà cung cấp" | Thể hiện thông tin nhà cung cấp và đường dẫn cho phép mở pop-up Xem chi tiết nhà cung cấp |
| 8 | Mã số thuế/ CCCD | Văn bản (Text) | Không bắt buộc | Không cho phép người dùng thao tác tương tác (nhấn/chọn/sửa). | Thể hiện thông tin Mã số thuế/ CCCD ứng với từng bản ghi nhà cung cấp |
| 9 | Lĩnh vực chính | Nút chức năng (Button) | Không bắt buộc | Không cho phép người dùng thao tác tương tác (nhấn/chọn/sửa). | Thể hiện lĩnh vực kinh doanh chính của nhà cung cấp |
| 10 | Xếp hạng đánh giá | Nút chức năng (Button) | Không bắt buộc | - Không cho phép người dùng thao tác tương tác (nhấn/chọn/sửa). - Nguồn dữ liệu: Trường "Xếp hạng đánh giá" từ màn hình chi tiết US 2489_User Story - Lịch sử đánh giá nhà cung cấp | Thể hiện giá trị xếp hạng đánh giá nhà cung cấp |
| 11 | Tỉnh/Thành phố | Văn bản (Text) | Không bắt buộc | Cho phép người dùng nhấn vào bản ghi để hệ thống mở màn hình Xem chi tiết nhà cung cấp: tham chiếu mục 3.4.3. Màn hình pop-up "Xem chi tiết nhà cung cấp" | Thể hiện tên tỉnh thành phố ứng với địa chỉ của từng bản ghi nhà cung cấp |
| 12 | Hoạt động | Văn bản (Text) | Không bắt buộc | - Cho phép người dùng thao tác để thay đổi trạng thái hoạt động của nhà cung cấp. - Trạng thái bật (Active/On):
- Trạng thái bật (Inactive/Off): Hệ thống ghi nhận Nhà cung cấp ngừng hoạt động.
| Thể hiện trạng thái hoạt động của từng bản ghi nhà cung cấp |
| 13 | Thanh icon chức năng | Nút chức năng (Button) | Không bắt buộc | Cho phép người dùng nhấn vào icon chức năng để hệ thống mở màn hình pop-up tương ứng với từng chức năng. - Chỉnh sửa: tham chiếu mục 3.4.6. Màn hình pop-up Chỉnh sửa nhà cung cấp
- Pop-up: Nhân viên mua hàng tạo yêu cầu đánh giá nhà cung cấp
- Thông tin giao dịch
- Xác nhận xóa
| Thể hiện thanh icon chức năng cho phép tương tác với từng bản ghi nhà cung cấp gồm các icon tương ứng với từng chức năng: - Chỉnh sửa
- Tạo yêu cầu đánh giá - Pop-up: Nhân viên mua hàng tạo yêu cầu đánh giá nhà cung cấp
- Thông tin giao dịch
- Xóa
|
3.4.2. Màn hình pop-up Xuất file excel
3.4.3. Màn hình pop-up Bộ lọc
3.4.4. Màn hình pop-up Thêm mới nhà cung cấp
3.4.5. Màn hình pop-up Xem chi tiết nhà cung cấp
3.4.6. Màn hình pop-up Chỉnh sửa nhà cung cấp
3.4.5. Bổ sung 2 trường khi xuất file excel trên màn hình danh sách nhà cung cấp
| Trường/ Nút chức năng | Kiểu dữ liệu | Điều kiện | Quy định | Mô tả |
|---|
| 1 | Nút "Áp dụng" | Nút chức năng (Button) | Bắt buộc | - Cho phép người dùng nhấn để thực hiện quá trình xuất tệp dữ liệu nhà cung cấp - Khi nhấn nút, hành vi hệ thống như sau:
- Hành vi 1: kiểm tra việc người dùng đã hoàn thành chọn kiểu xuất File.
- Hành vi 2: tiến hành xuất và tải file Excel chứa tệp dữ liệu excel đã chọn về máy tính.
- Hành vi 3: Thể hiện thông báo (toast) thành công:
- Tiêu đề thông báo: Thành công
- Nội dung thông báo: Xuất dữ liệu thành công
- Thông tin tệp dữ liệu được xuất ra: | Thể hiện nút chức năng cho phép xuất tệp dữ liệu excel hợp đồng. |
Mẫu file:

Bổ sung 2 trường thông tin sau:
| Trường/ Nút chức năng | Mô tả |
|---|
| 1 | Lĩnh vực chính | Dữ liệu được lấy từ trường loại "lĩnh vực chính" của nhà cung cấp |
| 2 | Xếp hạng đánh giá | Dữ liệu được lấy từ trường "xếp hạng đánh giá" |