1
This commit is contained in:
@@ -58,6 +58,12 @@ public class JDOrderListController extends BaseController
|
|||||||
query.getParams().put("endTime", endTimeStr);
|
query.getParams().put("endTime", endTimeStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 处理完成日期筛选参数
|
||||||
|
String hasFinishTime = request.getParameter("hasFinishTime");
|
||||||
|
if (hasFinishTime != null && "true".equalsIgnoreCase(hasFinishTime)) {
|
||||||
|
query.getParams().put("hasFinishTime", true);
|
||||||
|
}
|
||||||
|
|
||||||
java.util.List<JDOrder> list;
|
java.util.List<JDOrder> list;
|
||||||
if (orderBy != null && !orderBy.isEmpty()) {
|
if (orderBy != null && !orderBy.isEmpty()) {
|
||||||
// 设置排序参数
|
// 设置排序参数
|
||||||
@@ -70,13 +76,34 @@ public class JDOrderListController extends BaseController
|
|||||||
|
|
||||||
TableDataInfo dataTable = getDataTable(list);
|
TableDataInfo dataTable = getDataTable(list);
|
||||||
List<JDOrder> rows = (List<JDOrder>) dataTable.getRows();
|
List<JDOrder> rows = (List<JDOrder>) dataTable.getRows();
|
||||||
for (JDOrder jdOrder : rows) {
|
|
||||||
OrderRows orderRows = orderRowsService.selectOrderRowsByOrderId(jdOrder.getOrderId());
|
// 如果需要筛选完成日期不为空,先过滤后再关联查询
|
||||||
if (orderRows != null) {
|
if (hasFinishTime != null && "true".equalsIgnoreCase(hasFinishTime)) {
|
||||||
jdOrder.setProPriceAmount(orderRows.getProPriceAmount());
|
// 先关联查询所有订单的完成时间
|
||||||
jdOrder.setFinishTime(orderRows.getFinishTime());
|
for (JDOrder jdOrder : rows) {
|
||||||
} else {
|
OrderRows orderRows = orderRowsService.selectOrderRowsByOrderId(jdOrder.getOrderId());
|
||||||
jdOrder.setProPriceAmount(0.0);
|
if (orderRows != null) {
|
||||||
|
jdOrder.setProPriceAmount(orderRows.getProPriceAmount());
|
||||||
|
jdOrder.setFinishTime(orderRows.getFinishTime());
|
||||||
|
} else {
|
||||||
|
jdOrder.setProPriceAmount(0.0);
|
||||||
|
jdOrder.setFinishTime(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 过滤掉完成时间为空的订单
|
||||||
|
rows.removeIf(jdOrder -> jdOrder.getFinishTime() == null);
|
||||||
|
// 更新总数
|
||||||
|
dataTable.setTotal(rows.size());
|
||||||
|
} else {
|
||||||
|
// 正常关联查询
|
||||||
|
for (JDOrder jdOrder : rows) {
|
||||||
|
OrderRows orderRows = orderRowsService.selectOrderRowsByOrderId(jdOrder.getOrderId());
|
||||||
|
if (orderRows != null) {
|
||||||
|
jdOrder.setProPriceAmount(orderRows.getProPriceAmount());
|
||||||
|
jdOrder.setFinishTime(orderRows.getFinishTime());
|
||||||
|
} else {
|
||||||
|
jdOrder.setProPriceAmount(0.0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user