1
This commit is contained in:
@@ -181,4 +181,64 @@ public class JDOrderListController extends BaseController
|
||||
{
|
||||
return toAjax(jdOrderService.deleteJDOrderByIds(ids));
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单搜索工具接口(返回简易字段)
|
||||
*/
|
||||
@GetMapping("/tools/search")
|
||||
public TableDataInfo searchOrders(
|
||||
@RequestParam(required = false) String orderSearch,
|
||||
@RequestParam(required = false) String address,
|
||||
HttpServletRequest request)
|
||||
{
|
||||
// startPage会从request中读取pageNum和pageSize参数
|
||||
startPage();
|
||||
|
||||
JDOrder query = new JDOrder();
|
||||
|
||||
// 处理单号搜索(过滤TF、H、F、PDD等关键词)
|
||||
if (orderSearch != null && !orderSearch.trim().isEmpty()) {
|
||||
String searchKeyword = orderSearch.trim().toUpperCase();
|
||||
// 过滤掉TF、H、F、PDD等关键词
|
||||
if (searchKeyword.contains("TF") || searchKeyword.contains("H") ||
|
||||
searchKeyword.contains("F") || searchKeyword.contains("PDD")) {
|
||||
// 如果包含过滤关键词,返回空结果
|
||||
return getDataTable(new java.util.ArrayList<>());
|
||||
}
|
||||
// 至少5个字符
|
||||
if (searchKeyword.length() >= 5) {
|
||||
query.getParams().put("orderSearch", orderSearch.trim());
|
||||
}
|
||||
}
|
||||
|
||||
// 处理地址搜索(至少3个字符)
|
||||
if (address != null && !address.trim().isEmpty()) {
|
||||
if (address.trim().length() >= 3) {
|
||||
query.setAddress(address.trim());
|
||||
}
|
||||
}
|
||||
|
||||
// 如果没有有效的搜索条件,返回空结果
|
||||
if ((orderSearch == null || orderSearch.trim().isEmpty() || orderSearch.trim().length() < 5) &&
|
||||
(address == null || address.trim().isEmpty() || address.trim().length() < 3)) {
|
||||
return getDataTable(new java.util.ArrayList<>());
|
||||
}
|
||||
|
||||
java.util.List<JDOrder> list = jdOrderService.selectJDOrderList(query);
|
||||
|
||||
// 关联查询订单状态和赔付金额
|
||||
for (JDOrder jdOrder : list) {
|
||||
OrderRows orderRows = orderRowsService.selectOrderRowsByOrderId(jdOrder.getOrderId());
|
||||
if (orderRows != null) {
|
||||
jdOrder.setProPriceAmount(orderRows.getProPriceAmount());
|
||||
jdOrder.setFinishTime(orderRows.getFinishTime());
|
||||
jdOrder.setOrderStatus(orderRows.getValidCode());
|
||||
} else {
|
||||
jdOrder.setProPriceAmount(0.0);
|
||||
jdOrder.setOrderStatus(null);
|
||||
}
|
||||
}
|
||||
|
||||
return getDataTable(list);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user