mirror of
https://github.com/tiennm99/BSK-All-in-One-Clinic-Management-System.git
synced 2026-10-12 14:14:47 +00:00
[update] Enhance DataDialog and related components to support search by checkup ID. Introduce new ID search field and update request handling in GetCheckupDataRequest and ServerHandler. Modify ultrasound report templates to include ID and barcode generation for improved data presentation.
This commit is contained in:
1 parent
bb1ee74238
commit
1fcd1e4106
10 files changed
+125
-85
No files matched your search
@@ -1368,8 +1368,20 @@ public class ServerHandler extends SimpleChannelInboundHandler<TextWebSocketFram
|
||||
StringBuilder whereClause = new StringBuilder();
|
||||
java.util.List<Object> params = new java.util.ArrayList<>();
|
||||
boolean hasWhere = false;
|
||||
|
||||
if (getCheckupDataRequest.getSearchTerm() != null && !getCheckupDataRequest.getSearchTerm().trim().isEmpty()) {
|
||||
|
||||
String checkupIdSearch = getCheckupDataRequest.getCheckupIdSearch();
|
||||
if (checkupIdSearch != null && !checkupIdSearch.trim().isEmpty()) {
|
||||
whereClause.append("WHERE a.checkup_id = ?");
|
||||
try {
|
||||
// Chuyển đổi sang kiểu số để tìm kiếm chính xác và an toàn
|
||||
params.add(Integer.parseInt(checkupIdSearch.trim()));
|
||||
} catch (NumberFormatException e) {
|
||||
// Nếu người dùng nhập chữ, ta truyền một giá trị không thể tìm thấy để trả về 0 kết quả
|
||||
params.add(-1);
|
||||
}
|
||||
hasWhere = true;
|
||||
}
|
||||
else if (getCheckupDataRequest.getSearchTerm() != null && !getCheckupDataRequest.getSearchTerm().trim().isEmpty()) {
|
||||
whereClause.append("WHERE (LOWER(c.customer_first_name) LIKE ? OR LOWER(c.customer_last_name) LIKE ? OR " +
|
||||
"LOWER(CONCAT(c.customer_last_name, ' ', c.customer_first_name)) LIKE ? OR c.customer_number LIKE ?)");
|
||||
String searchTerm = "%" + getCheckupDataRequest.getSearchTerm().toLowerCase().trim() + "%";
|
||||
|
||||
Reference in new issue
Block a user