|
@@ -108,16 +108,8 @@ public class GatekeeperOrderService {
|
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "状态不能为空!");
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "状态不能为空!");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- Long userId = LoginUserHolder.getUserId();
|
|
|
|
|
- log.info("门卫用户id:{}", userId);
|
|
|
|
|
- KwsUserResDto kwsUserResDto = remoteSystemService.queryByUserId(userId);
|
|
|
|
|
- log.info("门卫用户信息:{}", JSON.toJSONString(kwsUserResDto));
|
|
|
|
|
- if (kwsUserResDto == null) {
|
|
|
|
|
- throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "用户数据不能为空!");
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
//构建查询条件
|
|
//构建查询条件
|
|
|
- LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = buildAndExecuteQuery(param, kwsUserResDto);
|
|
|
|
|
|
|
+ LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = buildAndExecuteQuery(param);
|
|
|
|
|
|
|
|
//查询门卫订单
|
|
//查询门卫订单
|
|
|
Page<KwtGatekeeperWaybillOrder> pageByStatus = gatekeeperWaybillOrderRepository.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
|
|
Page<KwtGatekeeperWaybillOrder> pageByStatus = gatekeeperWaybillOrderRepository.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
|
|
@@ -129,18 +121,19 @@ public class GatekeeperOrderService {
|
|
|
List<GatekeeperOrderResp> gatekeeperOrderPageResult = getGatekeeperOrderPageResult(records);
|
|
List<GatekeeperOrderResp> gatekeeperOrderPageResult = getGatekeeperOrderPageResult(records);
|
|
|
//处理异常车辆数据
|
|
//处理异常车辆数据
|
|
|
gatekeeperOrderPageResult = filterGatekeeperOrderResp(param, gatekeeperOrderPageResult);
|
|
gatekeeperOrderPageResult = filterGatekeeperOrderResp(param, gatekeeperOrderPageResult);
|
|
|
-
|
|
|
|
|
|
|
+ //过滤山上/山下门卫数据
|
|
|
|
|
+ List<GatekeeperOrderResp> filterResult = filter(gatekeeperOrderPageResult);
|
|
|
//排序
|
|
//排序
|
|
|
- sort(param, gatekeeperOrderPageResult);
|
|
|
|
|
- return PageDataResult.success(param.getPageNum(), param.getPageSize(), pageByStatus.getTotal(), gatekeeperOrderPageResult);
|
|
|
|
|
|
|
+ sort(param, filterResult);
|
|
|
|
|
+ return PageDataResult.success(param.getPageNum(), param.getPageSize(), pageByStatus.getTotal(), filterResult);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 构建查询条件并执行分页查询
|
|
* 构建查询条件并执行分页查询
|
|
|
*/
|
|
*/
|
|
|
- private LambdaQueryWrapper<KwtGatekeeperWaybillOrder> buildAndExecuteQuery(GatekeeperOrderQueryParam param, KwsUserResDto kwsUserResDto) {
|
|
|
|
|
|
|
+ private LambdaQueryWrapper<KwtGatekeeperWaybillOrder> buildAndExecuteQuery(GatekeeperOrderQueryParam param) {
|
|
|
//基础查询条件
|
|
//基础查询条件
|
|
|
- LambdaQueryWrapper<KwtGatekeeperWaybillOrder> queryWrapper = buildBaseQueryWrapper(param, kwsUserResDto);
|
|
|
|
|
|
|
+ LambdaQueryWrapper<KwtGatekeeperWaybillOrder> queryWrapper = buildBaseQueryWrapper(param);
|
|
|
|
|
|
|
|
//模糊查询条件
|
|
//模糊查询条件
|
|
|
handleSearchKeyword(param, queryWrapper);
|
|
handleSearchKeyword(param, queryWrapper);
|
|
@@ -153,24 +146,11 @@ public class GatekeeperOrderService {
|
|
|
* @param param
|
|
* @param param
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
- private LambdaQueryWrapper<KwtGatekeeperWaybillOrder> buildBaseQueryWrapper(GatekeeperOrderQueryParam param, KwsUserResDto kwsUserResDto) {
|
|
|
|
|
|
|
+ private LambdaQueryWrapper<KwtGatekeeperWaybillOrder> buildBaseQueryWrapper(GatekeeperOrderQueryParam param) {
|
|
|
LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = Wrappers.<KwtGatekeeperWaybillOrder>lambdaQuery()
|
|
LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = Wrappers.<KwtGatekeeperWaybillOrder>lambdaQuery()
|
|
|
.eq(KwtGatekeeperWaybillOrder::getEntId, param.getEntId())
|
|
.eq(KwtGatekeeperWaybillOrder::getEntId, param.getEntId())
|
|
|
.orderByDesc(KwtGatekeeperWaybillOrder::getCreateTime)
|
|
.orderByDesc(KwtGatekeeperWaybillOrder::getCreateTime)
|
|
|
.orderByDesc(KwtGatekeeperWaybillOrder::getId);
|
|
.orderByDesc(KwtGatekeeperWaybillOrder::getId);
|
|
|
- //山下(邓总)
|
|
|
|
|
- if (Objects.equals(kwsUserResDto.getType(), 1)) {
|
|
|
|
|
- wrapper.and(w -> w
|
|
|
|
|
- .eq(KwtGatekeeperWaybillOrder::getWeighbridgeId, "10100111")
|
|
|
|
|
- .or()
|
|
|
|
|
- .isNull(KwtGatekeeperWaybillOrder::getWeighbridgeId));
|
|
|
|
|
- }else {
|
|
|
|
|
- //山上
|
|
|
|
|
- wrapper.and(w -> w
|
|
|
|
|
- .in(KwtGatekeeperWaybillOrder::getWeighbridgeId, List.of("10100112", "10100113"))
|
|
|
|
|
- .or()
|
|
|
|
|
- .isNull(KwtGatekeeperWaybillOrder::getWeighbridgeId));
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
//待进场
|
|
//待进场
|
|
|
if (param.getStatus() == 1) {
|
|
if (param.getStatus() == 1) {
|
|
@@ -431,6 +411,7 @@ public class GatekeeperOrderService {
|
|
|
gatekeeper.setGoodsId(gatekeeperWaybillOrder.getGoodsId());
|
|
gatekeeper.setGoodsId(gatekeeperWaybillOrder.getGoodsId());
|
|
|
gatekeeper.setGoodsName(gatekeeperWaybillOrder.getGoodsName());
|
|
gatekeeper.setGoodsName(gatekeeperWaybillOrder.getGoodsName());
|
|
|
gatekeeper.setRemark(gatekeeperWaybillOrder.getRemark());
|
|
gatekeeper.setRemark(gatekeeperWaybillOrder.getRemark());
|
|
|
|
|
+ gatekeeper.setWeighbridgeId(gatekeeperWaybillOrder.getWeighbridgeId());
|
|
|
|
|
|
|
|
//运单数据
|
|
//运单数据
|
|
|
KwtWaybillOrder waybillOrder = waybillOrderMap.getOrDefault(gatekeeperWaybillOrder.getWOrderId(), new KwtWaybillOrder());
|
|
KwtWaybillOrder waybillOrder = waybillOrderMap.getOrDefault(gatekeeperWaybillOrder.getWOrderId(), new KwtWaybillOrder());
|
|
@@ -544,6 +525,41 @@ public class GatekeeperOrderService {
|
|
|
}).collect(Collectors.toList());
|
|
}).collect(Collectors.toList());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 过滤山上/山下门卫数据:待放行时候区分
|
|
|
|
|
+ * @param gatekeeperOrderPageResult
|
|
|
|
|
+ */
|
|
|
|
|
+ private List<GatekeeperOrderResp> filter(List<GatekeeperOrderResp> gatekeeperOrderPageResult) {
|
|
|
|
|
+ Long userId = LoginUserHolder.getUserId();
|
|
|
|
|
+ log.info("门卫用户id:{}", userId);
|
|
|
|
|
+ KwsUserResDto kwsUserResDto = remoteSystemService.queryByUserId(userId);
|
|
|
|
|
+ log.info("门卫用户信息:{}", JSON.toJSONString(kwsUserResDto));
|
|
|
|
|
+ if (kwsUserResDto == null) {
|
|
|
|
|
+ throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "用户数据不能为空!");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return gatekeeperOrderPageResult.stream()
|
|
|
|
|
+ .filter(order -> {
|
|
|
|
|
+ // status不等于10的订单,不做地磅过滤
|
|
|
|
|
+ if (!Objects.equals(order.getStatus(), 10)) {
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
|
|
+ // 地磅为空的数据,山上山下都保留
|
|
|
|
|
+ Long weighbridgeId = order.getWeighbridgeId();
|
|
|
|
|
+ if (weighbridgeId == null) {
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
|
|
+ // 山下(邓总):只保留 10100111L
|
|
|
|
|
+ if (Objects.equals(kwsUserResDto.getType(), 1)) {
|
|
|
|
|
+ return weighbridgeId == 10100111L;
|
|
|
|
|
+ }
|
|
|
|
|
+ // 山上:只保留 10100112L 或 10100113L
|
|
|
|
|
+ return weighbridgeId == 10100112L || weighbridgeId == 10100113L;
|
|
|
|
|
+ })
|
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 排序
|
|
* 排序
|
|
|
* @param param
|
|
* @param param
|