提交 55e4cb26 authored 作者: jiangwujie's avatar jiangwujie

feature(电子围栏): sql优化

上级 f062c3c7
...@@ -3266,7 +3266,6 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -3266,7 +3266,6 @@ public class OrderChildServiceImpl implements OrderChildService {
for (OrderChild child : orderChildList) { for (OrderChild child : orderChildList) {
String childNo = child.getChildNo(); String childNo = child.getChildNo();
String truckNo = child.getTruckNo(); String truckNo = child.getTruckNo();
Long driverUserNo = child.getDriverUserNo();
//获取卡车的位置 //获取卡车的位置
TruckTraceDTO truckTraceDTO = truckTraceMap.get(truckNo); TruckTraceDTO truckTraceDTO = truckTraceMap.get(truckNo);
log.info("运单号:{},卡车:{},中交兴路地图位置:{}", childNo, truckNo, truckTraceDTO); log.info("运单号:{},卡车:{},中交兴路地图位置:{}", childNo, truckNo, truckTraceDTO);
......
...@@ -14,8 +14,6 @@ import org.apache.ibatis.annotations.Param; ...@@ -14,8 +14,6 @@ import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL; import org.apache.ibatis.jdbc.SQL;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
...@@ -169,40 +167,34 @@ public class OrderChildSqlProvider { ...@@ -169,40 +167,34 @@ public class OrderChildSqlProvider {
return sql; return sql;
} }
public String findArtificialCancelOrder(@Param("param") ArtificialCancelOrderQueryParam param) { public String findArtificialCancelOrder(ArtificialCancelOrderQueryParam param) {
//todo jiangwujie 改成 new SQL()形式 return new SQL() {{
StringBuilder sql = new StringBuilder(); SELECT("child_no, goods_name, freight_price, order_no, " +
sql.append("SELECT child_no, goods_name, freight_price, order_no, "); "send_address, receive_address, " +
sql.append("send_address, receive_address, "); "driver_user_no, driver_name, driver_mobile, " +
sql.append("driver_user_no, driver_name, driver_mobile, "); "truck_no, unload_pound_no, weight, " +
sql.append("truck_no, unload_pound_no, weight, "); "cancel_remark, pound_status, status, " +
sql.append("cancel_remark, pound_status, status, "); "DATE_FORMAT(load_deadline, '%Y-%m-%d %H:%i:%s') AS loadDeadline, " +
sql.append("DATE_FORMAT(load_deadline, '%Y-%m-%d %H:%i:%s') AS loadDeadline, "); "DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') AS createTime, " +
sql.append("DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') AS createTime, "); "DATE_FORMAT(unload_time, '%Y-%m-%d %H:%i:%s') AS unloadTime ");
sql.append("DATE_FORMAT(unload_time, '%Y-%m-%d %H:%i:%s') AS unloadTime "); FROM("order_child ");
sql.append("FROM order_child "); if (StringUtils.isNotBlank(param.getOrderChildNo())) {
sql.append("WHERE 1=1 "); WHERE("child_no = #{param.orderChildNo,jdbcType=VARCHAR}");
}
List<String> conditions = new ArrayList<>(); if (StringUtils.isNotBlank(param.getTruckNo())) {
if (StringUtils.isNotBlank(param.getOrderChildNo())) { WHERE("truck_no = #{param.truckNo,jdbcType=VARCHAR}");
conditions.add("child_no = #{param.orderChildNo}"); }
} //支付状态 可以忽略
if (StringUtils.isNotBlank(param.getTruckNo())) { WHERE("status >=" + OrderChildEnum.Status.CREATED.getCode());
conditions.add("truck_no = #{param.truckNo}"); WHERE("status <=" + OrderChildEnum.Status.ARRIVE_RECEIVE.getCode());
} }}.toString();
//todo :jiangwujie 支付状态 可以忽略 ,还是使用<= >= }
List<Integer> statuses = Arrays.asList(
OrderChildEnum.Status.CREATED.getCode(), public static void main(String[] args) {
OrderChildEnum.Status.GO_TO_SEND.getCode(), ArtificialCancelOrderQueryParam param = new ArtificialCancelOrderQueryParam();
OrderChildEnum.Status.ARRIVE_SEND.getCode(), param.setTruckNo("A123456");
OrderChildEnum.Status.LOAD.getCode(), param.setOrderChildNo("CYD1234567890");
OrderChildEnum.Status.GO_TO_RECEIVE.getCode(), System.out.println(new OrderChildSqlProvider().findArtificialCancelOrder(param));
OrderChildEnum.Status.ARRIVE_RECEIVE.getCode()
);
conditions.add("status IN (" + StringUtils.join(statuses, ", ") + ")");
sql.append("AND ");
sql.append(StringUtils.join(conditions, " AND "));
return sql.toString();
} }
public String orderChildCancelRecord(@Param("page") Page<OrderChildVO> page, @Param("param") OrderChildCancelRecordParam param) { public String orderChildCancelRecord(@Param("page") Page<OrderChildVO> page, @Param("param") OrderChildCancelRecordParam param) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论