|
|
@@ -49,6 +49,7 @@ import org.springblade.land.vo.OrderItemVO;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.validation.Valid;
|
|
|
+import java.util.Collections;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
@@ -98,17 +99,38 @@ public class OrderItemController extends BladeController {
|
|
|
public R<IPage<OrderItem>> list(OrderItem orderItem, Query query) {
|
|
|
String role = AuthUtil.getUserRole();
|
|
|
|
|
|
- LambdaQueryWrapper<Order> orderQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- orderQueryWrapper.eq(StringUtil.isNotBlank(orderItem.getBillNo()), Order::getBillNo, orderItem.getBillNo())
|
|
|
- .eq(StringUtil.isNotBlank(orderItem.getGoods()), Order::getGoods, orderItem.getGoods())
|
|
|
- .like(StringUtil.isNotBlank(orderItem.getBelongCompany()), Order::getBelongCompany, orderItem.getBelongCompany())
|
|
|
- .like(StringUtil.isNotBlank(orderItem.getStation()), Order::getStation, orderItem.getStation())
|
|
|
- .like(StringUtil.isNotBlank(orderItem.getFactory()), Order::getFactory, orderItem.getFactory())
|
|
|
- .between(StringUtil.isNotBlank(orderItem.getBeginArrivalTime()) && StringUtil.isNotBlank(orderItem.getEndArrivalTime()), Order::getArrivalTime, orderItem.getBeginArrivalTime(), orderItem.getEndArrivalTime())
|
|
|
- .between(StringUtil.isNotBlank(orderItem.getBeginCrateTime()) && StringUtil.isNotBlank(orderItem.getEndCrateTime()), Order::getCreateTime, orderItem.getBeginCrateTime(), orderItem.getEndCrateTime())
|
|
|
- .eq(Order::getIsDeleted, 0)
|
|
|
- .eq(Order::getTenantId, AuthUtil.getTenantId());
|
|
|
- List<Long> orderIdList = orderService.list(orderQueryWrapper).stream().map(Order::getId).collect(Collectors.toList());
|
|
|
+ List<Long> orderIdList = Collections.emptyList();
|
|
|
+ if (StringUtil.isNotBlank(orderItem.getBillNo()) || StringUtil.isNotBlank(orderItem.getGoods()) || StringUtil.isNotBlank(orderItem.getBelongCompany()) || StringUtil.isNotBlank(orderItem.getStation()) || StringUtil.isNotBlank(orderItem.getFactory())) {
|
|
|
+ orderIdList = orderService.list(new LambdaQueryWrapper<Order>()
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getBillNo()), Order::getBillNo, orderItem.getBillNo())
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getGoods()), Order::getGoods, orderItem.getGoods())
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getBelongCompany()), Order::getBelongCompany, orderItem.getBelongCompany())
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getStation()), Order::getStation, orderItem.getStation())
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getFactory()), Order::getFactory, orderItem.getFactory())
|
|
|
+ .between(StringUtil.isNotBlank(orderItem.getBeginArrivalTime()) && StringUtil.isNotBlank(orderItem.getEndArrivalTime()), Order::getArrivalTime, orderItem.getBeginArrivalTime(), orderItem.getEndArrivalTime())
|
|
|
+ .between(StringUtil.isNotBlank(orderItem.getBeginCrateTime()) && StringUtil.isNotBlank(orderItem.getEndCrateTime()), Order::getCreateTime, orderItem.getBeginCrateTime(), orderItem.getEndCrateTime())
|
|
|
+ .eq(Order::getIsDeleted, 0)
|
|
|
+ .eq(Order::getTenantId, AuthUtil.getTenantId())
|
|
|
+ ).stream().map(Order::getId).collect(Collectors.toList());
|
|
|
+
|
|
|
+ if (CollectionUtil.isEmpty(orderIdList)) {
|
|
|
+ return R.data(new Page<>());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (StringUtil.isNotBlank(orderItem.getAddressDetail())) {
|
|
|
+ orderIdList = orderAddressService.list(new LambdaQueryWrapper<OrderAddress>()
|
|
|
+ .select(OrderAddress::getOrderId)
|
|
|
+ .in(CollectionUtil.isNotEmpty(orderIdList), OrderAddress::getOrderId, orderIdList)
|
|
|
+ .like(OrderAddress::getAddress, orderItem.getAddressDetail())
|
|
|
+ .eq(OrderAddress::getIsDeleted, 0)
|
|
|
+ .groupBy(OrderAddress::getOrderId)
|
|
|
+ ).stream().map(OrderAddress::getOrderId).collect(Collectors.toList());
|
|
|
+
|
|
|
+ if (CollectionUtil.isEmpty(orderIdList)) {
|
|
|
+ return R.data(new Page<>());
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
LambdaQueryWrapper<OrderItem> itemQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
if (orderItem.getTag() == 4) {
|
|
|
@@ -132,11 +154,9 @@ public class OrderItemController extends BladeController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (CollectionUtil.isEmpty(orderIdList)) {
|
|
|
- return R.data(new Page<>());
|
|
|
- }
|
|
|
-
|
|
|
- itemQueryWrapper.in(OrderItem::getOrderId, orderIdList)
|
|
|
+ itemQueryWrapper.in(CollectionUtil.isNotEmpty(orderIdList), OrderItem::getOrderId, orderIdList)
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getTel()), OrderItem::getTel, orderItem.getTel())
|
|
|
+ .like(StringUtil.isNotBlank(orderItem.getCtnNo()), OrderItem::getCtnNo, orderItem.getCtnNo())
|
|
|
.eq(ObjectUtil.isNotEmpty(orderItem.getFleetId()), OrderItem::getFleetId, orderItem.getFleetId())
|
|
|
.eq(ObjectUtil.isNotEmpty(orderItem.getVehicleId()), OrderItem::getVehicleId, orderItem.getVehicleId())
|
|
|
.eq(ObjectUtil.isNotEmpty(orderItem.getDriverId()), OrderItem::getDriverId, orderItem.getDriverId())
|
|
|
@@ -148,6 +168,7 @@ public class OrderItemController extends BladeController {
|
|
|
IPage<OrderItem> pages = orderItemService.page(Condition.getPage(query), itemQueryWrapper);
|
|
|
pages.getRecords().forEach(record -> {
|
|
|
Order order = orderService.getById(record.getOrderId());
|
|
|
+ record.setOrderNo(order.getOrderNo());
|
|
|
record.setBelongCompany(order.getBelongCompany());
|
|
|
record.setBillNo(order.getBillNo());
|
|
|
record.setGoods(order.getGoods());
|
|
|
@@ -166,7 +187,6 @@ public class OrderItemController extends BladeController {
|
|
|
LandVehicle vehicle = landVehicleClient.getVehicle(record.getVehicleId());
|
|
|
record.setPlateNo(vehicle.getPlateNo());
|
|
|
record.setDriverName(vehicle.getDriverName());
|
|
|
- record.setTel(vehicle.getTel());
|
|
|
}
|
|
|
|
|
|
// 拼接地址
|
|
|
@@ -177,7 +197,7 @@ public class OrderItemController extends BladeController {
|
|
|
);
|
|
|
StringBuilder addressDetail = new StringBuilder();
|
|
|
for (OrderAddress address : addressList) {
|
|
|
- addressDetail.append(address.getSort()).append(":").append(address.getCorpName()).append("-").append(address.getAddress()).append(";");
|
|
|
+ addressDetail.append(address.getSort()).append(":").append(address.getCorpName()).append("——").append(address.getAddress()).append(";\n");
|
|
|
}
|
|
|
if (addressDetail.length() > 0) {
|
|
|
record.setAddressDetail(addressDetail.deleteCharAt(addressDetail.lastIndexOf(";")).toString());
|