Professional Documents
Culture Documents
Hà Nội, <năm>
Tài liệu thiết kế hệ thống V1.0
Ngày thay đổi Lý do Mục sửa đổi Mô tả thay đổi Phiên bản mới
TRANG KÝ
ETC:
Người lập: <Họ tên>_____________________ Ngày _________________
<Chức danh>
Khách hàng:
MỤC LỤC
II.1.2.2.1. Màn hình xem danh sách, tìm kiếm căn cứ........................................2
II.1.2.2.2. Thêm mới căn cứ...............................................................................2
II.1.2.2.3. Chỉnh sửa căn cứ................................................................................2
II.1.2.2.4. Xem chi tiết căn cứ............................................................................2
II.1.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.2.2.2.1. Xem danh sách, tìm kiếm danh mục thông tư nghị định....................2
II.2.2.2.2. Thêm mới danh mục thông tư nghị định............................................2
II.2.2.2.3. Chỉnh sửa danh mục thông tư nghị định............................................2
II.2.2.2.4. Xem chi tiết danh mục thông tư nghị định.........................................2
II.2.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.3.2.2.1. Xem danh sách, tìm kiếm danh mục văn bản pháp luật.....................2
II.3.2.2.2. Thêm mới danh mục văn bản pháp luật.............................................2
II.3.2.2.3. Chỉnh sửa danh mục văn bản pháp luật..............................................2
II.3.2.2.4. Xem chi tiết danh mục văn bản pháp luật..........................................2
II.3.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.4.2.2.1. Màn hình xem danh sách, tìm kiếm nghề nghiệp...............................2
II.4.2.2.2. Thêm mới nghề nghiệp......................................................................2
II.4.2.2.3. Chỉnh sửa nghề nghiệp.......................................................................2
II.4.2.2.4. Xem chi tiết nghề nghiệp...................................................................2
II.4.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.5.2.2.1. Xem danh sách, tìm kiếm danh mục tang vật, phương tiện, giấy tờ...2
II.5.2.2.2. Thêm mới danh mục tang vật, phương tiện, giấy tờ...........................2
II.5.2.2.3. Chỉnh sửa danh mục tang vật, phương tiện, giấy tờ...........................2
II.5.2.2.4. Xem chi tiết danh mục tang vật, phương tiện, giấy tờ........................2
II.5.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.5.2.3.1. Lấy danh sách và tìm kiếm tang vật, phương tiện, giấy tờ.................2
II.5.2.3.2. Thêm mới tang vật, phương tiện, giấy tờ...........................................2
II.5.2.3.3. Chỉnh sửa tang vật, phương tiện, giấy tờ...........................................2
II.5.2.3.4. Xem chi tiết tang vật, phương tiện, giấy tờ........................................2
II.5.2.3.5. Export Excel......................................................................................2
II.5.2.3.6. Xóa tang vật, phương tiện, giấy tờ.....................................................2
II.6. Danh mục hành vi vi phạm..................................................................................................2
II.6.1. Mục đích........................................................................................................................2
II.6.2. Chi tiết từng mục...........................................................................................................2
II.6.2.1. Thiết kế dữ liệu.....................................................................................................2
II.6.2.2.1. Xem danh sách, tìm kiếm danh mục hành vi vi phạm........................2
II.7.2.2.1. Màn hình xem danh sách, tìm kiếm nhóm hành vi vi phạm...............2
II.7.2.2.2. Thêm mới nhóm hành vi vi phạm......................................................2
II.7.2.2.3. Chỉnh sửa nhóm hành vi vi phạm......................................................2
II.7.2.2.4. Xem chi tiết nhóm hành vi vi phạm...................................................2
II.7.2.3. Thiết kế các hàm, thủ tục......................................................................................2
II.7.2.3.6. Xuất Excel – Trả file Excel chứa danh sách căn cứu lọc theo nhiều
tiêu chí................................................................................................................ 2
II.8. Danh mục nơi cấp giấy tờ....................................................................................................2
II.8.1. II.1.1. Mục đích.............................................................................................................2
II.8.2. II.1.2. Chi tiết từng mục.................................................................................................2
II.8.2.1. Thiết kế dữ liệu.....................................................................................................2
II.9.2.2.1. Xem danh sách, tìm kiếm tuyến đường quốc lộ.................................2
II.9.2.2.2. Thêm mới tuyến đường quốc lộ.........................................................2
II.9.2.2.3. Chỉnh sửa tuyến đường quốc lộ.........................................................2
II.9.2.2.4. Xem chi tiết tuyến đường quốc lộ......................................................2
II.11.2.2.1. Xem danh sách, tìm kiếm Biên bản vi phạm hành chính.................2
II.11.2.2.2. Thêm mới/Sửa Biên bản 01- Biên bản vi phạm hành chính.............2
II.11.2.2.3. Xem chi tiết Biên bản 01.................................................................2
II.11.2.3. Thiết kế các hàm, thủ tục....................................................................................2
TT Tên bảng Mô tả
1 CAN_CU Bảng lưu trữ danh mục Căn Cứ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành phần / Bắt Định dạng Vai trò Ghi chú
Control buộc
nhập?
Form tìm kiếm/lọc dữ liệu danh mục
ma Textbox Nhập mã căn cứ
ten Textbox Nhập tên căn cứ
trangThai Dropdownlist Chọn loại trạng thái căn
cứ
Danh sách dữ liệu danh mục
ma Text Hiển thị mã căn cứ
ten Text Hiển thị tên căn cứ
trangThai Text Hiển thị trạng thái căn
cứ
ngaySua Text Hiển thị ngày sửa căn cứ
nguoiSua Text Hiển thị ngày sửa căn cứ
f.1.2.1.1.3. Xử lý sự kiện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Bắt
Tên thành phần /
STT buộc Định dạng Mô tả
Control
?
Textbox Hiển thị mã căn cứ Mã tự
1 ma
sinh, không thể nhập
2 ten X Textbox Nhập tên căn cứ
Dropdownli Chọn loại trạng thái căn cứ
3 trangThai X
st
4 ghiChu Textbox Nhập ghi chú
f.1.2.1.2.3. Xử lý sự kiện
thêm mới.
BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu danh mục theo thông tin vừa nhập →
Màn hình chuyển đến màn xem danh sách danh mục.
f.1.2.1.2.4. Kiểm soát dữ liệu/các ràng buộc
Bắt
Tên thành phần /
STT buộc Định dạng Mô tả
Control
?
Textbox Hiển thị mã căn cứ
1 ma
Không thể chỉnh sửa
2 ten X Textbox Nhập tên căn cứ
Dropdownli Chọn loại trạng thái căn cứ
3 trangThai X
st
4 ghiChu Textbox Nhập ghi chú
f.1.2.1.3.3. Xử lý sự kiện
Tên thành phần / Bắt Định dạng Vai trò Ghi chú
Control buộc
nhập?
Form tìm kiếm/lọc dữ liệu danh mục
ma Textbox Hiển thị mã căn cứ
ten Textbox Hiển thị tên căn cứ
trangThai Dropdownlist Hiển thị loại trạng
thái căn cứ
ghiChu Textbox Hiển thị ghi chú
f.1.2.1.4.3. Xử lý sự kiện
f.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách căn cứ theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/can-cu?
liệu
1 ten String Tên căn cứ
2 ma String Mã căn cứ
3 trangThai Boolean Trạng thái của căn cứ
+ true : kích hoạt
+ false : không kích hoạt
4 ghiChu String Ghi chú
5 nguoiTao String Người tạo căn cứ
6 ngayTao Date Ngày tạo căn cứ
7 nguoiSua String Người sửa căn cứ
8 ngaySua Date Ngày sửa căn cứ
9 total Integer Tổng số lượng bản ghi
Service:
- Gọi hàm PKG_CAN_CU.GET_PAGE xử lý lấy danh sách căn cứ từ database.
Procedure:
- Hàm PKG_CAN_CU.GET_PAGE là một thủ tục được sử dụng để tìm kiếm các Căn
Cứ dựa trên các tiêu chí khác nhau.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
1 C_MA_CAN_CU VARCHAR2 N Mã căn cứ cần tìm kiếm
2 _TEN_CAN_CU VARCHAR2 N Tên căn cứ cần tìm kiếm
3 C_TRANG_THAI NUMBER N Trạng thái của căn cứ
+ 1 : kích hoạt
+ 0 : không kích hoạt
4 P_PAGE NUMBER N Trang cần tìm kiếm ( bắt đầu từ
0)
f.1.2.2.2.1. API
Service:
- Kiểm tra xem tên căn cứ gửi lên đã tồn tại trong bảng CAN_CU chưa?
- Gọi hàm PKG_CAN_CU.CREATE_ITEM để tạo mới căn cứ trong database.
Procedure:
- Hàm PKG_CAN_CU.CREATE_ITEM là một thủ tục được sử dụng để tạo mới căn
cứ trong database.
f.1.2.2.2.4. Xử lý ngoại lệ
f.1.2.2.3.1. API
Service:
- Kiểm tra xem mã căn cứ gửi lên có tồn tại trong bảng CAN_CU chưa?
- Kiểm tra xem tên căn cứ gửi lên đã tồn tại trong bảng CAN_CU chưa?
- Nếu tồn tại thì check xem căn cứ đó có phải căn cứ muốn cập nhật hay không, nếu
không phải trả ra lỗi.
- Gọi hàm PKG_CAN_CU.UPDATE_ITEM xử lý lưu xuống database.
Procedure:
- Hàm PKG_CAN_CU.UPDATE_ITEM là một thủ tục được sử dụng để cập nhật căn
cứ trong database.
Các giá trị nhập vào và trả ra gồm:
Hàm UPDATE_ITEM được sử dụng để cập nhật thông tin của một Căn Cứ đã có trong
cơ sở dữ liệu.
Input:
- C_MA_CAN_CU: Mã của Căn Cứ cần cập nhật.
- C_TEN_CAN_CU: Tên của căn cứ cần cập nhật
- C_GHI_CHU: Ghi chú.
- C_TRANG_THAI: Trạng thái của căn cứ.
- C_NGUOI_SUA: Mã người sửa
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả truy vấn danh sách các Căn Cứ
được cập nhật.
f.1.2.2.3.4. Xử lý ngoại lệ
f.1.2.2.4.1. API
Service:
- Kiểm tra xem tên căn cứ gửi lên đã tồn tại trong bảng CAN_CU chưa.
- Gọi hàm PKG_CAN_CU.GET_ITEM_BY_MA xử lý lấy lên căn cứ theo mã từ
database
Procedure:
- Hàm PKG_CAN_CU. GET_ITEM_BY_MA là một thủ tục được sử dụng để lấy
thông tin căn cứ trong database.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
1 C_MA_CAN_CU VARCHAR2(5 N Mã căn cứ
0 CHAR)
6 V_CURSOR CURSOR X Trả về dòng dữ liệu căn cứ
f.1.2.2.5.1. API
Service:
- Gọi hàm PKG_CAN_CU.GET_PAGE xử lý lấy danh sách căn cứ từ database
- Xử lý trả ra file Excel dạng byte[]
Procedure:
- Hàm PKG_CAN_CU. GET_PAGE là một thủ tục được sử dụng để lấy thông tin căn
cứ trong database.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
1 C_MA_CAN_CU VARCHAR2(50 N Mã căn cứ
CHAR)
2 C_TEN_CAN_CU VARCHAR2(255 N Tên căn cứ
CHAR)
3 C_GHI_CHU VARCHAR2(500 N Ghi chú
CHAR)
4 C_TRANG_THAI NUMBER(1) N Trạng thái
5 C_NGUOI_TAO VARCHAR2(50 N Người tạo
CHAR)
6 V_CURSOR CURSOR X Trả về dòng dữ
liệu căn cứ vừa tạo
- Input:
- C_MA_CAN_CU: Mã căn cứ.
- C_TEN_CAN_CU: Tên căn cứ.
- C_TRANG_THAI: Trạng thái căn cứ.
- P_PAGE: Trang bắt đầu (ở đây là 0).
- P_PAGE_SIZE: Số bản ghi của trang (toàn bộ bản ghi).
- Output:
- V_CURSOR: con trỏ tham chiếu đến kết quả tìm kiếm căn cứ theo điều kiện.
Kết quả trả về của thủ tục bao gồm một danh sách các Căn Cứ được tìm thấy, phù hợp
với các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang và sắp xếp theo
f.1.2.2.6.1. API
Service:
- Kiểm tra xem mã căn cứ gửi lên có tồn tại trong bảng CAN_CU không?
- Gọi hàm PKG_CAN_CU.DELETE_ITEM xử lý xóa căn cứ ở database.
Procedure:
- Hàm PKG_CAN_CU.DELETE_ITEM là một thủ tục được sử dụng để cập nhật căn
cứ trong database là đã xóa.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
1 C_MA_CAN_CU VARCHAR2(5 N Mã căn cứ
0 CHAR)
5 C_NGUOI_SUA VARCHAR2(5 N Người sửa căn cứ
0 CHAR)
6 V_CURSOR CURSOR X Trả về dòng dữ liệu căn cứ
vừa xóa
Hàm DELETE_ITEM được sử dụng để cập nhật thông tin của một Căn Cứ đã có trong
cơ sở dữ liệu.
Input:
- C_MA_CAN_CU: Mã của Căn Cứ cần cập nhật.
- C_NGUOI_SUA: Mã người xóa căn cứ
Output:
- V_CURSOR: Con trỏ tham chiếu Căn Cứ vừa xóa.
Hàm này sẽ cập nhật dữ liệu IS_DELETED = 1 trong bảng CAN_CU với thông tin mã
căn cứ được truyền vào
f.1.2.2.6.4. Xử lý ngoại lệ
IEU_LUC
7 NGAY_HET_ TIMESTAMP (3) Có hiệu lực đến ngày
HIEU_LUC
8 NGUOI_TAO VARCHAR2 (50 Tài khoản người tạo
CHAR)
9 NGAY_TAO DATE Thời gian tạo
10 NGUOI_SUA VARCHAR2 (50 Tài khoản người sửa
CHAR)
11 NGAY_SUA DATE Thời gian sửa gần nhất
e.1.2.1.1. Xem danh sách, tìm kiếm danh mục thông tư nghị định
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành
Bắt
STT Tên label phần / Định dạng Mô tả
buộc?
Control
Form tìm kiếm/lọc dữ liệu danh mục
Mã TT-NĐ ma Textbox Nhập mã thông tư
1
nghị định
Ký hiệu TT-NĐ kyHieu Textbox Nhập ký hiệu thông tư
2
nghị định
Ngày hiệu lực ngayCoHieuL Datepicker Chọn, nhập ngày
3 uc TTNĐ bắt đầu có hiệu
lực
Ngày hết hiệu ngayHetHieuL Datepicker Chọn, nhập ngày
4 lực uc TTNĐ hết hiệu lực
Nội dung noiDung Textbox Nhập nội dung của
5
TTNĐ
e.1.2.1.1.3. Xử lý sự kiện
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Chọn menu Danh mục/Thông tư nghị định → Xem
thông tin danh sách danh mục thông tư nghị định.
Màn hình hiển thị như hình treen
2 BtnSearch_Click Nhập thông tin trong Form tìm kiếm/lọc dữ liệu danh
mục → Click Tìm kiếm.
Hệ thống tìm kiếm danh mục theo thông tin vừa nhập
→ Màn hình hiển thị danh sách danh mục thỏa mãn bộ
lọc.
Tên thành
Bắt
STT Tên label phần / Định dạng Mô tả
buộc?
Control
Form thông tin chung
Mã TT-NĐ ma Textbox Mã thông tư nghị định
1
Mã là tự sinh
Ký hiệu TT- kyHieu X Textbox Ký hiệu thông tư nghị
2 NĐ định
3 Ngày hiệu lực ngayCoHieu X Datepicker Chọn, nhập ngày
Tên
thành Bắt
STT Tên label Định dạng Mô tả
phần / buộc?
Control
Form thông tin chung
Mã TT-NĐ ma Textbox Mã thông tư nghị định
1
Mã là tự sinh
Ký hiệu TT-NĐ kyHieu X Textbox Ký hiệu thông tư nghị
2
định
Ngày hiệu lực ngayCoH X Datepicker Chọn, nhập ngày
3 ieuLuc TTNĐ bắt đầu có hiệu
lực
Ngày hết hiệu lực ngayHet Datepicker Chọn, nhập ngày
4
HieuLuc TTNĐ hết hiệu lực
Nội dung noiDung Textbox Nhập nội dung của
5
TTNĐ
6 Ngày ban hành ngayBan X Datepicker Chọn, nhập ngày ban
e.1.2.1.3.3. Xử lý sự kiện
nếu thỏa mãn → lưu danh mục theo thông tin vừa
nhập → Màn hình chuyển đến màn xem danh
sách danh mục.
e.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách thông tư nghị định theo nhiều tiêu chí tìm kiếm.
Method URL
GET xlvp/api/v1/danh-muc/thong-tu-nghi-dinh
e.1.2.2.1.2. Các tham số gửi lên và trả về
cần tìm
3 noiDung String Nội dung thông tư nghị định
cần tìm
4 ngayBanHanh Date Ngày ban hành thông tư nghị
định
5 ngayCoHieuLuc Date Ngày có hiệu lực của thông tư
nghị định
6 ngayHetHieuLuc Date Ngày hết hiệu lực của thông tư
nghị định
7 isConHieuLuc Boolean Thông tư có còn hiệu lực:
+ True: còn hiệu lực
+ False: hết hiệu lực
8 linhVuc String Lĩnh vực của thông tư nghị
định
9 page Int Trang cần tìm (bắt đầu từ 0)
10 pageSize int Số bản ghi trên một trang
11 timKiemNhanh Boolean Nội dung tìm kiếm nhanh
12 isFetchAll Boolean Lấy tất cả các bản ghi của
thông tư nghị định
Service:
- Gọi hàm PKG_THONG_TU_NGHI_DINH.SEARCH xử lý lấy danh sách thông tư
nghị định từ database.
Procedure:
- Hàm PKG_THONG_TU_NGHI_DINH.SEARCH là một thủ tục được sử dụng để tìm
kiếm các thông tư nghị định dựa trên các tiêu chí khác nhau.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
1 P_TIM_KIEM VARCHAR2 N Chuỗi tìm kiếm nhanh
_NHANH
2 P_MA VARCHAR2 N Mã thông tư nghị định
3 P_KY_HIEU VARCHAR2 N Ký hiệu thông tư nghị đinh
- Hàm SEARCH() được sử dụng để lấy danh sách các thông tư nghị định theo các
điều kiện tìm kiếm được cung cấp. Kết quả trả về được sắp xếp giảm dần theo
ngày hết hiệu lực. Đây là một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về
một con trỏ tham chiếu trỏ đến danh thông tư nghị định.
- Input:
o P_TIM_KIEM_NHANH: Chuỗi tìm kiếm thông tin của thông tư nghị định
(có thể là mã số, ký hiệu thông tư nghị định).
o P_MA: Mã thông tư nghị định
o P_PAGE: Trang hiện tại của danh sách thông tư nghị định
- Output:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các thông tư
nghị định tìm kiếm được. Các thông tin bao gồm tất cả các trường trong
bảng THONG_TU_NGHI_DINH cùng với thông tin lĩnh vực tương ứng.
Các thông tư nghị định được sắp xếp giảm dần theo ngày hết hiệu lực.
e.1.2.2.1.4. Xử lý ngoại lệ
e.1.2.2.2.1. API
Service:
- Validate request:
Kiểm tra xem ngày hết hiệu có khác rỗng và lớn hơn ngày ngày có hiệu lực
không?
Kiểm tra xem ngày ban hành có lớn hơn ngày có hiệu lực không?
Kiểm tra xem ký hiệu thông tư nghị định đã tồn tại chưa?
- Gọi hàm PKG_THONG_TU_NGHI_DINH.CREATE_THONG_TU_NGHI_DINH
để tạo mới thông tư nghị định trong database.
- Gọi
PKG_THONG_TU_NGHI_DINH.UPSERT_THONG_TU_NGHI_DINH_BO_SUN
G để thêm mới thông tư nghị định bổ sung tương ứng trong database
- Nếu hình thức bổ sung là thay thế, gọi hàm
PKG_THONG_TU_NGHI_DINH.SET_NGAY_HET_HIEU_LUC để cập nhập lại
ngày hết hiệu lực của thông tư nghị định vừa tạo.
- Gọi hàm PKG_THONG_TU_NGHI_DINH.GET_TTND_BO_SUNG để cập nhập lại
vào thông tư nghị định vừa tạo và trả về.
Procedure:
- Hàm PKG_THONG_TU_NGHI_DINH.CREATE_THONG_TU_NGHI_DINH là
một thủ tục được sử dụng để tạo mới thông tư nghị dịnh trong database.
- Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 P_SO NUMBER (10,0) N Số của thông tư nghị định
2 P_KY_HIEU VARCHAR2 (20 N Ký hiệu của thông tư nghị
CHAR) định
3 P_MA VARCHAR2 (10 N Mã của thông tư nghị định
CHAR)
4 P_NOI_DUN VARCHAR2 (255 N Nội dung của thông tư nghị
G CHAR) định
5 P_NGAY_B TIMESTAMP (3) N Ngày ban hành của thông
AN_HANH tư nghị định
6 P_NGAY_C TIMESTAMP (3) N Có hiệu lực từ ngày
O_HIEU_LU
C
V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
THONG_TU_NGHI_DINH.
Hàm này sẽ thêm dữ liệu vào bảng THONG_TU_NGHI_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm
GET_THONG_TU_NGHI_DINH_BY_MA để lấy thông tin bản ghi vừa được
thêm và trả về.
Hàm PKG_THONG_TU_NGHI_DINH.UPSERT_THONG_TU_NGHI_DINH_
BO_SUNG là một thủ tục được sử dụng để tạo mới thông tư nghị định bổ sung
trong database.
o Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 P_KY_HIEU VARCHAR2(50 N Ký hiệu thông tư nghị định
_TT_ND CHAR)
2 P_KY_HIEU VARCHAR2(50 N Ký hiệu thông tư nghị định được
_TT_ND_D CHAR) sửa đổi bổ sung
UOC_BS
3 V_CURSOR CURSOR X Trả về dòng dữ liệu thông tư
nghị định bổ sung vừa tạo mới
- Hàm UPSERT_THONG_TU_NGHI_DINH_BO_SUNG() được sử dụng để thêm một
bản ghi mới vào bảng THONG_TU_NGHI_DINH_BO_SUNG. Hàm nhận các tham
số đầu vào là thông tin của bản ghi mới.
- Đầu vào:
P_KY_HIEU_TT_ND: Ký hiệu của thông tư nghị định có kiểu dữ liệu
trùng với kiểu dữ liệu KY_HIEU_TT_ND trong bảng
THONG_TU_NGHI_DINH_BO_SUNG
P_KY_HIEU_TT_ND_DUOC_BS: Ký hiệu của thông tư nghị định có kiểu
dữ liệu trùng với kiểu dữ liệu KY_HIEU_TT_ND_DUOC_BS trong bảng
THONG_TU_NGHI_DINH_BO_SUNG
- Đầu ra:
NA
- Hàm SET_NGAY_HET_HIEU_LUC() là một thủ tục được sử dụng để cập nhập lại
ngày hết liệu lực của thông tư nghị định.
- Các giá trị nhập vào và trả ra gồm:
Ký hiệu của thông tư nghị định bổ sung để trống và chưa tồn tại ký hiệu đó
trong hệ thống
Căn cứ của thông tư nghị định bổ sung để trống và dài quá 255 ký tự.
Ký hiệu của thông tư nghị định sai định dạng và qá 20 ký tự.
- Bẫy lỗi ResourceExistedException xảy ra khi:
- Khi tên ký hiệu của thông tư nghị định gửi lên đã tồn tại trong hệ thống.
- Bẫy lỗi CustomerException khi:
- Ngày có hiệu lực lớn hơn ngày hết hiệu lực
- Ngày ban hành lớn hơn ngày có hiệu lực
e.1.2.2.3.1. API
>
Các giá trị trả về là:
STT Tham số Kiểu dữ Mô tả
liệu
1 ma String Mã thông tư nghị định
2 so Long Số thông tư nghị định
3 kyHieu String Ký hiệu thông tư nghị định
4 noiDung String Nội dung thông tư nghị định
5 ngayBanHanh Date Ngày ban hành của thông tư nghị định
6 ngayCoHieuLuc Date Ngày có hiệu lực của thông tư nghị định
7 ngayHetHieuLuc Date Ngày hết hiệu lực của thông tư nghị định
8 ttndBoSung List<Thong Danh sách thông tư nghị định bổ sung
TuNghiDinh
BoSung>
9 nguoiSua String Người sửa cuối
10 ngaySua String Ngày sửa cuối
11 hinhThucBoSung String Hình thức bổ sung
e.1.2.2.3.3. Mô tả chi tiết
Service:
- Validate request:
o Kiểm tra xem ngày hết hiệu có khác rỗng và lớn hơn ngày ngày có hiệu lực
không?
o Kiểm tra xem ngày ban hành có lớn hơn ngày có hiệu lực không?
o Kiểm tra xem mã thông tư nghị định có tồn tại không?
- Gọi hàm GET_TTND_BO_SUNG trong PKG_THONG_TU_NGHI_DINH để lấy ra
thông tư nghị định bổ sung cũ.
- Gọi hàm UPDATE_THONG_TU_NGHI_DINH trong
PKG_THONG_TU_NGHI_DINH để cập nhập thông tư nghị định theo mã.
- Gọi hàm DELETE_THONG_TU_NGHI_DINH_BO_SUNG trong
PKG_THONG_TU_NGHI_DINH để xóa các thông tư nghị định bổ sung cũ theo ký
hiệu thông tư nghị định cần cập nhập.
- Nếu hình thức bổ sung cũ là thay thế, gọi hàm SET_NGAY_HET_HIEU_LUC trong
PKG_THONG_TU_NGHI_DINH để cập nhập lại ngày hết hiệu lực của thông tư nghị
định cần cập nhập bằng rỗng.
- Gọi hàm UPSERT_THONG_TU_NGHI_DINH_BO_SUNG trong
PKG_THONG_TU_NGHI_DINH để cập nhập thông tư nghị định bổ sung.
- Nếu hình thức bổ sung mới là thay thế, gọi hàm SET_NGAY_HET_HIEU_LUC
trong PKG_THONG_TU_NGHI_DINH để cập nhập lại ngày hết hiệu lực của thông
tư nghị định.
- Gọi hàm GET_TTND_BO_SUNG trong PKG_THONG_TU_NGHI_DINH để lấy ra
thông tư nghị định bổ sung mới để trả về.
Procedure:
- Hàm PKG_THONG_TU_NGHI_DINH.UPDATE_THONG_TU_NGHI_DINH là
một thủ tục được sử dụng để cập nhập thông tư nghị dịnh trong database.
- Các giá trị nhập vào và trả ra gồm:
UOC_BS
3 V_CURSOR CURSOR X Trả về dòng dữ liệu thông tư nghị
định bổ sung vừa tạo mới
- Hàm UPSERT_THONG_TU_NGHI_DINH_BO_SUNG() được sử dụng để thêm một
bản ghi mới hoặc cập nhập bản ghi đã có vào bảng
THONG_TU_NGHI_DINH_BO_SUNG. Hàm nhận các tham số đầu vào là thông tin
của bản ghi mới.
- Đầu vào:
P_KY_HIEU_TT_ND: Ký hiệu của thông tư nghị định có kiểu dữ liệu
trùng với kiểu dữ liệu KY_HIEU_TT_ND trong bảng
THONG_TU_NGHI_DINH_BO_SUNG
P_KY_HIEU_TT_ND_DUOC_BS: Ký hiệu của thông tư nghị định có kiểu
dữ liệu trùng với kiểu dữ liệu KY_HIEU_TT_ND_DUOC_BS trong bảng
THONG_TU_NGHI_DINH_BO_SUNG
- Đầu ra: NA
e.1.2.2.3.4. Xử lý ngoại lệ
e.1.2.2.4.1. API
Mô tả: Gọi API để lấy thông tin chi tiết thông tư nghị định
Method URL
GET xlvp/api/v1/danh-muc/thong-tu-nghi-dinh/{ma}
e.1.2.2.4.2. Các tham số gửi lên và trả về
Service:
- Gọi hàm GET_THONG_TU_NGHI_DINH_BY_MA trong
PKG_THONG_TU_NGHI_DINH xử lý lấy lên thông tư nghị định theo mã từ
database
- Kiểm tra xem có tồn tại thông tư nghị định theo mã đã gửi lên không?
- Gọi PKG_THONG_TU_NGHI_DINH.GET_TTND_BO_SUNG để lấy lên thông
tư nghị định bổ sung.
Procedure:
- Hàm PKG_THONG_TU_NGHI_DINH.GET_THONG_TU_NGHI_DINH_BY_MA
là một thủ tục được sử dụng để lấy thông tin thông tư nghị trong database.
- Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
1 P_MA VARCHAR2 N Mã thông tư nghị định
(10 CHAR) của danh mục thông tư
nghị định cần tìm
2 V_CURSO CURSOR X Con trỏ tham chiều đến
R kết quả tìm kiếm.
- Hàm GET_THONG_TU_NGHI_DINH_BY_MA lấy lên 1 thông tư nghị định có mã
được truyền xuống
- Input:
C_MA: Mã thông tư nghị định, là một biến kiểu dữ liệu của cột MA trong
bảng THONG_TU_NGHI_DINH.
- Output:
V_CURSOR: Con trỏ tham chiếu đến thông tư nghị định có MA = P_MA
truyền xuống với giá trị cột IS_DELETE = 0.
- Hàm GET_TTND_BO_SUNG() là một thủ tục được sử dụng để lấy ra các thông tư
nghị định bổ sung theo ký hiệu thông tư nghị định
- Các giá trị nhập vào và trả ra gồm:
- Đầu vào:
P_KY_HIEU: Kiểu dữ liệu tương ứng với trường KY_HIEU_TT_ND trong
bảng THONG_TU_NGHI_DINH_BO_SUNG.
- Đầu ra:
V_CURSOR: Kết quả trả về thông tin của thông tư nghị định bổ sung
e.1.2.2.4.4. Xử lý ngoại lệ
Mô tả: Gọi API để lấy thông tin chi tiết thông tư nghị định
Method URL
GET xlvp/api/v1/danh-muc/thong-tu-nghi-dinh/export/excel
e.1.2.2.5.2. Các tham số gửi lên và trả về
Service:
- Gọi hàm PKG_THONG_TU_NGHI_DINH.SEARCH xử lý lấy danh sách thông
tư nghị định từ database.
- Xử lý trả ra file Excel dạng byte[]
Procedure:
- Hàm PKG_THONG_TU_NGHI_DINH.SEARCH là một thủ tục được sử dụng để lấy
thông tin thông tư nghị định trong database.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Mô tả
Xuất
[N/X]
1 P_TIM_KIEM VARCHAR2 N Chuỗi tìm kiếm nhanh
_NHANH
2 P_MA VARCHAR2 N Mã thông tư nghị định
3 P_KY_HIEU VARCHAR2 N Ký hiệu thông tư nghị đinh
4 P_NOI_DUN VARCHAR2 N Nội dung thông tư nghị định
G
5 P_NGAY_BA DATE N Ngày ban hành thông tư nghị định
N_HANH
6 P_NGAY_CO DATE N Ngày có hiệu lực của thông tự nghị
_HIEU_LUC định tương ứng
7 P_NGAY_HE DATE N Ngày hết hiệu lực của thông tự nghị
T_HIEU_LUC định tương ứng
8 P_IS_CON_H NUMBER N Thông tư nghị định có còn hiệu lực
IEU_LUC hay không
9 P_LINH_VUC VARCHAR2 Lĩnh vực của thông tư nghị định
10 P_PAGE NUMBER N Trang hiện tại
11 P_SIZE NUMBER N Dữ liệu trên một trang
12 V_CURSOR CURSOR X Con trỏ tham chiếu đến danh sách
thông tự nghị định tìm được
- Hàm SEARCH() được sử dụng để lấy danh sách các thông tư nghị định theo các
điều kiện tìm kiếm được cung cấp. Kết quả trả về được sắp xếp giảm dần theo
ngày hết hiệu lực. Đây là một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về
một con trỏ tham chiếu trỏ đến danh thông tư nghị định.
- Input:
o P_TIM_KIEM_NHANH: Chuỗi tìm kiếm thông tin của thông tư nghị định
(có thể là mã số, ký hiệu thông tư nghị định).
o P_MA: Mã thông tư nghị định
o P_PAGE: Trang hiện tại của danh sách thông tư nghị định
- Output:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các thông tư
nghị định tìm kiếm được. Các thông tin bao gồm tất cả các trường trong
bảng THONG_TU_NGHI_DINH cùng với thông tin lĩnh vực tương ứng.
Các thông tư nghị định được sắp xếp giảm dần theo ngày hết hiệu lực.
e.1.2.2.5.4. Xử lý ngoại lệ
e.1.2.2.6.1. API
Service:
- Gọi hàm GET_THONG_TU_NGHI_DINH_BY_MA trong
PKG_THONG_TU_NGHI_DINH.
- Kiểm tra có dữ liệu của thông tư nghị định trong database theo mã gửi lên hay
không?
- Gọi hàm PKG_THONG_TU_NGHI_DINH.GET_TTND_BO_SUNG để lấy ra
thông tư nghị định bổ sung cũ.
- Gọi hàm DELETE_THONG_TU_NGHI_DINH trong
PKG_THONG_TU_NGHI_DINH để xử lý xóa thông tư nghị định ở database.
CHAR)
2 MA_THAM_CHIEU VARCHAR2(20 X Mã tham chiếu
CHAR)
3 DIEU NUMBER(2,0) Điều
4 KHOAN NUMBER(2,0) Khoản
5 DIEM VARCHAR2(2 Điểm
CHAR)
6 LINH_VUC VARCHAR2(100 Lĩnh vực của VBPL
CHAR)
7 MA_TTNĐ VARCHAR2(10 Mã thông tư nghị định
CHAR)
8 TRANG_THAI NUMBER(1) X Trạng thái(1: kích hoạt, 0:
không kích hoạt), giá trị
mặc định là 1
9 NOI_DUNG VARCHAR2(1000 Nội dung VBPL
CHAR)
10 NGUOI_TAO VARCHAR2(50 Tài khoản người tạo
CHAR)
11 NGAY_TAO DATE X Ngày tạo VBPL
Giá trị mặc định:
CURRENT_TIMESTAMP
12 NGUOI_SUA VARCHAR2(50 Tài khoản người sửa
CHAR)
13 NGAY_SUA DATE Thời gian sửa
14 IS_DELETED NUMBER(1,0) X Trạng thái xóa(1: đã xóa, 0:
chưa xóa)
Giá trị mặc định: 0
e.1.2.1.1. Xem danh sách, tìm kiếm danh mục văn bản pháp luật
Màn hình chuyển đến trang Xem chi tiết danh mục văn
bản pháp luật tương ứng với bản ghi
BtnDelete_Click Click nút Xóa ở cuối mỗi bản ghi trong danh sách →
Chọn Đồng ý.
Hệ thống xóa bản ghi tương ứng → Màn hình reload và
cập nhật lại danh sách danh mục.
e.1.2.1.1.4. Kiểm soát dữ liệu/các ràng buộc
HÌnh 10: Thêm mới danh mục Văn bản pháp luật
HÌnh 11: Thêm mới sửa đổi bổ sung cho Văn bản pháp luật
HÌnh 12: Xem chi tiết sửa đổi bổ sung cho Văn bản pháp luật
HÌnh 13: Sửa thông tin sửa đổi bổ sung cho Văn bản pháp luật
e.1.2.1.2.2. Danh sách control/thành phần giao diện
Tên thành
Bắt Định
STT Tên label phần / Mô tả
buộc? dạng
Control
Form thông tin chung
1 Mã TTNĐ maTTNĐ X Dropdo Chọn TT-ND
wnlist
2 Mã tham chiếu maThamChie Textbo Hiển thị mã tham chiếu
VBPL u x VBPL
Mã tham chiếu là tự sinh
3 Điều dieu Textbo Nhập điều văn bản pháp luật
X
x
4 Khoản khoan Textbo Nhập khoản văn bản pháp
x luật
5 Điểm diem Textbo Nhập điểm văn bản pháp
x luật
6 Lĩnh vực linhVuc X Checkb Nhập nội dung HVVP
ox
7 Ngày hiệu lực tuNgay Datepic Hiển thị ngày bắt đầu có
ker hiệu lực của TTNĐ
8 Ngày hết hiệu denNgay Datepic Hiển thị ngày hết hiệu lực
lực ker của TTNĐ
9 Nội dung noiDung X Datepic Nhập nội dung văn bản pháp
ker luật
Danh sách sửa đổi bổ sung
1 TT - NĐ maTTNĐ Text Hiển thị mã TTNĐ
2 Mã tham chiếu maThamChie Text Hiển thị mã tham chiếu
VBPL u VBPL
3 Ghi chú ghiChu Text Hiển thị ghi chú sửa đổi bổ
sung
Form thông tin sửa đổi bổ sung cho TTNĐ
e.1.2.1.2.3. Xử lý sự kiện
Ghi chú
HÌnh 14: Chỉnh sửa danh mục Văn bản pháp luật
e.1.2.1.3.2. Danh sách control/thành phần giao diện
8 Ngày hết denNga - Datepicker Hiển thị ngày hết hiệu lực của
hiệu lực y TTNĐ
9 Nội dung noiDung X Datepicker Nhập nội dung văn bản pháp
luật
Danh sách sửa đổi bổ sung TTNĐ
1 TT - NĐ maTTN - Textbox Hiển thị mã TTNĐ
Đ
2 Mã tham maTha - Textbox Hiển thị mã tham chiếu VBPL
chiếu VBPL mChieu
3 Ghi chú ghiChu - Textbox Hiển thị ghi chú sửa đổi bổ
sung
e.1.2.1.3.3. Xử lý sự kiện
ung_Click (Popup sửa đổi bổ sung TTNĐ → Chỉnh sửa thông tin trong Form
update) thông tin Sửa đổi bổ sung cho TTNĐ → Click Lưu.
Màn hình update thông tin vừa nhập vào bản ghi A trong
Danh sách sửa đổi bổ sung TTNĐ
BtnCloseSuaDoiBo Click Thêm mới/Xem chi tiết/Chỉnh sửa (Sửa đổi bổ sung) →
Sung_Click Click Đóng.
Màn hình tắt popup
BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường dữ liệu nếu thỏa mãn
→ lưu danh mục theo thông tin vừa nhập → Màn hình chuyển
đến màn xem danh sách danh mục TTNĐ.
e.1.2.1.3.4. Kiểm soát dữ liệu/các ràng buộc
Ghi chú
e.1.2.1.4. Xem chi tiết danh mục văn bản pháp luật
HÌnh 15: Xem chi tiết danh mục Văn bản pháp luật
e.1.2.1.4.2. Danh sách control/thành phần giao diện
e.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách Văn bản pháp luật theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/van-ban-phap-luat?
Service:
- Gọi procedure SEARCH để xử lý lấy danh sách VBPL từ database.
Procedure:
- Hàm SEARCH() được sử dụng để lấy danh sách các văn bản pháp luật theo các
điều kiện tìm kiếm được cung cấp. Kết quả trả về được sắp xếp theo ngày tạo mới
nhất. Đây là một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về một con trỏ
tham chiếu trỏ đến danh sách văn bản pháp luật.
- Đầu vào:
o V_TIM_KIEM_NHANH: Chuỗi tìm kiếm thông tin của văn bản pháp luật
(có thể là mã tham chiếu, nội dung).
o V_MA_TTND: Mã thông tư nghị định
o V_DIEU: Điều.
o V_KHOAN: Khoản.
o V_DIEM: Điểm.
o V_TU_NGAY: Ngày có hiệu lực của thông tư nghị định tương ứng
o V_DEN_NGAY: Ngày hết hiệu lực của thông tư nghị định tương ứng
o V_LINH_VUC: Lĩnh vực của văn bản pháp luật
o P_PAGE: Trang hiện tại của danh sách văn bản pháp luật
o P_PAGE_SIZE: Số bản ghi trên một trang
- Đầu ra:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các văn bản
pháp luật tìm kiếm được. Các thông tin bao gồm tất cả các trường trong
bảng DANH_MUC_VAN_BAN_PHAP_LUAT cùng với thông tin ngày có
hiệu lực và ngày hết hiệu lực của thông tư nghị định tương ứng. Các văn
bản pháp luật được sắp xếp theo ngày tạo mới nhất.
Các giá trị nhập vào và trả ra gồm:
[N/X]
1 V_TIM_KI VARCHAR2( N Chuỗi tìm kiếm nhanh
EM_NHA 255 CHAR)
NH
2 V_MA_TT VARCHAR2( N Mã thông tư nghị định
ND 10 CHAR)
3 V_DIEU NUMBER N Điều
4 V_KHOA NUMBER N Khoản
N
5 V_DIEM VARCHAR2( N Điểm
2 CHAR)
6 V_TU_NG DATE N Ngày có hiệu lực của
AY thông tự nghị định
tương ứng
7 V_DEN_N DATE N Ngày hết hiệu lực của
GAY thông tự nghị định
tương ứng
8 V_LINH_ VARCHAR2( N Lĩnh vực của VBPL
VUC 100 CHAR
9 P_PAGE NUMBER N Trang hiện tại
10 P_PAGE_S NUMBER N Dữ liệu trên một trang
IZE
11 V_CURSO CURSOR X Con trỏ tham chiếu đến
R danh sách VBPL tìm
được
Kết quả trả về của thủ tục bao gồm một danh sách các VBPL được tìm thấy, phù hợp với
các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang và sắp xếp theo ngày
sửa VBPL.
e.1.2.2.1.4. Xử lý ngoại lệ
e.1.2.2.2.1. API
Mô tả: Gọi API để xem chi tiết Văn bản pháp luật
Method URL
GET xlvp/api/v1/danh-muc/van-ban-phap-luat/{ma}
Service:
- Kiểm tra xem mã VBPL tồn tại trong bảng VBPL hay chưa
- Gọi procedure GET_BY_MA xử lý lấy lên VBPL theo mã từ DB
Procedure:
- Thêm tham số vào là mã văn bản pháp luật
- Kết quả trả về thông tin của văn bản pháp luật gồm các trường như bảng bên dưới
Các giá trị nhập vào và trả ra gồm:
e.1.2.2.3.1. API
Service:
- Kiểm tra xem VBPL đã tồn tại trong bảng VBPL chưa
- Gọi procedure CREATE_ITEM để lưu thông tin VBPL mới
Procedure:
- Hàm CREATE_ITEM được sử dụng để thêm một bản ghi mới vào bảng
DANH_MUC_VAN_BAN_PHAP_LUAT. Hàm nhận các tham số đầu vào là
thông tin của bản ghi mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
- Đầu vào:
o V_KHOAN: Kiểu dữ liệu tương ứng với trường KHOAN trong bảng.
o V_DIEM: Kiểu dữ liệu tương ứng với trường DIEM trong bảng.
- Đầu ra:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng DANH_MUC_VAN_BAN_PHAP_LUAT.
- Hàm này sẽ chèn dữ liệu vào bảng DANH_MUC_VAN_BAN_PHAP_LUAT với
các thông tin tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BY_MA để
lấy thông tin bản ghi vừa được thêm và trả về.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
1 V_MA_TH VARCHAR2( N Mã của thông tư nghị
ONG_TU_ 10 CHAR) định
NGHI_DIN
H
2 V_MA_TH VARCHAR2( N Mã tham chiếu của văn
AM_CHIE 20 CHAR) bản pháp luật
U
3 V_DIEU NUMBER N Điều
4 V_KHOA NUMBER N Khoản
N
5 V_DIEM VARCHAR2( N Điểm
2 CHAR)
6 V_NOI_D VARCHAR2( N Nội dung của văn bản
UNG 1000 CHAR pháp luật
7 V_LINH_ VARCHAR(1 N Lĩnh vực của văn bản
VUC 00 CHAR) pháp luật
8 V_NGUOI VARCHAR2( N Người tạo văn bản pháp
_TAO 50 CHAR luật
9 V_CURSO CURSOR X Trả về dòng dữ liệu văn
R bản pháp luật vừa tạo
e.1.2.2.3.4. Xử lý ngoại lệ
e.1.2.2.4.1. API
Mô tả: Gọi API để cập nhật thông tin Văn bản pháp luật
Method URL
PUT xlvp/api/v1/danh-muc/van-ban-phap-luat/{ma}
Service:
- Kiểm tra xem VBPL đã tồn tại trong bảng VBPL hay chưa
- Gọi procedure UPDATE_ITEM để cập nhật lại VBPL mới
Procedure:
- Hàm UPDATE_ITEM() được sử dụng để chỉnh sửa thông tin một bản ghi tồn tại
trong bảng DANH_MUC_VAN_BAN_PHAP_LUAT. Hàm nhận các tham số đầu
vào là thông tin cập nhật của bản ghi có mã văn bản pháp luật là V_MA và trả về
kết quả thông qua một con trỏ REF_CURSOR.
- Đầu vào:
V_DIEU: Kiểu dữ liệu tương ứng với trường DIEU trong bảng.
V_KHOAN: Kiểu dữ liệu tương ứng với trường KHOAN trong bảng.
V_DIEM: Kiểu dữ liệu tương ứng với trường DIEM trong bảng.
V_NOI_DUNG: Kiểu dữ liệu tương ứng với trường NOI_DUNG trong
bảng.
V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được chỉnh sửa
trong bảng DANH_MUC_VAN_BAN_PHAP_LUAT.
- Hàm này sẽ chỉnh sửa dữ liệu vào bản ghi có mã văn bản pháp luật tương ứng ở
trong bảng DANH_MUC_VAN_BAN_PHAP_LUAT với các thông tin được
truyền từ các tham số đầu vào, sau đó gọi hàm GET_BY_MA để lấy thông tin bản
ghi vừa được được chỉnh sửa và trả về.
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 V_MA VARCHAR2( N Mã văn bản pháp luật
30 CHAR
2 V_MA_TH VARCHAR2( N Mã của thông tư nghị định
ONG_TU_ 10 CHAR)
NGHI_DIN
H
3 V_MA_TH VARCHAR2( N Mã tham chiếu của văn bản pháp
AM_CHIE 20 CHAR) luật
U
4 V_DIEU NUMBER N Điều
5 V_KHOA NUMBER N Khoản
N
6 V_DIEM VARCHAR2( N Điểm
2 CHAR)
7 V_NOI_D VARCHAR2( N Nội dung của văn bản pháp luật
UNG 1000 CHAR
8 V_LINH_ VARCHAR(1 N Lĩnh vực của văn bản pháp luật
VUC 00 CHAR)
9 V_NGUOI VARCHAR2( N Người sửa văn bản pháp luật
_SUA 50 CHAR
10 V_CURSO CURSOR X Trả về dòng dữ liệu văn bản pháp
R luật vừa cập nhật
e.1.2.2.4.4. Xử lý ngoại lệ
e.1.2.2.5.1. API
Mô tả: Gọi API để cập nhật trạng thái xóa của Văn bản pháp luật
Method URL
DELETE xlvp/api/v1/danh-muc/van-ban-phap-luat/{ma}
Service:
- Kiểm tra xem mã VBPL gửi lên đã tồn tại trong bảng VBPL hay chưa
- Gọi Procedure DELETE_ITEM để cập nhật lại trang thái xóa trong database
Procedure:
- Đây là một thủ tục, không có giá trị trả về, nhưng sẽ cập nhật cột IS_DELETED
thành giá trị 1 để đánh dấu văn bản pháp luật đã bị xóa.
- Đầu vào:
V_MA: Mã của văn bản pháp luật
V_NGUOI_XOA: Tên người sửa cập nhật vào cột NGUOI_SUA.
Đầu ra: NA
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 V_MA VARCHAR2(10 N Mã văn bản pháp luật
CHAR)
2 V_NGUOI_XOA VARCHAR2(255 N Thông tin người sửa
CHAR)
e.1.2.2.5.4. Xử lý ngoại lệ
e.1.2.2.6.1. API
Service:
- Hàm này được sử dụng khi gọi API [POST]/v1/danh-muc/van-ban-phap-luat, dữ
liệu gửi lên có VBPL sửa đổi bổ sung thì cần gọi procedure
UPSERT_SUA_DOI_BO_SUNG để lưu thông tin vào bảng
DM_VBPL_SUA_DOI_BO_SUNG.
Procedure:
- Hàm này sẽ kiểm tra xem trong bảng DM_VBPL_SUA_DOI_BO_SUNG có tồn
tại bản ghi nào có mã vbpl và mã sửa đổi được truyền vào. Nếu như có tồn tại thì
sẽ cập nhật thông tin của bản ghi đó theo thông tin nhập vào còn nếu không tồn tại
thì sẽ thêm mới bản ghi đó vào bảng DM_VBPL_SUA_DOI_BO_SUNG. Sau khi
thực hiện thành công việc cập nhật hoặc tạo mới thì sẽ gọi đến hàm
GET_SUA_DOI_BO_SUNG_BY_MA để lấy bản ra bản ghi đó và trả về.
- Đầu vào:
V_MA: Mã của văn bản pháp luật cần kiểm tra, có kiểu dữ liệu trùng với
kiểu dữ liệu của cột MA_VBPL trong bảng
V_MA_SUA_DOI: Mã sửa đổi bổ sung của văn bản pháp luật cần kiểm tra,
có kiểu dữ liệu trùng với kiểu dữ liệu của cột MA_SUA_DOI trong bảng
V_GHI_CHU: Ghi chú cần thêm mới hoặc sửa đổi, có kiểu dữ liệu trùng
với kiểu dữ liệu của cột GHI_CHU trong bảng
- Đầu ra:
V_CURSOR: Một con trỏ tham chiếu trỏ đến bản ghi văn bản pháp luật sửa
đổi bổ sung vừa được cập nhật hoặc tạo mới
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 V_MA VARCHAR2(30 Mã văn bản pháp luật
N
CHAR
2 V_MA_SUA_DOI VARCHAR2(30 Mã sửa đổi bổ sung
N
CHAR)
3 V_GHI_CHU VARCHAR2(255 Ghi chú
N
CHAR)
4 V_CURSOR CURSOR Trả về dòng dữ liệu văn
bản pháp luật sửa đổi bổ
X
sung vừa cập nhật/tạo
mới
e.1.2.2.6.4. Xử lý ngoại lệ
o Mã VBPL được sửa đổi, bổ sung: rỗng hoặc không tồn tại trong bảng
THONG_TU_NGHI_DINH
o Ghi chú: vượt quá 255 ký tự
e.1.2.2.7.1. API
Service:
- Gọi procedure SEARCH_SUA_DOI_BO_SUNG_BY_MA để lấy danh sách
VBPL sửa đổi bổ sung trong hệ thống
- Khi xử lý get detail và export excel thì sử dụng danh sách VBPL sửa đổi bổ sung
đã lấy bên trên gán vào VBPL sửa đổi bổ sung được trả ra
Procedure:
- Hàm này sẽ kiểm tra xem trong bảng DM_VBPL_SUA_DOI_BO_SUNG có tồn
tại bản ghi nào có mã vbpl và mã sửa đổi được truyền vào. Nếu như có tồn tại thì
sẽ cập nhật thông tin của bản ghi đó theo thông tin nhập vào còn nếu không tồn tại
thì sẽ thêm mới bản ghi đó vào bảng DM_VBPL_SUA_DOI_BO_SUNG. Sau khi
thực hiện thành công việc cập nhật hoặc tạo mới thì sẽ gọi đến hàm
GET_SUA_DOI_BO_SUNG_BY_MA để lấy bản ra bản ghi đó và trả về.
- Đầu vào:
V_MA: Mã của văn bản pháp luật cần kiểm tra, có kiểu dữ liệu trùng với
kiểu dữ liệu của cột MA_VBPL trong bảng
V_MA_SUA_DOI: Mã sửa đổi bổ sung của văn bản pháp luật cần kiểm tra,
có kiểu dữ liệu trùng với kiểu dữ liệu của cột MA_SUA_DOI trong bảng
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
1 V_MA VARCHAR2(30 N Mã văn bản pháp luật
CHAR
2 V_MA_SUA_DOI VARCHAR2(30 N Mã sửa đổi bổ sung
CHAR)
3 V_CURSOR CURSOR X Trả về danh sách dữ
liệu văn bản pháp luật
sửa đổi bổ sung
e.1.2.2.7.4. Xử lý ngoại lệ
e.1.2.2.8. Xóa VBPL sửa đổi bổ sung (đánh dấu trạng thái trong DB)
e.1.2.2.8.1. API
Service:
- Khi thực hiện xóa văn bản pháp luật ra khỏi hệ thống thì gọi xuống database
procedure DELETE_SUA_DOI_BO_SUNG để cập nhật lại trạng thái của biến
IS_DELETED của văn bản pháp luật sửa đổi bổ sung ứng với mã văn bản pháp
luật ở trên hàm DELETE_ITEM
Procedure:
- Hàm này sẽ cập nhật lại trạng thái của biến IS_DELETED thành 1 trong bảng
DM_VBPL_SUA_DOI_BO_SUNG của bản ghi tim được theo 2 điều kiện là mã
văn bản pháp luật và mã văn bản pháp luật sửa đổi bổ sung.
- Đầu vào:
V_MA: Mã của văn bản pháp luật cần kiểm tra, có kiểu dữ liệu trùng với
kiểu dữ liệu của cột MA_VBPL trong bảng
V_MA_SUA_DOI: Mã sửa đổi bổ sung của văn bản pháp luật cần kiểm tra,
có kiểu dữ liệu trùng với kiểu dữ liệu của cột MA_SUA_DOI trong bảng
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 V_MA VARCHAR2(30 Mã văn bản pháp luật
N
CHAR
2 V_MA_SUA_DOI VARCHAR2(30 Mã sửa đổi bổ sung
N
CHAR)
e.1.2.2.8.4. Xử lý ngoại lệ
e.1.2.2.9.1. API
Service:
- Khi thực hiện xóa văn bản pháp luật ra khỏi hệ thống thì gọi xuống database
procedure DELETE_SUA_DOI_BO_SUNG để xóa văn bản pháp luật sửa đổi bổ
sung ứng với mã văn bản pháp luật ở trên hàm DELETE_ITEM
Procedure:
- Hàm HARD_DELETE_SUA_DOI_BO_SUNG sử dụng để xóa bản ghi ra khỏi
bảng DM_VBPL_SUA_DOI_BO_SUNG được lấy theo mã VBPL và mã VBPL
sửa đổi bổ sung
- Đầu vào:
V_MA: Mã của văn bản pháp luật cần kiểm tra, có kiểu dữ liệu trùng với
kiểu dữ liệu của cột MA_VBPL trong bảng
V_MA_SUA_DOI: Mã sửa đổi bổ sung của văn bản pháp luật cần kiểm tra,
có kiểu dữ liệu trùng với kiểu dữ liệu của cột MA_SUA_DOI trong bảng
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
1 V_MA VARCHAR2(30 N Mã văn bản pháp luật
CHAR
2 V_MA_SUA_DOI VARCHAR2(30 N Mã sửa đổi bổ sung
CHAR)
e.1.2.2.9.4. Xử lý ngoại lệ
NA
c.1.2.1.1. Màn hình xem danh sách, tìm kiếm nghề nghiệp
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành Bắt
Định
STT Tên label phần / buộc Mô tả
dạng
Control ?
Form tìm kiếm/lọc dữ liệu danh mục
1 Mã nghề nghiệp ma Textbox Nhập mã nghề nghiệp
2 Tên nghề nghiệp ten Textbox Nhập tên nghề nghiệp
Trạng thái trangThai Dropdo Chọn loại trạng thái
3
wnlist nghề nghiệp
Danh sách dữ liệu danh mục
Mã nghề nghiệp ma Textbox Hiển thị mã nghề
4
nghiệp
Tên nghề nghiệp ten Textbox Hiển thị tên nghề
5
nghiệp
Mô tả moTa Textbox Hiển thị mô tả của
6
nghề nghiệp
c.1.2.1.1.3. Xử lý sự kiện
BtnDelete_Click Click nút Xóa ở cuối mỗi bản ghi trong danh sách → Chọn
Đồng ý.
Hệ thống xóa bản ghi tương ứng → Màn hình reload và cập
nhật lại danh sách danh mục.
Hình 17: Màn hình thêm mới danh mục nghề nghiệp
c.1.2.1.2.2. Danh sách control/thành phần giao diện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Bắt
Tên thành phần / Định
STT Tên label buộc Mô tả
Control dạng
nhập?
Mã nghề ma Textbox Hiển thị mã nghề
nghiệp nghiệp
1
Mã tự sinh, không thể
nhập
Tên nghề ten Textbox Nhập tên nghề nghiệp
2 x
nghiệp
Trạng trangThai Dropdown Chọn loại trạng thái
3 x
thái list cho nghề nghiệp
c.1.2.1.2.3. Xử lý sự kiện
Hình 18: Màn hình chỉnh sửa danh mục nghề nghiệp
c.1.2.1.3.2. Danh sách control/thành phần giao diện
Tên
Bắt
thành
STT Tên label buộc Định dạng Mô tả
phần /
?
Control
Mã nghề ma Textbox Hiển thị mã nghề nghiệp
1
nghiệp
Tên nghề ten Textbox Nhập tên nghề nghiệp
2 x
nghiệp
Trạng thái trangThai Dropdownlist Chọn trạng thái cho nghề
3 x
nghiệp
Mô tả moTa Textbox Nhập mô tả chi tiết cho nghề
4
nghiệp
c.1.2.1.3.3. Xử lý sự kiện
Tên thành
Định
STT Tên label phần / Mô tả
dạng
Control
1 Mã nghề nghiệp ma Textbox Hiển thị mã nghề
nghiệp
2 Tên nghề nghiệp ten Textbox Hiển thị tên nghề
nghiệp
3 Trạng thái trangThai Dropdown Hiển thị trạng thái nghề
list nghiệp
4 Mô tả moTa Textbox Hiển thị mô tả chi tiết
của nghề nghiệp
c.1.2.1.4.3. Xử lý sự kiện
BtnEdit_Click Click nút Chỉnh sửa → Màn hình chuyển đến màn chỉnh
sửa danh sách danh mục nghề nghiệp.
BtnClose_Click Click nút Đóng → Màn hình chuyển đến màn xem danh
sách danh mục.
c.1.2.2. Thiết kế các hàm, thủ tục
c.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách nghề nghiệp theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/nghe-nghiep?
HAR2
P_TEN VARC N Tên nghề nghiệp
2
HAR2
P_TRAN NUMB N Trạng thái
3
G_THAI ER
P_PAGE NUMB N Page
4
ER
P_SIZE NUMB N Size
5
ER
V_CURS CURS X REF_CURSOR
6
OR OR
- Thủ tục tìm kiếm các ngành nghề dựa trên các tiêu chí tìm kiếm (MA, TEN,
TRANG_THAI) và trả về kết quả dưới dạng một con trỏ CURSOR được tham
chiếu bởi tham số V_CURSOR. Thủ tục này cũng hỗ trợ phân trang với các tham
số P_PAGE và P_SIZE.
- Đầu vào:
o P_MA: Tham số đầu vào kiểu DANH_MUC_NGHE_NGHIEP.MA
%TYPE, đại diện cho mã ngành nghề cần tìm kiếm.
o P_TEN: Tham số đầu vào kiểu DANH_MUC_NGHE_NGHIEP.TEN
%TYPE, đại diện cho tên ngành nghề cần tìm kiếm.
o P_TRANG_THAI: Tham số đầu vào kiểu
DANH_MUC_NGHE_NGHIEP.TRANG_THAI%TYPE, đại diện cho
trạng thái ngành nghề cần tìm kiếm.
o P_PAGE: Tham số đầu vào kiểu NUMBER, đại diện cho trang cần truy
vấn.
o P_SIZE: Tham số đầu vào kiểu NUMBER, đại diện cho số bản ghi tối đa
được trả về trong một trang phân trang.
- Đầu ra:
o V_CURSOR: Tham số đầu ra kiểu REF_CURSOR, đại diện cho con trỏ
cursor chứa kết quả truy vấn, bao gồm tổng số bản ghi tìm được và các bản
ghi trong phạm vi trang phân trang.
- Cách hoạt động:
o Tính toán vị trí bắt đầu và kết thúc của trang phân trang dựa trên P_PAGE
và P_SIZE.
o Nếu P_TEN khác NULL, thì tạo chuỗi P_TEN_TRUNC để sử dụng trong
câu truy vấn, bao gồm loại bỏ khoảng trắng thừa, chuyển đổi thành chữ hoa
và thêm ký tự % vào đầu và cuối chuỗi để tìm kiếm bất kỳ tên nghề nghiệp
nào chứa chuỗi P_TEN.
o Thực hiện câu truy vấn dựa trên các tiêu chí tìm kiếm được đưa ra, bao gồm
P_MA, P_TEN_TRUNC và P_TRANG_THAI. Các bản ghi được lấy ra chỉ
bao gồm các bản ghi chưa bị xóa (IS_DELETED = 0).
o Sử dụng ROW_NUMBER và COUNT OVER để áp dụng phân trang, đảm
bảo rằng chỉ trả về số lượng bản ghi tối đa là P_SIZE và bắt đầu từ
P_PAGE_BEGIN.
Trả về kết quả dưới dạng một con trỏ CURSOR, bao gồm tổng số bản ghi tìm được và
các bản ghi trong phạm vi trang phân trang.
b.1.2.1.1.1. Xử lý ngoại lệ
NA
b.1.2.1.2.1. API
liệu
1 ten String Tên nghề nghiệp
2 ma String Mã nghề nghiệp
3 trangThai Boolean Trạng thái nghề nghiệp
4 moTa String Mô tả nghề nghiệp
5 ngaySua Date Ngày sửa
6 nguoiSua String Người sửa
b) Packages
Procedure PKG_DANH_MUC_NGHE_NGHIEP. CREATE_NGHE_NGHIEP là một
thủ tục được sử dụng để thêm một bản ghi mới vào bảng
DANH_MUC_NGHE_NGHIEP.
Các giá trị nhập vào và trả ra gồm:
Tham số Kiểu Nhập / Mô tả
STT dữ liệu Xuất
[N/X]
1 P_TEN VARC N Tên danh mục nghề nghiệp
HAR2
2 P_TRANG VARC N Trạng thái
_THAI HAR2
3 P_MO_TA VARC N Mô tả
HAR2
4 P_NGUOI VARC N Người tạo
_TAO HAR2
5 V_CURSO CURS X REF_CURSOR
R OR
- Đầu vào:
o P_TEN: Kiểu dữ liệu là VARCHAR2, đại diện cho tên nghề nghiệp mới.
o P_TRANG_THAI: Kiểu dữ liệu là NUMBER, đại diện cho trạng thái kích
hoạt (1) hoặc không kích hoạt (0) của nghề nghiệp mới.
o P_MO_TA: Kiểu dữ liệu là VARCHAR2, đại diện cho mô tả nghề nghiệp
mới.
o P_NGUOI_TAO: Kiểu dữ liệu là VARCHAR2, đại diện cho tên người tạo
nghề nghiệp mới ("P_TEN"),
o ("P_TRANG_THAI") trạng thái kích hoạt,
- Đầu ra:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng DANH_MUC_NGHE_NGHIEP.
- Hàm này chèn một hàng mới vào bảng này với các thông tin về tên, trạng thái, mô
tả và người tạo được truyền vào từ đối số đầu vào. Hàm sử dụng một hàm khác
"GENERATE_MA_NGHE_NGHIEP" để tạo mã nghề nghiệp mới, sau đó trả về
bản ghi vừa được tạo.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
- Thủ tục truy vấn danh sách các ngành nghề có tên giống với tên được truyền vào
qua tham số P_TEN, và trả về kết quả dưới dạng một con trỏ CURSOR được tham
chiếu bởi tham số V_CURSOR. Các cột được trả về bao gồm: mã ngành nghề
(MA), tên ngành nghề (TEN), trạng thái (TRANG_THAI), mô tả (MO_TA),
người sửa (NGUOI_SUA), và ngày sửa (NGAY_SUA). Thủ tục này chỉ lấy các
bản ghi chưa bị xóa (IS_DELETED = 0).
- Đầu vào:
o P_TEN: Tham số đầu vào kiểu VARCHAR2, đại diện cho tên ngành nghề
cần truy vấn.
- Đầu ra:
o V_CURSOR: Tham số đầu ra kiểu REF_CURSOR, đại diện cho con trỏ
cursor chứa kết quả truy vấn.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
b) Packages
Procedure PKG_DANH_MUC_NGHE_NGHIEP.UPDATE_NGHE_NGHIEP là một
thủ tục được sử dụng để cập nhật thông tin của một nghề nghiệp đã có trong cơ sở dữ
liệu.
Các giá trị nhập vào và trả ra gồm:
Nhập /
Kiểu
STT Tham số Xuất Mô tả
dữ liệu
[N/X]
P_MA VARC N Mã nghề nghiệp
1
HAR2
2 P_TEN VARC N Tên nghề nghiệp
HAR2
3 P_TRAN NUMB N Trạng thái
G_THAI ER
4 P_MO_T VARC N Mô tả
A HAR2
5 P_NGUO VARC N Người sửa
I_SUA HAR2
6 V_CURS CURS X REF_CURSOR
OR OR
- Đầu vào:
o P_MA: mã của ngành nghề cần được cập nhật thông tin.
o P_TEN: tên mới của ngành nghề.
o P_TRANG_THAI: trạng thái mới của ngành nghề.
o P_MO_TA: mô tả mới của ngành nghề.
o P_NGUOI_SUA: tên người sửa thông tin của ngành nghề.
- Đầu ra:
o V_CURSOR: một con trỏ tham chiếu, sẽ trả về tập hợp kết quả truy vấn.
- Cách hoạt động:
o Thủ tục "UPDATE_NGHE_NGHIEP" sẽ truy vấn bảng
"DANH_MUC_NGHE_NGHIEP" để cập nhật thông tin của ngành nghề có
mã là P_MA. Sau khi cập nhật xong, thủ tục gọi thủ tục "GET_BY_MA"
với đầu vào là P_MA để lấy tất cả thông tin của ngành nghề vừa cập nhật,
và gán kết quả vào biến con trỏ V_CURSOR để trả về cho người dùng.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
o Gọi phương thức delete của repository để xóa đối tượng HanhViViPham
khỏi cơ sở dữ liệu.
o Ghi nhật ký ứng dụng bằng cách gọi phương thức log của
applicationLogService.
o Trả về giá trị boolean true để cho biết thao tác xóa đã thành công
b) Packages
Procedure PKG_DANH_MUC_NGHE_NGHIEP.DELETE_NGHE_NGHIEP là một
thủ tục được sử dụng để đánh dấu một nghề nghiệp trong danh mục nghề nghiệp đã bị
xóa bỏ.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ Nhập / Mô tả
liệu Xuất
[N/X]
H_MA VARCHAR N Mã nghề nghiệp
1
2(20 CHAR)
H_NGUOI VARCHAR N Người sửa
2
_SUA 2(20 CHAR)
V_CURSO REF_CURS X REF_CURSOR
3
R OR
- Cập nhật trạng thái của một bản ghi trong bảng "DANH_MUC_NGHE_NGHIEP"
bằng cách đặt "IS_DELETED" của bản ghi này thành 1, đồng thời cập nhật thông
tin người sửa và ngày sửa của bản ghi này. Sau đó, hàm sẽ trả về kết quả thông
qua con trỏ "V_CURSOR".
- Đầu vào:
o P_MA: Kiểu dữ liệu là VARCHAR2, đại diện cho mã nghề nghiệp cần xóa.
o P_NGUOI_SUA: Kiểu dữ liệu là VARCHAR2, đại diện cho tên người sửa
bản ghi.
o V_CURSOR: Kiểu dữ liệu là REF_CURSOR, đại diện cho con trỏ trỏ đến
tập kết quả của câu lệnh SQL được thực thi bên trong hàm.
- Đầu ra:
o V_CURSOR: Không có giá trị trả về, nhưng nó là một tham chiếu con trỏ
trả về 1 danh mục nghề nghiệp.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
o Đối tượng đầu vào StreamResource chứa file Excel xuất ra.
- Cách hoạt động:
o Sử dụng đối tượng NgheNghiepRepository để tìm kiếm danh mục nghề
nghiệp theo các thông tin trong request
o Sử dụng NgheNghiepMapper để chuyển đổi các đối tượng
NgheNghiepEntity thành các đối tượng NgheNghiepReportDto để xuất ra
file Excel.
o Các thông tin cần xuất được định dạng trong danh sách các headers. Cuối
cùng, hàm sử dụng đối tượng BaseExportExcelService để xuất ra file Excel
b) Packages
Procedure PKG_DANH_MUC_NGHE_NGHIEP.SEARCH_NGHE_NGHIEP là một
thủ tục được sử dụng để lấy danh sách các nghề nghiệp theo các điều kiện tìm kiếm
được cung cấp.
b.1.2.1.1.1. Xử lý ngoại lệ
- NA
b.2. Danh mục tang vật, phương tiện, giấy tờ
b.2.1. Mục đích
ST Tên bảng Mô tả
T
DANH_MUC_TANG_VAT_ Bảng lưu trữ danh mục Tang vật, phương tiện,
1
PHUONG_TIEN_GIAY_TO giấy tờ.
b.2.2.1.3. Chi tiết các bảng
Bảng DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO
Bắt P/F Mặc
Tên trường Kiểu dữ liệu Diễn giải
buộc? Key định
MA VARCHAR2 (50 P null Mã danh mục tang vật,
CHAR) phương tiện, giấy tờ
LINH_VUC Lĩnh vực của danh mục tang vật, phương tiện, giấy tờ không
được để trống
TEN Tên của danh mục tang vật, phương tiện, giấy tờ không được để
trống
TRANG_THAI Trạng thái của danh mục tang vật, phương tiện, giấy tờ không
được để trống
b) Index
NA
c) Trigger
NA
d) Packages
Tên package: PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO
d.1.2.1.1. Xem danh sách, tìm kiếm danh mục tang vật, phương tiện, giấy tờ
Hình 20: Thông tin danh sách danh mục Tang vật, phương tiện, giấy tờ
d.1.2.1.1.2. Danh sách control/thành phần giao diện (*)
d.1.2.1.1.3. Xử lý sự kiện
d.1.2.1.2. Thêm mới danh mục tang vật, phương tiện, giấy tờ
Hình 21: Thêm mới danh mục Tang vật, phương tiện, giấy tờ
d.1.2.1.2.2. Danh sách control/thành phần giao diện (*)
d.1.2.1.3. Chỉnh sửa danh mục tang vật, phương tiện, giấy tờ
Hình 22: Chỉnh sửa danh mục Tang vật, phương tiện, giấy tờ
d.1.2.1.3.2. Danh sách control/thành phần giao diện (*)
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
Page_Load Click nút Thêm mới tại màn hình danh sách Danh
1 mục tang vật, phương tiện, giấy tờ → Màn hình
chuyển đến màn Thêm mới
BtnSave_Click Nhập thông tin trong Form thêm mới dữ liệu
danh mục → Click Lưu.
Hệ thống check ràng buộc của các trường dữ liệu
2
nếu thỏa mãn → lưu danh mục theo thông tin vừa
nhập → Màn hình chuyển đến màn xem chi tiết
danh mục vừa thêm mới.
BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường dữ liệu
3 nếu thỏa mãn → lưu danh mục theo thông tin vừa
nhập → Màn hình chuyển đến màn xem danh
sách danh mục.
d.1.2.1.3.4. Kiểm soát dữ liệu/các ràng buộc
d.1.2.1.4. Xem chi tiết danh mục tang vật, phương tiện, giấy tờ
Hình 23: Xem chi tiết danh mục Tang vật, phương tiện, giấy tờ
d.1.2.1.4.2. Danh sách control/thành phần giao diện (*)
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới
đây:
Tên
thành Bắt
STT Tên label Định dạng Mô tả
phần / buộc?
Control
Mã tang vật ma - Textbox Hiển thị mã tang vật,
1 phương tiện giấy phương tiện, giấy tờ
tờ
Nhóm tang vật nhom - Dropdownlis Hiển thị nhóm tang vật
2 phương tiện giấy t phương tiện giấy tờ
tờ
Tên tang vật ten - Textbox Hiển thị tên tang vật
3 phương tiện giấy phương tiện giấy tờ
tờ
Trạng thái tang trangThai - Dropdownlis Hiển thị trạng thái tang
4
vật phương tiện t vật phương tiện giấy tờ
giấy tờ
Lĩnh vực linhVuc - Checkbox Hiển thị 1 hoặc nhiều
5 lĩnh vực cho tang vật,
phương tiện, giấy tờ
d.1.2.1.4.3. Xử lý sự kiện
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Click nút Xem chi tiết ở cuối mỗi bản ghi tại màn hình
danh sách Danh mục tang vật, phương tiện, giấy tờ →
Màn hình chuyển đến màn Xem chi tiết.
2 BtnEdit_Click Click nút Chỉnh sửa → Màn hình chuyển đến màn chỉnh
sửa danh mục.
3 BtnClose_Click Click nút Đóng → Màn hình chuyển đến màn xem danh
sách danh mục.
d.1.2.2. Thiết kế các hàm, thủ tục
d.1.2.2.1. Lấy danh sách và tìm kiếm tang vật, phương tiện, giấy tờ
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách tang vật, phương tiện, giấy tờ theo nhiều tiêu chí tìm
kiếm
Method URL
GET v1/danh-muc/loai-giay-to
Service:
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.SEARCH xử lý lấy
danh sách tang vật, phương tiện giấy tờ từ database.
Procedure:
- Hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.SEARCH là một thủ tục
được sử dụng để tìm kiếm các tang vật, phương tiện, giấy tờ dựa trên các tiêu chí
khác nhau.
Các giá trị nhập vào và trả ra gồm:
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
- Input:
o P_MA: Mã tang vật, phương tiện, giấy tờ
o P_TEN: Tên của danh mục tang vật, phương tiện, giấy tờ.
o P_Nhóm: Nhóm của danh mục tang vật, phương tiện, giấy tờ.
o P_LINH_VUC: Lĩnh vực của danh mục tang vật, phương tiện, giấy tờ.
o P_TRANG_THAI: Trạng thái của danh mục tang vật, phương tiện, giấy tờ.
o P_SEARCH: Tìm kiếm nhanh theo mã, tên của danh mục tang vật, phương
tiện, giấy tờ.
o P_PAGE: Trang hiện tại của danh mục tang vật, phương tiện, giấy tờ
o P_PAGE_SIZE: Số bản ghi trên một trang
- Output:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các danh mục
tang vật, phương tiện, giấy tờ tìm kiếm được. Các thông tin bao gồm tất cả
các trường trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO. Các danh mục
tang vật, phương tiện, giấy tờ được sắp xếp giảm dần theo ngày tạo.
o Kết quả trả về của thủ tục bao gồm một danh sách các tang vật, phương tiện, giấy
tờ được tìm thấy, phù hợp với các tiêu chí tìm kiếm được cung cấp. Các kết quả
được phân trang và sắp xếp giảm dần theo ngày tạo.
d.1.2.2.1.4. Xử lý ngoại lệ
d.1.2.2.2.1. API
Mô tả: Gọi API để tạo mới tang vật, phương tiện, giấy tờ
Method URL
POST xlvp/api/v1/danh-muc/loai-giay-to
+ Đường sắt
+ Đường thủy
2 nhom String Nhóm tang vật, phương tiện,
giấy tờ:
+ Phương tiện
+ Giấy tờ
+ Giấy phép lái xe
+Khác
3 ten String Tên loại tang vật, phương tiện,
giấy tờ
4 trangThai Boolean Trạng thái
Các giá trị trả về:
STT Tham số Kiểu dữ Mô tả
liệu
1 ma String Mã tang vật, phương tiện, giấy tờ
2 nhom Enum Nhóm tang vật, phương tiện, giấy tờ:
+ Phương tiện
+ Giấy tờ
+ Giấy phép lái xe
+Khác
3 ten String Tên tang vật, phương tiện, giấy tờ
4 linhVuc List<Enum> Lĩnh vực tang vật, phương tiện, giấy tờ:
+ Đường bộ
+ Đường sắt
+ Đường thủy
5 trangThai Boolean Trạng thái của tang vật, phương tiện,
giấy tờ
6 nguoiTao String Người tạo
7 nguoiSua String Người sửa cuối cùng
Service:
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.GET_BY_TEN kiểm
tra xem đã tồn tại tên tang vật, phương tiện, giấy tờ chưa?
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.CREATE_ITEM để
tạo mới tang vật, phương tiện, giấy tờ trong database.
Procedure:
- Hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.CREATE_ITEM là một
thủ tục được sử dụng để tạo mới tang vật, phương tiện, giấy tờ trong database.
o Các giá trị nhập vào và trả ra gồm:
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
P_NHOM: Kiểu dữ liệu tương ứng với trường NHOM trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
P_LINH_VUC: Kiểu dữ liệu tương ứng với trường LINH_VUC trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
P_TRANG_THAI: Kiểu dữ liệu tương ứng với trường TRANG_THAI
trong bảng DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
P_NGUOI_TAO: Kiểu dữ liệu tương ứng với trường NGUOI_TAO trong
bảng DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
o Output:
V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO.
o Hàm này sẽ thêm dữ liệu vào bảng DANH_MUC_THONG_TU_NGHI_DINH với
các thông tin tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BY_MA để
lấy thông tin bản ghi vừa được thêm và trả về.
- Hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO. GET_BY_TEN là một
thủ tục được sử dụng để lấy thông tin 1 tang vật, phương tiện, giấy tờ trong
database.
- Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
1 P_TEN VARCHAR2 N Tên tang vật, phương tiện,
giấy tờ
(255 CHAR)
P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO
d.1.2.2.3.1. API
Mô tả: Gọi API để chỉnh sửa tang vật, phương tiện, giấy tờ
Method URL
PUT xlvp/api/v1/danh-muc/loai-giay-to/{ma}
+ Phương tiện
+ Giấy tờ
+ Giấy phép lái xe
+Khác
4 ten String Tên tang vật, phương tiện, giấy tờ
5 trangThai Boolean Trạng thái
Các giá trị trả về là:
STT Tham số Kiểu dữ Mô tả
liệu
1 ma String Mã tang vật, phương tiện, giấy tờ
2 nhom Enum Nhóm tang vật, phương tiện, giấy tờ:
+ Phương tiện
+ Giấy tờ
+ Giấy phép lái xe
+Khác
3 ten String Tên tang vật, phương tiện, giấy tờ
4 linhVuc List<Enum> Lĩnh vực tang vật, phương tiện, giấy tờ:
+ Đường bộ
+ Đường sắt
+ Đường thủy
5 trangThai Boolean Trạng thái của tang vật, phương tiện,
giấy tờ
6 nguoiTao String Người tạo
7 nguoiSua String Người sửa cuối cùng
8 ngayTao Date Ngày tạo
9 ngaySua Date Ngày sửa cuối cùng
d.1.2.2.3.3. Mô tả chi tiết
Service:
V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được chỉnh sửa
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
- Hàm IS_EXITED_IN_BBQD() được sử dụng để kiểm tra xem danh mục tang vật,
phương tiện, giấy tờ có MA bằng với P_CODE truyền vào đã tồn tại trong biên
bản, quyết định nào chưa. Kết quả trả về 1 nếu tồn tại, trả về 0 nếu không tồn tại.
- Input:
P_CODE: Mã giấy tờ trong biên bản, quyết định có kiểu dữ liệu
VARCHAR2(255 CHAR)
o Output:
V_CURSOR: Kết quả trả về 1 nếu tồn tại, trả về 0 nếu không tồn tại.
d.1.2.2.3.4. Xử lý ngoại lệ
d.1.2.2.4.1. API
Mô tả: Gọi API để lấy thông tin chi tiết tang vật, phương tiện, giấy tờ
Method URL
GET xlvp/api/v1/danh-muc/loai-giay-to/{ma}
Service:
Method URL
GET xlvp/api/v1/danh-muc/loai-giay-to/export/excel
Service:
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.SEARCH xử lý lấy
danh sách tang vật, phương tiện, giấy tờ từ database
- Xử lý trả ra file Excel dạng byte[]
Procedure:
- Hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.SEARCH là một thủ tục
được sử dụng để lấy thông tin tang vật, phương tiện, giấy tờ trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
1 P_MA VARCHAR2 N Mã danh mục tang vật,
(50 CHAR) phương tiện, giấy tờ
2 P_TEN VARCHAR2 N Tên của danh mục tang
(255 CHAR) vật, phương tiện, giấy tờ
3 P_NHOM VARCHAR2 N Nhóm của danh mục tang
(150 CHAR) vật, phương tiện, giấy tờ
4 P_LINH_VU VARCHAR2 N Lĩnh vực của danh mục
Output:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các danh mục
tang vật, phương tiện, giấy tờ tìm kiếm được. Các thông tin bao gồm tất cả
các trường trong bảng
DANH_MUC_TANG_VAT_PHUONG_TIEN_GIAY_TO. Các danh mục
tang vật, phương tiện, giấy tờ được sắp xếp giảm dần theo ngày tạo.
Kết quả trả về của thủ tục bao gồm một danh sách các tang vật, phương tiện, giấy tờ được
tìm thấy, phù hợp với các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang
và sắp xếp giảm dần theo ngày tạo.
d.1.2.2.5.4. Xử lý ngoại lệ
d.1.2.2.6.1. API
Service:
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.GET_BY_MA để
kiểm tra có tồn tại tang vật, phương tiện, giấy tờ hay không?
- Gọi hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.DELETE_ITEM xử lý
xóa tang vật, phương tiện, giấy tờ ở database.
Procedure:
- Hàm PKG_TANG_VAT_PHUONG_TIEN_GIAY_TO.DELETE_ITEM là một
thủ tục được sử dụng để cập nhật tang vật, phương tiện, giấy tờ trong database là
đã xóa.
o Các giá trị nhập vào và trả ra gồm:
Bắt
Tên Kiểu P/F
buộc Mặc định Mô tả
trường dữ liệu Key
?
P "C08_XLVP_DEVE ID của danh mục hành
LOP"."SEQ_DANH_ vi vi phạm
NUMB
ID X MUC_HANH_VI_VI
ER
_PHAM_ID"."NEXT
VAL"
VARC Ký hiệu của danh mục
KY_HIE
HAR2( thông tư nghị định
U_TT_N
20
D
CHAR)
MA_VA VARC F Mã văn bản pháp luật
N_BAN_ HAR2( của danh mục văn bản
PHAP_L 20 pháp luật
UAT CHAR)
VARC Mã hành vi vi phạm
HAR2(
MA
20
CHAR)
VARC Nội dung hành vi vi
NOI_DU HAR2( phạm
NG 1000
CHAR)
MA_NH Mã nhóm hành vi vi
VARC
OM_HA phạm
HAR2(
NH_VI_
20
VI_PHA
CHAR)
M
SO_TIE Số tiền phạt cá nhân nhỏ
NUMB
N_PHAT nhất
ER
_CA_NH
AN_NH
O_NHAT
SO_TIE Số tiền phạt cá nhận lớn
N_PHAT nhất
NUMB
_CA_NH
ER
AN_LON
_NHAT
SO_TIE Số tiền phạt cá nhân
N_PHAT mặc định
NUMB
_CA_NH
ER
AN_MA
C_DINH
SO_TIE Số tiền phạt tổ chức nhỏ
N_PHAT nhất
NUMB
_TO_CH
ER
UC_NH
O_NHAT
SO_TIE Số tiền phạt tổ chức lớn
N_PHAT nhất
NUMB
_TO_CH
ER
UC_LON
_NHAT
SO_TIE Số tiền phạt tổ chức
N_PHAT mặc định
NUMB
_TO_CH
ER
UC_MA
C_DINH
VARC Người sửa
NGUOI_ HAR2(
SUA 255
CHAR)
VARC Người tạo
NGUOI_
HAR2(
TAO
255
CHAR)
NGAY_T CURRENT_DATE Ngày tạo
DATE
AO
NGAY_S CURRENT_DATE Ngày sửa
DATE
UA
IS_DELE NUMB 0 Trạng thái xóa
TED ER(1,0)
a) Các ràng buộc
Tên Nội dung
Đảm bảo rằng giá trị trong cột “ID”
PK_DANH_MUC_HANH_VI_VI_PHAM
là duy nhất và không rỗng
Đảm bảo rằng giá trị trong cột
"MA_VAN_BAN_PHAP_LUAT" là
FK_MA_VAN_BAN_PHAP_LUAT khóa ngoại của bảng
"DANH_MUC_VAN_BAN_PHAP_
LUAT" trên cột "MA"
Đảm bảo rằng giá trị mặc định cho
DF_DANH_MUC_HANH_VI_VI_PHAM_NG
cột "NGAY_TAO" là ngày hiện tại
AY_TAO
khi một bản ghi mới được chèn
b) Index
NA
c) Trigger
NA
d) Packages
Tên package: PKG_DANH_MUC_HANH_VI_VI_PHAM
d.1.2.1.1. Xem danh sách, tìm kiếm danh mục hành vi vi phạm
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Bắt
Tên thành phần /
STT Tên label buộc Định dạng Mô tả
Control
?
Form tìm kiếm/lọc dữ liệu danh mục
1 Tìm kiếm timKiemNhanh - TEXTBOX Nhập mã tham chiếu
nhanh VBPL, mã hành vi vi
phạm, nhóm hành vi
vi phạm, nội dung
hvvp
2 TT-NĐ maThongTuNghi - DROPDO Chọn TT-ND
Dinh WNLIST
3 Mã tham maVbpl - DROPDO Chọn mã tham chiếu
chiếu VBPL WNLIST VBPL
4 Mã HVVP maHvvp - TEXTBOX Nhập mã HVVP
5 Nội dung noiDungHvvp - TEXTBOX Nhập nội dung HVVP
HVVP
d.1.2.1.1.3. Xử lý sự kiện
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Chọn menu Danh mục/Hành vi vi phạm →
Xem thông tin danh sách danh mục hành vi
vi phạm.
2 BtnSearch_Click Nhập thông tin trong Form tìm kiếm/lọc dữ
liệu danh mục → Click Tìm kiếm.
Hệ thống tìm kiếm danh mục theo thông
tin vừa nhập → Màn hình hiển thị danh
sách danh mục thỏa mãn bộ lọc.
3 BtnReset_Click Click nút Thiết lập lại.
Form tìm kiếm/lọc dữ liệu danh mục xóa
các thông tin đã nhập và hoàn tác về trạng
thái mặc định ban đầu.
4 BtnCollapse/BtnExtend_Click Click nút Thu hẹp/Mở rộng.
Thu hẹp/Mở rộng Form tìm kiếm/lọc dữ
liệu danh mục.
5 BtnCreate_Click Click nút Thêm mới.
Màn hình chuyển đến trang Thêm mới
danh mục hành vi vi phạm.
6 BtnEdit_Click Click nút Chỉnh sửa ở cuối mỗi bản ghi
trong danh sách.
Màn hình chuyển đến trang Chỉnh sửa
danh mục hành vi vi phạm tương ứng với
bản ghi (Giao diện II.3.3).
7 BtnView_Click Click nút Xem chi tiết ở cuối mỗi bản ghi
trong danh sách.
Màn hình chuyển đến trang Xem chi tiết
danh mục hành vi vi phạm tương ứng với
Cá nhân
9 Số tiền nhỏ soTienPhatC - TEXTBOX Nhập số tiền phạt nhỏ
nhất cá nhân aNhanNhoN nhất với cá nhân
hat
10 Số tiền lớn soTienPhatC - TEXTBOX Nhập số tiền phạt lớn
nhất cá nhân aNhanLonN nhất với cá nhân
hat
11 Số tiền mặc soTienPhat - TEXTBOX Nhập số tiền phạt mặc
định cá nhân MacDinh định với cá nhân
Tổ chức
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Click nút Thêm mới tại màn hình danh sách
Danh mục hành vi vi phạm → Màn hình
chuyển đến màn Thêm mới
2 BtnSave_Click Nhập thông tin trong Form thêm mới dữ
liệu danh mục → Click Lưu.
Hệ thống check ràng buộc của các trường
dữ liệu nếu thỏa mãn → lưu danh mục theo
thông tin vừa nhập → Màn hình chuyển
đến màn xem chi tiết danh mục vừa thêm
mới.
3 BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường
dữ liệu nếu thỏa mãn → lưu danh mục theo
thông tin vừa nhập → Màn hình chuyển
đến màn xem danh sách danh mục.
d.1.2.1.2.4. Các ràng buộc
2 Mã tham chiếu VBPL Disable khi chưa chọn TT-NĐ, bắt buộc
chọn
3 Nội dung VBPL Không được nhập
4 Nhóm HVVP
5 Mã HVVP Không được nhập
6 Nội dung HVVP Bắt buộc nhập, nhập tối đa 255 ký tự
7 Ngày hiệu lực Không được nhập
8 Ngày hết hiệu lực Không được nhập
9 Số tiền nhỏ nhất cá nhân Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ nhất /
Số tiền lớn nhất của Tổ chức
10 Số tiền lớn nhất cá nhân Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ nhất/
Số tiền lớn nhất của Tổ chức
11 Số tiền mặc định cá nhân Được tính bằng trung bình cộng Số tiền nhỏ nhất
và Số tiền lớn nhất (cá nhân), không được nhập
12 Số tiền nhỏ nhất tổ chức Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ nhất/
Số tiền lớn nhất của Cá nhân
13 Số tiền lớn nhất tổ chức Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ
nhất / Số tiền lớn nhất của Cá nhân
14 Số tiền mặc định tổ chức Được tính bằng trung bình cộng Số tiền nhỏ nhất
và Số tiền lớn nhất (tổ chức), không được nhập
Cá nhân
9
10 Số tiền nhỏ soTienPhatC - TEXTBOX Nhập số tiền phạt nhỏ
nhất cá nhân aNhanNhoN nhất với cá nhân
hat
11 Số tiền lớn soTienPhatC - TEXTBOX Nhập số tiền phạt lớn
nhất cá nhân aNhanLonN nhất với cá nhân
hat
12 Số tiền mặc soTienPhat - TEXTBOX Nhập số tiền phạt mặc
định cá nhân MacDinh định với cá nhân
Tổ chức
13 Số tiền nhỏ soTienPhatT - TEXTBOX Nhập số tiền phạt nhỏ
nhất tổ chức oChucNhoN nhất với tổ chức
hat
14 Số tiền lớn soTienPhatT - TEXTBOX Nhập số tiền phạt lớn
nhất tổ chức oChucLonN nhất với tổ chức
hat
15 Số tiền mặc soTienPhat - TEXTBOX Nhập số tiền phạt mặc
định tổ chức MacDinh định với tổ chức
d.1.2.1.3.3. Xử lý sự kiện
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Cách 1: Click nút Chỉnh sửa ở cuối mỗi bản ghi tại
màn hình danh sách Danh mục hành vi vi phạm →
Màn hình chuyển đến màn Chỉnh sửa.
Cách 2: Click nút Chỉnh sửa tại màn hình chi tiết Danh
mục hành vi vi phạm → Màn hình chuyển đến màn
Chỉnh sửa.
2 BtnSave_Click Nhập thông tin trong Form chỉnh sửa dữ liệu danh
mục → Click Lưu.
Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu danh mục theo thông tin vừa nhập →
Màn hình chuyển đến màn xem chi tiết danh mục vừa
chỉnh sửa.
3 BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu danh mục theo thông tin vừa nhập →
Màn hình chuyển đến màn xem danh sách danh mục.
d.1.2.1.3.4. Các ràng buộc
10 Số tiền lớn nhất cá nhân Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
11 Số tiền mặc định cá nhân Được tính bằng trung bình cộng Số tiền nhỏ nhất
và Số tiền lớn nhất (cá nhân), không được nhập
12 Số tiền nhỏ nhất tổ chức Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ nhất/
Số tiền lớn nhất của Cá nhân
13 Số tiền lớn nhất tổ chức Chỉ nhập số lớn hơn 0, nhập tối đa 11 ký tự,
bắt buộc nhập nếu không nhập Số tiền nhỏ
nhất / Số tiền lớn nhất của Cá nhân
14 Số tiền mặc định tổ chức Được tính bằng trung bình cộng Số tiền nhỏ nhất
và Số tiền lớn nhất (tổ chức), không được nhập
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới
đây:
Control
Thông tin chung
1 TT-NĐ maThongTuN X DROP Hiển thị TT-ND
ghiDinh DOW
NLIST
2 Mã tham maVbpl X DROP Hiển mã tham chiếu VBPL
chiếu DOW
VBPL NLIST
3 Nội dung noiDungVbpl - TEXT Hiển thị nội dung VBPL theo
VBPL BOX mã VBPL được chọn
4 Nhóm maNhomHvvp - DROP Hiển thị nhóm HVVP
HVVP DOW
NLIST
5 Mã HVVP maHvvp - TEXT Hiển thị mã HVVP
BOX
6 Nội dung noiDungHvvp - TEXT Hiển thị nội dung HVVP
HVVP BOX
7 Ngày hiệu ngayHieuLuc - DATE Hiển thị ngày hiệu lực tương
lực PICKE ứng với mã VBPL được chọn
R
8 Ngày hết ngayHetHieuL - DATE Hiển thị ngày hết hiệu lực
hiệu lực uc PICKE tương ứng với mã VBPL được
R chọn
Cá nhân
9 Số tiền soTienPhatCa - TEXT Hiển thị số tiền phạt nhỏ nhất
nhỏ nhất NhanNhoNhat BOX với cá nhân
cá nhân
10 Số tiền lớn soTienPhatCa - TEXT Hiển thị số tiền phạt lớn nhất
nhất cá NhanLonNhat BOX với cá nhân
nhân
11 Số tiền soTienPhatMa - TEXT Hiển thị số tiền phạt mặc định
mặc định cDinh BOX với cá nhân
cá nhân
Tổ chức
12 Số tiền soTienPhatTo - TEXT Hiển thị số tiền phạt nhỏ nhất
nhỏ nhất ChucNhoNhat BOX với tổ chức
tổ chức
13 Số tiền lớn soTienPhatTo - TEXT Hiển thị số tiền phạt lớn nhất
nhất tổ ChucLonNhat BOX với tổ chức
chức
14 Số tiền soTienPhatMa - TEXT Hiển thị số tiền phạt mặc định
mặc định cDinh BOX với tổ chức
tổ chức
d.1.2.1.4.3. Xử lý sự kiện
Mô tả các sự kiện xử lý đối với màn hình chức năng này, các thông tin được trình
bày trong bảng như sau:
STT Sự kiện Quy trình
1 Page_Load Click nút Xem chi tiết ở cuối mỗi bản ghi tại màn hình
danh sách Danh mục hành vi vi phạm → Màn hình
chuyển đến màn Xem chi tiết.
2 BtnClose_Click Click nút Đóng → Màn hình chuyển đến màn xem danh
sách danh mục.
d.1.2.2. Thiết kế các hàm, thủ tục
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách hành vi vi phạm theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/hanh-vi-vi-pham?
at
2 ma String Mã hành vi vi phạm
trangThai Boolean Trạng thái của hành vi vi
phạm
3
+ true : kích hoạt
+ false : không kích hoạt
page Number Trang cần tìm kiếm ( bắt đầu
4
từ 0)
5 pageSize Number Số bản ghi cần lấy trên 1 trang
isFetchAll Boolean Lấy tất cả các bản ghi hành vi
6
vi phạm
7 timKiemNhanh String Tìm kiếm nhanh
kyHieuThongTuNg String Ký hiệu thông tư nghị định
8
hiDinh
maNhomHanhViVi String Mã nhóm hành vi vi phạm
9
Pham
10 noiDung String Nội dung
11 ngayHieuLuc Date Ngày hiệu lực
12 linhVuc String Lĩnh vực
Các tham số trả về là:
Tham số Kiểu dữ Mô tả
STT
liệu
maVanBanPhap String Mã văn bản pháp luật
1
Luat
2 ma String Mã hành vi vi phạm
maNhomHanhV String Mã nhóm hành vi vi phạm
3
iViPham
noiDungHanhVi String Nội dung hành vi vi phạm
4
ViPham
5 soTienPhatCaN String Số tiền phạt cá nhân mặc định
hanMacDinh
soTienPhatCaN String Số tiền phạt cá nhân lớn nhất
6
hanLonNhat
soTienPhatCaN String Số tiền phạt cá nhân nhỏ nhất
7
hanNhoNhat
soTienPhatToCh String Số tiền phạt tổ chức mặc định
8
ucMacDinh
soTienPhatToCh String Số tiền phạt tổ chức lớn nhất
9
ucLonNhat
soTienPhatToCh String Số tiền phạt tổ chức nhỏ nhất
10
ucNhoNhat
11 nguoiSua String Người sửa
12 ngaySua Date Ngày sửa
vanBanPhapLua Object Đối tượng văn bản pháp luật
13
t
kyHieuThongTu String Ký hiệu thông tư nghị định
14
NghiDinh
15 dieu String Điều
16 khoan String Khoản
17 diem String Điểm
18 total Integer Tổng số lượng bản ghi
II.1.2.3.1.2. Mô tả chi tiết
Services:
- Gọi hàm search xử lý lấy danh sách hành vi vi phạm từ database
- Hàm search được sử dụng để tìm kiếm danh sách đối tượng HanhViViPham từ cơ
sở dữ liệu theo các tiêu chí được cung cấp trong đối tượng
HanhViViPhamSearchDto.
- Nó trả về một đối tượng PaginationResponseDto chứa danh sách các đối tượng
HanhViViPhamDto.
- Cách hoạt động:
o Kiểm tra xem ngày hiệu lực trong searchRequest có hợp lệ hay không. Nếu
không hợp lệ, ném ra ngoại lệ CustomerException.
o Thiết lập trường linhVuc trong searchRequest.
o Gọi phương thức search của repository để tìm kiếm các đối tượng
HanhViViPham dựa trên các tiêu chí trong searchRequest. Kết quả được trả
về dưới dạng một đối tượng PaginationResponseDto chứa danh sách các
đối tượng HanhViViPhamEntity.
o Chuyển đổi danh sách các đối tượng HanhViViPhamEntity thành danh sách
các đối tượng HanhViViPhamDto bằng cách sử dụng phương thức toDto
của HanhViViPhamMapper.
o Thiết lập trường total và items của đối tượng PaginationResponseDto và trả
về nó
Procedure:
PKG_DANH_MUC_HANH_VI_VI_PHAM. SEARCH là một thủ tục được sử dụng
để tìm kiếm các Hành vi vi phạm dựa trên các tiêu chí khác nhau.
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 P_SEARCH VARCHAR2 N Tìm kiếm nhanh
2 P_KY_HIEU_TT_N VARCHAR2 N Ký hiệu thông tư nghị đinh
D
3 P_MA_VAN_BAN_ VARCHAR2 N Mã văn bản pháp luật
PHAP_LUAT
4 P_MA VARCHAR2 N Mã hành vi vi phạm
5 P_MA_NHOM_HA VARCHAR2 N Mã nhóm hành vi vi phạm
NH_VI_VI_PHAM
6 P_NOI_DUNG VARCHAR2 N Nội dung
7 P_NGAY_HIEU_L VARCHAR2 N Ngày hiệu lực
UC
8 P_LINH_VUC VARCHAR2 N Lĩnh vực
9 P_PAGE NUMBER N Page
- Hàm SEARCH là một thủ tục được sử dụng để tìm kiếm các hành vi vi phạm pháp
luật dựa trên các tiêu chí khác nhau.
- Đầu vào:
o P_SEARCH: chuỗi tìm kiếm nhanh
o P_KY_HIEU_TT_ND: ký hiệu thông tư/nghị định liên quan đến hành vi vi
phạm
o P_MA_VAN_BAN_PHAP_LUAT: mã văn bản pháp luật liên quan đến
hành vi vi phạm
o P_MA: mã của hành vi vi phạm
o P_MA_NHOM_HANH_VI_VI_PHAM: mã nhóm hành vi vi phạm
o P_NOI_DUNG: nội dung của hành vi vi phạm
o P_NGAY_HIEU_LUC: ngày có hiệu lực của văn bản pháp luật
o P_LINH_VUC: lĩnh vực của văn bản pháp luật
- Đầu ra:
o V_CURSOR: con trỏ tham chiếu đến kết quả tìm kiếm
Kết quả trả về của thủ tục bao gồm một danh sách các hành vi vi phạm pháp luật
được tìm thấy, phù hợp với các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân
trang và sắp xếp theo ngày tạo và mã hành vi vi phạm
II.1.2.3.1.3. Xử lý ngoại lệ
- CustomerException khi ngày hiệu lực không hợp lệ
d.1.2.2.2. Thêm mới hành vi vi phạm
d.1.2.2.2.1. API
Services:
Gọi hàm create xử lý lấy thông tin chi tiết hành vi vi phạm từ database
- Hàm create được đánh dấu là @Override và được thực hiện trong một transaction.
- Nó nhận đầu vào là một HanhViViPhamCreateDto và một chuỗi createBy.
- Nó kiểm tra và xác thực dữ liệu đầu vào, sau đó lưu trữ đối tượng HanhViViPham
mới được tạo trong cơ sở dữ liệu và trả về một đối tượng HanhViViPhamDto
tương ứng với đối tượng mới được tạo.
- Cách hoạt động:
o Kiểm tra và xác thực dữ liệu đầu vào bằng cách gọi phương thức
validateSoTienPhat và thiết lập giá trị mặc định cho
soTienPhatCaNhanMacDinh và soTienPhatToChucMacDinh.
o Lấy đối tượng VanBanPhapLuatEntity tương ứng với mã văn bản pháp luật
được cung cấp từ request. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Lấy đối tượng ThongTuNghiDinhDTO tương ứng với ký hiệu thông
tư/nghị định được cung cấp từ request. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Kiểm tra xem hành vi vi phạm đã tồn tại hay chưa bằng cách gọi phương
thức isExistedHVVPGetByMaVBPLAndNoiDungHVVP và nếu có tồn tại,
ném ra ngoại lệ ResourceExistedException.
o Thiết lập mã cho hành vi vi phạm mới được tạo bằng cách gọi phương thức
getMaHanhViViPham và gọi phương thức create của repository để lưu trữ
đối tượng mới được tạo trong cơ sở dữ liệu.
o Chuyển đổi đối tượng HanhViViPham đã được lưu trữ thành một đối tượng
HanhViViPhamDto bằng cách gọi phương thức toDto của
HanhViViPhamMapper.
o Ghi nhật ký ứng dụng bằng cách gọi phương thức log của
applicationLogService.
o Trả về đối tượng HanhViViPhamDto
Procedure:
PKG_DANH_MUC_HANH_VI_VI_PHAM. GET_BY_MA là một thủ tục được
sử dụng để thêm một bản ghi mới vào bảng DANH_MUC_HANH_VI_VI_PHAM.
Các giá trị nhập vào và trả ra gồm:
Nhập /
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
[N/X]
1 H_KY_HIEU_T VARCHAR Ký hiệu của danh mục thông tư
T_ND 2(20 N nghị định
CHAR)
2 H_MA_VAN_B VARCHAR Mã văn bản pháp luật của danh
AN_PHAP_LU 2(20 N mục văn bản pháp luật
AT CHAR)
- Đầu ra:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng DANH_MUC_HANH_VI_VI_PHAM.
d.1.2.2.3.1. API
NghiDinh
15 dieu String Điều
16 khoan String Khoản
17 diem String Điểm
Services
Gọi hàm getDetail xử lý lấy thông tin chi tiết hành vi vi phạm từ database
- Hàm getDetail được sử dụng để lấy chi tiết một đối tượng HanhViViPham từ cơ
sở dữ liệu.
- Nó nhận đầu vào là một chuỗi ma biểu thị mã của đối tượng cần lấy chi tiết.
- Nó trả về một đối tượng HanhViViPhamDetailDto biểu thị chi tiết của đối tượng
HanhViViPham tương ứng.
- Cách hoạt động:
o Lấy đối tượng HanhViViPhamEntity tương ứng với mã hành vi vi phạm
được cung cấp từ ma. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Chuyển đổi đối tượng HanhViViPhamEntity thành một đối tượng
HanhViViPhamDetailDto bằng cách gọi phương thức toDetailDto của
HanhViViPhamMapper.
o Trả về đối tượng HanhViViPhamDetailDto.
Packages
Procedure PKG_DANH_MUC_HANH_VI_VI_PHAM.GET_BY_MA là một thủ tục
lấy thông tin một bản ghi theo mã hành vi vi phạm
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu Nhập / Mô tả
dữ liệu Xuất
[N/X]
1 H_MA VARC N Mã hành vi vi phạm
HAR2
2 V_CURSO CURS X REF_CURSOR
R OR
- Đầu vào:
o H_MA: Mã hành vi vi phạm, là một biến kiểu dữ liệu của cột MA trong
bảng DANH_MUC_HANH_VI_VI_PHAM.
o V_CURSOR: Đây là một biến kiểu REF_CURSOR và là đầu ra của hàm.
Nó sẽ chứa kết quả trả về của câu lệnh SELECT trong thân của stored
procedure.
- Đầu ra:
o Tất cả các cột của bảng DANH_MUC_HANH_VI_VI_PHAM (trừ cột
IS_DELETED)
o Các cột DIEU, KHOAN, DIEM từ bảng
DANH_MUC_VAN_BAN_PHAP_LUAT
o Một cột mới có tên "vanBanPhapLuat" là một đối tượng JSON chứa thông
tin về ngày có hiệu lực và ngày hết hiệu lực của bảng
THONG_TU_NGHI_DINH liên kết với bảng
DANH_MUC_VAN_BAN_PHAP_LUAT.
- Điều kiện để trả về kết quả là cột MA của bảng
DANH_MUC_HANH_VI_VI_PHAM phải bằng với giá trị của biến H_MA và
cột IS_DELETED của bảng DANH_MUC_HANH_VI_VI_PHAM phải là 0.
d.1.2.2.3.4. Xử lý ngoại lệ
d.1.2.2.4.1. API
Services
Gọi hàm update xử lý lấy thông tin chi tiết hành vi vi phạm từ database
- Hàm update được đánh dấu là @Override và được thực hiện trong một transaction.
- Nó nhận đầu vào là một chuỗi ma, một đối tượng HanhViViPhamUpdateDto và
một chuỗi updateBy.
- Nó kiểm tra và xác thực dữ liệu đầu vào, sau đó cập nhật đối tượng
HanhViViPham tương ứng trong cơ sở dữ liệu và trả về một đối tượng
HanhViViPhamDto tương ứng với đối tượng được cập nhật.
- Cách hoạt động:
o Lấy đối tượng HanhViViPhamEntity tương ứng với mã hành vi vi phạm
được cung cấp từ ma. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Kiểm tra và xác thực dữ liệu đầu vào bằng cách gọi phương thức
validateSoTienPhat và thiết lập giá trị mặc định cho
soTienPhatCaNhanMacDinh và soTienPhatToChucMacDinh.
o Lấy đối tượng VanBanPhapLuatEntity tương ứng với mã văn bản pháp luật
được cung cấp từ request. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Lấy đối tượng ThongTuNghiDinhDTO tương ứng với ký hiệu thông
tư/nghị định được cung cấp từ request. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Kiểm tra xem hành vi vi phạm đã tồn tại hay chưa bằng cách gọi phương
thức isExistedHVVPGetByMaVBPLAndNoiDungHVVP và nếu có tồn tại,
ném ra ngoại lệ ResourceExistedException.
o Gọi phương thức update của repository để cập nhật đối tượng hành vi vi
phạm và chuyển đổi đối tượng HanhViViPham đã được cập nhật thành một
đối tượng HanhViViPhamDto bằng cách gọi phương thức toDto
củaHanhViViPhamMapper.
o Ghi nhật ký ứng dụng bằng cách gọi phương thức log của
applicationLogService.
Packages
Procedure PKG_DANH_MUC_HANH_VI_VI_PHAM.
UPDATE_HANH_VI_VI_PHAM là một thủ tục được sử dụng để cập nhật thông tin
của một hành vi vi phạm đã có trong cơ sở dữ liệu.
Các giá trị nhập vào và trả ra gồm:
Nhập /
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
[N/X]
H_MA VARCHA N Mã hành vi vi phạm
1
R2
H_KY_HIEU_ VARCHA N Ký hiệu của danh mục thông
2
TT_ND R2 tư nghị định
H_MA_VAN_ VARCHA N Mã văn bản pháp luật của
3 BAN_PHAP_L R2 danh mục văn bản pháp luật
UAT
4 H_NOI_DUNG VARCHA N Nội dung hành vi vi phạm
R2
H_MA_NHOM VARCHA N Mã nhóm hành vi vi phạm
5 _HANH_VI_V R2
I_PHAM
H_SO_TIEN_P NUMBER N Số tiền phạt cá nhân nhỏ nhất
HAT_CA_NH
6
AN_NHO_NH
AT
H_SO_TIEN_P NUMBER N Số tiền phạt cá nhân lớn nhất
HAT_CA_NH
7
AN_LON_NH
AT
H_SO_TIEN_P NUMBER N Số tiền phạt cá nhân mặc định
HAT_CA_NH
8
AN_MAC_DI
NH
H_SO_TIEN_P NUMBER N Số tiền phạt tổ chức nhỏ nhất
HAT_TO_CH
9
UC_NHO_NH
AT
H_SO_TIEN_P NUMBER N Số tiền phạt tổ chức lớn nhất
HAT_TO_CH
10
UC_LON_NH
AT
H_SO_TIEN_P NUMBER N Số tiền phạt tổ chức mặc định
HAT_TO_CH
11
UC_MAC_DI
NH
H_NGUOI_SU VARCHA N Người sửa
12
A R2
13 V_CURSOR X REF_CURSOR
- Đầu vào:
o H_MA: Mã của hành vi vi phạm cần cập nhật.
o H_KY_HIEU_TT_ND: Ký hiệu thông tư/nghị định liên quan đến hành vi
vi phạm.
o H_MA_VAN_BAN_PHAP_LUAT: Mã văn bản pháp luật liên quan đến
hành vi vi phạm.
o H_NOI_DUNG: Nội dung của hành vi vi phạm.
o H_MA_NHOM_HANH_VI_VI_PHAM: Mã nhóm hành vi vi phạm.
o H_SO_TIEN_PHAT_CA_NHAN_NHO_NHAT: Số tiền phạt tối thiểu đối
với cá nhân vi phạm.
o H_SO_TIEN_PHAT_CA_NHAN_LON_NHAT: Số tiền phạt tối đa đối với
cá nhân vi phạm.
o H_SO_TIEN_PHAT_CA_NHAN_MAC_DINH: Số tiền phạt mặc định đối
với cá nhân vi phạm.
o H_SO_TIEN_PHAT_TO_CHUC_NHO_NHAT: Số tiền phạt tối thiểu đối
với tổ chức vi phạm.
o H_SO_TIEN_PHAT_TO_CHUC_LON_NHAT: Số tiền phạt tối đa đối với
tổ chức vi phạm.
o H_SO_TIEN_PHAT_TO_CHUC_MAC_DINH: Số tiền phạt mặc định đối
với tổ chức vi phạm.
o H_NGUOI_SUA: Tên người sửa thông tin.
- Đầu ra:
o V_CURSOR: Con trỏ tham chiếu đến kết quả truy vấn danh sách các hành
vi vi phạm được cập nhật.
d.1.2.2.4.4. Xử lý ngoại lệ
d.1.2.2.5.1. API
Method URL
DELETE xlvp/api/v1/danh-muc/hanh-vi-vi-pham/{ma}
Services
Gọi hàm delete xử lý xóa thông tin chi tiết hành vi vi phạm từ database
- Hàm delete được sử dụng để xóa một đối tượng HanhViViPham khỏi cơ sở dữ
liệu.
- Nó nhận đầu vào là một chuỗi ma biểu thị mã của đối tượng cần xóa và một chuỗi
updateBy biểu thị người dùng thực hiện thao tác xóa.
- Nó trả về giá trị boolean true để cho biết thao tác xóa đã thành công.
- Cách hoạt động:
o Lấy đối tượng HanhViViPhamEntity tương ứng với mã hành vi vi phạm
được cung cấp từ ma. Nếu không tìm thấy, ném ra ngoại lệ
ResourceDoesNotExistException.
o Gọi phương thức delete của repository để xóa đối tượng HanhViViPham
khỏi cơ sở dữ liệu.
o Ghi nhật ký ứng dụng bằng cách gọi phương thức log của
applicationLogService.
o Trả về giá trị boolean true để cho biết thao tác xóa đã thành công
Packages
Procedure PKG_DANH_MUC_HANH_VI_VI_PHAM.
DELETE_HANH_VI_VI_PHAM là một thủ tục được sử dụng để đánh dấu một hành vi
vi phạm trong danh mục hành vi vi phạm đã bị xóa bỏ.
Các giá trị nhập vào và trả ra gồm:
Nhập
STT Tham số Kiểu dữ liệu / Xuất Mô tả
[N/X]
H_MA VARCHAR2( N Mã hành vi vi phạm
1
20 CHAR)
H_NGUO VARCHAR2( N Người sửa
2
I_SUA 20 CHAR)
Thủ tục DELETE_HANH_VI_VI_PHAM không có giá trị trả về, nhưng sẽ cập nhật
cột IS_DELETED thành giá trị 1 để đánh dấu hành vi vi phạm đã bị xóa.
d.1.2.2.5.4. Xử lý ngoại lệ
- ResourceDoesNotExistException
d.1.2.2.6.1. API
Services:
Gọi hàm exportExcel xử lý xuất ra một file Excel
- Hàm exportExcel được sử dụng để xuất ra một file Excel chứa danh sách các đối
tượng HanhViViPham dựa trên các tiêu chí được cung cấp trong đối tượng
HanhViViPhamSearchDto.
- Nó trả về một Đầu vàoStreamResource chứa nội dung của file Excel.
- Cách hoạt động:
o Kiểm tra xem ngày hiệu lực trong searchRequest có hợp lệ hay không. Nếu
không hợp lệ, ném ra ngoại lệ CustomerException.
o Thiết lập trường linhVuc trong searchRequest.
o Gọi phương thức exportExcel của repository để lấy danh sách các đối
tượng HanhViViPham dựa trên các tiêu chí trong searchRequest. Kết quả
được trả về dưới dạng một danh sách các đối tượng HanhViViPhamEntity.
o Chuyển đổi danh sách các đối tượng HanhViViPhamEntity thành danh sách
các đối tượng HanhViViPhamReportDto bằng cách sử dụng phương thức
toDtoReport của HanhViViPhamMapper.
o Tạo danh sách các tiêu đề cho file Excel bằng cách tách chuỗi tiêu đề được
lấy từ tệp tin thông điệp thành các phần tử của một danh sách.
o Sử dụng đối tượng BaseExportExcelService để xuất file Excel từ các thông
tin đã thu thập được.
o Trả về Đầu vàoStreamResource chứa nội dung của file Excel.
Procedure:
PKG_DANH_MUC_HANH_VI_VI_PHAM.EXCEL_HANH_VI_VI_PHAM là
một thủ tục được sử dụng để lấy danh sách các hành vi vi phạm theo các điều kiện tìm
kiếm được cung cấp.
Các giá trị nhập vào và trả ra gồm:
Nhập /
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
[N/X]
P_SEARCH VARCHA N Tìm kiếm nhanh
1 R2(20
CHAR)
2 P_KY_HIEU CURSOR N Ký hiệu của danh mục thông tư
_TT_ND nghị định
3 P_MA_VAN VARCHA N Mã văn bản pháp luật của danh
_BAN_PHA R2 mục văn bản pháp luật
P_LUAT
4 P_MA VARCHA N Mã hành vi vi phạm
R2
5 P_NOI_DU VARCHA N Nội dung
NG R2
6 P_NGAY_H VARCHA N Ngày hiệu lực
IEU_LUC R2
Tên trường Kiểu dữ liệu Bắt P/F Key? Mặc định Diễn giải
buộc?
d.1.2.1.1. Màn hình xem danh sách, tìm kiếm nhóm hành vi vi phạm
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên label Tên thành Bắt Định dạng Mô tả
phần / Control buộc?
Form tìm kiếm/lọc dữ liệu danh mục
Tên nhóm ten Textbox Nhập tên nhóm
HVVP hành vi vi phạm
Mã nhóm ma Textbox Nhập mã nhóm
HVVP hành vi vi phạm
Trạng thái trangThai Dropdownli Chọn loại trạng thái
st nhóm hành vi vi
phạm
Danh sách nhóm hành vi vi phạm
Mã nhóm ma Textbox Hiển thị mã nhóm
-
HVVP hành vi vi phạm
d.1.2.1.1.3. Xử lý sự kiện
hành vi vi phạm.
BtnEdit_Click Click nút Chỉnh sửa ở cuối mỗi bản ghi trong danh sách.
Màn hình chuyển đến trang Chỉnh sửa danh mục nhóm hành
vi vi phạm tương ứng với bản ghi.
BtnView_Click Click nút Xem chi tiết ở cuối mỗi bản ghi trong danh sách.
Màn hình chuyển đến trang Xem chi tiết danh mục nhóm
hành vi vi phạm tương ứng với bản ghi.
BtnDelete_Click Click nút Xóa ở cuối mỗi bản ghi trong danh sách → Chọn
Đồng ý.
Hệ thống xóa bản ghi tương ứng → Màn hình reload và cập
nhật lại danh sách danh mục.
d.1.2.1.2. Thêm mới nhóm hành vi vi phạm
Hình 29: Màn hình thêm mới danh mục nhóm hành vi vi phạm
d.1.2.1.2.2. Danh sách control/thành phần giao diện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành
Bắt Định
STT Tên label phần / Mô tả
buộc? dạng
Control
1 Mã nhóm HVVP ma Textbox Hiển thị mã nhóm hành
vi vi phạm.
Mã tự sinh, không thể
nhập
2 Tên nhóm HVVP ten Textbox Nhập tên nhóm hành vi
x
vi phạm
3 Trạng thái trangThai Switch Bật/Tắt trạng thái hoạt
x động của nhóm hành vi
vi phạm
4 Gán HVVP hanhViViPh TransferLi Chọn và di chuyển
am st hành vi vi phạm chưa
được gán nhóm sang
danh sách đã được gán
nhóm.
Có thể di chuyển 1
hoặc nhiều hành vi vi
phạm giữa danh sách
hành vi vi phạm chưa
được gán nhóm và đã
được gán nhóm
d.1.2.1.2.3. Xử lý sự kiện
vi phạm
Trạng thái trangThai Switch Bật/Tắt trạng thái hoạt
3 x động của nhóm hành vi
vi phạm
Gán HVVP hanhViViPh Transfer Chọn và di chuyển
am List hành vi vi phạm chưa
được gán nhóm sang
danh sách đã được gán
nhóm.
4 Có thể di chuyển 1
hoặc nhiều hành vi vi
phạm giữa danh sách
hành vi vi phạm chưa
được gán nhóm và đã
được gán nhóm
d.1.2.1.3.3. Xử lý sự kiện
Màn hình chuyển đến màn xem danh sách danh mục.
d.1.2.1.3.4. Kiểm soát dữ liệu/các ràng buộc
Hình 31: Màn hình xem chi tiết nhóm hành vi vi phạm
d.1.2.1.4.2. Danh sách control/thành phần giao diện
Tên thành
STT Tên label Định dạng Mô tả
phần / Control
1 Mã nhóm HVVP ma Dropdownlist Hiển thị mã
nhóm hành vi vi
phạm
2 Tên nhóm HVVP ten Dropdownlist Hiển thị tên
nhóm hành vi vi
phạm
3 Trạng thái trangThai Switch Hiển thị loại
trạng thái nhóm
hành vi vi phạm
4 Gán HVVP hanhViViPham Dropdownlist Hiển thị danh
d.1.2.1.4.3. Xử lý sự kiện
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách nhóm hành vi vi phạm theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/nhom-hanh-vi-vi-pham?
Procedure
- Hàm PAGE_NHOM_HVVP() được sử dụng để lấy danh sách các văn bản pháp
luật theo các điều kiện tìm kiếm được cung cấp. Kết quả trả về được sắp xếp theo
ngày tạo mới nhất. Đây là một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về
một con trỏ tham chiếu trỏ đến nhóm hành vi vi phạm.
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
- Đầu vào:
o P_MA: Mã của nhóm hành vi vi phạm
o P_TEN: Tên của nhóm hành vi vi phạm
o P_TRANG_THAI: Trạng thái của hành vi vi phạm
o P_LINH_VUC: Lĩnh vực của hành vi vi phạm
o P_PAGE: Trang hiện tại của danh sách văn bản pháp luật
o P_PAGE_SIZE: Số bản ghi trên một trang
- Đầu ra:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các nhóm
hành vi vi phạm tìm kiếm được. Các thông tin bao gồm tất cả các trường
trong bảng DANH_MUC_NHOM_HANH_VI_VI_PHAM. Các nhóm
hành vi vi phạm được sắp xếp theo ngày tạo mới nhất.
Service
- Gọi procedure PAGE_NHOM_HVVP() để xử lý lấy danh sách NHVVP từ
database
d.1.2.2.1.4. Xử lý ngoại lệ
d.1.2.2.2.1. API
Service
- Kiểm tra xem hành vi vi phạm có tồn tại trong bảng HVVP chưa
- Kiểm tra tên nhóm hành vi vi phạm đã tồn tại trong bảng NHVVP chưa
- Kiểm tra hành vi vi phạm đã tồn tại NHVVP chưa
- Gọi procedure CREATE_ITEM để lưu thông tin VBPL mới
Procedure
- Hàm CREATE_ITEM được sử dụng để thêm một bản ghi mới vào bảng
DANH_MUC_NHOM_HANH_VI_VI_PHAM. Hàm nhận các tham số đầu vào là
thông tin của bản ghi mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Các giá trị nhập vào và trả ra gồm:
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
- Đầu vào:
- Đầu ra:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng DANH_MUC_NHOM_HANH_VI_VI_PHAM.
o Hàm này sẽ chèn dữ liệu vào bảng
DANH_MUC_NHOM_HANH_VI_VI_PHAM với các thông tin tương
ứng từ các tham số đầu vào, sau đó gọi hàm GET_DETAIL để lấy thông tin
bản ghi vừa được thêm và trả về.
d.1.2.2.2.4. Xử lý ngoại lệ
d.1.2.2.3.1. API
Procedure:
Hàm UPDATE_NHOM_HANH_VI_VI_PHAM() được sử dụng để chỉnh sửa
thông tin một bản ghi tồn tại trong bảng DANH_MUC_NHOM_HANH_VI_VI_PHAM.
Hàm nhận các tham số đầu vào là thông tin cập nhật của bản ghi có mã văn bản pháp luật
là P_MA và trả về kết quả thông qua một con trỏ REF_CURSOR.
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
- Đầu vào:
- Đầu ra:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được chỉnh sửa
trong bảng DANH_MUC_NHOM_HANH_VI_VI_PHAM.
Hàm này sẽ chỉnh sửa dữ liệu vào bản ghi có mã văn bản pháp luật tương ứng ở
trong bảng DANH_MUC_NHOM_HANH_VI_VI_PHAM với các thông tin được
truyền từ các tham số đầu vào, sau đó gọi hàm GET_DETAIL để lấy thông tin bản
ghi vừa được được chỉnh sửa và trả về.
Service:
- Kiểm tra xem NHVVP đã tồn tại trong bảng NHVVP hay chưa
- Gọi procedure UPDATE_NHOM_HANH_VI_VI_PHAM() để cập nhật lại
NHVVP mới
d.1.2.2.3.4. Xử lý ngoại lệ
d.1.2.2.4.1. API
Mô tả: Gọi API để xem chi tiết nhóm hành vi vi phạm theo mã hành vi vi phạm.
Method URL
GET xlvp/api/v1/danh-muc/nhom-hanh-vi-pham/{ma}
Procedure:
- Thêm tham số vào là mã nhóm hành vi vi phạm
Service
- Kiểm tra xem mã NHHVP tồn tại trong bảng NHHVP hay chưa
- Gọi procedure GET_BY_MA xử lý lấy lên NHHVP theo mã từ DB
d.1.2.2.4.4. Xử lý ngoại lệ
d.1.2.2.5.1. API
Procedure
STT Tham số Kiểu dữ liệu Nhập / Xuất Mô tả
[N/X]
- Đây là một thủ tục, không có giá trị trả về, nhưng sẽ cập nhật cột IS_DELETED
thành giá trị 1 để đánh dấu hành vi vi phạm đã bị xóa.
- Input:
o P_MA: Mã của nhóm hành vi vi phạm
o V_AUTH_USER: Tên người sửa cập nhật vào cột NGUOI_SUA.
- Output: NA
Service
- Kiểm tra xem mã NHVVP gửi lên có tồn tại trong bảng NHVVP hay không
- Gọi Procedure DELETE_BY_MA_NHOM_HVVP để cập nhật lại trang thái xóa
trong database
d.1.2.2.5.4. Xử lý ngoại lệ
d.1.2.2.6.1. API
Mô tả: Gọi API để lấy thông tin chi tiết nhóm hành vi vi phạm
Method URL
GET xlvp/api/v1/danh-muc/nhom-hanh-viv-vi-pham/export/excel
Service:
- Gọi hàm PKG_CAN_CU.PAGE_NHOM_HVVP xử lý lấy danh sách nhóm hành
vi vi phạm từ database
- Xử lý trả ra file Excel dạng byte[]
Procedure:
- Hàm PKG_CAN_CU.PAGE_NHOM-HVVP là một thủ tục được sử dụng để lấy
thông tin nhóm hành vi vi phạm trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập / Xuất
STT Tham số Kiểu dữ liệu Mô tả
[N/X]
Bắt P/F
Mặc
STT Tên trường Kiểu dữ liệu buộc Key Mô tả
định
? ?
1 MA VARCHAR2( x Mã NCGT
255 CHAR)
2 TEN NUMBER(1) x Tên NCGT
3 DIA_CHI VARCHAR2( x Địa chỉ NCGT
500 CHAR)
4 DIEN_THOA VARCHAR2( Điện thoại của NCGT
I 250 CHAR)
5 EMAIL VARCHAR2( Email NCGT
255 CHAR)
6 GHI_CHU VARCHAR(1 Ghi chú
000 CHAR)
7 TRANG_TH NUMBER(1, x 1 Trạng thái của NCGT
AI 0) (1: Kích hoạt, 0:
Không kích hoạt)
8 NGUOI_TA VARCHAR2( Người tạo
O 50 CHAR)
9 NGAY_TAO DATE CURRE Ngày tạo
NT_TIM
ESTAM
P
10 NGUOI_SUA VARCHAR2( Người sửa
50 CHAR)
11 NGAY_SUA DATE Ngày sửa
12 IS_DELETE NUMBER(1, x 0 Trạng thái xóa(1: đã
D 0) xóa, 0: chưa xóa)
13 MA_DIA_D VARCHAR2( Mã địa danh hành
ANH_HANH 50 BYTE) chính
_CHINH
14 IS_DON_VI_ NUMBER(1, NCGT có phải là đơn
CSGT 0) vị csgt hay không?
(1: Có, 2: Không)
d.1.2.1.1. Màn hình xem danh sách, tìm kiếm nơi cấp giấy tờ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
STT Tên label Tên thành Bắt Định Vai trò
phần / buộc dạng
Control nhập
Form tìm kiếm/lọc dữ liệu danh mục
1 Tìm kiếm nhanh timKiemNhan Textbox Nhập thông tin Loại
h tang vật hoặc Nơi cấp
giấy tờ
2 Loại giấy tờ maGiayTo Dropdo Chọn loại giấy tờ
wnlist
3 Mã nơi cấp giấy ma Textbox Nhập mã nơi cấp giấy
tờ tờ
4 Nơi cấp giấy tờ ten Textbox Nhập tên nơi cấp giấy
tờ
5 Địa chỉ diaChi Textbox Nhập địa chỉ nơi cấp
giấy tờ
d.1.2.1.1.3. Xử lý sự kiện
Hình 33: Màn hình thêm mới danh mục Nơi cấp giấy tờ
d.1.2.1.2.2. Danh sách control/thành phần giao diện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
STT Tên label Tên thành Bắt Định Vai trò
phần / buộc dạng
Control nhập
Form thêm mới dữ liệu nơi cấp giấy tờ
1 Nơi cấp là Đơn vị isDonViCsgt X Chexbox Tích chọn Nơi cấp là
CSGT đơn vị CSGT
2 Đơn vị CSGT maDonViCsgt C Cascader Chọn đơn vị CSGT khi
tương ứng nơi cấp là Đơn vị
CSGT
Bắt buộc chọn nếu Nơi
cấp là đơn vị CSGT
3 Mã nơi cấp giấy ma C Textbox Nhập mã nơi cấp giấy
tờ tờ
Nếu nơi cấp là Đơn vị
CSGT: hiển thị theo mã
Đơn vị CSGT đã chọn
(disabled)
4 Tên nơi cấp giấy ten C Textbox Nhập tên nơi cấp giấy
tờ tờ
Nếu nơi cấp là Đơn vị
CSGT: hiển thị theo mã
tên viết tắt của đơn vị
CSGT đã chọn
(disabled)
5 Địa danh hành maDiaDanhH C Cascader Chọn địa danh hành
chính anhChinh chính của nơi cấp giấy
tờ
Nếu nơi cấp là Đơn vị
CSGT: Hiển thị theo
Địa danh hành chính
của Đơn vị CSGT đã
chọn (disabled)
6 Địa chỉ diaChi Textbox Nhập địa chỉ của nới
cấp giấy tờ
Nếu nơi cấp là Đơn vị
CSGT: Hiển thị theo
địa chỉ chi tiết của Đơn
vị CSGT đã chọn
(disabled)
7 Số điện thoại soDienThoai Textbox Nhập số điện thoại của
nơi cấp giấy tờ
Nếu Nơi cấp là Đơn vị
CSGT: Hiển thị theo số
điện thoại của Đơn vị
CSGT đã chọn
(disabled)
8 Email Email Textbox Nhập emial của nơi cấp
giấy tờ
Nếu Nơi cấp là Đơn vị
CSGT: Hiển thị theo
email của Đơn vị CSGT
d.1.2.1.3.3. Xử lý sự kiện
1 Đơn vị cảnh sát giao Bắt buộc chọn nếu nơi cấp giấy tờ là Đơn vị CSGT
thông tương ứng
2 Mã nơi cấp giấy tờ - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
mã của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Bắt buộc nhập, độ dài tối đa
15 ký tự
3 Tên nơi cấp giấy tờ - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
Tên viết tắt của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Bắt buộc nhập, độ dài tối đa
255 ký tự
4 Địa danh hành chính - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
địa danh hành chính của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Bắt buộc nhập
5 Địa chỉ - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
địa chỉ của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Cho phép nhập, độ dài tối đa
255 ký tự
6 Số điện thoại - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
số điện thoại của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Cho phép nhập, độ dài tối đa
255 ký tự
7 Email - Nơi cấp là Đơn vị CSGT: Không cho phép nhập, hiển thị theo
mã của Đơn vị CSGT đã chọn
- Nơi cấp không là Đơn vị CSGT: Cho phép nhập, độ dài tối đa
50 ký tự
Hình 35: Màn hình xem chi tiết nơi cấp giấy tờ
d.1.2.1.4.2. Danh sách control/thành phần giao diện
STT Tên label Tên thành Bắt Định dạng Vai trò
phần / buộc
Control nhập
Form tìm kiếm/lọc dữ liệu danh mục
1 Nơi cấp là Đơn vị isDonViCsgt Checkbox Hiển thị Nơi cấp là
CSGT đơn vị CSGT
2 Đơn vị CSGT maDonViCsgt Cascader Hiển thị đơn vị
tương ứng CSGT khi nơi cấp
là Đơn vị CSGT
3 Mã nơi cấp giấy ma Textbox Hiển thị mã nơi
tờ cấp giấy tờ
4 Tên nơi cấp giấy ten Textbox Hiển thị tên nơi
tờ cấp giấy tờ
5 Địa danh hành maDiaDanhHa Cascader Hiển thị địa danh
chính nhChinh hành chính của nơi
cấp giấy tờ
6 Địa chỉ diaChi Textbox Hiển thị địa chỉ
d.1.2.1.4.3. Xử lý sự kiện
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách nơi cấp giấy tờ theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/noi-cap-giay-to?
Service:
- Gọi procedure SEARCH() để lấy ra danh sách NCGT theo điều kiện truyền vào từ
đầu vào
Procedure:
- Hàm SEARCH() được sử dụng để lấy danh sách nơi cáp giấy tờ theo các điều kiện
tìm kiếm được cung cấp. Kết quả trả về được sắp xếp theo ngày tạo mới nhất. Đây là
một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về một con trỏ tham chiếu trỏ đến
danh sách nơi cấp giấy tờ.
- Đầu vào:
o P_TIM_KIEM_NHANH: Chuỗi tìm kiếm thông tin của tên nơi cấp giấy tờ
o P_MA: Mã nơi cấp giấy tờ
o P_MA_GIAY_TO: Mã loại giấy tờ.
o P_TEN: Tên nơi cấp giấy tờ.
o P_DIA_CHI: Địa chỉ nơi cấp giấy tờ.
o P_TRANG_THAI: Trạng thái kích hoạt của nơi cấp giấy tờ
o P_PAGE_NUMBER: Trang hiện tại của danh sách nơi cấp giấy tờ
o P_PAGE_SIZE: Số bản ghi trên một trang
- Đầu ra:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các nơi cấp giấy
tờ tìm kiếm được. Các thông tin bao gồm tất cả các trường trong bảng
NOI_CAP_GIAY_TO kết hợp với bảng NOI_CAP_LOAI_GIAY_TO được
lấy giữa 2 bảng theo mã nơi cấp giấy tờ. Các nơi cấp giấy tờ được sắp xếp theo
ngày tạo mới nhất.
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 P_MA VARCHAR2(100 N Mã nơi cấp giấy tờ
CHAR)
2 P_TIM_KIEM_NHANH VARCHAR2(255 N Chuỗi tìm kiếm nhanh
CHAR)
3 P_MA_GIAY_TO VARCHAR2(50 N Mã loại giấy tờ
CHAR)
4 P_TEN VARCHAR2(255 N Tên nơi cấp giấy tờ
CHAR)
5 P_DIA_CHI VARCHAR2(500 N Địa chỉ
CHAR)
6 P_TRANG_THAI NUMBER(1,0) N Trạng thái kích hoạt
nơi cấp giấy tờ
7 P_PAGE_NUMBER NUMBER N Trang hiện tại
8 P_PAGE_SIZE NUMBER N Dữ liệu trên một trang
9 V_CURSOR CURSOR X Con trỏ tham chiếu
đến danh sách nơi cấp
giấy tờ tìm được
Kết quả trả về của thủ tục bao gồm một danh sách các Nơi cấp giấy tờ được tìm
thấy, phù hợp với các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang và
sắp xếp theo ngày sửa Nơi cấp giấy tờ.
d.1.2.2.1.4. Xử lý ngoại lệ
d.1.2.2.2.1. API
Service:
- Kiểm tra xem mã NCGT tồn tại trong bảng NOI_CAP_GIAY_TO hay chưa
- Gọi procedure GET_BY_MA xử lý lấy lên NCGT theo mã từ DB
Procedure:
- Thêm tham số vào là mã nơi cấp giấy tờ
- Đầu vào:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được lấy ra
- Kết quả trả về thông tin của Nơi cấp giấy tờ gồm các trường như bảng bên dưới
Các giá trị nhập vào và trả ra gồm:
d.1.2.2.3.1. API
Service:
- Kiểm tra xem NCGT đã tồn tại trong bảng NCGT chưa?
- Kiểm tra xem NCGT có phải là đơn vị csgt hay không?
o Nếu có: kiểm tra mã NCGT gửi xuống có tồn tại trong đơn vị csgt hay không?
Nếu tồn tại thì thực hiện gán các thông tin mã địa danh hành chính, địa chỉ,
điện thoại, email theo địa chỉ đơn vị csgt đầu tiên ứng với mã NCGT trên
o Nếu không: kiểm tra mã NCGT có phải là mã của đơn vị csgt hay không? Nếu
không phải là mã của đơn vị csgt thì kiểm tra tiếp trong bảng
NOI_CAP_GIAY_TO xem đã tồn tại hay chưa
- Kiểm tra mã địa danh hành chính xem đã tồn tại hay chưa?
- Từ mã NCGT bên trên và danh sách mã loại giấy tờ thực hiện gọi procedure
CREATE_NOI_CAP_LOAI_GIAY_TO để lưu thông tin NCLGT vào bảng
NOI_CAP_LOAI_GIAY_TO
- Gọi procedure CREATE_ITEM để lưu thông tin NCGT mới
Procedure:
- Hàm CREATE_ITEM được sử dụng để thêm một bản ghi mới vào bảng
NOI_CAP_GIAY_TO. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
- Đầu vào:
o P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng.
o P_DIA_CHI: Kiểu dữ liệu tương ứng với trường DIA_CHI trong bảng.
o P_GHI_CHU: Kiểu dữ liệu tương ứng với trường GHI_CHU trong bảng.
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng NOI_CAP_GIAY_TO.
Hàm này sẽ chèn dữ liệu vào bảng NOI_CAP_GIAY_TO với các thông tin tương ứng từ
các tham số đầu vào, sau đó gọi hàm GET_BY_MA để lấy thông tin bản ghi vừa được
thêm và trả về.
Các giá trị nhập vào và trả ra gồm:
o Danh sách mã loại giấy tờ: rỗng hoặc mã giấy tờ không tồn tại trong hệ
thống
BCA-C08_XLVP_2023_DD Internal use Trang 255
Tài liệu thiết kế hệ thống V1.0
d.1.2.2.4.1. API
Mô tả: Gọi API để lấy cập nhật thông tin nơi cấp giấy tờ
Method URL
PUT xlvp/api/v1/danh-muc/noi-cap-giay-to/{ma}
Service:
- Kiểm tra xem NCGT đã tồn tại trong bảng NCGT chưa
- Kiểm tra xem NCGT có phải là đơn vị csgt hay không?
o Nếu có: kiểm tra mã NCGT gửi xuống có tồn tại trong đơn vị csgt hay
không? Nếu tồn tại thì thực hiện gán các thông tin mã địa danh hành chính,
địa chỉ, điện thoại, email theo địa chỉ đơn vị csgt đầu tiên ứng với mã
NCGT trên
o Nếu không: kiểm tra mã NCGT có phải là mã của đơn vị csgt hay không?
Nếu không phải là mã của đơn vị csgt thì kiểm tra tiếp trong bảng
NOI_CAP_GIAY_TO xem đã tồn tại hay chưa
- Kiểm tra mã địa danh hành chính xem đã tồn tại hay chưa?
- Từ mã NCGT bên trên, thực hiện gọi procedure
DELETE_NOI_CAP_LOAI_GIAY_TO để xóa thông tin NCLGT theo mã NCGT
khỏi bảng NOI_CAP_LOAI_GIAY_TO, sau đó dựa vào mã NCGT và danh sách mã
loại giấy tờ thực hiện gọi procedure CREATE_NOI_CAP_LOAI_GIAY_TO để lưu
thông tin NCLGT vào bảng NOI_CAP_LOAI_GIAY_TO
- Gọi procedure UPDATE_ITEM để cập nhật lại thông tin NCGT theo mã
Procedure:
o Hàm UPDATE_ITEM() được sử dụng để chỉnh sửa thông tin một bản ghi
tồn tại trong bảng NOI_CAP_GIAY_TO. Hàm nhận các tham số đầu vào là
thông tin cập nhật của bản ghi có mã nơi cấp giấy tờ là P_MA và trả về kết
quả thông qua một con trỏ REF_CURSOR.
o Đầu vào:
o P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng.
o P_DIA_CHI: Kiểu dữ liệu tương ứng với trường DIA_CHI trong bảng.
o P_GHI_CHU: Kiểu dữ liệu tương ứng với trường GHI_CHU trong bảng.
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng NOI_CAP_GIAY_TO.
o Hàm này sẽ cập nhật thông tin trong bảng NOI_CAP_GIAY_TO dựa vào
dữ liệu có sẵn được lấy theo P_MA với các thông tin tương ứng từ các
tham số đầu vào, sau đó gọi hàm GET_BY_MA để lấy thông tin bản ghi
vừa được cập nhật và trả về.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Mô tả
Xuất
[N/X]
1 P_TEN VARCHAR2(255 N Tên của nơi cấp giấy tờ
CHAR)
2 P_MA VARCHAR2(100 N Mã của nơi cấp giấy tờ
CHAR)
3 P_DIA_CHI VARCHAR2(500 N Địa chỉ
CHAR
4 P_DIEN_THOAI VARCHAR2(250 N Số điện thoại
CHAR)
5 P_EMAIL VARCHAR2(255 N Email
CHAR)
6 P_GHI_CHU VARCHAR2(1000 N Ghi chú
CHAR
7 P_TRANG_THAI NUMBER(1,0) N Trạng thái của nơi cấp
giấy tờ (1: Kích hoạt, 0:
Không kích hoạt)
8 P_NGUOI_SUA VARCHAR2(50 N Người sửa nơi cấp giấy
CHAR tờ
9 P_MA_DDHC VARCHAR2(50 N Mã địa danh hành chính
CHAR)
d.1.2.2.4.4. Xử lý ngoại lệ
d.1.2.2.5.1. API
Mô tả: Gọi API để lấy cập nhật trạng thái xóa của nơi cấp giấy tờ
Method URL
DELETE xlvp/api/v1/danh-muc/noi-cap-giay-to/{ma}
Service:
- Kiểm tra xem mã NCGT gửi lên đã tồn tại trong bảng NCGT hay chưa
- Gọi procedure DELETE_ITEM để cập nhật lại trang thái xóa trong database
Procedure:
- Đây là một thủ tục, không có giá trị trả về, nhưng sẽ cập nhật cột IS_DELETED thành
giá trị 1 để đánh dấu nơi cấp giấy tờ đã bị xóa.
- Đầu vào:
o P_MA: Mã nơi cấp giấy tờ có kiểu dữ liệu tương ứng với cột MA trong
bảng
o P_DELETE_BY: Tên người sửa có kiểu dữ liệu tương ứng với cột
NGUOI_SUA trong bảng.
- Đầu ra: NA
d.1.2.2.5.4. Xử lý ngoại lệ
d.1.2.2.6.1. API
Service:
- Hàm này được sử dụng khi gọi API [POST]/v1/danh-muc/noi-cap-giay-to, thực hiện
gọi procedure CREATE_NOI_CAP_LOAI_GIAY_TO để lưu thông tin loại giấy tờ
tương ứng với mã nơi cấp giấy tờ vào bảng NOI_CAP_LOAI_GIAY_TO
Procedure:
- Hàm này sẽ lấy hết tất cả mã loại giấy tờ người dùng gửi lên ứng với mã nơi cấp giấy
tờ để lưu vào trong bảng NOI_CAP_LOAI_GIAY_TO theo cặp mã nơi cấp và mã
loại giấy tờ
- Đầu vào:
o P_MA_NOI_CAP: Mã của nơi cấp giấy tờ, có kiểu dữ liệu trùng với kiểu
dữ liệu của cột MA_NOI_CAP trong bảng
o P_MA_GIAY_TO: Mã loại giấy tờ, có kiểu dữ liệu trùng với kiểu dữ liệu
của cột MA_GIAY_TO trong bảng
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập / Mô tả
Xuất
[N/X]
1 P_MA_NOI_CAP VARCHAR2(100 N Mã nơi cấp giấy tờ
CHAR
2 P_MA_GIAY_TO VARCHAR2(50 N Mã loại giấy tờ
CHAR)
d.1.2.2.6.4. Xử lý ngoại lệ
d.1.2.2.7.1. API
Service:
- Khi thực hiện cập nhật thông tin loại giấy tờ của NCGT thông qua API [PUT]/v1/noi-
cap-giay-to/{ma} thì gọi đến procedure DELETE_NOI_CAP_LOAI_GIAY_TO để
xóa đi thông tin loại giấy tờ cũ ứng với mã NCGT, sau đó gọi tiếp procedure
CREATE_NOI_CAP_LOAI_GIAY_TO để thêm mới thông tin loại giấy tờ mới vào
trong bảng NOI_CAP_LOAI_GIAY_TO
Procedure:
- Hàm DELETE_NOI_CAP_LOAI_GIAY_TO sử dụng để xóa bản ghi ra khỏi bảng
NOI_CAP_LOAI_GIAY_TO được lấy theo mã NCGT
- Đầu vào:
o P_MA_NOI_CAP: Mã của nơi cấp giấy tờ cần kiểm tra, có kiểu dữ liệu
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành
Bắt
STT Tên label phần / Định dạng Mô tả
buộc?
Control
Form tìm kiếm/lọc dữ liệu danh mục
1 Loại hình loai Dropdownlist Chọn loại hình là
X “Tuyến đường” hoặc
“Quốc lộ”
2 Mã tuyến ma Textbox Nhập mã tuyến
đường – quốc lộ đường, quốc lộ
3 Tên tuyến ten Textbox Nhập tên tuyến
đường – quốc lộ đường, quốc lộ
4 Bắt đầu từ diemBatDau Textbox Nhập nơi bắt đầu của
tuyến đường, quốc lộ
5 Kết thúc tại diemKetThuc Textbox Nhập nơi kết thúc
của tuyến đường,
quốc lộ
6 Trạng thái trangThai Dropdownlist Chọn loại trạng thái
tuyến đường, quốc lộ
Danh sách dữ liệu danh mục
7 Loại hình loai Text Hiển thị loại hình
-
tuyến đường, quốc lộ
8 Mã tuyến ma Text Hiển thị mã tuyến
-
đường - quốc lộ đường, quốc lộ
9 Tên tuyến ten Text Hiển thị tên tuyến
-
đường – quốc lộ đường, quốc lộ
10 Bắt đầu từ diemBatDau Text Hiển thị nơi bắt đầu
- của tuyến đường,
quốc lộ
11 Kết thúc tại diemKetThuc Text Hiển thị nơi kết thúc
- của tuyến đường,
quốc lộ
12 Chiều dài (km) chieuDai Text Hiển thị chiều dài của
-
tuyến đường, quốc lộ
13 Trạng thái trangThai Text Hiển thị trạng thái
-
tuyến đường, quốc lộ
14 Ngày sửa gần ngaySua Text Hiển thị ngày sửa
-
nhất tuyến đường, quốc lộ
15 Cán bộ sửa gần nguoiSua Text Hiển thị ngày sửa
-
nhất tuyến đường, quốc lộ
d.1.2.1.1.3. Xử lý sự kiện
→ Màn hình hiển thị danh sách danh mục thỏa mãn bộ
lọc
BtnReset_Click Click nút Thiết lập lại.
Form tìm kiếm/lọc dữ liệu danh mục xóa các thông tin
đã nhập và hoàn tác về trạng thái mặc định ban đầu
BtnCollapse/BtnExtend_Click Click nút Thu hẹp/Mở rộng.
Thu hẹp/Mở rộng Form tìm kiếm/lọc dữ liệu danh
mục.
BtnCreate_Click Click nút Thêm mới.
Màn hình chuyển đến trang Thêm mới danh mục tuyến
đường quốc lộ
BtnEdit_Click Click nút Chỉnh sửa ở cuối mỗi bản ghi trong danh
sách.
Màn hình chuyển đến trang Chỉnh sửa danh mục tuyến
đường quốc lộ tương ứng với bản ghi
BtnView_Click Click nút Xem chi tiết ở cuối mỗi bản ghi trong danh
sách.
Màn hình chuyển đến trang Xem chi tiết danh mục
tuyến đường quốc lộ tương ứng với bản ghi
BtnDelete_Click Click nút Xóa ở cuối mỗi bản ghi trong danh sách →
Chọn Đồng ý.
Hệ thống xóa bản ghi tương ứng → Màn hình reload
và cập nhật lại danh sách danh mục.
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành Bắt
STT Tên label phần / buộc Định dạng Mô tả
Control nhập?
Form thêm mới dữ liệu tuyến đường quốc lộ
Dropdownlist Chọn loại hình là
1 Loại hình loai X tuyến đường hoặc
quốc lộ
Textbox Hiển thị mã tuyến
Mã tuyến
đường, quốc lộ
2 đường - quốc ma
Mã là tự sinh, không
lộ
thể nhập
Tên tuyến Textbox Nhập tên tuyến
3 đường – quốc ten X đường, quốc lộ
lộ
Textbox Nhập nơi tuyến
4 Bắt đầu từ diemBatDau đường, quốc lộ bắt
đầu
Cách 2: Click nút Chỉnh sửa tại màn hình chi tiết Danh
mục tuyến đường, quốc lộ → Màn hình chuyển đến màn
Chỉnh sửa.
Màn hình hiển thị như hình 3.
BtnSave_Click Nhập thông tin trong Form chỉnh sửa dữ liệu danh mục →
Click Lưu.
Hệ thống check ràng buộc của các trường dữ liệu nếu thỏa
mãn → lưu danh mục theo thông tin vừa nhập → Màn
hình chuyển đến màn xem chi tiết danh mục vừa chỉnh
sửa.
BtnClose_Click Click nút Đóng → Click Đồng ý.
Hệ thống check ràng buộc của các trường dữ liệu nếu thỏa
mãn → lưu danh mục theo thông tin vừa nhập → Màn
hình chuyển đến màn xem danh sách danh mục.
d.1.2.1.3.4. Các ràng buộc
Tên thành
Bắt
STT Tên label phần / Định dạng Vai trò
buộc?
Control
Form tìm kiếm/lọc dữ liệu danh mục
loai Dropdownlist Hiển thị loại hình là
1 Loại hình tuyến đường hoặc
quốc lộ
Mã tuyến ma Textbox Hiển thị mã tuyến
2
đường - quốc lộ đường, quốc lộ
Tên tuyến ten Textbox Hiển thị tên tuyến
3 đường – quốc đường, quốc lộ
lộ
diemBatDau Textbox Hiển thị nơi tuyến
4 Bắt đầu từ đường, quốc lộ bắt
đầu
diemKetThuc Textbox Hiển thị nơi tuyến
5 Kết thúc tại đường, quốc lộ kết
thúc
d.1.2.1.4.3. Xử lý sự kiện
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách Tuyến đường quốc lộ theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/tuyen-duong-quoc-lo?
- Hàm này có chức năng tìm kiếm danh sách Tuyến đường quốc lộ dựa trên các tiêu
chí được cung cấp trong NgheNghiepSearchDto
- Đầu vào:
o Request: đối tượng TuyenDuongQuocLoSearchDto chứa các tiêu chí tìm
kiếm
- Đầu ra:
o PaginationResponseDto<TuyenDuongQuocLoDetailDto>: đối tượng chứa
thông tin về trang kết quả tìm kiếm của các TuyenDuongQuocLo
- Cách hoạt động:
o Phương thức gọi repository để đọc danh sách TuyenDuongQuocLo dựa trên
các tiêu chí tìm kiếm được đưa ra trong đối tượng
TuyenDuongQuocLoSearchDto. Kết quả trả về được lưu trong đối tượng
Page<TuyenDuongQuocLoEntity>.
o Sử dụng đối tượng mapper để chuyển đổi các đối tượng
TuyenDuongQuocLoEntity trong Page<TuyenDuongQuocLoEntity> thành
đối tượng TuyenDuongQuocLoDetailDto.
o Tạo đối tượng PaginationResponseDto<TuyenDuongQuocLoDetailDto>
bao gồm danh sách các đối tượng TuyenDuongQuocLoDetailDto và các
thông tin phân trang, sau đó trả về kết quả này.
b) Packages
Procedure PKG_TUYEN_DUONG_QUOC_LO.READ_PAGING là một thủ tục
được sử dụng để truy vấn dữ liệu của bảng "TUYEN_DUONG_QUOC_LO" theo
trang và các tiêu chí tìm kiếm được cung cấp.
Các giá trị nhập vào và trả ra gồm:
Nhập
STT Tham số Kiểu dữ liệu / Xuất Mô tả
[N/X]
1 P_TIM_KIEM_NHANH VARCHAR2 N Tìm kiếm nhanh
2 P_LOAI VARCHAR2 N Loại tuyến đường
3 P_MA VARCHAR2 N Mã tuyến đường
tham số. Giá trị của cột "IS_DELETED" cũng được kiểm tra để đảm bảo rằng chỉ
các bản ghi chưa bị đánh dấu là đã xóa mới được truy vấn. Câu lệnh SELECT này
cũng tính toán số bản ghi trả về (được đánh số từ 1 đến tổng số bản ghi) và thêm
các thông tin này vào kết quả trả về.
- Kết quả trả về của hàm này là một cursor (V_CURSOR) chứa các bản ghi tương
ứng với các tiêu chí tìm kiếm được cung cấp, đóng vai trò như một trang dữ liệu
để hiển thị lên giao diện cho người dùng. Kết quả trả về bao gồm các cột trong
bảng "TUYEN_DUONG_QUOC_LO" và hai cột phụ trợ là
"TOTAL_ELEMENTS" (tổng số bản ghi trả về) và "RN" (số thứ tự của bản ghi
trên trang hiện tại).
- Trong hàm này, tham số đầu vào P_TIM_KIEM_NHANH có thể là null nên nó sẽ
không được sử dụng trong điều kiện WHERE khi nó là null. Nếu tham số này có
giá trị, nó sẽ được sử dụng để tìm kiếm theo mã hoặc tên của tuyến đường quốc lộ.
Nếu tham số này là null, các điều kiện WHERE sẽ được áp dụng dựa trên các
tham số khác để lọc bản ghi. Các điều kiện WHERE sẽ được kết hợp bằng toán tử
OR để lấy các bản ghi thỏa mãn bất kỳ điều kiện nào.
- Đầu ra:
o Hàm này trả về các bản ghi đã được phân trang và sắp xếp theo thứ tự giảm
dần của ngày tạo. Giá trị của các tham số đầu vào sẽ quyết định số lượng
bản ghi trả về và thứ tự sắp xếp của chúng. Kết quả trả về có thể được sử
dụng để hiển thị dữ liệu trên giao diện của ứng dụng.
b.1.2.1.1.1. Xử lý ngoại lệ
NA
b.1.2.1.2. Thêm mới Tuyến đường quốc lộ
b.1.2.1.2.1. API
Nhập
/
STT Tham số Kiểu dữ liệu Mô tả
Xuất
[N/X]
1 P_LOAI VARCHAR2 N Loại hình của tuyến đường
quốc lộ
- Đầu vào:
o P_LOAI: loại hình của tuyến đường quốc lộ (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.LOAI%TYPE).
o P_MA: mã của tuyến đường quốc lộ (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.MA%TYPE).
o P_TEN: tên của tuyến đường quốc lộ (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.TEN%TYPE).
o P_BAT_DAU_TU: địa điểm tuyến đường quốc lộ bắt đầu (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.BAT_DAU_TU%TYPE).
o P_KET_THUC_TAI: địa điểm tuyến đường quốc lộ kết thúc (kiểu dữ liệu
là TUYEN_DUONG_QUOC_LO.KET_THUC_TAI%TYPE).
o P_CHIEU_DAI: chiều dài của tuyến đường quốc lộ (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.CHIEU_DAI%TYPE).
o P_MA_TINH_THANH: mã tỉnh thành tuyến đường quốc lộ đi qua (kiểu dữ
liệu là TUYEN_DUONG_QUOC_LO.MA_TINH_THANH%TYPE).
o P_TRANG_THAI: trạng thái của tuyến đường quốc lộ (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.TRANG_THAI%TYPE).
o Đầu ra:
o Trong hàm này, trước khi chèn bản ghi mới vào bảng
"TUYEN_DUONG_QUOC_LO", giá trị của cột "NGAY_TAO" và
"NGAY_SUA" được tự động gán bằng giá trị thời gian hiện tại
(CURRENT_TIMESTAMP).
o Kết quả trả về của hàm này là một con trỏ CURSOR (biến V_CURSOR),
chứa thông tin về bản ghi mới được tạo ra trong bảng
"TUYEN_DUONG_QUOC_LO", thông qua thủ tục "READ_BY_MA".
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
- Thủ tục truy truy vấn thông tin của một tuyến đường quốc lộ trong bảng
"TUYEN_DUONG_QUOC_LO" dựa trên mã của tuyến đường đó.
- Đầu vào:
o P_MA: mã của tuyến đường quốc lộ cần truy vấn (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.MA%TYPE).
o V_CURSOR: biến out REF_CURSOR để trả về kết quả.
- Trong hàm này, giá trị của cột "IS_DELETED" được kiểm tra để đảm bảo rằng chỉ
các bản ghi chưa bị đánh dấu là đã xóa mới được truy vấn.
- Hàm này sử dụng câu lệnh SELECT để truy vấn thông tin về tuyến đường quốc lộ
trong bảng "TUYEN_DUONG_QUOC_LO". Câu lệnh SELECT này sử dụng điều
kiện WHERE để lọc các bản ghi có giá trị cột "MA" giống với giá trị được truyền
vào thông qua tham số "P_MA", và cột "IS_DELETED" bằng 0 (tức là chưa bị
đánh dấu là đã xóa).
- Đầu ra:
o Kết quả trả về của hàm này là một con trỏ CURSOR (biến V_CURSOR),
chứa thông tin về tuyến đường quốc lộ được truy vấn trong bảng
"TUYEN_DUONG_QUOC_LO".
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
b) Packages
Procedure PKG_TUYEN_DUONG_QUOC_LO.UPDATE_ITEM là một thủ tục
được sử dụng để cập nhật thông tin của một Tuyến đường quốc lộ đã có trong cơ sở dữ
liệu.
Các giá trị nhập vào và trả ra gồm:
- Dùng để cập nhật thông tin của một tuyến đường quốc lộ đã tồn tại trong bảng
TUYEN_DUONG_QUOC_LO.
- Đầu vào:
o P_MA: Mã tuyến đường quốc lộ cần cập nhật thông tin (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.MA%TYPE)
o P_TEN: Tên tuyến đường quốc lộ mới (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.TEN%TYPE)
o P_BAT_DAU_TU: Địa điểm tuyến đường quốc lộ bắt đầu mới (kiểu dữ
liệu là TUYEN_DUONG_QUOC_LO.BAT_DAU_TU%TYPE)
o P_KET_THUC_TAI: Địa điểm tuyến đường quốc lộ kết thúc mới (kiểu dữ
liệu là TUYEN_DUONG_QUOC_LO.KET_THUC_TAI%TYPE)
o P_CHIEU_DAI: Chiều dài tuyến đường quốc lộ mới (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.CHIEU_DAI%TYPE)
o P_MA_TINH_THANH: Mã tỉnh thành tuyến đường quốc lộ đi qua mới
(kiểu dữ liệu là TUYEN_DUONG_QUOC_LO.MA_TINH_THANH
%TYPE)
o P_TRANG_THAI: Trạng thái tuyến đường quốc lộ mới (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.TRANG_THAI%TYPE)
o P_GHI_CHU: Ghi chú mới (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.GHI_CHU%TYPE)
o P_NGUOI_SUA: Tên người cập nhật thông tin (kiểu dữ liệu là
TUYEN_DUONG_QUOC_LO.NGUOI_SUA%TYPE)
o V_CURSOR: biến out kiểu REF_CURSOR.
- Đầu ra:
o Cập nhật thông tin của tuyến đường quốc lộ cần cập nhật
o Biến V_CURSOR chứa kết quả truy vấn thông tin tuyến đường quốc lộ sau
khi cập nhật thông tin
- Cách hoạt động của thủ tục này như sau:
o Truy vấn cập nhật thông tin của tuyến đường quốc lộ có mã P_MA
o Cập nhật các trường thông tin mới cho tuyến đường quốc lộ đó
o Đánh dấu ngày giờ cập nhật mới nhất (P_NGUOI_SUA, NGAY_SUA)
- Gọi thủ tục READ_BY_MA để trả về kết quả truy vấn tuyến đường quốc lộ sau
khi đã cập nhật thông tin.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
- Cập nhật trạng thái của một bản ghi trong bảng
"DANH_MUC_TUYEN_DUONG_QUOC_LO" bằng cách đặt "IS_DELETED"
của bản ghi này thành 1, đồng thời cập nhật thông tin người sửa và ngày sửa của
bản ghi này. Sau đó, hàm sẽ trả về kết quả thông qua con trỏ "V_CURSOR".
- Đầu vào:
o Trong hàm này, giá trị của cột "IS_DELETED" được đặt là 1 để đánh dấu
rằng bản ghi đã bị xóa. Giá trị của cột "NGUOI_SUA" và "NGAY_SUA"
được cập nhật bằng giá trị được truyền vào thông qua tham số
"P_DELETE_BY" và thời gian hiện tại (CURRENT_TIMESTAMP) tương
ứng.
- Đầu ra:
o Kết quả trả về của hàm này là một con trỏ CURSOR (biến V_CURSOR),
chứa thông tin về bản ghi đã bị xóa trong bảng
"TUYEN_DUONG_QUOC_LO", thông qua thủ tục "READ_BY_MA".
o Các bản ghi đã bị đánh dấu là đã xóa chỉ được đánh dấu tại chỗ và vẫn
được lưu trữ trong bảng. Để xóa vĩnh viễn các bản ghi đã bị đánh dấu là đã
xóa, chúng ta có thể sử dụng các thủ tục xóa dựa trên các bản ghi đã được
đánh dấu là đã xóa.
b.1.2.1.1.1. Xử lý ngoại lệ
b.1.2.1.2.1. API
Mô tả: Gọi API để xuất excel danh sách Tuyến đường quốc lộ
Method URL
GET xlvp/api/v1/danh-muc/tuyen-duong-quoc-lo/export/excel
- Đầu ra:
o InputStreamResource: đối tượng chứa nội dung của file Excel được tạo ra
- Cách hoạt động:
o Đối tượng TuyenDuongQuocLoSearchDto được truyền vào sẽ được cấu
hình để lấy tất cả các bản ghi, bằng cách gọi phương thức
setIsFetchAll(true) cho đối tượng này.
o Tạo danh sách header bằng cách lấy các thông tin từ thông điệp được định
nghĩa trong
BaseMessages.TuyenDuongQuocLo.HEADER_REPORT_EXCEL, sau đó
chia chuỗi thành các phần tử của danh sách bằng cách sử dụng phương thức
split().
o Gọi phương thức read() từ repository để đọc danh sách
TuyenDuongQuocLo dựa trên các tiêu chí tìm kiếm được đưa ra trong đối
tượng TuyenDuongQuocLoSearchDto. Kết quả trả về là một đối tượng
Page<TuyenDuongQuocLoEntity>.
o Sử dụng phương thức stream() để chuyển đổi danh sách
TuyenDuongQuocLoEntity thành danh sách
TuyenDuongQuocLoReportDto bằng cách sử dụng đối tượng mapper.
o Gọi phương thức exportExcelCommon() của baseExportExcelService để
tạo ra file Excel. Đối tượng BaseExportExcel được cấu hình để đặt tên cho
sheet và được truyền vào đối tượng header và danh sách
TuyenDuongQuocLoReportDto. Kết quả trả về là đối tượng
InputStreamResource.
b) Packages
Procedure PKG_TUYEN_DUONG_QUOC_LO.READ_PAGING là một thủ tục
được sử dụng để truy vấn dữ liệu của bảng "TUYEN_DUONG_QUOC_LO" theo trang
và các tiêu chí tìm kiếm được cung cấp.
b.1.2.1.1.1. Xử lý ngoại lệ
NA
b) Index
- NA
c) Trigger
- NA
d) Packages
- PKG_NOI_TAM_GIU
d.1.2.1. Thiết kế màn hình
d.1.2.1.1. Màn hình xem danh sách, tìm kiếm nơi tạm giữ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên label Tên thành phần / Định dạng Mô tả
STT
Control
Form tìm kiếm/lọc dữ liệu danh mục
Tìm kiếm nhanh timKiemNhanh Textbox Nhập thông tin
1 Đơn vị CSGT,
Nơi tạm giữ
Đơn vị CSGT maDonViCsgt Cascader Chọn đơn vị
2 cảnh sát giao
thông
nhất
d.1.2.1.1.3. Xử lý sự kiện
Hình 40: Màn hình thêm mới danh mục nơi tạm giữ
d.1.2.1.2.2. Danh sách control/thành phần giao diện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Tên thành phần / Bắt
STT Tên label Định dạng Mô tả
Control buộc?
1 Mã nơi ma Textbox Hiển thị mã của
tạm giữ nơi tạm giữ
Mã tự sinh,
không thể nhập
2 Tên nơi ten x Textbox Hiện thị tên nơi
tạm giữ tạm giữ
3 Địa chỉ maDiaDanhHanh x Cascader Chọn địa danh
Chinh hành chính của
nơi tạm giữ
4 Địa chỉ chi diaChi x Textbox Chọn địa chỉ của
tiết nơi tạm giữ
5 Số điện soDienThoai Textbox Nhập số điện
thoại thoại nơi tạm giữ
6 Email email Textbox Nhập email của
nơi tạm giữ
d.1.2.1.2.3. Xử lý sự kiện
Địa chỉ chi tiết Bắt buộc nhập, độ dài không quá 255 kí tự
Đơn vị CSGT Bắt buộc nhập
Trạng thái Bắt buộc nhập
Hình 41: Màn hình chỉnh sửa danh mục Nơi tạm giữ
d.1.2.1.3.2. Danh sách control/thành phần giao diện
d.1.2.1.3.3. Xử lý sự kiện
Màn hình chuyển đến màn xem danh sách danh mục.
Hình 42: Màn hình xem chi tiết nơi tạm giữ
d.1.2.1.4.2. Danh sách control/thành phần giao diện
d.1.2.1.4.3. Xử lý sự kiện
d.1.2.2.1.1. API
Mô tả: Gọi API để lấy danh sách nơi tạm giữ theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/danh-muc/noi-tam-giu?
Service:
- Gọi procedure SEARCH() để lấy ra danh sách nơi tạm giữ theo điều kiện truyền vào
từ đầu vào
Procedure:
- Hàm SEARCH() được sử dụng để lấy danh sách nơi tạm giữ theo các điều kiện
tìm kiếm được cung cấp. Kết quả trả về được sắp xếp theo ngày tạo mới nhất. Đây
là một thủ tục, không có giá trị trả về, nhưng nó sẽ trả về một con trỏ tham chiếu
trỏ đến danh sách nơi tạm giữ.
- Đầu vào:
o P_SEARCH: Chuỗi tìm kiếm thông tin của tên nơi tạm giữ
o P_TEN: Tên nơi tạm giữ.
o P_MA_DON_VI_CSGT: Mã đơn vị csgt
o P_MA_TINH_THANH: Mã địa danh hành chính
o P_DIA_CHI: Địa chỉ nơi tạm giữ.
o P_TRANG_THAI: Trạng thái kích hoạt của nơi tạm giữ
o P_PAGE: Trang hiện tại của danh sách nơi tạm giữ
o P_PSIZE: Số bản ghi trên một trang
- Đầu ra:
o V_CURSOR: Một con trỏ tham chiếu trỏ đến một danh sách các nơi tạm
giữ tìm kiếm được. Các thông tin bao gồm tất cả các trường trong bảng
NOI_TAM_GIU kết hợp với bảng NOI_TAM_GIU_DON_VI_CSGT được
lấy giữa 2 bảng theo mã nơi tạm giữ. Các nơi tạm giữ được sắp xếp theo
ngày tạo mới nhất.
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
1 P_SEARCH VARCHAR2(255 N Chuỗi tìm kiếm nhanh
CHAR)
2 P_TEN VARCHAR2(255 N Tên nơi tạm giữ
CHAR)
3 P_MA_DON_VI_CSGT VARCHAR2(50 N Mã đơn vị csgt
CHAR)
4 P_MA_TINH_THANH VARCHAR2(50 N Mã địa danh hành
CHAR) chính
5 P_DIA_CHI VARCHAR2(255 N Địa chỉ
CHAR)
6 P_TRANG_THAI NUMBER(1,0) N Trạng thái kích hoạt
nơi tạm giữ
7 P_PAGE NUMBER N Trang hiện tại
8 P_PSIZE NUMBER N Dữ liệu trên một trang
9 V_CURSOR CURSOR X Con trỏ tham chiếu đến
danh sách nơi tạm giữ
tìm được
Kết quả trả về của thủ tục bao gồm một danh sách các nơi tạm giữ được tìm thấy, phù
hợp với các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang và sắp xếp
theo ngày sửa nơi tạm giữ.
d.1.2.2.1.4. Xử lý ngoại lệ
d.1.2.2.2.1. API
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã nơi tạm giữ
2 ten String Tên nơi tạm giữ
3 maDonViCsgt List<String> Danh sách mã đơn vị csgt
4 trangThai Boolean Trạng thái
5 diaChi String Địa chỉ nơi tạm giữ
8 soDienThoai String Số điện thoại của nơi tạm giữ
9 email String Email của nơi tạm giữ
10 ghiChu String Ghi chú của nơi tạm giữ
11 maDiaDanhHanhChinh String Mã địa danh hành chính của nơi tạm
giữ
Service:
- Kiểm tra xem mã nơi tạm giữ tồn tại trong bảng NOI_TAM_GIU hay chưa
- Gọi procedure GET xử lý lấy lên nơi tạm giữ theo mã từ DB
Procedure:
- Thêm tham số vào là mã nơi tạm giữ
- Đầu vào:
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được lấy ra
- Kết quả trả về thông tin của Nơi tạm giữ gồm các trường như bảng bên dưới
Các giá trị nhập vào và trả ra gồm:
CHAR)
2 V_CURSOR CURSOR X Trả về dòng dữ liệu vừa lấy
ra
Kết quả trả về của thủ tục gồm thông tin của nơi tạm giữ được tìm thấy theo mã nơi tạm
giữ.
d.1.2.2.2.4. Xử lý ngoại lệ
Bẫy lỗi ResourceDoesNotExistException khi: Mã nơi tạm giữ không tồn tại trong hệ
thống
d.1.2.2.3. Thêm mới nơi tạm giữ
d.1.2.2.3.1. API
Service:
- Kiểm tra mã địa danh hành chính xem đã tồn tại hay chưa?
- Kiểm tra từng mã đơn vị csgt trong danh sách mã đơn vị csgt có tồn tại trong hệ
thống hay không?
- Từ mã nơi tạm giữ bên trên và danh sách mã đơn vị csgt thực hiện gọi procedure
CREATE_NTG_THUOC_CSGT để lưu thông tin mã đơn vị csgt tương ứng với
mã nơi tạm giữ vào bảng NOI_TAM_GIU_DON_VI_CSGT
- Gọi procedure CREATE_ITEM để lưu thông tin nơi tạm giữ mới
Procedure:
- Hàm CREATE_NTG được sử dụng để thêm một bản ghi mới vào bảng
NOI_TAM_GIU. Hàm nhận các tham số đầu vào là thông tin của bản ghi mới và
trả về kết quả thông qua một con trỏ REF_CURSOR.
- Đầu vào:
o P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng.
o P_DIA_CHI: Kiểu dữ liệu tương ứng với trường DIA_CHI trong bảng.
o P_GHI_CHU: Kiểu dữ liệu tương ứng với trường GHI_CHU trong bảng.
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào
bảng NOI_TAM_GIU.
- Hàm này sẽ chèn dữ liệu vào bảng NOI_TAM_GIU với các thông tin tương ứng
từ các tham số đầu vào, sau đó gọi hàm GET để lấy thông tin bản ghi vừa được
thêm và trả về.
- Sau khi chèn dữ liệu vào bảng NOI_TAM_GIU, lấy hết tất cả mã đơn vị csgt
người dùng gửi lên ứng với mã nơi tạm giữ để lưu vào trong bảng
NOI_TAM_GIU_DON_VI_CSGT theo cặp mã nơi tạm giữ và mã đơn vị csgt
- Đầu vào:
o P_MA_NOI_TAM_GIU: Mã của nơi tạm giữ, có kiểu dữ liệu trùng với
kiểu dữ liệu của cột MA_NOI_TAM_GIU trong bảng
o P_MA_DON_VI_CSGT: Mã đơn vị csgt, có kiểu dữ liệu trùng với kiểu dữ
liệu của cột MA_DON_VI_CSGT trong bảng
Các giá trị nhập vào và trả ra gồm:
Nhập /
STT Tham số Kiểu dữ liệu Xuất Mô tả
[N/X]
VARCHAR2(255 N
1 P_TEN Tên của nơi tạm giữ
CHAR)
VARCHAR2(500 N
2 P_DIA_CHI Địa chỉ
CHAR
P_SO_DIEN_ VARCHAR2(250 N
3 Số điện thoại
THOAI CHAR)
VARCHAR2(255 N
4 P_EMAIL Email
CHAR)
VARCHAR2(1000 N
5 P_GHI_CHU Ghi chú
CHAR
N Trạng thái của nơi tạm giữ
P_TRANG_T
6 NUMBER(1,0) (1: Kích hoạt, 0: Không kích
HAI
hoạt)
P_NGUOI_TA VARCHAR2(50 N
7 Người tạo nơi tạm giữ
O CHAR
P_MA_DIA_ N
VARCHAR2(50
8 DANH_HAN Mã địa danh hành chính
CHAR)
H_CHINH
X Trả về dòng dữ liệu nơi tạm
9 V_CURSOR CURSOR
giữ vừa tạo
d.1.2.2.3.4. Xử lý ngoại lệ
d.1.2.2.4.1. API
Mô tả: Gọi API để lấy cập nhật thông tin Nơi tạm giữ
Method URL
PUT xlvp/api/v1/danh-muc/noi-tam-giu/{ma}
Service:
- Kiểm tra mã nơi tạm giữ đã tồn tại hay chưa?
- Kiểm tra mã địa danh hành chính xem đã tồn tại hay chưa?
- Kiểm tra từng mã đơn vị csgt trong danh sách mã đơn vị csgt có tồn tại trong hệ
thống hay không?
Procedure:
- Hàm UPDATE_NTG() được sử dụng để chỉnh sửa thông tin một bản ghi tồn tại
trong bảng NOI_TAM_GIU. Hàm nhận các tham số đầu vào là thông tin cập nhật
của bản ghi có mã nơi tạm giữ là P_MA và trả về kết quả thông qua một con trỏ
REF_CURSOR.
- Đầu vào:
o P_TEN: Kiểu dữ liệu tương ứng với trường TEN trong bảng.
o P_DIA_CHI: Kiểu dữ liệu tương ứng với trường DIA_CHI trong bảng.
o P_GHI_CHU: Kiểu dữ liệu tương ứng với trường GHI_CHU trong bảng.
o V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được sửa trong
bảng NOI_TAM_GIU.
- Hàm này sẽ cập nhật lại thông tin vào bảng NOI_TAM_GIU với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET để lấy thông tin bản ghi
d.1.2.2.4.4. Xử lý ngoại lệ
d.1.2.2.5.1. API
Mô tả: Gọi API để lấy cập nhật trạng thái xóa của nơi tạm giữ
Method URL
DELETE xlvp/api/v1/danh-muc/noi-tam-giu/{ma}
Service:
- Kiểm tra xem mã nơi tạm giữ gửi lên đã tồn tại trong bảng nơi tạm giữ hay chưa
- Gọi procedure DELETE_ITEM để cập nhật lại trang thái xóa trong database
Procedure:
- Đây là một thủ tục, không có giá trị trả về, nhưng sẽ cập nhật cột IS_DELETED
thành giá trị 1 để đánh dấu nơi tạm giữ đã bị xóa.
- Đầu vào:
o P_MA: Mã nơi tạm giữ có kiểu dữ liệu tương ứng với cột MA trong bảng
o P_NGUOI_SUA: Tên người sửa có kiểu dữ liệu tương ứng với cột
NGUOI_SUA trong bảng.
- Đầu ra: NA
d.1.2.2.5.4. Xử lý ngoại lệ
Bẫy lỗi ResourceDoesNotExistException khi: Mã nơi tạm giữ không tồn tại trong hệ
thống
Mô tả các màn hình sử dụng chung cho toàn bộ biên bản quyết định.
Hình 43: Màn hình danh sách tang vật tạm giữ
d.2.2.1.1.2. Danh sách control/ thành phần giao diện
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
STT Tên label Tên thành phần / Định Mô tả
Control dạng
1 Tên tang ten Text Tên tang vật, phương tiện, giấy tờ
vật, phương bị tạm giữ
tiện, giấy tờ
2 Nội dung chi noiDung Text Nội dung chi tiết của tang vật,
tiết phương tiện, giấy tờ(mã số, số
lượng, …)
- Giải thích các xử lý
STT Tên button Sự kiện Mô tả
1 Thêm mới BtnAdd_Click Mở popup thêm mới tang vật, phương
tiện, giấy tờ cho BBQĐ
2 Chi tiết BtnView_Click Mở popup xem chi tiết thông tin tang
vật, phương tiện, giấy tờ cho BBQĐ
3 Chỉnh sửa BtnEdit_Click Mở popup chỉnh sửa thông tin tang
vật, phương tiện, giấy tờ cho BBQĐ
4 Xóa BtnDelete_Click Xóa tang vật khỏi danh sách tang vật
của BBQĐ
d.2.2.1.1.3. Xử lý sự kiện
Hình 45: Pop-up thêm mới Loại tang vật Phương tiện – Lĩnh vực đường bộ
Hình 46: Pop-up thêm mới Loại tang Phương tiện - Linh vực Đường sắt
Hình 47: Pop-up thêm mới Loại tang Phương tiện - Linh vực Đường thủy
Hình 48: Pop-up thêm mới Loại tang vật Giấy phép lái xe
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
Tên thành Bắt
Định
STT Tên label phần / buộc Mô tả
dạng
Control ?
Pop-up thêm mới tang vật
1 Loại tang loai Dropdown X Lựa chọn loại tang vật, phương
vật, list tiện, giấy tờ
phương Danh sách được lấy từ danh
tiện, giấy mục tang vật, phương tiện, giấy
tờ tờ
Pop-up thêm mới tang vật Phương tiện – Lĩnh vực Đường Bộ
Phương chungLoai Textbox Hiển thị chủng loại phương
tiện tiện trong danh sách danh mục
2
phương tiện
Thông tin lấy từ Vụ việc
Biển số bienSo Textbox Hiển thị biển số của phương
3 tiện trong Vụ việc sinh ra Biên
bản
Biển số bienSo2 Textbox Hiển thị biển số thứ hai của
4 thứ hai phương tiện trong Vụ việc sinh
ra Biên bản
Số khung soKhung Textbox Hiển thị số khung của phương
5 tiện trong Vụ việc sinh ra Biên
bản
Số máy soMay Textbox Hiển thị số máy của phương
6 tiện trong Vụ việc sinh ra Biên
bản
Nhãn nhanHieu Textbox Hiển thị nhãn hiệu của phương
7 hiệu tiện trong Vụ việc sinh ra Biên
bản
Màu sơn mauSon Textbox Hiển thị màu sơn của phương
8 tiện trong Vụ việc sinh ra Biên
bản
Số loại soLoai Textbox Hiển thị số loại của phương
9 tiện trong Vụ việc sinh ra Biên
bản
Số lượng soLuong Textbox Hiển thị số lượng cho tang vật
10
phương tiện
Đơn vị donViTinh Textbox Hiển thị đơn vị tính cho tang
11
tính vật phương tiện
Pop-up thêm mới tang vật Phương tiện – Lĩnh vực Đường sắt
2 Chi tiết BtnView_Click Mở popup xem chi tiết thông tin tang
vật, phương tiện, giấy tờ cho BBQĐ
3 Chỉnh sửa BtnEdit_Click Mở popup chỉnh sửa thông tin tang vật,
phương tiện, giấy tờ cho BBQĐ
4 Xóa BtnDelete_Click Xóa tang vật khỏi danh sách tang vật
của BBQĐ
Hình 50: Thông báo khi tang vật không bị tạm giữ/tước
Hình 51: Cảnh báo khi tang vật bị tạm giữ, tước
Hình 52: Pop-up thêm mới Loại tang vật Phương tiện
Hình 53: Pop-up thêm mới Loại tang vật Giấy phép lái xe
Kiểm tra Tang vật có đang bị Tạm giữ, Tước, Đình chỉ ở Biên bản, Quyết định trước khi
Thêm mới tang vật.
d.2.2.1.3.2. Giao diện
Hình 57: Thông báo khi tang vật không bị tạm giữ/tước
Hình 58: Cảnh báo khi tang vật bị tạm giữ, tước
Tham số Mô tả
ma Mã của loại tang vật
trangThai Bao gồm 3 trạng thái cần kiểm tra là tạm giữ (TAM_GIU), tước
(TUOC), đình chỉ (DINH_CHI)
Phương tiện
bienSo Biển số của phương tiện
Giấy tờ
so Số giấy tờ
Giấy phép lái
so Số của giấy phép lái xe
hang Hạng của giấy phép lái xe
vi phạm
Đối tượng vi phạm Tổ chức
Tên tổ ten Textbox Hiển thị tên của Tổ chức vi
16
chức phạm
Số GCN soGcn Textbox Hiển thị số giấy chứng nhận
17
(GCN) của Tổ chức
18 Nơi cấp noiCap Textbox Hiển thị nơi cấp của GCN
19 Ngày cấp ngayCap Textbox Hiển thị ngày cấp của GCN
Địa chỉ maDiaDanh Textbox Hiển thị địa chỉ trụ sở chính
20 trụ sở của tổ chức vi phạm
chính
Địa chỉ chiTiet Textbox Hiển thị địa chỉ chi tiết của trụ
21
chi tiết sở chính
Người đại tenNguoiDaiDien Textbox Hiển thị tên người đại diện
22 diện pháp pháp luật của tổ chức vi phạm
luật
Chức chucDanhNguoiDaiDien Textbox Hiển thị chức danh người đại
23 danh diện pháp luật của tổ chức vi
phạm
Giới tính gioiTinhNguoiDaiDien Textbox Hiển thị giới tính người đại
24
diện của tổ chức vi phạm
d.2.2.3. Màn hình Người có thẩm quyền lập biên bản/quyết định
Tên
Tên thành Bắt
STT Định dạng Mô tả
label phần / buộc?
Control
Chọn đơn vị CSGT từ danh
mục Đơn vị cảnh sát giao
Cơ
1 donVi Dropdownlist/Cascade X thông
quan
Giá trị mặc định là đơn vị
của user
Chọn cán bộ từ danh sách
cán bộ của Đơn vị cảnh sát
Họ
giao thông
2 và ma Dropdownlist X
Giá trị hiển thị theo định
tên
dạng {ten}({ma}) của cán
bộ
Cấp Hiển thị cấp bậc, chức vụ
3 capBac Textbox
bậc của cán bộ
4 Chức chucVu Textbox Sử dụng tên của cấp bậc,
vụ chức vụ thay cho mã để
phục vụ việc lưu lại cấp
bậc, chức vụ tại thời điểm
Tên thành
Tên Bắt
STT phần / Định dạng Mô tả
label buộc?
Control
Chọn hồi lập biên bản
1 Hồi thoiGian DatePicker X Giá trị mặc định là ngày giờ
hiện tại
Nhập số tờ của biên bản
2 Số tờ soTo Textbox X
Giá trị mặc định là 2
Nhập số bản của biên bản
3 Số bản soBan Textbox X
Giá trị mặc định là 2
Mô tả các bảng dữ liệu sử dụng chung cho toàn bộ biên bản quyết định
d.3.2. Chi tiết các bảng
Bắt
STT Tên cột Kiểu dữ liệu Mô tả
buộc
PK - Mã biên bản tự
1 MA VARCHAR2(30 CHAR) X sinh theo loại biên
bản
2 MA_NHAP_TAY VARCHAR2(50 CHAR) Mã biên bản nhâp tay
FK - Mã vụ việc của
3 MA_VU_VIEC VARCHAR2(30 CHAR) X
biên bản
PK - Mã loại biên
4 MA_BIEU_MAU VARCHAR2(50 CHAR) X bản hoặc quyết định
(VD BB01)
Mã biên bản hoặc
5 MA_CHA VARCHAR2(30 CHAR) quyết định cha (tham
chiếu cột MA)
Mã loại biên bản/
MA_BIEU_MAU_
6 VARCHAR2(50 CHAR) quyết định của biên
CHA
bản/ quyết định cha
VARCHAR2(4000 Nội dung của biên
7 NOI_DUNG
CHAR) bản/ quyết định
Thời gian lập biên
8 THOI_GIAN_LAP DATE
bản/ quyết định
VARCHAR2(500 Địa điểm lập biên
9 DIA_DIEM_LAP
CHAR) bản/ quyết định
10 TU_NGAY DATE Có hiệu lực từ ngày
11 DEN_NGAY DATE Có hiệu lực đến ngày
Thời gian hoàn thành
THOI_GIAN_HO
12 DATE của biên bản/ quyết
AN_THANH
định
VARCHAR2(4000 Thông tin người tạo
13 CAN_BO_TAO
CHAR) biên bản/ quyết định
14 CAN_BO_SUA VARCHAR2(4000 Thông tin người lập
Bắt
STT Tên cột Kiểu dữ liệu Mô tả
buộc
CHAR) biên bản/ quyết định
Trạng thái biên bản/
15 TRANG_THAI VARCHAR2(2 CHAR)
quyết định
MA_DON_VI_CS VARCHAR2(255
16 Mã đơn vị CSGT
GT CHAR)
17 IS_DELETED NUMBER(1,0) Trạng thái xóa
VARCHAR2(255
18
NGUOI_TAO CHAR) Người tạo
VARCHAR2(255
19
NGUOI_SUA CHAR) Ngày tạo
20 NGAY_TAO DATE Người sửa
21 NGAY_SUA DATE Ngày Sửa
NGUOI_PHE_DU
22
YET VARCHAR2(50 CHAR) Mã cán bộ phê duyệt
CAN_BO_PHE_D VARCHAR2(4000 Thông tin cán bộ phê
23
UYET CHAR) duyệt
NGAY_PHE_DU
24
YET DATE Ngày phê duyệt
Nguồn tạo biên bản/
25 quyết định (tạo bù,
NGUON VARCHAR2(15 CHAR) trực tiếp, …)
ID lưu thông tin địa
26 DIA_CHI_DON_V danh của đơn vị
I_CSGT_ID NUMBER CSGT tạo biên bản
bảng VU_VIEC(MA)
4 FK_SEFL_REFERENCE_PAR Khóa ngoài liên kết(MA_CHA,
ENT MA_BIEU_MAU_CHA) đến biên bản
quyết định cha – bảng
BIEN_BAN_QUYET_DINH(MA,
MA_BIEU_MAU)
5 Tự sinh MA là bắt buộc
MA_VU_VIEC là bắt buộc
MA_BIEU_MAU là bắt buộc
d.3.2.1.3. Trigger
Bắt
STT Tên cột Kiểu dữ liệu Mô tả
buộc
UONG nhân, 1 là Tổ Chức
DINH_DANH_ VARCHAR2(5 Số định danh của đối tượng vi
7
DTVP 0 CHAR) phạm
VARCHAR2(2
8 TEN_DTVP X Tên của đối tượng vi phạm
55 CHAR)
THONG_TIN_ VARCHAR2(4
9 thông tin đối tượng vi phạm
DTVP 000 CHAR)
Loại lĩnh vực của vụ việc (Đường
10 LINH_VUC NUMBER X
Sắt, Đường Thủy, Đường bộ)
THOI_GIAN_
11 DATE X Thời gian vi phạm
VP
DIA_DIEM_V VARCHAR2(5
12 X Địa điểm xảy ra vi phạm
P 12 CHAR)
CAN_BO_TA VARCHAR2(4
13 Thông tin cán bộ tạo
O 000 CHAR)
CAN_BO_SU VARCHAR2(4
14 Thông tin cán bộ sửa
A 000 CHAR)
VARCHAR2(2
15 TRANG_THAI Trạng Thái của vụ việc
CHAR)
16 IS_DELETED NUMBER(1,0) Trạng thái xóa
VARCHAR2(2
17 NGUOI_TAO Người tạo
55 CHAR)
VARCHAR2(2
18 NGUOI_SUA Người sửa
55 CHAR)
19 NGAY_TAO DATE Ngày tạo
20 NGAY_SUA DATE Ngày sửa
VARCHAR2(5
21 NGUON Nguồn tạo vụ việc
0 CHAR)
DIA_CHI_DO
ID lưu thông tin địa danh của đơn
22 N_VI_CSGT_I NUMBER
vị CSGT tạo vụ việc
D
trùng lặp
2 Tự sinh MA là bắt buộc
THOI_GIAN_LAP là bắt buộc
MA_DON_VI_CSGT là bắt buộc
TEN_DTVP là bắt buộc
THOI_GIAN_VP là bắt buộc
DIA_DIEM_VP là bắt buộc
LINH_VUC là bắt buộc
d.3.2.2.3. Trigger
THONG_TU_NGHI_DINH (MA)
Mô tả Service và Procedures sử dụng chung cho toàn bộ biên bản quyết định
d.4.2. Chi tiết từng mục
d.4.2.1. Services
4 isValid BB01ValidatorSe Kiểm tra tính hợp lệ dữ liệu gửi lên khi
rvice tạo BBQĐ
.java
5 bulkCreate TangVatService.j Tạo các tang vật thuộc BBQĐ
ava
6 bulkCreate BBQĐHinhThuc Tạo các hình thức xử phạt cho BBQĐ
XuPhatService.ja
va
7 upsert BBQĐNoiDungC Tạo hoặc cập nhật các nội dung in cho
hiTietSevice.java BBQĐ
2 update BBQĐServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 l.java lại dữ liệu và cập nhật BBQĐ
4 updateTang TangVatService.j Cập nhật thông tin các tang vật thuộc
5 Vat ava BBQĐ
d.4.2.2. Procedure
CHAR)
12 P_MA_DON_VI_C VARCHAR2(25 N Mã đơn vị CSGT
SGT 5 CHAR)
13 P_DIA_CHI_DON_ NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
14 P_NOI_DUNG VARCHAR2(40 N Nội dung cụ thể của BBQĐ
00 CHAR)
15 P_NGUON VARCHAR2(15 N Nguồn tạo BBQĐ
CHAR)
16 P_CAN_BO_TAO VARCHAR2(40 N Thông tin cán bộ tạo
00 CHAR) BBQĐ
17 P_NGUOI_TAO VARCHAR2(25 N Tài khoản tạo BBQĐ
5 CHAR)
18 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQĐ
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để
lấy thông tin bản ghi vừa được thêm và trả về.
d.4.2.2.2. Chỉnh sửa BBQĐ
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được sử
dụng để cập nhật BBQĐ trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
1 P_MA VARCHAR2(50 N Mã BBQĐ
CHAR)
2 P_MA_NHAP_TA VARCHAR2(50 N Mã nhập tay khi tạo BBQĐ
Y CHAR)
3 P_THOI_GIAN_LA DATE N Thời gian lập BBQĐ
P
4 P_DIA_DIEM_LAP VARCHAR2(50 N Địa điểm lập BBQĐ
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
7 P_THOI_GIAN_H DATE N Thời gian hoàn thành xử lý
OAN_THANH
8 P_TRANG_THAI VARCHAR2(2 N Trạng thái BBQĐ
CHAR)
9 P_NOI_DUNG VARCHAR2(40 N Nội dung cụ thể của BBQĐ
00 CHAR)
10 P_CAN_BO_SUA VARCHAR2(40 N Thông tin cán bộ sửa
00 CHAR) BBQĐ
11 P_NGUOI_SUA VARCHAR2(25 N Tài khoản sửa BBQĐ
5 CHAR)
12 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQĐ
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQĐ được cập nhật.
d.4.2.2.3. Chi tiết BBQĐ
INH
d.5.2.2. Thiết kế các hàm, thủ tục
d.5.2.2.1.1. API
Api thêm mới dùng chung cho tất cả BBQĐ (xem thêm ở Biên bản 01)
Method URL
POST xlvp/api/v1/bb-qd
Service:
- Danh sách các lớp sử dụng
Procedure:
Xem chi tiết ở Các Procedure và Services dùng chung/Chi tiết từng mục/ Procedure
/Thêm mới BBQĐ
d.5.2.2.2. Chỉnh sửa Biên bản vi phạm hành chính
d.5.2.2.2.1. API
Api chỉnh sửa dùng chung cho tất cả BBQĐ (xem thêm ở Biên bản 01)
d.5.2.2.2.2. Mô tả chi tiết
Service:
Procedure:
Xem chi tiết ở Các Procedure và Services dùng chung/Chi tiết từng mục/ Procedure
/Chỉnh sửa BBQĐ
d.5.2.2.3.1. API
Api chi tiết dùng chung cho tất cả BBQĐ (xem thêm ở Biên bản 01)
d.5.2.2.3.2. Mô tả chi tiết
Service:
Xem chi tiết ở Các Procedure và Services dùng chung/Chi tiết từng mục/Services/Chi tiết
BBQĐ
Procedure:
Xem chi tiết ở Các Procedure và Services dùng chung/Chi tiết từng mục/Procedure/Chi
tiết BBQĐ
d.6. Biên bản 03 – Biên bản Phiên giải trình trực tiếp
d.6.1. Mục đích
- Quản lý Biên bản 03 – Biên bản Phiên giải trình trực tiếp.
- Chức năng quản lý Biên bản 03 – Biên bản Phiên giải trình trực tiếp:
d.6.2.2.1. Thêm mới/Sửa Biên bản 03- Biên bản phiên giải trình trực tiếp
Tại màn chi tiết Biên bản 01 và Biên bản 05, Click vào nút Button Tạo BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
Bắt
Tên thành phần /
STT Label buộc Định dạng Miêu tả
Control
nhập
Thông tin chung
Mã tự sinh, hoặc
1 Số biên bản ma/maNhapTay Textbox
nhập tay
Chọn thời gian
2 Ngày tạo thoiGianLap X DatePicker
lập biên bản
Nhập địa điểm
3 Tại diaDiemLap X Textbox
lập biên bản
4 Trạng thái trangThai Text Hiển thị trạng
thái hiện tại của
biên bản
Căn cứ
Hiển thị thông
Bao gồm nội tin số QĐ, Ngày
dung tương ra QĐ, Đơn vị
5 ứng với canCu.bbqd X Text có thẩm quyền
BB01/BB05 ra QĐ của
sinh ra BB03 BB01/BB05
sinh ra BB07
Văn bản yêu
canCu.ngayLapVbg Chọn ngày giải
6 cầu được giải Datepicker
t trình trực tiếp
trình trực tiếp
canCu.tbGiaiTrinh.s Nhập số thông
7 Textbox
o báo
canCu.tbGiaiTrinh.k Nhập ký hiệu
8 Thông báo về Textbox
yHieu thông báo
việc tổ chức
9 phiên giải trình canCu.tbGiaiTrinh.n Datepicker
Chọn ngày
trực tiếp gayRaTb thông báo
canCu.tbGiaiTrinh.n
Nhập người
10 guoiCoThamQuyen Textbox
thông báo
Tb
Đối tượng vi phạm
Xem chi tiết ở Các màn hình sử dụng chung/Chi tiết các màn hình/Màn hình đối
tượng vi phạm
Thông tin người lập biên bản
Xem chi tiết ở Các màn hình sử dụng chung/Chi tiết các màn hình/Màn hình
người có thẩm quyền lập biên bản/quyết định
Ý kiến của người có thẩm quyền xử phạt vi phạm hành chính về
Nhập ý kiến căn
11 Căn cứ pháp lý yKienCcpl Textbox
cứ pháp lý
Tình tiết, Nhập ý tình tiết,
12 yKienTtlq Textbox
chứng cứ chứng cứ
d.6.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
Click nút Chỉnh sửa ở cuối mỗi bản ghi trong danh
sách hoặc ở trong màn Chi tiết biên bản
3 BtnEdit_Click
Đi đến màn hình Chỉnh sửa biên bản tương ứng BB
được chọn
Click nút Đóng → Hiển thị popup xác nhận “Thực
hiện lưu thông tin vào hệ thống không?”
TH1: Chọn Đồng ý → Hệ thống check ràng buộc của
các trường dữ liệu nếu thỏa mãn → lưu BB theo
4 BtnClose_Click
thông tin vừa nhập → Màn hình chuyển đến màn
xem chi tiết BB.
TH2: Chọn Không → Màn hình chuyển đến xem chi
tiết BB
d.6.2.3.1. Thêm mới Biên bản Phiên giải trình trực tiếp
d.6.2.3.1.1. API
Mô tả: Gọi API để tạo mới Biên bản Phiên giải trình trực tiếp
Method URL
POST xlvp/api/v1/bb-qd
- Dữ liệu nội dung Biên bản Phiên giải trình trực tiếp:
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb03",
"maVuViec": "G01.308.000.000-981-23-000605",
"maBieuMauCha": "118-2022-nd-cp-bb01",
"maCha": "G01.308.000.000-981-23-000311",
"diaDiemLap": "Cục Cảnh Sát Giao Thông - BỘ CÔNG AN",
"thoiGianLap": "2023-03-30T02:24:29.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-bb01",
"so": "G01.308.000.000-981-23-000311",
"ngay": "2023-03-30T02:24:29.000Z",
"maNhapTay": null
}
],
"ngayLapVbgt": "2023-03-23T04:01:38.168Z",
"tbGiaiTrinh": {
"so": "12345",
"kyHieu": "GTTT",
"ngayRaTb": "2023-03-23T04:01:44.031Z",
"nguoiCoThamQuyenTb": "Trưởng công an thị trấn - Cục Cảnh Sát Giao Thô
ng"
}
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Hạ sĩ",
"chucVu": "Trưởng phòng",
"ma": "bahd"
},
"lapXong": {
"thoiGian": "2023-03-30T04:01:31.008Z",
"soTo": "2",
"soBan": "2"
},
"yKienNvp": "Không ý kiến gì",
"lyDoKhongKyBienBan": "Không chấp nhận biên bản",
"yKienCcpl": "Căn cứ pháp lý",
"yKienHtxp": "Chưa có",
"yKienTtlq": "Tình tiết, chứng cứ"
}
}
{
"ma": "G01.308.000.000-981-23-000009",
"maCha": "G01.308.000.000-981-23-000311",
"maBieuMauCha": "118-2022-nd-cp-bb01",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000605",
"maBieuMau": "118-2022-nd-cp-bb03",
"thoiGianLap": "2023-03-30T02:24:29.000+00:00",
"ngayTao": "2023-03-30T04:01:56.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"diaDiemLap": "Cục Cảnh Sát Giao Thông - BỘ CÔNG AN",
"tuNgay": null,
"denNgay": null,
"thoiGianHoanThanh": null,
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-bb01",
"so": "G01.308.000.000-981-23-000311",
"maNhapTay": null,
"ngay": "2023-03-30T02:24:29.000+00:00",
"tenDonVi": null
}
],
"ngayLapVbgt": "2023-03-23T04:01:38.000+00:00",
"tbGiaiTrinh": {
"so": "12345",
"kyHieu": "GTTT",
"ngayRaTb": "2023-03-23T04:01:44.000+00:00",
"nguoiCoThamQuyenTb": "Trưởng công an thị trấn - Cục Cảnh Sát Giao Thô
ng"
}
},
"nguoiCoThamQuyen": {
"ma": "bahd",
"ten": "Hoàng Đình Ba",
"maCapBac": "3.7",
"capBac": "Hạ sĩ",
"chucVu": "Trưởng phòng",
"maChucVu": "005",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"lyDoKhongKyBienBan": "Không chấp nhận biên bản",
"lapXong": {
"thoiGian": "2023-03-30T04:01:31.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienCcpl": "Căn cứ pháp lý",
"yKienTtlq": "Tình tiết, chứng cứ",
"yKienHtxp": "Chưa có",
"yKienNvp": "Không ý kiến gì"
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "nguyenxuan.phuc1@etc.vn\",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000605",
"ten": "BB01",
"nguon": null,
"doiTuongViPham": {
"ten": "NGUYỄN VĂN A",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": null,
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao tác với
4 isValid BB03ValidatorSe Kiểm tra tính hợp lệ dữ liệu gửi lên khi
rvice tạo BBQD
.java
5 bulkCreate TangVatService.j Tạo các tang vật thuộc BBQD
ava
6 bulkCreate BbQdHinhThucX Tạo các hình thức xử phạt cho BBQD
uPhatService.java
7 upsert BbQdNoiDungCh Tạo hoặc cập nhật các nội dung in cho
iTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
1 P_MA VARCHAR2(50 N Mã BBQD
CHAR)
2 P_MA_NHAP_TA VARCHAR2(50 N Mã nhập tay khi tạo BBQD
Y CHAR)
3 P_MA_VU_VIEC VARCHAR2(50 N Mã vụ việc tạo BBQD
CHAR)
4 P_MA_CHA VARCHAR2(50 N Mã BBQD cha nếu có
CHAR)
5 P_MA_BIEU_MA VARCHAR2(50 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
6 P_THOI_GIAN_LA DATE N Thời gian lập BBQD
P
7 P_DIA_DIEM_LAP VARCHAR2(50 N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
10 P_THOI_GIAN_H DATE N Thời gian hoàn thành xử lý
OAN_THANH
11 P_TRANG_THAI VARCHAR2(2 N Trạng thái BBQD
CHAR)
12 P_MA_DON_VI_C VARCHAR2(25 N Mã đơn vị CSGT
SGT 5 CHAR)
13 P_DIA_CHI_DON_ NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
14 P_NOI_DUNG VARCHAR2(40 N Nội dung cụ thể của BBQD
00 CHAR)
15 P_NGUON VARCHAR2(15 N Nguồn tạo BBQD
CHAR)
16 P_CAN_BO_TAO VARCHAR2(40 N Thông tin cán bộ tạo
00 CHAR) BBQD
17 P_NGUOI_TAO VARCHAR2(25 N Tài khoản tạo BBQD
5 CHAR)
18 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.6.2.3.1.4. Xử lý ngoại lệ
d.6.2.3.2.1. API
Các tham số gửi lên và trả về tương tự tạo mới Biên bản Phiên giải trình trực tiếp, ngoài
ra còn có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBbQd String Mã BBQD
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao tác
với biên bản quyết định
5 updateTa TangVatService.java Cập nhật thông tin các tang vật thuộc
ngVat BBQD
6 bulkUpda BbQdHinhThucXuPhatSer Cập nhật hình thức xử phạt cho BBQD
te vice.java
7 upsert BbQdNoiDungChiTietSev Tạo hoặc cập nhật các nội dung in cho
ice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được
sử dụng để cập nhật BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
1 P_MA VARCHAR2(50 N Mã BBQD
CHAR)
2 P_MA_NHAP_TA VARCHAR2(50 N Mã nhập tay khi tạo BBQD
Y CHAR)
3 P_THOI_GIAN_LA DATE N Thời gian lập BBQD
P
4 P_DIA_DIEM_LAP VARCHAR2(50 N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
7 P_THOI_GIAN_H DATE N Thời gian hoàn thành xử lý
OAN_THANH
8 P_TRANG_THAI VARCHAR2(2 N Trạng thái BBQD
CHAR)
9 P_NOI_DUNG VARCHAR2(40 N Nội dung cụ thể của BBQD
00 CHAR)
10 P_CAN_BO_SUA VARCHAR2(40 N Thông tin cán bộ sửa
00 CHAR) BBQD
11 P_NGUOI_SUA VARCHAR2(25 N Tài khoản sửa BBQD
5 CHAR)
12 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.6.2.3.2.4. Xử lý ngoại lệ
d.6.2.3.3.1. API
"maBieuMauCha": "118-2022-nd-cp-bb01",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000605",
"maBieuMau": "118-2022-nd-cp-bb03",
"thoiGianLap": "2023-03-30T02:24:29.000+00:00",
"ngayTao": "2023-03-30T04:01:56.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"diaDiemLap": "Cục Cảnh Sát Giao Thông - BỘ CÔNG AN",
"tuNgay": null,
"denNgay": null,
"thoiGianHoanThanh": null,
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-bb01",
"so": "G01.308.000.000-981-23-000311",
"maNhapTay": null,
"ngay": "2023-03-30T02:24:29.000+00:00",
"tenDonVi": null
}
],
"ngayLapVbgt": "2023-03-23T04:01:38.000+00:00",
"tbGiaiTrinh": {
"so": "12345",
"kyHieu": "GTTT",
"ngayRaTb": "2023-03-23T04:01:44.000+00:00",
"nguoiCoThamQuyenTb": "Trưởng công an thị trấn - Cục Cảnh Sát Giao Thô
ng"
}
},
"nguoiCoThamQuyen": {
"ma": "bahd",
"ten": "Hoàng Đình Ba",
"maCapBac": "3.7",
"capBac": "Hạ sĩ",
"chucVu": "Trưởng phòng",
"maChucVu": "005",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"lyDoKhongKyBienBan": "Không chấp nhận biên bản",
"lapXong": {
"thoiGian": "2023-03-30T04:01:31.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienCcpl": "Căn cứ pháp lý",
"yKienTtlq": "Tình tiết, chứng cứ",
"yKienHtxp": "Chưa có",
"yKienNvp": "Không ý kiến gì"
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":\"nguyenxuan.phuc1@etc.vn\",\"placeCodeOto\":null,\"place
CodeMoto\":null}",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000605",
"ten": "BB01",
"nguon": null,
"doiTuongViPham": {
"ten": "NGUYỄN VĂN A",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": null,
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao tác với
biên bản quyết định
Procedure:
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
1 P_MA VARCHAR2(5 N Mã BBQD
0 CHAR)
2 P_MA_BIEU_MA VARCHAR2(5 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.6.2.3.3.4. Xử lý ngoại lệ
d.7. Biên bản 04 – Biên bản xác định giá trị tang vật, phương tiện vi phạm hành
chính
d.7.1. Mục đích
- Quản lý biên bản 04 – Biên bản xác định giá trị tang vật, phương tiện vi phạm
hành chính.
- Chức năng quản lý biên bản 04 – Biên bản xác định giá trị tang vật, phương tiện
vi phạm hành chính:
o Thêm mới biên bản 04
o Sửa biên bản 04
o Hiển thị chi tiết biên bản 04
o Xóa biên bản 04
d.7.2.2.1. Danh sách giá trị của tang vật, phương tiện vi phạm hành chính
Hình 70: Danh sách giá trị của tang vật, phương tiện vi phạm hành chính
Hình 71: Chỉnh sửa giá trị của tang vật, phương tiện vi phạm hành chính
d.7.2.2.1.2. Danh sách control/thành phần giao diện
d.7.2.2.1.4. Xử lý sự kiện
Tại màn chi tiết QD20 - QD21, Click vào nút Button Tạo BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Giải thích các item
STT Label Tên thành Bắt Định dạng Mô tả
phần / buộc
Control nhập
Thông tin chung
Mã tự sinh, hoặc nhập tay
1 Số biên bản ma Textbox Không được sửa trong màn
Sửa BB04
2 Tại diaDiemLap X Textbox Nhập địa điểm lập biên bản
3 Ngày tạo thoiGianLap X Datepicker Chọn ngày tạo biên bản
Căn cứ
Biên bản
tạm giữ tang
vật, phương Hiển thị số và ngày ra BB
tiện vi phạm của BB15 thuộc luồng sinh
4 canCu.bbqd Text ra BB04 này.
hành chính,
giấy phép,
chứng chỉ
hành nghề
Quyết định
tạm giữ tang
vật, Phương Hiển thị số và ngày ra QD
tiện vi phạm của QD20 thuộc luồng sinh
5 canCu.bbqd Text ra BB04 này.
hành chính,
giấy phép,
chứng chỉ
hành nghề
Quyết định
kéo dài thời
hạn tạm giữ
tang vật, Hiển thị số và ngày ra QD
6 Phương tiện canCu.bbqd Text của QD21 thuộc luồng sinh
vi phạm ra BB04 này.
hành chính,
giấy phép,
chứng chỉ
hành nghề
Thông tin người lập biên bản
Xem tại mục Các màn hình sử dụng chung/Chi tiết các màn hình/Màn hình người
có thẩm quyền lập biên bản
Đối tượng vi phạm
Xem chi tiết ở Các màn hình sử dụng chung/Chi tiết các màn hình/Màn hình đối
tượng vi phạm
Hội đồng định giá tang vật, phương tiện vi phạm hành chính
Hiển thị thông tin từ trường
Người ra Họ và tên phần Người có
7 ten Textbox
quyết định thẩm quyền lập quyết định
tạm giữ tang của QD20.
vật, Phương
Hiển thị thông tin từ trường
tiện vi
Chức vụ phần Người có
8 phạm, chucVu Textbox
thẩm quyền lập quyết định
Phương tiện
của QD20.
vi phạm
hành chính, Hiển thị thông tin từ trường
giấy phép, Hiển thị thông tin từ trường
9 chứng chỉ coQuan Textbox Cơ quan phần Người có
hành nghề thẩm quyền lập quyết định
của QD20.
Nhập họ và tên đại diện cơ
10 ten x Textbox
quan tài chính
Đại diện cơ
Nhập chức vụ đại diện cơ
11 quan tài chucVu x Textbox
quan tài chính
chính
Nhập cơ quan đại diện cơ
12 coQuan x Textbox
quan tài chính
Đại diện cơ Nhập họ và tên đại diện cơ
13 ten x Textbox
quan chuyên quan chuyên môn
môn có liên Nhập chức vụ đại diện cơ
14 quan đến chucVu x Textbox
quan chuyên môn
tang vật,
15 phương tiện coQuan x Textbox Nhập cơ quan đại diện cơ
d.7.2.2.2.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.7.2.2.3.2. Xử lý sự kiện
d.7.2.3.1. Thêm mới biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.7.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản xác định giá trị tang vật, phương tiện vi phạm hành
chính
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
3 maCha String Mã BBQD cha
4 maBieuMauC String Mã biểu mẫu cha
ha
5 thoiGianLap Date X Thời gian lập BBQD
6 diaDiemLap String Địa điểm lập BBQD
7 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham
8 tangVat List khảo bảng dữ liệu đầu vào tang vật dưới
đây
Danh sách các hành vi vi phạm của
hanhViViPha
9 List X BBQD, tham khảo bảng dữ liệu đầu vào
m
Hành vi vi phạm dưới đây
Danh sách nội dung in hành vi vi phạm
noiDungChiTi
10 List của BBQD, tham khảo bảng dữ liệu đầu
et
vào nội dung chi tiết dưới đây
Nội dung chi tiết của biên bản xác định
11 noiDung Object X giá trị tang vật, phương tiện vi phạm hành
chính
- Dữ liệu nội dung biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính:
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Object X Căn cứ lập BB
Căn cứ BB 04
List
1 bbqd X Example: [{“maBieuMau” : “118-2022-
Object
nd-cp-bb04”}]
Hội đồng định giá
Người ra quyết định tam giữ tang vật,
nguoiQuyetDi phương tiện vi phạm hành chính
1 Json X
nh Example: {“ten” : “Bùi Anh” , “chucVu” :
“Đội trưởng”, “coQuan” : “Công An Tp”}
Đại diện cơ quan tài chính
daiDienCqTai
2 Json X Example: {“ten” : “Bùi Anh” , “chucVu” :
Chinh
“Đội trưởng”, “coQuan” : “Công An Tp”}
Đại diện cơ quan chuyên môn có liên quan
đến tang vật, phương tiện vi phạm hành
daiDienCqLie
3 Json X chính
nQuan
Example: {“ten” : “Bùi Anh” , “chucVu” :
“Đội trưởng”, “coQuan” : “Công An Tp”}
Đại diện bộ phàn chuyên môn của cơ quan
của người ra quyết định tạm giữ tang vật,
daiDienBoPha
4 Json X phương tiện
n
Example: {“ten” : “Bùi Anh” , “chucVu” :
“Đội trưởng”, “coQuan” : “Công An Tp”}
Kiểu dữ Bắt
STT Tham số Mô tả
liệu buộc
Mã tang vật ( trong danh mục tang vật,
1 ma String X
phương tiện, giấy tờ)
2 nhomTang String X Mã nhóm tang vật:
Vat - PHUONG_TIEN: Phương tiện
- GIAY_TO: Giấy tờ
lái xe
- KHAC: Tang vật khác
"chungLoai": "51",
"bienSo": "28F1.247844",
"bienSo2": "21447556",
"donViTinh": "Chiếc",
"soKhung": "023157FWQA5612",
"soMay": "1357744563",
"nhanHieu": null,
"mauSon": null,
"soLoai": null,
"ma": "043",
"nhomTangVat": "PHUONG_TIEN",
"donGia": 5000000000
}
}
],
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-bb15",
"so": "G01.308.000.000-981-23-000059",
"ngay": "2023-03-29T06:33:44.000Z",
"maNhapTay": null
},
{
"maBieuMau": "118-2022-nd-cp-qd20",
"so": "G01.308.000.000-981-23-000044",
"ngay": "2023-03-29T06:33:44.000Z",
"maNhapTay": null
}
],
},
"bienBanLapXong": {
"thoiGian": "2023-03-29T06:39:46.205Z",
"soTo": "2",
"soBan": "2"
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"ma": "anhbc"
},
"canCuXacDinh": "Ngân hàng",
"hoiDongDinhGia": {
"nguoiQuyetDinh": {
"ten": "Nguyễn Văn Minh",
"chucVu": "Trưởng phòng",
"coQuan": "CÔNG AN THÀNH PHỐ HÀ NỘI"
},
"daiDienCqTaiChinh": {
"ten": "Bùi Anh",
"chucVu": "Trưởng phòng",
"coQuan": "CÔNG AN THÀNH PHỐ HÀ NỘI"
},
"daiDienCqLienQuan": {
"ten": "Bùi Anh",
"chucVu": "Trưởng phòng",
"coQuan": "CÔNG AN THÀNH PHỐ HÀ NỘI"
},
"daiDienBoPhan": {
"ten": "Bùi Anh",
"chucVu": "Trưởng phòng",
"coQuan": "CÔNG AN THÀNH PHỐ HÀ NỘI"
}
}
}
}
Các giá trị trả về là:
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham khảo
9 tangVat List
bảng dữ liệu đầu vào tang vật dưới đây
Danh sách các hành vi vi phạm của BBQD,
10 hanhViViPham List tham khảo bảng dữ liệu đầu vào Hành vi vi
phạm dưới đây
Danh sách nội dung in hành vi vi phạm của
11 noiDungChiTiet List BBQD, tham khảo bảng dữ liệu đầu vào nội
dung chi tiết dưới đây
Nội dung chi tiết của biên bản xác định giá trị
12 noiDung Object
tang vật, phương tiện vi phạm hành chính
13 canBoTao Object Thông tin cán bộ tạo BBQD
"ngaySinh": "1999-03-03T06:34:34.387Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00008",
"soDienThoai": "0546467788",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "28F1.247844",
"bienSo2": "21447556",
"maPhuongTien": "51",
"soDangKy": "55446887",
"soDangKy2": null,
"soKhung": "023157FWQA5612",
"soMay": "1357744563",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.7.2.3.1.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQĐ
5 BB04ValidatorService Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật của
6 TangVatService.java
BBQĐ nếu có
BBQDHinhThucXuPhatS Lớp làm nhiệm vụ tạo và quản lý các hình thức
7
ervice.java xử phạt cho BBQĐ nếu có
BBQDNoiDungChiTietSe Lớp làm nhiệm vụ tạo và quản lý các nội dung in
8
vice.java cho BBQĐ nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint tạo mới BBQĐ và điều
1 create
java hướng đến service tạo BBQĐ
BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 create
l.java lại dữ liệu và tạo mới BBQĐ
Gọi hàm
BBQDRepository
3 create PKG_BIEN_BAN_QUYET_DINH.CREATE
.java
_BB_QD để tạo BBQĐ trong database
BB04ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQĐ
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQĐ
ava
BBQDHinhThuc
6 bulkCreate XuPhatService.ja Tạo các hình thức xử phạt cho BBQĐ
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQĐ
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
STT Tham số Kiểu dữ liệu Nhập/ Mô tả
Xuất
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
P_MA_DON_VI_C VARCHAR2(25
12 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.7.2.3.1.4. Xử lý ngoại lệ
d.7.2.3.2. Chỉnh sửa Biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.7.2.3.2.1. API
Mô tả: Gọi API để chỉnh sửa biên bản xác định giá trị tang vật, phương tiện vi phạm hành
chính
Method URL
PUT xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
Các tham số gửi lên và trả về tương tự tạo mới biên bản xác định giá trị tang vật, phương
tiện vi phạm hành chính, ngoài ra còn có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBbQd String Mã BBQD
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao
1 BBQDController.java
tác với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức
3 BBQDServiceImpl.java
của BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ
4 BBQDRepository.java
cập nhật liên quan đến BBQĐ
BB04ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ quản lý tang vật của
6 TangVatService.java
BBQĐ nếu có
Lớp làm nhiệm vụ quản lý các hình thức
7 BBQDHinhThucXuPhatService.java
xử phạt cho BBQĐ nếu có
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
P_THOI_GIAN_LA
3 DATE N Thời gian lập BBQD
P
VARCHAR2(50
4 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
7 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
8 P_TRANG_THAI N Trạng thái BBQD
CHAR)
VARCHAR2(40
9 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(40 Thông tin cán bộ sửa
10 P_CAN_BO_SUA N
00 CHAR) BBQD
VARCHAR2(25
11 P_NGUOI_SUA N Tài khoản sửa BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.7.2.3.2.4. Xử lý ngoại lệ
o Danh sách biên bản liên quan bị trống hoặc có nhiều hơn 3
- Người ra quyết định, đại diện cơ quan tài chính, đại diện cơ quan liên quan, đại
diện bộ phận chuyên môn không có
- Nội dung BBQD không có.
- Căn cứ xác định không có hoặc nhiều hơn 255 ký tự.
- Thông tin biên bản lập xong không có.
Ngoài ra các xử lý ngoại lệ được dùng chung toàn bộ dự án.
d.7.2.3.3. Xem chi tiết biên bản xác định giá trị tang vật, phương tiện vi phạm hành
chính
d.7.2.3.3.1. API
Mô tả: Gọi API để lấy thông tin chi tiết biên bản xác định giá trị tang vật, phương tiện vi
phạm hành chính
Method URL
GET xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham khảo
9 tangVat List
bảng dữ liệu đầu vào tang vật dưới đây
"ten": "BB04",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "013114557",
"ten": "Nguyễn Văn A",
"ngayCap": "2023-03-06T06:34:19.153Z",
"noiCap": "Cục cảnh sát",
"diaChi": {
"maDiaDanh": "00006",
"chiTiet": "63 Lê Văn Lương"
},
"noiOHienTai": "63 Lê Văn Lương, Phường Vĩnh Phúc, Quận Ba
Đình, Thành phố Hà Nội",
"ngaySinh": "1999-03-03T06:34:34.387Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00008",
"soDienThoai": "0546467788",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "28F1.247844",
"bienSo2": "21447556",
"maPhuongTien": "51",
"soDangKy": "55446887",
"soDangKy2": null,
"soKhung": "023157FWQA5612",
"soMay": "1357744563",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.7.2.3.3.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH. GET_BB_QD_DETAILS là một thủ tục
được sử dụng để lấy thông tin chi tiết BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(5
1 P_MA N Mã BBQD
0 CHAR)
P_MA_BIEU_MA VARCHAR2(5
2 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.7.2.3.3.4. Xử lý ngoại lệ
d.7.2.3.5. Xóa biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.8. Biên bản 05 – Biên bản xác minh tình tiết của vụ việc vi phạm hành chính
d.8.1. Mục đích
- Quản lý biên bản 05 – Biên bản xác minh tình tiết của vụ việc vi phạm hành
chính.
- Chức năng quản lý biên bản 05 – Biên bản xác minh tình tiết của vụ việc vi
phạm hành chính:
o Thêm mới biên bản 05
o Sửa biên bản 05
o Hiển thị chi tiết biên bản 05
o Xóa biên bản 05
TT Tên bảng Mô tả
1 BIEN_BAN_QUYET_DINH Bảng lưu trữ biên bản quyết định
2 VU_VIEC Bảng lưu trữ vụ việc xảy ra
BB_QD_HANH_VI_VI_PH Bảng lưu trữ thông tin các hành vi vi phạm trong
3
AM biên bản
BB_QD_NOI_DUNG_CHI_ Bảng lưu trữ thông tin nội dung in các hành vi vi
4
TIET phạm hoặc hình phạt bổ sung của biên bản
5 TANG_VAT Bảng lưu trữ thông tin các tang vật của biên bản
DANH_MUC_MAU_BIEN_ Bảng lưu trữ thông tin các mẫu biên bản quyết
6
BAN_QUYET_DINH định
d.8.2.2.1. Thêm mới/Sửa Biên bản 05- Biên bản xác minh tình tiết của vụ việc vi phạm
hành chính
d.8.2.2.1.1. Giao diện
Tình tiết tăng nặng/giảm nhẹ Tình tiết tăng nặng/giảm nhẹ
d.8.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.8.2.3.1.1. API
Mô tả: Gọi API để lấy danh sách biên bản xác minh tình tiết của vụ việc vi phạm hành
chính theo nhiều tiêu chí tìm kiếm
Method URL
GET xlvp/api/v1/bb-qd?
- DA_IN: Đã in
- DA_THANH_TOAN_BUU_DIEN:
Đã thanh toán qua bưu điện
Từ khóa tìm kiếm nhanh để tìm kiếm, có
4 timKiemNhanh String thể là; Mã BBQD, mã vụ việc, biển số
xe, số định danh đối tượng vi phạm.
Loại biểu mẫu cần tìm kiếm:
- BIEN_BAN: tìm kiếm kiên bản
5 loaiBieuMau String
- QUYET_DINH: tìm kiếm quyết
định
6 bienSo String Biển số xe của phương tiện vi phạm
7 soDinhDanh String Số định danh của đối tượng vi phạm
8 tenDoiTuongViPham String Tên đối tượng vi phạm
Mã đơn vị cảnh sát giao thông lập biên
9 maDonViCsgt String
bản/ quyết định
Thời gian lập biên bản, quyết định từ
10 tuNgay Datetime
ngày
Thời gian lập biên bản, quyết định đến
11 denNgay Datetime
ngày
12 maCha String Mã biên bản, quyết định cha
13 maBieuMauCha String Mã biểu mẫu biên bản, quyết định cha
Lĩnh vực giao thông lập biên bản, quyết
đinh:
Ví dụ:
Method: GET
- DA_IN: Đã in
- DA_THANH_TOAN_BUU_DIEN: Đã
thanh toán qua bưu điện
maDonViCs
10 String Mã đơn vị CSGT tạo BBQD
gt
Nguồn tạo biên bản quyết định:
- BBQD: Biên bản, quyết định lập từ BBQD
11 nguon String khác
VU_VIEC: Biên bản, quyết định lập trực tiếp từ
vụ việc
BBQD đã tạo bbqd con chưa?
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000601",
"ten": "BB16",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "003112111450",
"ten": "Bùi Công Anh",
"ngayCap": "2023-03-10T09:15:47.192Z",
"noiCap": "Cục cảnh sát quản lý hành chính về trật tự xã hội",
"diaChi": {
"maDiaDanh": "00721",
"chiTiet": "Lê Văn Lương"
},
"noiOHienTai": "Lê Văn Lương, Thị trấn Đồng Văn, Huyện Đồng Văn, T
ỉnh Hà Giang",
"ngaySinh": "1996-05-29T09:16:04.677Z",
"loaiNgaySinh": "MONTH",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00002",
"soDienThoai": "0315487451",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "2157853",
"maPhuongTien": "47"
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
],
"total": 1
}
Service:
- Danh sách các lớp sử dụng:
Procedure:
-Hàm PKG_BIEN_BAN_QUYET_DINH.SEARCH_BB_QD là một thủ tục được
sử dụng để tìm kiếm các BBQD dựa trên các tiêu chí khác nhau.
Các giá trị nhập vào và trả ra gồm:
Nhập/
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
(N/X)
VARCHAR
1 P_MA 2(30 N Mã BBQD cần tìm kiếm
CHAR)
VARCHAR
2 P_MA_VU_VIEC 2(30 N Mã vụ việc lập BBQD
CHAR)
3 P_MA_BIEU_MAU VARCHAR N Trạng thái của căn cứ
Nhập/
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
(N/X)
2(50 + 1 : kích hoạt
CHAR) + 0 : không kích hoạt
Trang cần tìm kiếm ( bắt đầu từ
4 P_IS_CHU_KY_SO NUMBER N
0)
Loại biểu mẫu
P_LOAI_BIEU_MA
5 NUMBER N + 1 : biên bản
U
+ 2 : quyết định
VARCHAR
6 P_BIEN_SO N Biển số xe cần tra cứu
2
VARCHAR Số định danh đối tượng vi
7 P_SO_CMTND N
2 phạm
VARCHAR
8 P_TEN_NVP N Tên đối tượng vi phạm
2
9 P_TU_NGAY DATE N Thời gian lập BBQD từ ngày
10 P_DEN_NGAY DATE N Thời gian lập BBQD đến ngày
Trạng thái BBQD:
- 01: Đã lưu
- 02: Đã in
Nhập/
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
(N/X)
VARCHAR
P_MA_DON_VI_CS
12 2(255 N Mã đơn vị CSGT cần tìm kiếm
GT
CHAR)
VARCHAR
13 P_SEARCH N Từ khóa tìm kiếm nhanh
2
VARCHAR
14 P_MA_CHA 2(30 N Mã BBQD cha
CHAR)
VARCHAR
P_MA_BIEU_MAU_
15 2(50 N Mã biểu mẫu của BBQD cha
CHA
CHAR)
Lĩnh vực giao thông cần tìm
kiếm:
Nhập/
Kiểu dữ
STT Tham số Xuất Mô tả
liệu
(N/X)
CURSOR tìm kiếm
Kết quả trả về của thủ tục bao gồm một danh sách các BBQD được tìm thấy, phù hợp với
các tiêu chí tìm kiếm được cung cấp. Các kết quả được phân trang và sắp xếp theo thời
gian lập BBQD mới nhất.
d.8.2.3.1.4. Xử lý ngoại lệ
d.8.2.3.2.1. API
Mô tả: Gọi API để tạo mới biên bản xác minh tình tiết của vụ việc vi phạm hành chính
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
3 maCha String Mã BBQD cha
maBieuMauC
4 String Mã biểu mẫu cha
ha
5 thoiGianLap Date X Thời gian lập BBQD
6 diaDiemLap String Địa điểm lập BBQD
7 maNhapTay String Mã số nhập tay BBQD
8 tangVat List Danh sách các tang vật của biên bản, tham
khảo bảng dữ liệu đầu vào tang vật dưới
đây
Danh sách các hành vi vi phạm của
hanhViViPha
9 List X BBQD, tham khảo bảng dữ liệu đầu vào
m
Hành vi vi phạm dưới đây
Danh sách nội dung in hành vi vi phạm
noiDungChiTi
10 List của BBQD, tham khảo bảng dữ liệu đầu
et
vào nội dung chi tiết dưới đây
Nội dung chi tiết của biên bản xác minh
11 noiDung Object X
tình tiết của vụ việc vi phạm hành chính
- Dữ liệu nội dung biên bản xác minh tình tiết của vụ việc vi phạm hành chính:
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
List
1 canCu X Căn cứ lập BB lấy từ danh mục căn cứ
String
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
ngKien
yKienBenThi
10 String Ý kiến trình bày bên thiệt hại
etHai
11 ttKhac String Tình tiết xác minh khác
lyDoKhongK
12 String Lý do không ký biên bản
yBienBan
13 lapXong Json X Thông tin biên bản lập xong
Kiểu dữ Bắt
STT Tham số Mô tả
liệu buộc
Mã tang vật ( trong danh mục tang vật,
1 ma String X
phương tiện, giấy tờ)
Mã nhóm tang vật:
- PHUONG_TIEN: Phương tiện
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maHVVP String X Mã hành vi vi phạm
2 maTTND String X Mã thông tư nghị định
3 boSungHVVP String Thông tin bổ sung thêm cho HVVP
4 mucTienPhat String Mức tiền phạt cho HVVP
5 thoiGianVp Date Thời gian xảy ra vi phạm
6 diaDiemVp String Địa điểm xảy ra vi phạm
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb05",
"maVuViec": "G01.308.000.000-981-23-000601",
"maBieuMauCha": "118-2022-nd-cp-bb01",
"maCha": "G01.308.000.000-981-23-000310",
"thoiGianLap": "2023-03-30T02:28:46.041Z",
"diaDiemLap": "Lê Văn Lương",
"tangVat": [
{
"ma": "044",
"nhomTangVat": "GIAY_PHEP_LAI_XE",
"thongTin": {
"soLuong": 1,
"tinhTrang": "Còn nguyên",
"ghiChu": "Còn nguyên",
"hang": [
"gplx-a2"
],
"so": "24747845111",
"giaTriDen": "2026-03-05T09:18:05.000+00:00",
"noiCap": null
}
},
{
"ma": "043",
"nhomTangVat": "PHUONG_TIEN",
"thongTin": {
"soLuong": 1,
"tinhTrang": "Còn nguyên",
"ghiChu": "Còn nguyên",
"ten": null,
"chungLoai": "47",
"bienSo": "2157853",
"bienSo2": "5786331",
"donViTinh": "Chiếc",
"soDangKy": null,
"soKhung": "5222157QSZA",
"soMay": "24873215457",
"soDangKy2": null,
"congSuat": null,
"trongTai": null,
"congSuat2": null,
"trongTai2": null,
"donGia": null,
"nhanHieu": null,
"mauSon": null,
"soLoai": null
}
}
],
"hanhViViPham": [
{
"maBBQD": "G01.308.000.000-981-23-000310",
"maBieuMau": "118-2022-nd-cp-bb01",
"maHVVP": "013-258.45.78.sa.3",
"maTTND": "014",
"boSungHvvp": null,
"thoiGianVp": "2023-03-29T09:15:20.000+00:00",
"diaDiemVp": "Lê Văn Lương",
"mucTienPhat": null,
"noiDungHanhViViPham": "Điều khiển xe trên đường mà trong cơ thể có chất m
a túysd3erdwessds",
"diem": "sa",
"khoan": "78",
"dieu": "45",
"soTTND": "11822",
"ngayBanHanhTTND": "2021-09-30T09:51:10.719+00:00",
"noiDungTTND": "Nghị định mới 2022",
"kyHieuTTND": "118/2022/NĐ-CP",
"soTienPhatCaNhanNhoNhat": 20000,
"soTienPhatCaNhanLonNhat": 2000000,
"soTienPhatCaNhanMacDinh": 1010000,
"soTienPhatToChucNhoNhat": 40000,
"soTienPhatToChucLonNhat": 4000000,
"soTienPhatToChucMacDinh": 2020000,
"key": "5d7a0fdb3858466da36af2788c991e36"
}
],
"noiDung": {
"doiTuongXacMinh": [
{
"ten": "Bùi Anh",
"loai": "CA_NHAN",
"ngheNghiep": "00008",
"diaChi": "Lê Văn Lương"
}
],
"lyDoKhongKyBienBan": "Tôi đồng ý",
"canCu": {
"maCanCu": [
"20",
"01",
"03"
],
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"ma": "anhbc"
},
"doiTuongThietHai": [
{
"loaiDoiTuong": "CA_NHAN",
"hoVaTen": "Bùi Anh"
}
],
"mucDoThietHai": "Nghiêm trọng",
"lapXong": {
"thoiGian": "2023-03-30T02:28:37.600Z",
"soTo": "2",
"soBan": "2"
},
"ttGiam": "Không có",
"ttTang": "Chống đối",
"ttKhac": "Không có",
"yKienBenViPham": "Tôi đồng ý",
"yKienBenChungKien": "Tôi đồng ý",
"yKienBenThietHai": "Tôi đồng ý"
}
}
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham khảo
9 tangVat List
bảng dữ liệu đầu vào tang vật dưới đây
Danh sách các hành vi vi phạm của BBQD,
10 hanhViViPham List tham khảo bảng dữ liệu đầu vào Hành vi vi
phạm dưới đây
Danh sách nội dung in hành vi vi phạm của
11 noiDungChiTiet List BBQD, tham khảo bảng dữ liệu đầu vào nội
dung chi tiết dưới đây
Nội dung chi tiết của biên bản xác minh tình tiết
12 noiDung Object
của vụ việc vi phạm hành chính
13 canBoTao Object Thông tin cán bộ tạo BBQD
14 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"ma": "G01.308.000.000-981-23-000007",
"maCha": "G01.308.000.000-981-23-000310",
"maBieuMauCha": "118-2022-nd-cp-bb01",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000601",
"maBieuMau": "118-2022-nd-cp-bb05",
"thoiGianLap": "2023-03-30T02:28:46.000+00:00",
"ngayTao": "2023-03-30T02:31:14.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000601",
"ten": "BB16",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "003112111450",
"ten": "Bùi Công Anh",
"ngayCap": "2023-03-10T09:15:47.192Z",
"noiCap": "Cục cảnh sát quản lý hành chính về trật tự xã hội",
"diaChi": {
"maDiaDanh": "00721",
"chiTiet": "Lê Văn Lương"
},
"noiOHienTai": "Lê Văn Lương, Thị trấn Đồng Văn, Huyện Đồng Văn, Tỉnh Hà G
iang",
"ngaySinh": "1996-05-29T09:16:04.677Z",
"loaiNgaySinh": "MONTH",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00002",
"soDienThoai": "0315487451",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "2157853",
"bienSo2": "5786331",
"maPhuongTien": "47",
"soDangKy": "2121488",
"soDangKy2": null,
"soKhung": "5222157QSZA",
"soMay": "24873215457",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao
1 BBQDController.java
tác với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức
3 BBQDServiceImpl.java
của BBQDService.java
bulkCre
5 TangVatService.java Tạo các tang vật thuộc BBQD
ate
bulkCre BBQDHinhThucXuPhatSer
6 Tạo các hình thức xử phạt cho BBQD
ate vice.java
BBQDNoiDungChiTietSev Tạo hoặc cập nhật các nội dung in cho
7 upsert
ice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để
lấy thông tin bản ghi vừa được thêm và trả về.
d.8.2.3.2.2. Xử lý ngoại lệ
d.8.2.3.3.1. API
Mô tả: Gọi API để chỉnh sửa biên bản xác minh tình tiết của vụ việc vi phạm hành chính
Method URL
PUT xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
Các tham số gửi lên và trả về tương tự tạo mới biên bản xác minh tình tiết của vụ việc vi
phạm hành chính, ngoài ra còn có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBbQd String Mã BBQD
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQD
BB05ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQD
.java
Lớp làm nhiệm vụ quản lý tang vật của BBQD
6 TangVatService.java
nếu có
BBQDHinhThucXuPhatS Lớp làm nhiệm vụ quản lý các hình thức xử phạt
7
ervice.java cho BBQD nếu có
BBQDNoiDungChiTietSe Lớp làm nhiệm vụ quản lý các nội dung in cho
8
vice.java BBQD nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint cập nhật BBQD và
1 update
java điều hướng đến service cập nhật BBQD
BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 update
l.java lại dữ liệu và cập nhật BBQD
Gọi hàm
BBQDRepository
3 update PKG_BIEN_BAN_QUYET_DINH.UPDATE
.java
_BB_QD để sửa BBQD trong database
BB01ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
updateTang TangVatService.j Cập nhật thông tin các tang vật thuộc
5
Vat ava BBQD
BBQDHinhThuc
6 bulkUpdate XuPhatService.ja Cập nhật hình thức xử phạt cho BBQD
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được
sử dụng để cập nhật BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Hàm UPDATE_ITEM được sử dụng để cập nhật thông tin của một BBQD đã có trong cơ
sở dữ liệu.
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
P_THOI_GIAN_LA
3 DATE N Thời gian lập BBQD
P
VARCHAR2(50
4 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
7 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
8 P_TRANG_THAI N Trạng thái BBQD
CHAR)
VARCHAR2(40
9 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(40 Thông tin cán bộ sửa
10 P_CAN_BO_SUA N
00 CHAR) BBQD
VARCHAR2(25
11 P_NGUOI_SUA N Tài khoản sửa BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
d.8.2.3.4. Xem chi tiết biên bản xác minh tình tiết của vụ việc vi phạm hành chính
d.8.2.3.4.1. API
Mô tả: Gọi API để lấy thông tin chi tiết biên bản xác minh tình tiết của vụ việc vi phạm
hành chính
Method URL
GET xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
"maCapBac": "3.7",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"maChucVu": "003",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"doiTuongXacMinh": [
{
"loai": "CA_NHAN",
"ten": "Bùi Anh",
"ngheNghiep": "00008",
"diaChi": "Lê Văn Lương",
"chucVu": null,
"coQuan": null
}
],
"doiTuongThietHai": [
{
"loaiDoiTuong": "CA_NHAN",
"hoVaTen": "Bùi Anh",
"chucVu": null,
"tenToChuc": null
}
],
"mucDoThietHai": "Nghiêm trọng",
"ttTang": "Chống đối",
"ttGiam": "Không có",
"ttKhac": "Không có",
"lyDoKhongKyBienBan": "Tôi đồng ý",
"lapXong": {
"thoiGian": "2023-03-30T02:28:37.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienBenViPham": "Tôi đồng ý",
"yKienBenChungKien": "Tôi đồng ý",
"yKienBenThietHai": "Tôi đồng ý"
},
"nguoiTao": "anhbc",
"nguoiSua": null,
"hanhViViPham": [
{
"maBBQD": "G01.308.000.000-981-23-000007",
"maBieuMau": "118-2022-nd-cp-bb05",
"maHVVP": "013-258.45.78.sa.3",
"maTTND": "014",
"boSungHvvp": null,
"thoiGianVp": "2023-03-29T09:15:20.000+00:00",
"diaDiemVp": "Lê Văn Lương",
"mucTienPhat": null,
"noiDungHanhViViPham": "Điều khiển xe trên đường mà trong cơ thể có chất m
a túysd3erdwessds",
"diem": "sa",
"khoan": "78",
"dieu": "45",
"soTTND": "11822",
"ngayBanHanhTTND": "2021-09-30T09:51:10.719+00:00",
"noiDungTTND": "Nghị định mới 2022",
"kyHieuTTND": "118/2022/NĐ-CP",
"soTienPhatCaNhanNhoNhat": 20000,
"soTienPhatCaNhanLonNhat": 2000000,
"soTienPhatCaNhanMacDinh": 1010000,
"soTienPhatToChucNhoNhat": 40000,
"soTienPhatToChucLonNhat": 4000000,
"soTienPhatToChucMacDinh": 2020000
}
],
"tangVat": [
{
"ma": "044",
"nhomTangVat": "GIAY_PHEP_LAI_XE",
"thongTin": {
"soLuong": 1,
"tinhTrang": "Còn nguyên",
"ghiChu": "Còn nguyên",
"hang": [
"gplx-a2"
],
"so": "24747845111",
"giaTriDen": "2026-03-05T09:18:05.000+00:00",
"noiCap": null
}
},
{
"ma": "043",
"nhomTangVat": "PHUONG_TIEN",
"thongTin": {
"soLuong": 1,
"tinhTrang": "Còn nguyên",
"ghiChu": "Còn nguyên",
"ten": null,
"chungLoai": "47",
"bienSo": "2157853",
"bienSo2": "5786331",
"donViTinh": "Chiếc",
"soDangKy": null,
"soKhung": "5222157QSZA",
"soMay": "24873215457",
"soDangKy2": null,
"congSuat": null,
"trongTai": null,
"congSuat2": null,
"trongTai2": null,
"donGia": null,
"nhanHieu": null,
"mauSon": null,
"soLoai": null
}
}
],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000601",
"ten": "BB16",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "003112111450",
"ten": "Bùi Công Anh",
"ngayCap": "2023-03-10T09:15:47.192Z",
"noiCap": "Cục cảnh sát quản lý hành chính về trật tự xã hội",
"diaChi": {
"maDiaDanh": "00721",
"chiTiet": "Lê Văn Lương"
},
"noiOHienTai": "Lê Văn Lương, Thị trấn Đồng Văn, Huyện Đồng Văn, Tỉnh Hà G
iang",
"ngaySinh": "1996-05-29T09:16:04.677Z",
"loaiNgaySinh": "MONTH",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00002",
"soDienThoai": "0315487451",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "2157853",
"bienSo2": "5786331",
"maPhuongTien": "47",
"soDangKy": "2121488",
"soDangKy2": null,
"soKhung": "5222157QSZA",
"soMay": "24873215457",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ lấy
4 BBQDRepository.java
thông tin chi tiết BBQD
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint cập nhật BBQD và
1 get
java điều hướng đến service cập nhật BBQD
BBQDServiceImp Thực hiện các thao tác chuẩn hóa lại dữ
2 get
l.java liệu BBQD trước khi trả ra
BBQDRepository Gọi hàm GET_BB_QD_DETAILS để lấy
3 get
.java thông tin chi tiết BBQD trong database
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH. GET_BB_QD_DETAILS là một thủ tục
được sử dụng để lấy thông tin chi tiết BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(5
1 P_MA N Mã BBQD
0 CHAR)
P_MA_BIEU_MA VARCHAR2(5
2 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.8.2.3.4.4. Xử lý ngoại lệ
d.8.2.3.5. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.9. Biên bản 06 – Biên bản Về việc không nhận quyết định xử phạt vi phạm hành
chính
d.9.1. Mục đích
- Quản lý biên bản 06 – Biên bản về việc không nhận xử phạt vi phạm hành
chính.
- Chức năng quản lý biên bản 06 – Biên bản về việc không nhận xử phạt vi phạm
hành chính:
o Thêm mới biên bản 06
TT Tên bảng Mô tả
1 BIEN_BAN_QUYET_DINH Bảng lưu trữ biên bản quyết định
2 VU_VIEC Bảng lưu trữ vụ việc xảy ra
DANH_MUC_MAU_BIEN_BA Bảng lưu trữ thông tin các mẫu biên bản
3
N_QUYET_DINH quyết định
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
Bắt
Tên thành phần /
buộc Định dạng Vai trò Ghi chú
Control
nhập?
Form tìm kiếm/lọc dữ liệu danh mục
ma NO Textbox Nhập mã căn cứ
ten NO Textbox Nhập tên căn cứ
Chọn loại trạng thái căn
trangThai NO Dropdownlist
cứ
Danh sách dữ liệu danh mục
ma - Text Hiển thị mã căn cứ
ten - Text Hiển thị tên căn cứ
Hiển thị trạng thái căn
trangThai - Text
cứ
ngaySua - Text Hiển thị ngày sửa căn cứ
nguoiSua - Text Hiển thị ngày sửa căn cứ
d.9.2.2.1.3. Xử lý sự kiện
d.9.2.2.3.2. Xử lý sự kiện
d.9.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản vi phạm hành chính
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
Ví dụ:
Method: POST
Ví dụ:
Kết quả trả về:
"ma": "G01.308.000.000-981-23-000007",
"maCha": "G01.308.000.000-981-23-000191",
"maBieuMauCha": "118-2022-nd-cp-qd02",
"maNhapTay": null,
"maVuViec": "G01.897.815.308-981-23-000019",
"maBieuMau": "118-2022-nd-cp-bb06",
"thoiGianLap": "2023-03-23T04:46:35.000+00:00",
"nguoiTao": "anhtt",
"ngayTao": "2023-03-29T09:00:43.000+00:00",
"nguoiSua": null,
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "{\"email\":null,\"placeCodeOto\":null,\"placeCodeMoto\":null}",
"userName": "anhtt",
"ten": "Trần Tuấn Anh",
"capBac": "CB00106",
"chucVu": "004",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000019",
"ten": "17G1-11111 Bùi Công Anh",
"nguon": null,
"doiTuongViPham": {
"ten": "Bùi Công Anh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "17G1-11111",
BCA-C08_XLVP_2023_DD Internal use Trang 470
Tài liệu thiết kế hệ thống V1.0
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQD
BB06ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQD
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật của
6 TangVatService.java
BBQD nếu có
BBQDHinhThucXuPhatS Lớp làm nhiệm vụ tạo và quản lý các hình thức
7
ervice.java xử phạt cho BBQD nếu có
BBQDNoiDungChiTietSe Lớp làm nhiệm vụ tạo và quản lý các nội dung in
8
vice.java cho BBQD nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint tạo mới BBQD và điều
1 create
java hướng đến service tạo BBQD
BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 create
l.java lại dữ liệu và tạo mới BBQD
Gọi hàm
BBQDRepository
3 create PKG_BIEN_BAN_QUYET_DINH.CREATE
.java
_BB_QD để tạo BBQD trong database
BB06ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQD
ava
BBQDHinhThuc
6 bulkCreate XuPhatService.ja Tạo các hình thức xử phạt cho BBQD
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
P_MA_DON_VI_C VARCHAR2(25
12 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.9.2.3.1.4. Xử lý ngoại lệ
d.9.2.3.2.1. API
Các tham số gửi lên và trả về tương tự tạo mới biên bản vi phạm hành chính, ngoài ra còn
có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBbQd String Mã BBQD
d.9.2.3.2.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.9.2.3.2.4. Xử lý ngoại lệ
d.9.2.3.3.1. API
Ví dụ:
Kết quả trả về:
"ma": "G01.308.000.000-981-23-000007",
"maCha": "G01.308.000.000-981-23-000191",
"maBieuMauCha": "118-2022-nd-cp-qd02",
"maNhapTay": null,
"maVuViec": "G01.897.815.308-981-23-000019",
"maBieuMau": "118-2022-nd-cp-bb06",
"thoiGianLap": "2023-03-23T04:46:35.000+00:00",
"nguoiTao": "anhtt",
"ngayTao": "2023-03-29T09:00:43.000+00:00",
"nguoiSua": null,
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "{\"email\":null,\"placeCodeOto\":null,\"placeCodeMoto\":null}"
"userName": "anhtt",
"ten": "Trần Tuấn Anh",
"capBac": "CB00106",
"chucVu": "004",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000019",
"ten": "17G1-11111 Bùi Công Anh",
"nguon": null,
"doiTuongViPham": {
"ten": "Bùi Công Anh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "17G1-11111",
BCA-C08_XLVP_2023_DD Internal use Trang 479
Tài liệu thiết kế hệ thống V1.0
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ lấy
4 BBQDRepository.java
thông tin chi tiết BBQD
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint cập nhật BBQD và
1 get
java điều hướng đến service cập nhật BBQD
BBQDServiceImp Thực hiện các thao tác chuẩn hóa lại dữ
2 get
l.java liệu BBQD trước khi trả ra
BBQDRepository Gọi hàm GET_BB_QD_DETAILS để lấy
3 get
.java thông tin chi tiết BBQD trong database
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH. GET_BB_QD_DETAILS là một thủ tục
được sử dụng để lấy thông tin chi tiết BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(5
1 P_MA N Mã BBQD
0 CHAR)
P_MA_BIEU_MA VARCHAR2(5
2 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.9.2.3.3.4. Xử lý ngoại lệ
d.9.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.10. Biên bản 07 – Biên bản về việc không nhận quyết định cưỡng chế thi hành
quyết định xử phạt vi phạm hành chính
d.10.1. Mục đích
- Quản lý biên bản 07 – Biên bản về việc không nhận quyết định cưỡng chế thi hành
quyết định xử phạt vi phạm hành chính.
- Chức năng quản lý biên bản 07 – Biên bản về việc không nhận quyết định cưỡng chế
thi hành quyết định xử phạt vi phạm hành chính:
o Thêm mới biên bản 07
o Sửa biên bản 07
o Hiển thị chi tiết biên bản 07
o Xóa biên bản 07
TT Tên bảng Mô tả
1 BIEN_BAN_QUYET_DINH Bảng lưu trữ biên bản quyết định
2 VU_VIEC Bảng lưu trữ vụ việc xảy ra
DANH_MUC_MAU_BIEN_BAN_ Bảng lưu trữ thông tin các mẫu biên bản
3
QUYET_DINH quyết định
d.10.2.2. Thiết kế màn hình
Tại màn chi tiết QĐ07/QĐ08/QĐ09/QĐ10/QĐ11/QĐ12, Click vào nút Button Tạo
BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
STT Label Tên thành Bắt Định Miêu tả
phần / buộc dạng
Control nhập
Thông tin chung
1 Số biên bản ma Textbox Mã tự sinh, hoặc nhập tay
Nhập địa điểm lập biên
2 Tại diaDiemLap X Textbox
bản
Nhập thời gian lập biên
3 Ngày tạo thoiGianLap TextBox
bản
Căn cứ
Bao gồm nội
Hiển thị thông tin số QĐ,
dung tương ứng
Ngày ra QĐ, Đơn vị có
với
thẩm quyền ra QĐ của
QĐ07/QĐ08/Q canCu.bbQ
4 Text QĐ07/QĐ08/QĐ09/QĐ1
Đ09/QĐ10/QĐ1 Đ
0/QĐ11/QĐ12A/QĐ12B/
1/QĐ12A/QĐ12
QĐ12C/QĐ15 sinh ra
B/QĐ12C/QĐ15
BB07
sinh ra BB07
Thông tin người lập biên bản
Xem tại mục Màn hình dùng chung/Chi tiết các màn hình/Người có thẩm quyền
lập BB
Đối tượng vi phạm
Xem chi tiết ở Màn hình sử dụng chung/Chi tiết các màn hình/Đối tượng vi phạm
Danh sách người chứng kiến
5 STT index Text Số thứ tự bản ghi
loaiDoiTuon Hiển thị loại đối tượng
6 Đối tượng Text
g chứng kiến
Hiển thị thông tin đối
7 Nội dung chi tiết noiDung Text
tượng chứng kiến
Popup đối tượng chứng kiến
loaiDoiTuon Dropdo
8 Đối tượng x Chọn loại đối tượng
g wnlist
9 Họ và tên ten Textbox Nhập tên cho đối tượng
chứng kiến
Giá trị mặc định là ngày giờ hiện tại của hệ thống
Bắt buộc nhập
5 Số tờ
Tối đa 2 ký tự
Bắt buộc nhập
6 Số bản
Tối đa 2 ký tự
d.10.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.10.2.2.2.2. Xử lý sự kiện
d.10.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản vi phạm hành chính
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
3 maCha String Mã BBQD cha
maBieuMauC
4 String Mã biểu mẫu cha
ha
5 thoiGianLap Date X Thời gian lập BBQD
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Json X Căn cứ lập BB lấy từ danh mục căn cứ
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb07",
"maVuViec": "G01.897.815.308-981-23-000001",
"maBieuMauCha": "118-2022-nd-cp-qd09",
"maCha": "G01.897.815.308-981-23-000003",
"diaDiemLap": "63 Lê Văn Lương",
"thoiGianLap": "2023-02-22T09:30:55.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd09",
"so": "G01.897.815.308-981-23-000003",
"ngay": "2023-02-22T09:30:55.000Z",
"maNhapTay": null
}
],
"ttndNhapTay": {
"ngay": null
}
},
"nguoiCoThamQuyen": {
"donVi": "G01.897.815.308",
"capBac": "Thiếu úy",
"chucVu": "Phó trưởng phòng",
"ma": "ducvn"
},
"doiTuongChungKien": [
{
"ten": "Doãn Chí Bình",
"loaiDoiTuong": "CA_NHAN",
"thongTin": {
"ngheNghiep": "00008",
"diaChi": "30 Hàng Than"
}
}
],
"lapXong": {
"thoiGian": "2023-03-30T03:12:02.157Z",
"soTo": "2",
"soBan": "2"
}
}
}
"ngayCap": "2023-02-16T17:03:00.031Z",
"noiCap": "CA Hà Nội",
"diaChi": {
"maDiaDanh": "00040",
"chiTiet": "Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ
Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Ch
i Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Ti"
},
"noiOHienTai": "Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ
Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ , Phường Đồng Xuân,
Quận Hoàn Kiếm, Thành phố Hà Nội",
"ngaySinh": "2023-02-23T17:04:20.366Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"ngheNghiep": "00008",
"soDienThoai": "0978213112",
"email": "vungocduc597@gmail.com",
"noiSinh": "Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi
Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ , Phường Đồng Xuân, Quậ
n Hoàn Kiếm, Thành phố Hà Nội"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "29H1-11111",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
BB07ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi tạo
4 isValid rvice
BBQD
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQD
ava
6 bulkCreate BBQDHinhThuc Tạo các hình thức xử phạt cho BBQD
XuPhatService.ja
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được sử
dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
12 P_MA_DON_VI_C VARCHAR2(25 N Mã đơn vị CSGT
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.10.2.3.1.4. Xử lý ngoại lệ
d.10.2.3.2.1. API
Các tham số gửi lên và trả về tương tự tạo mới biên bản vi phạm hành chính, ngoài ra còn
có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBBQD String Mã BBQD
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
BB07ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
updateTang TangVatService.j Cập nhật thông tin các tang vật thuộc
5
Vat ava BBQD
BBQDHinhThuc
6 bulkUpdate XuPhatService.ja Cập nhật hình thức xử phạt cho BBQD
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được sử
dụng để cập nhật BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
P_THOI_GIAN_LA
3 DATE N Thời gian lập BBQD
P
VARCHAR2(50
4 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
7 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
8 P_TRANG_THAI N Trạng thái BBQD
CHAR)
VARCHAR2(40
9 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(40 Thông tin cán bộ sửa
10 P_CAN_BO_SUA N
00 CHAR) BBQD
VARCHAR2(25
11 P_NGUOI_SUA N Tài khoản sửa BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.10.2.3.2.4. Xử lý ngoại lệ
d.10.2.3.3.1. API
"noiOHienTai": "Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ
Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ , Phường Đồng Xuân,
Quận Hoàn Kiếm, Thành phố Hà Nội",
"ngaySinh": "2023-02-23T17:04:20.366Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"ngheNghiep": "00008",
"soDienThoai": "0978213112",
"email": "vungocduc597@gmail.com",
"noiSinh": "Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi
Tiết Địa Chỉ Chi Tiết Địa Chỉ Chi Tiết Địa Chỉ , Phường Đồng Xuân, Quậ
n Hoàn Kiếm, Thành phố Hà Nội"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "29H1-11111",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.10.2.3.3.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
4 BBQDRepository.java Lớp giao tiếp với database làm nhiệm vụ lấy
Procedure:
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
VARCHAR2(50
2 P_MA_BIEU_MAU N Mã biểu mẫu BBQD
CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.10.2.3.3.4. Xử lý ngoại lệ
d.10.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.11. Biên bản 08 – Biên bản giữ giấy phép, chứng chỉ hành nghề
d.11.1. Mục đích
- Quản lý biên bản 08 – Biên bản giữ giấy phép, chứng chỉ hành nghề.
- Chức năng quản lý biên bản 08 – Biên bản giữ giấy phép, chứng chỉ hành nghề:
o Thêm mới biên bản 08
o Sửa biên bản 08
o Hiển thị chi tiết biên bản 08
o Xóa biên bản 08
Tại màn chi tiết QD02, Click vào nút Button Tạo BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
Tên thành Bắt
STT Label phần / buộc Định dạng Miêu tả
Control nhập
Thông tin chung
Mã tự sinh, hoặc nhập
tay.
17 Số biên bản ma Textbox
Không được sửa trong
màn hình sửa BB08
Nhập địa điểm lập
18 Tại diaDiemLap X Textbox
biên bản
Nhập thời gian lập
19 Ngày tạo thoiGianLap x TextBox
biên bản
Căn cứ
Hiển thị thông tin Số
20 Thi hành QĐ canCu.bbqd Text
và ngày tạo QĐ 02
Thông tin người lập biên bản
Xem tại mục Màn hình dùng chung/Chi tiết các màn hình/Người có thẩm quyền
lập BB
Đối tượng vi phạm
Xem chi tiết ở Màn hình sử dụng chung/Chi tiết các màn hình/Đối tượng vi phạm
Danh sách người chứng kiến
d.11.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.11.2.2.2.2. Xử lý sự kiện
d.11.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản vi phạm hành chính
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Json X Căn cứ lập BB lấy từ danh mục căn cứ
Kiểu dữ Bắt
STT Tham số Mô tả
liệu buộc
1 ma String X Mã tang vật ( trong danh mục tang vật,
Ví dụ:
Method: POST
Các giá trị trả về là:
STT Tham số Kiểu dữ liệu Mô tả
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCh String Mã biểu mẫu cha
a
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
9 tangVat List Danh sách các tang vật của biên bản, tham
khảo bảng dữ liệu đầu vào tang vật dưới
đây
10 noiDung Object Nội dung chi tiết của biên bản vi phạm
hành chính
11 canBoTao Object Thông tin cán bộ tạo BBQD
12 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"maBieuMau": "118-2022-nd-cp-bb08",
"maCha": "G01.897.815.308-981-23-000039",
"maVuViec": "G01.897.815.308-981-23-000035",
"maBieuMauCha": "118-2022-nd-cp-qd02",
"thoiGianLap": "2023-03-27T08:28:28.000Z",
"diaDiemLap": "63 Lê Văn Lương",
"tangVat": [
{
"ma": "006",
"thongTin": {
"so": "1223455",
"giaTriDen": "2023-03-30T03:56:56.000+00:00",
"noiCap": null,
"soLuong": 1
},
"nhomTangVat": "GIAY_TO"
}
],
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd02",
"so": "G01.897.815.308-981-23-000039",
"ngay": "2023-03-27T08:28:28.000Z"
}
]
},
"nguoiCoThamQuyen": {
"donVi": "G01.897.815.308",
"capBac": "Thiếu úy",
"chucVu": "Phó trưởng phòng",
"ma": "ducvn"
},
"chungKien": [],
"yKienBenViPham": "Không có ý kiến gì cả",
"lapXong": {
"thoiGian": "2023-03-30T03:57:26.532Z",
"soBan": "2",
"soTo": "2"
},
"lyDoKhongKyBB": "Không muốn ký thôi"
}
}
IV.11.2.3.1.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
BB01ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQD
ava
BBQDHinhThuc
6 bulkCreate Tạo các hình thức xử phạt cho BBQD
XuPhatService.ja
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được sử
dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
12 P_MA_DON_VI_C VARCHAR2(25 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.11.2.3.1.4. Xử lý ngoại lệ
d.11.2.3.2.1. API
Các tham số gửi lên và trả về tương tự tạo mới biên bản vi phạm hành chính, ngoài ra còn
có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBBQD String Mã BBQD
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao
tác với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
3 BBQDServiceImpl.java Lớp triển khai chi tiết các phương thức
của BBQDService.java
4 BBQDRepository.java Lớp giao tiếp với database làm nhiệm vụ
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.11.2.3.2.4. Xử lý ngoại lệ
d.11.2.3.3.1. API
"maBieuMau": "118-2022-nd-cp-qd02",
"so": "G01.897.815.308-981-23-000039",
"maNhapTay": null,
"ngay": "2023-03-27T08:28:28.000+00:00",
"tenDonVi": null
}
]
},
"nguoiCoThamQuyen": {
"ma": "ducvn",
"ten": "Vũ Ngọc Đức",
"maCapBac": "3.4",
"capBac": "Thiếu úy",
"chucVu": "Phó trưởng phòng",
"maChucVu": "006",
"donVi": "G01.897.815.308",
"tenDonVi": "Đội Cảnh sát quản lý hành chính - giao thông
trật tự, Công an huyện Côn Đảo"
},
"chungKien": [],
"lyDoKhongKyBB": "Không muốn ký thôi",
"lapXong": {
"thoiGian": "2023-03-30T03:57:26.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienBenViPham": "Không có ý kiến gì cả"
},
"nguoiTao": "anhtt",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [
{
"ma": "006",
"nhomTangVat": "GIAY_TO",
"thongTin": {
"soLuong": 1,
"tinhTrang": null,
"ghiChu": null,
"so": "1223455",
"giaTriDen": "2023-03-30T03:56:56.000+00:00",
"noiCap": null
}
}
],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":null,\"placeCodeOto\":null,\"placeCodeMot
o\":null}",
"userName": "anhtt",
"ten": "Trần Tuấn Anh",
"capBac": "CB00106",
"chucVu": "004",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000035",
"ten": "67H1-0000 Cao Đức Anh",
"nguon": null,
"doiTuongViPham": {
"ten": "Cao Đức Anh",
"diaChi": {
"maDiaDanh": "00001"
},
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"quocTich": "VN",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "67H1-0000",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao tác với
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
3 BBQDServiceImpl.java Lớp triển khai chi tiết các phương thức của
BBQDService.java
4 BBQDRepository.java Lớp giao tiếp với database làm nhiệm vụ lấy
thông tin chi tiết BBQD
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
Cung cấp endpoint cập nhật BBQD và
1 get BBQDController.java
điều hướng đến service cập nhật BBQD
BBQDServiceImpl.ja Thực hiện các thao tác chuẩn hóa lại dữ
2 get
va liệu BBQD trước khi trả ra
BBQDRepository.jav Gọi hàm GET_BB_QD_DETAILS để lấy
3 get
a thông tin chi tiết BBQD trong database
Procedure:
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
VARCHAR2(50
2 P_MA_BIEU_MAU N Mã biểu mẫu BBQD
CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.11.2.3.3.4. Xử lý ngoại lệ
d.11.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.12. Biên bản 09 – Biên bản xác minh thông tin về tiền, tài sản của cá nhân/tổ chức
bị cưỡng chế
d.12.1. Mục đích
- Quản lý Biên bản 09 – Biên bản xác minh thông tin về tiền, tài sản của cá nhân/tổ
chức bị cưỡng chế.
- Chức năng quản lý Biên bản 09 – Biên bản xác minh thông tin về tiền, tài sản của cá
nhân/tổ chức bị cưỡng chế:
o Thêm mới Biên bản 09
o Sửa Biên bản 09
o Hiển thị chi tiết Biên bản 09
o Xóa Biên bản 09
Hình 92: Popup cá nhân/tổ chức cung cấp thông tin xác minh/Đối tượng là cá
nhân
Hình 93: Popup cá nhân/tổ chức cung cấp thông tin xác minh/Đối tượng là
Tổ chức
Hình 94: Popup Thông tin người xác minh/Thông tin về tiền lương của cá
nhân vi phạm
Hình 95: Popup Thông tin người xác minh/Thông tin về thu nhập của cá
nhân vi phạm
Hình 96: Popup Thông tin người xác minh/Thông tin về tài khoản của cá
nhân/tổ chức vi phạm
Hình 97: Popup Thông tin người xác minh/Thông tin về tài sản của cá
nhân/tổ chức vi phạm
Hình 98: Popup Thông tin người xác minh/Thông tin về tiền của cá nhân/tổ
chức vi phạm do bên thứ ba đang giữ
Hình 99: Popup Thông tin người xác minh/Thông tin về tài sản của cá
nhân/tổ chức vi phạm do bên thứ ba đang giữ
d.12.2.2.1.2. Danh sách control/thành phần giao diện
Xem chi tiết ở Các màn hình sử dụng chung/Chi tiết các màn hình/Màn hình đối
tượng vi phạm
Lý do tiến hành xác minh
Nếu QD02 → BB09
thì hiển thị nội dung:
“Không tự nguyện
canCu.bbq chấp hành Quyết định
Text
d số: <Số QD02>/QĐ-
XPHC ngày <ngày tạo
QD02> xử phạt vi
8 Lý do phạm hành chính”
Nếu QD15 → BB09
thì hiển thị nội dung
“Không tự nguyện
donViThuc
Text hoàn trả kinh phí cho
HienBpkp
<Tên đơn vị thực hiện
biện pháp khắc phục
hậu quả>”
Cá nhân/ tổ chức cung cấp thông tin xác minh
9 STT Index Text Hiển thị số thứ thự
loaiDoiTuo
10 Đối tượng Text Hiển thị loại đối tượng
ng
Hiển thị nội dung chi
11 Nội dung chi tiết noiDung Text tiết thông tin đối
tượng
Popup Cá nhân tổ chức cung cấp thông tin xác minh
loaiDoiTuo Chọn Cá nhân hoặc
12 Đối tượng Dropdownlist
ng Tổ chức
Nhập họ và tên
13 Họ và tên hoVaTen Textbox Hiển thị với đối tượng
Cá nhân hoặc Tổ chức
14 Nghề nghiệp ngheNghie Select Chọn nghề nghiệp
p trong danh mục nghề
nghiệp
Hiển thị với đối tượng
Cá nhân
Nhập địa chỉ
15 Địa chỉ diaChi Textbox Hiển thị với đối tượng
Cá nhân
Nhập chức vụ
16 Chức vụ chucVu Textbox Hiển thị với đối tượng
Tổ chức
Nhập cơ quan
17 Cơ quan coQuan Textbox Hiển thị với đối tượng
Tổ chức
Loại thông tin cần xác minh
Hiển thị số thứ tự loại
18 STT Index Text
thông tin cần xác minh
Loại thông tin Hiển thị loại thông tin
19 loai Text
cần xác minh cần xác minh
Hiển thị nội dung
20 Nội dung chi tiết - Text
thông tin cần xác minh
Popup Thông tin xác minh
Loại thông tin Chọn Loại thông tin
21 Loai X Dropdownlist
cần xác minh cần xác minh
Khi chọn Loại Thông tin về tiền lương của cá nhân vi phạm/Thông tin về thu
nhập của cá nhân vi phạm, popup Thông tin xác minh sẽ hiển thị các trường sau:
Cơ quan/tổ Nhập tên cơ quan/tổ
22 chức/người sử coQuan X Textbox chức/người sử dụng
dụng lao động lao động
23 Địa chỉ diaChi Textbox Nhập địa chỉ
Mức thu soTien.gia
24 Textbox Nhập mức thu nhập
nhập/tháng Tri
Nhập đơn vị
soTien.don
25 Đơn vị Textbox Giá trị mặc định là
Vi
“Đồng”
Khi chọn Loại Thông tin về tài khoản của cá nhân/tổ chức vi phạm, popup Thông
tin xác minh sẽ hiển thị các trường sau:
STK của tổ chức Nhập số tài khoản của
26 stk X Textbox
tín dụng tổ chức tín dụng
Tổ chức tín Nhập tên tổ chức tín
27 toChuc X Textbox
dụng dụng
Địa chỉ tổ chức Nhập địa chỉ tổ chức
28 diaChi Textbox
tín dụng tín dụng
Khi chọn Loại Thông tin về tài sản của cá nhân/tổ chức vi phạm, popup Thông
tin xác minh sẽ hiển thị các trường sau:
Tên gọi/Mô tả Nhập tên gọi, mô tả
29 ten X Textbox
tài sản của tài sản
30 Đơn vị tính donViTinh X Textbox Nhập đơn vị tính
Nhập số lượng của tài
31 Số lượng soLuong X Textbox
sản
Tình trạng đặc Nhập tình trạng, đặc
32 tinhTrang Textbox
điểm điểm của tài sản
33 Ghi chú ghiChu Textbox Nhập ghi chú
Khi chọn Loại Thông tin về tiền của cá nhân/tổ chức vi phạm do bên thứ ba đang
giữ, popup Thông tin xác minh sẽ hiển thị các trường sau:
34 Loại tiền loaiTien X Textbox Nhập tên loại tiền
soTien.gia Textbox
35 Số tiền X Nhập số tiền
Tri
soTien.don Textbox
36 Đơn vị X Nhập đơn vị
Vi
Textbox Hiển thị số tiền bằng
37 Số tiền bằng chữ -
chữ
38 Cá nhân tổ chức doiTuongG X Textbox Nhập tên cá nhân tổ
d.12.2.3.1. Thêm mới Biên bản xác minh thông tin về tiền, tài sản của cá nhân/tổ chức
bị cưỡng chế
d.12.2.3.1.1. API
Mô tả: Gọi API để tạo mới Biên bản xác minh thông tin về tiền, tài sản của cá nhân/tổ
chức bị cưỡng chế
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
- Dữ liệu nội dung Biên bản xác minh thông tin về tiền, tài sản của cá nhân/tổ chức bị
cưỡng chế:
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Json Căn cứ của BB09
"diaChi": "Hà Nội",
"chucVu": null,
"coQuan": null
}
]
yKienBenXac
5 String Ý kiến bên xác minh
Minh
yKienBenViP
6 String X Ý kiến bên vi phạm
ham
lyDoKhongK
7 String Lý do người vi phạm không ký biên bản
y
Số tờ, số bản và thời gian lập xong biên
bản
"lapXong": {
8 lapXong Json X "thoiGian": "2023-03-
30T07:51:21.000+00:00",
"soTo": 2,
"soBan": 2
}
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb09",
"maVuViec": "G01.897.815.308-981-23-000018",
"maBieuMauCha": "118-2022-nd-cp-qd02",
"maCha": "G01.308.000.000-981-23-000190",
"diaDiemLap": "Hà nội",
"thoiGianLap": "2023-03-23T04:19:15.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd02",
"so": "G01.308.000.000-981-23-000190",
"ngay": "2023-03-23T04:19:15.000+00:00",
"maNhapTay": "2000"
}
]
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"ma": "Khoapd"
},
"doiTuongXacMinh": [
{
"ten": "Nguyễn Minh Tuấn",
"loai": "CA_NHAN",
"ngheNghiep": "00021",
"diaChi": "Hà Nội"
}
],
"thongTinXacMinh": [
{
"loai": "TIEN_LUONG",
"noiDung": {
"coQuan": "ETC",
"soTien": {
"donVi": "Đồng",
"giaTri": 20000000
},
"diaChi": "63 Lê Văn Lương"
}
}
],
"lapXong": {
"thoiGian": "2023-03-30T07:51:21.143Z",
"soTo": "2",
"soBan": "2"
},
"lyDoKhongKy": "Không chấp nhận các điều trong biên bản",
"yKienBenViPham": "Tôi đồng ý",
"yKienBenXacMinh": "Không ý kiến gì"
}
}
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham
9 tangVat List khảo bảng dữ liệu đầu vào tang vật dưới
đây
Danh sách các hành vi vi phạm của
10 hanhViViPham List BBQD, tham khảo bảng dữ liệu đầu vào
Hành vi vi phạm dưới đây
Danh sách nội dung in hành vi vi phạm
11 noiDungChiTiet List của BBQD, tham khảo bảng dữ liệu đầu
vào nội dung chi tiết dưới đây
Nội dung chi tiết của Biên bản xác minh
12 noiDung Object thông tin về tiền, tài sản của cá nhân/tổ
chức bị cưỡng chế
13 canBoTao Object Thông tin cán bộ tạo BBQD
14 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"ma": "G01.308.000.000-981-23-000049",
"maCha": "G01.308.000.000-981-23-000190",
"maBieuMauCha": "118-2022-nd-cp-qd02",
"maNhapTay": null,
"maVuViec": "G01.897.815.308-981-23-000018",
"maBieuMau": "118-2022-nd-cp-bb09",
"thoiGianLap": "2023-03-23T04:19:15.000+00:00",
"ngayTao": "2023-03-30T07:51:42.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"diaDiemLap": "Hà nội",
"tuNgay": null,
"denNgay": null,
"thoiGianHoanThanh": null,
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd02",
"so": "G01.308.000.000-981-23-000190",
"maNhapTay": "2000",
"ngay": "2023-03-23T04:19:15.000+00:00",
"tenDonVi": null
}
]
},
"nguoiCoThamQuyen": {
"ma": "Khoapd",
"ten": "Phạm Đăng Khoa",
"maCapBac": "3.2",
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"maChucVu": "034",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"doiTuongXacMinh": [
{
"loai": "CA_NHAN",
"ten": "Nguyễn Minh Tuấn",
"ngheNghiep": "00021",
"diaChi": "Hà Nội",
"chucVu": null,
"coQuan": null
}
],
"thongTinXacMinh": [
{
"loai": "TIEN_LUONG",
"noiDung": {
"coQuan": "ETC",
"diaChi": "63 Lê Văn Lương",
"soTien": {
"giaTri": 20000000,
"donVi": "Đồng"
}
}
}
],
"lyDoKhongKy": "Không chấp nhận các điều trong biên bản",
"lapXong": {
"thoiGian": "2023-03-30T07:51:21.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienBenXacMinh": "Không ý kiến gì",
"yKienBenViPham": "Tôi đồng ý",
"donViThucHienBpkp": null
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":\"nguyenxuan.phuc1@etc.vn\",\"placeCodeOto\":null,\"place
CodeMoto\":null}",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000018",
"ten": "11J2-2222 Nguyễn Đức Cảnh",
"nguon": null,
"doiTuongViPham": {
"ten": "Nguyễn Đức Cảnh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"gioiTinh": 1,
"quocTich": "VN",
"ngheNghiep": "00019"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "11J2-2222",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQD
BB09ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQD
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật của
6 TangVatService.java
BBQD nếu có
BbQdHinhThucXuPhatSe Lớp làm nhiệm vụ tạo và quản lý các hình thức
7
rvice.java xử phạt cho BBQD nếu có
BbQdNoiDungChiTietSe Lớp làm nhiệm vụ tạo và quản lý các nội dung in
8
vice.java cho BBQD nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint tạo mới BBQD và điều
1 create
java hướng đến service tạo BBQD
2 create BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
BB09ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQD
ava
BbQdHinhThucX
6 bulkCreate Tạo các hình thức xử phạt cho BBQD
uPhatService.java
BbQdNoiDungCh Tạo hoặc cập nhật các nội dung in cho
7 upsert
iTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
P_MA_DON_VI_C VARCHAR2(25
12 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để
lấy thông tin bản ghi vừa được thêm và trả về.
d.12.2.3.1.4. Xử lý ngoại lệ
Các tham số gửi lên và trả về tương tự tạo mới Biên bản xác minh thông tin về tiền, tài
sản của cá nhân/tổ chức bị cưỡng chế, ngoài ra còn có:
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác
1 BBQDController.java
với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức
3 BBQDServiceImpl.java
của BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ
4 BBQDRepository.java
cập nhật liên quan đến BBQD
BB09ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQD
.java
Lớp làm nhiệm vụ quản lý tang vật của
6 TangVatService.java
BBQD nếu có
Lớp làm nhiệm vụ quản lý các hình thức
7 BbQdHinhThucXuPhatService.java
xử phạt cho BBQD nếu có
Lớp làm nhiệm vụ quản lý các nội dung in
8 BbQdNoiDungChiTietSevice.java
cho BBQD nếu có
- Danh sách các phương thức:
ST Tên
Tên lớp Mô tả
T method
Cung cấp endpoint cập nhật BBQD và
1 update BBQDController.java điều hướng đến service cập nhật
BBQD
2 update BBQDServiceImpl.java Thực hiện các thao tác validate, chuẩn
lý đến ngày
Thời gian
7 P_THOI_GIAN_HOAN_THANH DATE N hoàn thành xử
lý
VARCHAR2(2 Trạng thái
8 P_TRANG_THAI N
CHAR) BBQD
Nội dung cụ
VARCHAR2(4000
9 P_NOI_DUNG N thể của
CHAR)
BBQD
VARCHAR2(4000 Thông tin cán
10 P_CAN_BO_SUA N
CHAR) bộ sửa BBQD
VARCHAR2(255 Tài khoản sửa
11 P_NGUOI_SUA N
CHAR) BBQD
Trả về dòng
dữ liệu
12 V_CURSOR CURSOR X
BBQD vừa
tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.12.2.3.2.4. Xử lý ngoại lệ
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"maChucVu": "034",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"doiTuongXacMinh": [
{
"loai": "CA_NHAN",
"ten": "Nguyễn Minh Tuấn",
"ngheNghiep": "00021",
"diaChi": "Hà Nội",
"chucVu": null,
"coQuan": null
}
],
"thongTinXacMinh": [
{
"loai": "TIEN_LUONG",
"noiDung": {
"coQuan": "ETC",
"diaChi": "63 Lê Văn Lương",
"soTien": {
"giaTri": 20000000,
"donVi": "Đồng"
}
}
}
],
"lyDoKhongKy": "Không chấp nhận các điều trong biên bản",
"lapXong": {
"thoiGian": "2023-03-30T07:51:21.000+00:00",
"soTo": 2,
"soBan": 2
},
"yKienBenXacMinh": "Không ý kiến gì",
"yKienBenViPham": "Tôi đồng ý",
"donViThucHienBpkp": null
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":\"nguyenxuan.phuc1@etc.vn\",\"placeCodeOto\":null,\"place
CodeMoto\":null}",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000018",
"ten": "11J2-2222 Nguyễn Đức Cảnh",
"nguon": null,
"doiTuongViPham": {
"ten": "Nguyễn Đức Cảnh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"gioiTinh": 1,
"quocTich": "VN",
"ngheNghiep": "00019"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "11J2-2222",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
Procedure:
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
VARCHAR2(50
2 P_MA_BIEU_MAU N Mã biểu mẫu BBQD
CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.12.2.3.3.4. Xử lý ngoại lệ
d.12.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.13. Biên bản 10 – Biên bản cưỡng chế thu tiền, tài sản để thi hành quyết định xử
phạt vi phạm hành chính/hoàn trả kinh phí
d.13.1. Mục đích
- Quản lý Biên bản 10 – Biên bản cưỡng chế thu tiền, tài sản để thi hành quyết định xử
phạt vi phạm hành chính/hoàn trả kinh phí.
- Chức năng quản lý Biên bản 10 – Biên bản cưỡng chế thu tiền, tài sản để thi hành
quyết định xử phạt vi phạm hành chính/hoàn trả kinh phí:
o Thêm mới Biên bản 10
o Sửa Biên bản 10
o Hiển thị chi tiết Biên bản 10
o Xóa Biên bản 10
Tại màn chi tiết QD10, Click vào nút Button Tạo BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
STT Label Tên thành Bắt Định dạng Miêu tả
phần / buộ
c
Control nhậ
p
Thông tin chung
Mã tự sinh, hoặc nhập
tay.
1 Số biên bản ma Textbox
Không được sửa trong
màn hình sửa BB10
Nhập địa điểm lập
2 Tại diaDiemLap X Textbox
biên bản
Nhập thời gian lập
3 Ngày tạo thoiGianLap X TextBox
biên bản
Căn cứ
Quyết định
cưỡng chế thu
tiền, tài sản để
thi hành quyết Hiển thị thông tin Số
4 canCu.bbqd Text
định xử phạt vi và ngày tạo QĐ10
phạm hành
chính/hoàn trả
kinh phí
Thông tin người lập biên bản
Xem tại mục Màn hình dùng chung/Chi tiết các màn hình/Người có thẩm quyền
lập BB
Đối tượng vi phạm
Xem chi tiết ở Màn hình sử dụng chung/Chi tiết các màn hình/Đối tượng vi phạm
Cơ quan phối hợp
Nhập tên cơ quan phối
5 Họ và tên ten X Textbox
hợp
Nhập chức vụ của cơ
6 Chức vụ chucVu X Textbox
quan phối hợp
Thông tin tiền, tài sản – Popup xem chi tiết thông tin tiền, tài sản
Áp dụng cho Loại
Loại thông tin
20 loai x Dropdownlist thông tin xác minh là
cần xác minh
tiền do bên thứ ba giữ
Áp dụng cho Loại
21 Loại tiền loaiTien x Textbox thông tin xác minh là
tiền do bên thứ ba giữ
Áp dụng cho Loại
22 Số tiền soTien x Textbox thông tin xác minh là
tiền do bên thứ ba giữ
Áp dụng cho Loại
soTienBang
23 Số tiền bằng chữ Text thông tin xác minh là
Chu
tiền do bên thứ ba giữ
Áp dụng cho Loại
Tên gọi/Mô tả thông tin xác minh là
24 ten x Textbox
tài sản tài sản do bên thứ ba
giữ
Áp dụng cho Loại
thông tin xác minh là
25 Đơn vị tính donViTinh x Textbox
tài sản do bên thứ ba
giữ
Áp dụng cho Loại
thông tin xác minh là
26 Số lượng soLuong x Textbox
tài sản do bên thứ ba
giữ
Áp dụng cho Loại
Tình trạng đặc thông tin xác minh là
27 tinhTrang Textbox
điểm tài sản do bên thứ ba
giữ
Áp dụng cho Loại
thông tin xác minh là
28 Ghi chú ghiChu Textbox
tài sản do bên thứ ba
giữ
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.13.2.2.2.2. Xử lý sự kiện
d.13.2.3.1. Thêm mới Biên bản cưỡng chế thu tiền, tài sản để thi hành quyết định xử
phạt vi phạm hành chính/hoàn trả kinh phí
d.13.2.3.1.1. API
Mô tả: Gọi API để tạo mới Biên bản cưỡng chế thu tiền, tài sản để thi hành quyết định xử
phạt vi phạm hành chính/hoàn trả kinh phí
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
- Dữ liệu nội dung Biên bản cưỡng chế thu tiền, tài sản để thi hành quyết định xử phạt
vi phạm hành chính/hoàn trả kinh phí:
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Json X Căn cứ của BB10
Minh
lyDoKhongK
6 String Lý do người vi phạm không ký biên bản
y
Số tờ, số bản và thời gian lập xong biên
7 lapXong Json X
bản
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb10",
"maVuViec": "G01.897.815.308-981-23-000018",
"maCha": "G01.308.000.000-981-23-000005",
"maBieuMauCha": "118-2022-nd-cp-qd10",
"diaDiemLap": "Hà Nội",
"thoiGianLap": "2023-03-23T04:19:15.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd10",
"so": "G01.308.000.000-981-23-000005",
"ngay": "2023-03-23T04:19:15.000Z",
"maNhapTay": null,
"tenDonVi": "Cục Cảnh Sát Giao Thông"
}
],
},
"coQuanPhoiHop": {
"loaiDoiTuong": "DAI_DIEN_CQ",
"ten": "Phạm Khoa",
"thongTin": {
"chucVu": "Nhân viên",
"coQuan": "ETC"
}
},
"doiTuongChungKien": [],
"lapXong": {
"thoiGian": "2023-03-30T08:28:16.715Z",
"soTo": "2",
"soBan": "2"
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"ma": "Khoapd"
},
"thongTinXacMinh": [
{
"loai": "TIEN_BEN_THU_3",
"noiDung": {
"loaiTien": "Tiền mặt",
"soTien": {
"giaTri": 1000000,
"donVi": "Đồng"
},
"doiTuongGiu": "ETC",
"diaChi": "63 Lê Văn Lương"
}
}
]
}
a
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham
9 tangVat List khảo bảng dữ liệu đầu vào tang vật dưới
đây
Danh sách các hành vi vi phạm của
10 hanhViViPham List BBQD, tham khảo bảng dữ liệu đầu vào
Hành vi vi phạm dưới đây
Danh sách nội dung in hành vi vi phạm
noiDungChiTi
11 List của BBQD, tham khảo bảng dữ liệu đầu
et
vào nội dung chi tiết dưới đây
Nội dung chi tiết của Biên bản cưỡng chế
12 noiDung Object thu tiền, tài sản để thi hành quyết định xử
phạt vi phạm hành chính/hoàn trả kinh phí
13 canBoTao Object Thông tin cán bộ tạo BBQD
14 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"ma": "G01.308.000.000-981-23-000004",
"maCha": "G01.308.000.000-981-23-000005",
"maBieuMauCha": "118-2022-nd-cp-qd10",
"maNhapTay": null,
"maVuViec": "G01.897.815.308-981-23-000018",
"maBieuMau": "118-2022-nd-cp-bb10",
"thoiGianLap": "2023-03-23T04:19:15.000+00:00",
"ngayTao": "2023-03-30T08:27:52.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"diaDiemLap": "Hà Nội",
"tuNgay": null,
"denNgay": null,
"thoiGianHoanThanh": null,
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd10",
"so": "G01.308.000.000-981-23-000005",
"maNhapTay": null,
"ngay": "2023-03-23T04:19:15.000+00:00",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
}
]
},
"nguoiCoThamQuyen": {
"ma": "Khoapd",
"ten": "Phạm Đăng Khoa",
"maCapBac": "3.2",
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"maChucVu": "034",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"coQuanPhoiHop": {
"loaiDoiTuong": "DAI_DIEN_CQ",
"ten": "Phạm Khoa",
"thongTin": {
"chucVu": "Nhân viên",
"coQuan": "ETC"
}
},
"doiTuongChungKien": [],
"thongTinXacMinh": [
{
"loai": "TIEN_BEN_THU_3",
"noiDung": {
"loaiTien": "Tiền mặt",
"soTien": {
"giaTri": 1000000,
"donVi": "Đồng"
},
"doiTuongGiu": "ETC",
"diaChi": "63 Lê Văn Lương"
}
}
],
"lyDoKhongKy": null,
"lapXong": {
"thoiGian": "2023-03-30T08:28:16.000+00:00",
"soTo": 2,
"soBan": 2
}
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":\"nguyenxuan.phuc1@etc.vn\",\"placeCodeOto\":null,\"placeCodeMo
to\":null}",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000018",
"ten": "11J2-2222 Nguyễn Đức Cảnh",
"nguon": null,
"doiTuongViPham": {
"ten": "Nguyễn Đức Cảnh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"gioiTinh": 1,
"quocTich": "VN",
"ngheNghiep": "00019"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "11J2-2222",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQD
BB10ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQD
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật của
6 TangVatService.java
BBQD nếu có
BbQdHinhThucXuPhatSe Lớp làm nhiệm vụ tạo và quản lý các hình thức
7
rvice.java xử phạt cho BBQD nếu có
BbQdNoiDungChiTietSe Lớp làm nhiệm vụ tạo và quản lý các nội dung in
8
vice.java cho BBQD nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint tạo mới BBQD và điều
1 create
java hướng đến service tạo BBQD
BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 create
l.java lại dữ liệu và tạo mới BBQD
Gọi hàm
BBQDRepository
3 create PKG_BIEN_BAN_QUYET_DINH.CREATE
.java
_BB_QD để tạo BBQD trong database
BB10ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
5 bulkCreate TangVatService.j Tạo các tang vật thuộc BBQD
ava
BbQdHinhThucX
6 bulkCreate Tạo các hình thức xử phạt cho BBQD
uPhatService.java
BbQdNoiDungCh Tạo hoặc cập nhật các nội dung in cho
7 upsert
iTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
11 P_TRANG_THAI VARCHAR2(2 N Trạng thái BBQD
CHAR)
P_MA_DON_VI_C VARCHAR2(25
12 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.13.2.3.1.4. Xử lý ngoại lệ
Các tham số gửi lên và trả về tương tự tạo mới Biên bản cưỡng chế thu tiền, tài sản để thi
hành quyết định xử phạt vi phạm hành chính/hoàn trả kinh phí, ngoài ra còn có:
STT Tham số Kiểu dữ liệu Mô tả
1 maBieuMau String Mã biểu mẫu
2 maBbQd String Mã BBQD
d.13.2.3.2.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
BB10ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQD
.java
updateTang TangVatService.j Cập nhật thông tin các tang vật thuộc
5
Vat ava BBQD
BbQdHinhThucX
6 bulkUpdate Cập nhật hình thức xử phạt cho BBQD
uPhatService.java
BbQdNoiDungCh Tạo hoặc cập nhật các nội dung in cho
7 upsert
iTietSevice.java BBQD
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được
sử dụng để cập nhật BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
P_THOI_GIAN_LA
3 DATE N Thời gian lập BBQD
P
VARCHAR2(50
4 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
7 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
8 P_TRANG_THAI N Trạng thái BBQD
CHAR)
VARCHAR2(40
9 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(40 Thông tin cán bộ sửa
10 P_CAN_BO_SUA N
00 CHAR) BBQD
VARCHAR2(25
11 P_NGUOI_SUA N Tài khoản sửa BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.13.2.3.2.4. Xử lý ngoại lệ
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd10",
"so": "G01.308.000.000-981-23-000005",
"maNhapTay": null,
"ngay": "2023-03-23T04:19:15.000+00:00",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
}
]
},
"nguoiCoThamQuyen": {
"ma": "Khoapd",
"ten": "Phạm Đăng Khoa",
"maCapBac": "3.2",
"capBac": "Thượng úy",
"chucVu": "Trưởng công an thị trấn",
"maChucVu": "034",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"coQuanPhoiHop": {
"loaiDoiTuong": "DAI_DIEN_CQ",
"ten": "Phạm Khoa",
"thongTin": {
"chucVu": "Nhân viên",
"coQuan": "ETC"
}
},
"doiTuongChungKien": [],
"thongTinXacMinh": [
{
"loai": "TIEN_BEN_THU_3",
"noiDung": {
"loaiTien": "Tiền mặt",
"soTien": {
"giaTri": 1000000,
"donVi": "Đồng"
},
"doiTuongGiu": "ETC",
"diaChi": "63 Lê Văn Lương"
}
}
],
"lyDoKhongKy": null,
"lapXong": {
"thoiGian": "2023-03-30T08:28:16.000+00:00",
"soTo": 2,
"soBan": 2
}
},
"nguoiTao": "phucnx",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "{\"email\":\"nguyenxuan.phuc1@etc.vn\",\"placeCodeOto\":null,\"placeCodeMo
to\":null}",
"userName": "phucnx",
"ten": "Nguyễn Xuân Phúc",
"capBac": "3.7",
"chucVu": "005",
"donVi": "G01.308.000.000",
"diaDanh": "Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.897.815.308-981-23-000018",
"ten": "11J2-2222 Nguyễn Đức Cảnh",
"nguon": null,
"doiTuongViPham": {
"ten": "Nguyễn Đức Cảnh",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"gioiTinh": 1,
"quocTich": "VN",
"ngheNghiep": "00019"
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "11J2-2222",
"bienSo2": null,
"maPhuongTien": "21",
"soDangKy": null,
"soDangKy2": null,
"soKhung": null,
"soMay": null,
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQD
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ lấy
4 BBQDRepository.java
thông tin chi tiết BBQD
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController. Cung cấp endpoint cập nhật BBQD và
1 get
java điều hướng đến service cập nhật BBQD
BBQDServiceImp Thực hiện các thao tác chuẩn hóa lại dữ
2 get
l.java liệu BBQD trước khi trả ra
BBQDRepository Gọi hàm GET_BB_QD_DETAILS để lấy
3 get
.java thông tin chi tiết BBQD trong database
Procedure:
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(5
1 P_MA N Mã BBQD
0 CHAR)
P_MA_BIEU_MA VARCHAR2(5
2 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.13.2.3.3.4. Xử lý ngoại lệ
d.14. Biên bản 11 – Biên bản cưỡng chế buộc thực hiện biện pháp khắc phục hậu
quả
d.14.1. Mục đích
- Quản lý biên bản 11 – Biên bản cưỡng chế buộc thực hiện biện pháp khắc phục
hậu quả.
- Chức năng quản lý biên bản 11 – Biên bản cưỡng chế buộc thực hiện biện pháp
khắc phục hậu quả:
o Thêm mới biên bản 11
o Sửa biên bản 11
o Hiển thị chi tiết biên bản 11
o Xóa biên bản 01
Tại màn chi tiết QD11, Click vào nút Button Tạo BB/QĐ
Danh sách các control hoặc các thành phần giao diện, thể hiện bằng bảng dưới đây:
- Giải thích các item
BCA-C08_XLVP_2023_DD Internal use Trang 595
Tài liệu thiết kế hệ thống V1.0
Nhập số bản
55 Số bản soBan X Textbox
Giá trị mặc định là 2
d.14.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập.
d.14.2.2.2.2. Xử lý sự kiện
2 BtnClose_Click Click nút Đóng ở cuối màn hình → Màn hình quay
lại danh sách biên bản.
3 BtnEdit_Click Click nút Chỉnh sửa ở cuối màn hình → Đi đến màn
hình Chỉnh sửa biên bản
4 BtnLichSu_Click Click nút Xem lịch sử ở cuối màn hình → Đi đến
màn hình xem Lịch sử biên bản
5 BtnPrint_Click Click nút In ở cuối màn hình → Màn hình hiển thị
Pop-up xem trước bản in của Biên bản
6 BtnDelete_Click Click nút Xóa ở cuối màn hình → Chọn Đồng ý.
Hệ thống xóa bản ghi tương ứng → Màn hình quay
lại danh sách biên bản.
d.14.2.3. Thiết kế các hàm, thủ tục
d.14.2.3.1. Thêm mới biên bản cưỡng chế buộc thực hiện biện pháp khắc phục hậu quả
d.14.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản cưỡng chế buộc thực hiện biện pháp khắc phục hậu
quả
Method URL
POST xlvp/api/v1/bb-qd
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maVuViec String X Mã vụ việc lập BBQD
2 maBieuMau String X Mã biểu mẫu BBQD
3 maCha String Mã BBQD cha
maBieuMauC
4 String Mã biểu mẫu cha
ha
5 thoiGianLap Date X Thời gian lập BBQD
- Dữ liệu nội dung biên bản cưỡng chế buộc thực hiện biện pháp khắc phục hậu quả:
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 canCu Object X Căn cứ của biên bản
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb11",
"maVuViec": "G01.308.000.000-981-23-000606",
"maBieuMauCha": "118-2022-nd-cp-qd11",
"maCha": "G01.308.000.000-981-23-000009",
"diaDiemLap": "Lê Văn Lương",
"thoiGianLap": "2023-03-30T03:21:13.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd11",
"so": "G01.308.000.000-981-23-000009",
"ngay": "2023-03-30T03:21:13.000Z",
"maNhapTay": null
}
],
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"ma": "anhbc"
},
"lapXong": {
"thoiGian": "2023-03-30T04:17:14.765Z",
"soTo": "2",
"soBan": "2"
},
"lyDoKhongKy": "Tôi đồng ý",
"doiTuongChungKien": [
{
"ten": "Nguyễn Văn B",
"loaiDoiTuong": "CA_NHAN",
"thongTin": {
"ngheNghiep": "00020",
"diaChi": "Lê Văn Lương"
}
}
],
"donViPhoiHop": {
"coQuan": "Honda Tây Hồ",
"ten": "Nguyễn Văn A",
"chucVu": "Giám Đốc"
},
"ketQuaBPKPHQS": [
{
"bienPhapKhacPhucHauQua": {
"bienPhap": "Sửa chữa xe",
"hauQua": "Hỏng xe",
"thoiHan": {
"giaTri": 7,
"loai": "NGAY"
}
},
"ketQua": "Đã sửa xong"
}
]
}
}
Các giá trị trả về là:
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham khảo
9 tangVat List
bảng dữ liệu đầu vào tang vật dưới đây
Danh sách các hành vi vi phạm của BBQD,
10 hanhViViPham List tham khảo bảng dữ liệu đầu vào Hành vi vi
phạm dưới đây
Danh sách nội dung in hành vi vi phạm của
11 noiDungChiTiet List BBQD, tham khảo bảng dữ liệu đầu vào nội
dung chi tiết dưới đây
Nội dung chi tiết của biên bản cưỡng chế buộc
12 noiDung Object
thực hiện biện pháp khắc phục hậu quả
13 canBoTao Object Thông tin cán bộ tạo BBQD
14 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"ma": "G01.308.000.000-981-23-000004",
"maCha": "G01.308.000.000-981-23-000009",
"maBieuMauCha": "118-2022-nd-cp-qd11",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000606",
"maBieuMau": "118-2022-nd-cp-bb11",
"thoiGianLap": "2023-03-30T03:21:13.000+00:00",
"ngayTao": "2023-03-30T04:19:42.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000606",
"ten": "BB20",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "123123123123",
"ten": "NGUYỄN HẢI HOÀNG",
"ngayCap": "2023-03-17T03:21:43.890Z",
"noiCap": "Cục cảnh sát quản lý hành chính về trật tự xã h
ội",
"diaChi": {
"maDiaDanh": "09997",
"chiTiet": "THÔN VĨNH LỘC 3"
},
"noiOHienTai": "Ngõ 68, Triều Khúc, Tân Triều, Phường Than
h Xuân Bắc, Quận Thanh Xuân, Thành phố Hà Nội",
"ngaySinh": "1997-07-12T17:00:00.000Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00008",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "32F1.54483",
"bienSo2": "312546546",
"maPhuongTien": "47",
"soDangKy": "2323232",
"soDangKy2": null,
"soKhung": "23232WACV2",
"soMay": "2323232",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
IV.14.2.3.1.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác
1 BBQDController.java
với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQĐ
BB11ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật
6 TangVatService.java
của BBQĐ nếu có
BBQDHinhThucXuPhatService. Lớp làm nhiệm vụ tạo và quản lý các hình
7
java thức xử phạt cho BBQĐ nếu có
BBQDNoiDungChiTietSevice.ja Lớp làm nhiệm vụ tạo và quản lý các nội
8
va dung in cho BBQĐ nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
1 BBQDController. Cung cấp endpoint tạo mới BBQĐ và điều
create
java hướng đến service tạo BBQĐ
BBQDServiceImp Thực hiện các thao tác validate, chuẩn hóa
2 create
l.java lại dữ liệu và tạo mới BBQĐ
3 create BBQDRepository Gọi hàm
PKG_BIEN_BAN_QUYET_DINH.CREATE
.java
_BB_QD để tạo BBQĐ trong database
BB01ValidatorSe
Kiểm tra tính hợp lệ dữ liệu gửi lên khi
4 isValid rvice
tạo BBQĐ
.java
TangVatService.j
5 bulkCreate Tạo các tang vật thuộc BBQĐ
ava
BBQDHinhThuc
6 bulkCreate XuPhatService.ja Tạo các hình thức xử phạt cho BBQĐ
va
BBQDNoiDungC Tạo hoặc cập nhật các nội dung in cho
7 upsert
hiTietSevice.java BBQĐ
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2
1 P_MA N Mã BBQD
(50 CHAR)
P_MA_NHAP_TA VARCHAR2
2 N Mã nhập tay khi tạo BBQD
Y (50 CHAR)
VARCHAR2
3 P_MA_VU_VIEC N Mã vụ việc tạo BBQD
(50 CHAR)
VARCHAR2
4 P_MA_CHA N Mã BBQD cha nếu có
(50 CHAR)
P_MA_BIEU_MA VARCHAR2
5 N Mã biểu mẫu cha nếu có
U_CHA (50 CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
7 P_DIA_DIEM_LAP VARCHAR2 N Địa điểm lập BBQD
(500 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2
11 P_TRANG_THAI N Trạng thái BBQD
(2 CHAR)
P_MA_DON_VI_C VARCHAR2
12 N Mã đơn vị CSGT
SGT (255 CHAR)
P_DIA_CHI_DON_ NUMBER(12
13 N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID ,0)
VARCHAR2
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
(4000 CHAR)
VARCHAR2
15 P_NGUON N Nguồn tạo BBQD
(15 CHAR)
VARCHAR2
16 P_CAN_BO_TAO N Thông tin cán bộ tạo BBQD
(4000 CHAR)
VARCHAR2
17 P_NGUOI_TAO N Tài khoản tạo BBQD
(255 CHAR)
Trả về dòng dữ liệu BBQD vừa
18 V_CURSOR CURSOR X
tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.14.2.3.1.4. Xử lý ngoại lệ
d.14.2.3.2.1. API
Mô tả: Gọi API để chỉnh sửa biên bản cưỡng chế buộc thực hiện biện pháp khắc phục hậu
quả
Method URL
PUT xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
Các tham số gửi lên và trả về tương tự tạo mới biên bản cưỡng chế buộc thực hiện biện
pháp khắc phục hậu quả, ngoài ra còn có:
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQĐ
BB11ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ quản lý tang vật của BBQĐ
6 TangVatService.java
nếu có
BBQDHinhThucXuPhatSe Lớp làm nhiệm vụ quản lý các hình thức xử
7
rvice.java phạt cho BBQĐ nếu có
BBQDNoiDungChiTietSev Lớp làm nhiệm vụ quản lý các nội dung in cho
8
ice.java BBQĐ nếu có
- Danh sách các phương thức:
STT Tên method Tên lớp Mô tả
BBQDController.jav Cung cấp endpoint cập nhật BBQĐ và
1 update
a điều hướng đến service cập nhật BBQĐ
BBQDServiceImpl.j Thực hiện các thao tác validate, chuẩn
2 update
ava hóa lại dữ liệu và cập nhật BBQĐ
Gọi hàm
BBQDRepository.ja PKG_BIEN_BAN_QUYET_DINH.UPDA
3 update
va TE_BB_QD để sửa BBQĐ trong
database
4 isValid BB01ValidatorServi Kiểm tra tính hợp lệ dữ liệu gửi lên khi
ce tạo BBQĐ
.java
updateTang Cập nhật thông tin các tang vật thuộc
5 TangVatService.java
Vat BBQĐ
BBQDHinhThucXu
6 bulkUpdate Cập nhật hình thức xử phạt cho BBQĐ
PhatService.java
BBQDNoiDungChi Tạo hoặc cập nhật các nội dung in cho
7 upsert
TietSevice.java BBQĐ
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.UPDATE_BB_QD là một thủ tục được
sử dụng để cập nhật BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Hàm UPDATE_BB_QD được sử dụng để cập nhật thông tin của một BBQD đã có trong
cơ sở dữ liệu.
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50
2 N Mã nhập tay khi tạo BBQD
Y CHAR)
P_THOI_GIAN_LA
3 DATE N Thời gian lập BBQD
P
VARCHAR2(50
4 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
5 P_TU_NGAY DATE N Thời gian xử lý từ ngày
6 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
7 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
8 P_TRANG_THAI N Trạng thái BBQD
CHAR)
9 P_NOI_DUNG VARCHAR2(40 N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(40 Thông tin cán bộ sửa
10 P_CAN_BO_SUA N
00 CHAR) BBQD
VARCHAR2(25
11 P_NGUOI_SUA N Tài khoản sửa BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.14.2.3.2.4. Xử lý ngoại lệ
Mô tả: Gọi API để lấy thông tin chi tiết biên bản cưỡng chế buộc thực hiện biện pháp
khắc phục hậu quả
Method URL
GET xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
{
"ma": "G01.308.000.000-981-23-000004",
"maCha": "G01.308.000.000-981-23-000009",
"maBieuMauCha": "118-2022-nd-cp-qd11",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000606",
"maBieuMau": "118-2022-nd-cp-bb11",
"thoiGianLap": "2023-03-30T03:21:13.000+00:00",
"ngayTao": "2023-03-30T04:19:42.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"diaDiemLap": "Lê Văn Lương",
"tuNgay": null,
"denNgay": null,
"thoiGianHoanThanh": null,
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd11",
"so": "G01.308.000.000-981-23-000009",
"maNhapTay": null,
"ngay": "2023-03-30T03:21:13.000+00:00",
"tenDonVi": null
}
]
},
"nguoiCoThamQuyen": {
"ma": "anhbc",
"ten": "Bùi Anh",
"maCapBac": "3.7",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"maChucVu": "003",
"donVi": "G01.308.000.000",
"tenDonVi": "Cục Cảnh Sát Giao Thông"
},
"doiTuongChungKien": [
{
"loaiDoiTuong": "CA_NHAN",
"ten": "Nguyễn Văn B",
"thongTin": {
"ngheNghiep": "00020",
"diaChi": "Lê Văn Lương"
}
}
],
"ketQuaBPKPHQS": [
{
"bienPhapKhacPhucHauQua": {
"bienPhap": "Sửa chữa xe",
"hauQua": "Hỏng xe",
"thoiHan": {
"giaTri": 7.0,
"loai": "NGAY"
}
},
"ketQua": "Đã sửa xong"
}
],
"lyDoKhongKy": "Tôi đồng ý",
"lapXong": {
"thoiGian": "2023-03-30T04:17:14.000+00:00",
"soTo": 2,
"soBan": 2
},
"donViPhoiHop": {
"ten": "Nguyễn Văn A",
"chucVu": "Giám Đốc",
"coQuan": "Honda Tây Hồ"
}
},
"nguoiTao": "anhbc",
"nguoiSua": null,
"hanhViViPham": [],
"tangVat": [],
"hinhThucXuPhat": [],
"thongBao": null,
"noiDungChiTiet": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000606",
"ten": "BB20",
"nguon": null,
"doiTuongViPham": {
"soDinhDanh": "123123123123",
"ten": "NGUYỄN HẢI HOÀNG",
"ngayCap": "2023-03-17T03:21:43.890Z",
"noiCap": "Cục cảnh sát quản lý hành chính về trật tự xã h
ội",
"diaChi": {
"maDiaDanh": "09997",
"chiTiet": "THÔN VĨNH LỘC 3"
},
"noiOHienTai": "Ngõ 68, Triều Khúc, Tân Triều, Phường Than
h Xuân Bắc, Quận Thanh Xuân, Thành phố Hà Nội",
"ngaySinh": "1997-07-12T17:00:00.000Z",
"loaiNgaySinh": "DATE",
"gioiTinh": 1.0,
"quocTich": "VN",
"ngheNghiep": "00008",
"email": "abc@gmail.com",
"noiSinh": "Hà Nội",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": {
"bienSo": "32F1.54483",
"bienSo2": "312546546",
"maPhuongTien": "47",
"soDangKy": "2323232",
"soDangKy2": null,
"soKhung": "23232WACV2",
"soMay": "2323232",
"mauBien": "0",
"nhanHieu": null,
"mauSon": null,
"trongTai": null,
"trongTai2": null,
"congSuat": null,
"congSuat2": null,
"soLoai": null
},
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.14.2.3.3.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ lấy
4 BBQDRepository.java
thông tin chi tiết BBQĐ
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH. GET_BB_QD_DETAILS là một thủ tục
được sử dụng để lấy thông tin chi tiết BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(5
1 P_MA N Mã BBQD
0 CHAR)
P_MA_BIEU_MA VARCHAR2(5
2 N Mã biểu mẫu BBQD
U 0 CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.14.2.3.3.4. Xử lý ngoại lệ
d.14.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính
d.15. Biên bản 12 – Biên bản cưỡng chế kê biên tài sản có giá trị tương ứng với số
tiền phạt/phải hoàn trả
d.15.1. Mục đích
- Quản lý biên bản 12 – Biên bản cưỡng chế kê biên tài sản có giá trị tương ứng
với số tiền phạt/phải hoàn trả.
- Chức năng quản lý biên bản 12 – Biên bản cưỡng chế kê biên tài sản có giá trị
tương ứng với số tiền phạt/phải hoàn trả:
o Thêm mới biên bản 12
o Sửa biên bản 12
o Hiển thị chi tiết biên bản 12
o Xóa biên bản 12
d.15.2.2.1. Thêm mới/Sửa Biên bản 12 - Biên bản cưỡng chế kê biên tài sản có giá trị
tương ứng với số tiền phạt/phải hoàn trả
d.15.2.2.1.1. Giao diện
Hình 112: Popup người chứng kiến/Đối tượng đại diện chính quyền
Bắt
Tên thành
STT Label buộc Định dạng Mô tả
phần / Control
nhập
Thông tin chung
Nhập số biên bản
Nếu không có số
1 Số biên bản ma/maNhapTay Textbox nhập tay BB thì hiển
thị số tự sinh
Không được sửa
Chọn thời gian lập
2 Ngày tạo thoiGianLap X DatetimePicker biên bản
Mặc định ngày, giờ
d.15.2.2.1.4. Xử lý sự kiện
2 BtnSave_Click Hệ thống check ràng buộc của các trường dữ liệu nếu
thỏa mãn → lưu biên bản theo thông tin vừa nhập
d.15.2.3.1. Thêm mới biên bản cưỡng chế kê biên tài sản có giá trị tương ứng với số
tiền phạt/phải hoàn trả
d.15.2.3.1.1. API
Mô tả: Gọi API để tạo mới biên bản cưỡng chế kê biên tài sản có giá trị tương ứng với số
tiền phạt/phải hoàn trả
Method URL
POST xlvp/api/v1/bb-qd
- Dữ liệu nội dung biên bản cưỡng chế kê biên tài sản có giá trị tương ứng với số tiền
phạt/phải hoàn trả:
Kiểu dữ Bắt
STT Tham số Mô tả
liệu buộc
1 canCu List String X Căn cứ lập BB lấy từ danh mục căn cứ
Kiểu dữ Bắt
STT Tham số Mô tả
liệu buộc
Mã tang vật ( trong danh mục tang vật,
1 ma String X
phương tiện, giấy tờ)
Mã nhóm tang vật:
- PHUONG_TIEN: Phương tiện
- GIAY_TO: Giấy tờ
2 nhomTangVat String X
- GIAY_PHEP_LAI_XE: Giấy phép
lái xe
- KHAC: Tang vật khác
Kiểu Bắt
STT Tham số Mô tả
dữ liệu buộc
1 maHVVP String X Mã hành vi vi phạm
2 maTTND String X Mã thông tư nghị định
3 boSungHVVP String Thông tin bổ sung thêm cho HVVP
4 mucTienPhat String Mức tiền phạt cho HVVP
5 thoiGianVp Date Thời gian xảy ra vi phạm
6 diaDiemVp String Địa điểm xảy ra vi phạm
Ví dụ:
Method: POST
{
"maBieuMau": "118-2022-nd-cp-bb12",
"maVuViec": "G01.308.000.000-981-23-000605",
"maBieuMauCha": "118-2022-nd-cp-qd09",
"maCha": "G01.308.000.000-981-23-000006",
"diaDiemLap": "Lê Văn Lương",
"thoiGianLap": "2023-03-30T02:24:29.000Z",
"noiDung": {
"canCu": {
"bbqd": [
{
"maBieuMau": "118-2022-nd-cp-qd09",
"so": "G01.308.000.000-981-23-000006",
"ngay": "2023-03-30T02:24:29.000Z",
"maNhapTay": null
}
]
},
"nguoiCoThamQuyen": {
"donVi": "G01.308.000.000",
"capBac": "Hạ sĩ",
"chucVu": "Cục trưởng",
"ma": "anhbc"
},
"lapXong": {
"thoiGian": "2023-03-30T08:06:03.097Z",
"soTo": "2",
"soBan": "2"
},
"lyDoKhongKy": "Tôi đồng ý",
"doiTuongChungKien": [
{
"ten": "NGUYỄN VĂN A",
"loaiDoiTuong": "CA_NHAN",
"thongTin": {
"ngheNghiep": "00021"
}
}
],
"taiSanKeBien": [
{
"ten": "Vàng",
"donViTinh": "Cây",
"soLuong": 10,
"tinhTrang": null,
"ghiChu": null
}
],
"nguoiPhoiHop": {
"coQuan": "NGUYỄN VĂN A",
"ten": "NGUYỄN VĂN A",
"chucVu": "NGUYỄN VĂN A"
}
}
}
Các giá trị trả về là:
Kiểu dữ
STT Tham số Mô tả
liệu
1 ma String Mã BBQD
2 maVuViec String Mã vụ việc lập BBQD
3 maBieuMau String Mã biểu mẫu BBQD
4 maCha String Mã BBQD cha
5 maBieuMauCha String Mã biểu mẫu cha
6 thoiGianLap Date Thời gian lập BBQD
7 diaDiemLap String Địa điểm lập BBQD
8 maNhapTay String Mã số nhập tay BBQD
Danh sách các tang vật của biên bản, tham khảo
9 tangVat List
bảng dữ liệu đầu vào tang vật dưới đây
Danh sách các hành vi vi phạm của BBQD,
10 hanhViViPham List tham khảo bảng dữ liệu đầu vào Hành vi vi
phạm dưới đây
Danh sách nội dung in hành vi vi phạm của
11 noiDungChiTiet List BBQD, tham khảo bảng dữ liệu đầu vào nội
dung chi tiết dưới đây
Nội dung chi tiết của biên bản cưỡng chế kê biên
12 noiDung Object tài sản có giá trị tương ứng với số tiền phạt/phải
hoàn trả
13 canBoTao Object Thông tin cán bộ tạo BBQD
14 trangThai String Trạng thái BBQD
Ví dụ:
Kết quả trả về:
{
"ma": "G01.308.000.000-981-23-000008",
"maCha": "G01.308.000.000-981-23-000006",
"maBieuMauCha": "118-2022-nd-cp-qd09",
"maNhapTay": null,
"maVuViec": "G01.308.000.000-981-23-000605",
"maBieuMau": "118-2022-nd-cp-bb12",
"thoiGianLap": "2023-03-30T02:24:29.000+00:00",
"ngayTao": "2023-03-30T08:06:45.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000605",
"ten": "BB01",
"nguon": null,
"doiTuongViPham": {
"ten": "NGUYỄN VĂN A",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": null,
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.15.2.3.1.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao
1 BBQDController.java
tác với biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức
3 BBQDServiceImpl.java
của BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ
4 BBQDRepository.java
cập nhật liên quan đến BBQĐ
BB12ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ tạo và quản lý tang vật
6 TangVatService.java
của BBQĐ nếu có
Lớp làm nhiệm vụ tạo và quản lý các
7 BBQDHinhThucXuPhatService.java
hình thức xử phạt cho BBQĐ nếu có
Lớp làm nhiệm vụ tạo và quản lý các nội
8 BBQDNoiDungChiTietSevice.java
dung in cho BBQĐ nếu có
- Danh sách các phương thức:
Tên
STT Tên lớp Mô tả
method
BBQDController Cung cấp endpoint tạo mới BBQĐ và điều
1 create
.java hướng đến service tạo BBQĐ
BBQDServiceImpl Thực hiện các thao tác validate, chuẩn hóa
2 create
.java lại dữ liệu và tạo mới BBQĐ
Gọi hàm
BBQDRepository
3 create PKG_BIEN_BAN_QUYET_DINH.CREATE_
.java
BB_QD để tạo BBQĐ trong database
BB01ValidatorSer Kiểm tra tính hợp lệ dữ liệu gửi lên khi tạo
4 isValid
vice.java BBQĐ
TangVatService.ja
5 bulkCreate Tạo các tang vật thuộc BBQĐ
va
BBQDHinhThucX
6 bulkCreate Tạo các hình thức xử phạt cho BBQĐ
uPhatService.java
BBQDNoiDungCh Tạo hoặc cập nhật các nội dung in cho
7 upsert
iTietSevice.java BBQĐ
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH.CREATE_BB_QD là một thủ tục được
sử dụng để tạo mới BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50 N
1 P_MA Mã BBQD
CHAR)
P_MA_NHAP_TA VARCHAR2(50 N
2 Mã nhập tay khi tạo BBQD
Y CHAR)
VARCHAR2(50 N
3 P_MA_VU_VIEC Mã vụ việc tạo BBQD
CHAR)
VARCHAR2(50
4 P_MA_CHA N Mã BBQD cha nếu có
CHAR)
P_MA_BIEU_MA VARCHAR2(50
5 N Mã biểu mẫu cha nếu có
U_CHA CHAR)
P_THOI_GIAN_LA
6 DATE N Thời gian lập BBQD
P
VARCHAR2(50
7 P_DIA_DIEM_LAP N Địa điểm lập BBQD
0 CHAR)
8 P_TU_NGAY DATE N Thời gian xử lý từ ngày
9 P_DEN_NGAY DATE N Thời gian xử lý đến ngày
P_THOI_GIAN_H
10 DATE N Thời gian hoàn thành xử lý
OAN_THANH
VARCHAR2(2
11 P_TRANG_THAI N Trạng thái BBQD
CHAR)
P_MA_DON_VI_C VARCHAR2(25
12 N Mã đơn vị CSGT
SGT 5 CHAR)
P_DIA_CHI_DON_
13 NUMBER(12,0) N Mã địa chỉ đơn vị CSGT
VI_CSGT_ID
VARCHAR2(40
14 P_NOI_DUNG N Nội dung cụ thể của BBQD
00 CHAR)
VARCHAR2(15
15 P_NGUON N Nguồn tạo BBQD
CHAR)
VARCHAR2(40 Thông tin cán bộ tạo
16 P_CAN_BO_TAO N
00 CHAR) BBQD
VARCHAR2(25
17 P_NGUOI_TAO N Tài khoản tạo BBQD
5 CHAR)
Trả về dòng dữ liệu BBQD
18 V_CURSOR CURSOR X
vừa tạo
Hàm CREATE_BB_QD được sử dụng để thêm một bản ghi mới vào bảng
BIEN_BAN_QUYET_DINH. Hàm nhận các tham số đầu vào là thông tin của bản ghi
mới và trả về kết quả thông qua một con trỏ REF_CURSOR.
Đầu ra:
- V_CURSOR: Con trỏ REF_CURSOR trả về bản ghi vừa được thêm vào bảng
BIEN_BAN_QUYET_DINH.
- Hàm này sẽ thêm dữ liệu vào bảng BIEN_BAN_QUYET_DINH với các thông tin
tương ứng từ các tham số đầu vào, sau đó gọi hàm GET_BB_QD_DETAILS để lấy
thông tin bản ghi vừa được thêm và trả về.
d.15.2.3.1.4. Xử lý ngoại lệ
Mô tả: Gọi API để chỉnh sửa biên bản cưỡng chế kê biên tài sản có giá trị tương ứng với
số tiền phạt/phải hoàn trả
Method URL
PUT xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
Lớp làm nhiệm vụ điều hướng các thao tác với
1 BBQDController.java
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
Lớp triển khai chi tiết các phương thức của
3 BBQDServiceImpl.java
BBQDService.java
Lớp giao tiếp với database làm nhiệm vụ cập
4 BBQDRepository.java
nhật liên quan đến BBQĐ
BB12ValidatorService
5 Lớp kiểm tra tính hợp lệ của BBQĐ
.java
Lớp làm nhiệm vụ quản lý tang vật của BBQĐ
6 TangVatService.java
nếu có
BBQDHinhThucXuPhatS Lớp làm nhiệm vụ quản lý các hình thức xử phạt
7
ervice.java cho BBQĐ nếu có
BBQDNoiDungChiTietSe Lớp làm nhiệm vụ quản lý các nội dung in cho
8
vice.java BBQĐ nếu có
- Danh sách các phương thức:
(4000 CHAR)
VARCHAR2
11 P_NGUOI_SUA N Tài khoản sửa BBQD
(255 CHAR)
Trả về dòng dữ liệu BBQD
12 V_CURSOR CURSOR X
vừa tạo
Output:
- V_CURSOR: Con trỏ tham chiếu đến kết quả BBQD được cập nhật.
d.15.2.3.2.4. Xử lý ngoại lệ
Mô tả: Gọi API để lấy thông tin chi tiết biên bản cưỡng chế kê biên tài sản có giá trị
tương ứng với số tiền phạt/phải hoàn trả
Method URL
GET xlvp/api/v1/bb-qd/{maBieuMau}/{maBbQd}
"ngayTao": "2023-03-30T08:06:45.000+00:00",
"maDonViCsgt": "G01.308.000.000",
"ngaySua": null,
"nguon": null,
"canBoTao": {
"email": "abc@gmail.com",
"userName": "anhbc",
"ten": "Bùi Anh",
"capBac": "3.7",
"chucVu": "003",
"donVi": "G01.308.000.000",
"diaDanh": "Thượng Thanh - Hà Nội"
},
"canBoSua": null,
"trangThai": "DA_LUU",
"vuViec": {
"ma": "G01.308.000.000-981-23-000605",
"ten": "BB01",
"nguon": null,
"doiTuongViPham": {
"ten": "NGUYỄN VĂN A",
"diaChi": {
"maDiaDanh": ""
},
"loaiNgaySinh": "DATE",
"quocTich": "VN",
"isC06Data": false
},
"loaiDoiTuong": "CA_NHAN",
"phuongTien": null,
"linhVuc": "DUONG_BO"
},
"hasChild": false
}
d.15.2.3.3.3. Mô tả chi tiết
Service:
- Danh sách các lớp sử dụng:
STT Tên lớp Mô tả
1 BBQDController.java Lớp làm nhiệm vụ điều hướng các thao tác với
biên bản quyết định
2 BBQDService.java Interface các xử lý cho BBQĐ
3 BBQDServiceImpl.java Lớp triển khai chi tiết các phương thức của
BBQDService.java
4 BBQDRepository.java Lớp giao tiếp với database làm nhiệm vụ lấy
Procedure:
- Hàm PKG_BIEN_BAN_QUYET_DINH. GET_BB_QD_DETAILS là một thủ tục
được sử dụng để lấy thông tin chi tiết BBQD trong database.
Các giá trị nhập vào và trả ra gồm:
Nhập/
STT Tham số Kiểu dữ liệu Xuất Mô tả
(N/X)
VARCHAR2(50
1 P_MA N Mã BBQD
CHAR)
VARCHAR2(50
2 P_MA_BIEU_MAU N Mã biểu mẫu BBQD
CHAR)
3 V_CURSOR CURSOR X Trả về dòng dữ liệu BBQD
Output:
- Điều kiện để trả về kết quả phù hợp trong bảng BIEN_BAN_QUYET_DINH phải
bằng với giá trị của biến P_MA, P_MA_BIEU_MAU và cột IS_DELETED của
bảng BIEN_BAN_QUYET_DINH phải là 0.
d.15.2.3.3.4. Xử lý ngoại lệ
d.15.2.3.4. In biên bản xác định giá trị tang vật, phương tiện vi phạm hành chính