提交 df7c093f authored 作者: 李瑞鑫's avatar 李瑞鑫

Merge branch 'v31.4_app_sample_20241025' into dev_jdk17

# Conflicts: # clx-performance-web/src/main/java/com/clx/performance/service/OrderChildService.java # clx-performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
...@@ -204,10 +204,6 @@ public class AppDriverOrderChildController { ...@@ -204,10 +204,6 @@ public class AppDriverOrderChildController {
@Operation(summary = "是否需要弹出监装信息", description = "<br>By:姜武杰") @Operation(summary = "是否需要弹出监装信息", description = "<br>By:姜武杰")
@PostMapping("/needAlertSuperviseInfo") @PostMapping("/needAlertSuperviseInfo")
public Result<NeedAlertSuperviseInfoResultVO> needAlertSuperviseInfo(@RequestBody @Validated NeedAlertSuperviseInfoParam param) { public Result<NeedAlertSuperviseInfoResultVO> needAlertSuperviseInfo(@RequestBody @Validated NeedAlertSuperviseInfoParam param) {
// todo :jiangwujie 临时设置type 前端给type后删除
if (param.getType() == null) {
param.setType(1);
}
return Result.ok(orderChildService.needAlertSuperviseInfo(param)); return Result.ok(orderChildService.needAlertSuperviseInfo(param));
} }
......
...@@ -96,4 +96,10 @@ public class OrderChildFeignController { ...@@ -96,4 +96,10 @@ public class OrderChildFeignController {
return Result.ok(); return Result.ok();
} }
@Operation(summary = "查询老马上来车辆下的进行中的运单", description = "<br>By:刘海泉")
@GetMapping("/queryTruckProcessingOrderChild")
public Long queryTruckProcessingOrderChild(@RequestParam("truckNo") @NotBlank(message = "车牌号不能为空") String truckNo) {
return orderChildService.queryTruckProcessingOrderChild(truckNo);
}
} }
...@@ -228,4 +228,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int ...@@ -228,4 +228,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
Long countNotCancelOrderChild(List<String> cancelOrderGoodsNo); Long countNotCancelOrderChild(List<String> cancelOrderGoodsNo);
Long queryNoCancelChildByOrderGoodsNo(String orderGoodsNo, Integer code); Long queryNoCancelChildByOrderGoodsNo(String orderGoodsNo, Integer code);
Long queryTruckProcessingOrderChild(String truckNo);
} }
...@@ -751,4 +751,12 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -751,4 +751,12 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.lt(ObjectUtil.isNotEmpty(status),OrderChild::getStatus, status) .lt(ObjectUtil.isNotEmpty(status),OrderChild::getStatus, status)
); );
} }
@Override
public Long queryTruckProcessingOrderChild(String truckNo) {
LambdaQueryWrapper<OrderChild> query = new LambdaQueryWrapper<>();
query.eq(OrderChild :: getTruckNo,truckNo);
query.le(OrderChild::getStatus,OrderChildEnum.Status.UNLOAD.getCode());
return baseMapper.selectCount(query);
}
} }
package com.clx.performance.feign;
import com.msl.common.result.Result;
import jakarta.validation.constraints.NotBlank;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "order-service")
public interface FeignOrderService {
@GetMapping(value = "/order-service/feign/getGoingOrderChildByTruckNo")
Result<Integer> getGoingOrderChildByTruckNo (@RequestParam("truckNo") @NotBlank(message = "车牌号不能为空") String truckNo);
}
...@@ -124,4 +124,6 @@ public interface OrderChildService { ...@@ -124,4 +124,6 @@ public interface OrderChildService {
WeightChildSignatureDto getWeighingSignature(String childNo,Integer type); WeightChildSignatureDto getWeighingSignature(String childNo,Integer type);
Long queryTruckProcessingOrderChild(String truckNo);
} }
...@@ -38,6 +38,7 @@ import com.clx.performance.dto.payment.WalletResidueCardDTO; ...@@ -38,6 +38,7 @@ import com.clx.performance.dto.payment.WalletResidueCardDTO;
import com.clx.performance.dto.zjxl.TruckLocationDTO; import com.clx.performance.dto.zjxl.TruckLocationDTO;
import com.clx.performance.dto.zjxl.TruckTraceDTO; import com.clx.performance.dto.zjxl.TruckTraceDTO;
import com.clx.performance.enums.*; import com.clx.performance.enums.*;
import com.clx.performance.enums.SyncPlatformEnum;
import com.clx.performance.enums.settle.SettlementWayEnum; import com.clx.performance.enums.settle.SettlementWayEnum;
import com.clx.performance.extranal.order.InvoicingCompanyService; import com.clx.performance.extranal.order.InvoicingCompanyService;
import com.clx.performance.extranal.order.QuotationService; import com.clx.performance.extranal.order.QuotationService;
...@@ -45,6 +46,8 @@ import com.clx.performance.extranal.user.AddressService; ...@@ -45,6 +46,8 @@ import com.clx.performance.extranal.user.AddressService;
import com.clx.performance.extranal.user.DriverService; import com.clx.performance.extranal.user.DriverService;
import com.clx.performance.extranal.user.OrderService; import com.clx.performance.extranal.user.OrderService;
import com.clx.performance.extranal.user.OwnerInfoService; import com.clx.performance.extranal.user.OwnerInfoService;
import com.clx.performance.extranal.user.*;
import com.clx.performance.feign.FeignOrderService;
import com.clx.performance.feign.FeignPaymentService; import com.clx.performance.feign.FeignPaymentService;
import com.clx.performance.model.*; import com.clx.performance.model.*;
import com.clx.performance.model.breakcontract.BreakContractDriverRecord; import com.clx.performance.model.breakcontract.BreakContractDriverRecord;
...@@ -286,6 +289,9 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -286,6 +289,9 @@ public class OrderChildServiceImpl implements OrderChildService {
@Autowired @Autowired
private PerformanceSmartCompanyNoConfig companyNoConfig; private PerformanceSmartCompanyNoConfig companyNoConfig;
@Autowired
FeignOrderService feignOrderService;
@PostConstruct @PostConstruct
public void init(){ public void init(){
String[] activeProfiles = environment.getActiveProfiles(); String[] activeProfiles = environment.getActiveProfiles();
...@@ -386,6 +392,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -386,6 +392,8 @@ public class OrderChildServiceImpl implements OrderChildService {
// 司机接单限制 // 司机接单限制
driverTakeOrderLimit(driverTruckInfo.getUserNo()); driverTakeOrderLimit(driverTruckInfo.getUserNo());
//车辆接单限制
truckLimit(truckNo);
/** 判断当前用户是否为车主 true 车主 */ /** 判断当前用户是否为车主 true 车主 */
boolean truckOwnerFlag = Objects.equals(driverTruckInfo.getWalletCode(), driverTruckInfo.getTruckOwnWalletCode()); boolean truckOwnerFlag = Objects.equals(driverTruckInfo.getWalletCode(), driverTruckInfo.getTruckOwnWalletCode());
...@@ -589,6 +597,23 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -589,6 +597,23 @@ public class OrderChildServiceImpl implements OrderChildService {
return result; return result;
} }
public void truckLimit(String truckNo){
//查询该车辆是否在老马上来系统存在进行中的运单
log.info("开始查询车辆在老马上来系统是否存在进行中的运单,车牌号:{}",truckNo);
Result<Integer> truckGoingChildResult = feignOrderService.getGoingOrderChildByTruckNo(truckNo);
log.info("开始查询车辆在老马上来系统是否存在进行中的运单,车牌号:{},响应结果:{}",truckNo,truckGoingChildResult);
if(truckGoingChildResult.succeed()){
//车辆存在进行中的运单
if(truckGoingChildResult.getData() > 0){
throw new ServiceSystemException(PerformanceResultEnum.APP_TRUCK_HAVE_GOING_CHILD);
}
}else{
log.error("查询车辆在马上来系统是否存在进行中的运单失败");
throw new ServiceSystemException(PerformanceResultEnum.APP_TRUCK_HAVE_GOING_CHILD,"查询车辆在马上来是否存在运单失败");
}
}
//判断当前运单的吨数,货单剩余量是否足够,不足够直接拦截,足够需要判断订单是否还有拉运量 //判断当前运单的吨数,货单剩余量是否足够,不足够直接拦截,足够需要判断订单是否还有拉运量
public boolean judgeNotEnoughWeightOrdered(BigDecimal orderGoodsResidueWeight,String orderNo){ public boolean judgeNotEnoughWeightOrdered(BigDecimal orderGoodsResidueWeight,String orderNo){
//货单无剩余量 //货单无剩余量
...@@ -1806,9 +1831,9 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1806,9 +1831,9 @@ public class OrderChildServiceImpl implements OrderChildService {
SuperviseInfo superviseInfo = getSuperviseInfo(orderChild.getOrderNo(), OrderChildEnum.SuperviseTypeEnum.SUPERVISE_LOAD.getCode()); SuperviseInfo superviseInfo = getSuperviseInfo(orderChild.getOrderNo(), OrderChildEnum.SuperviseTypeEnum.SUPERVISE_LOAD.getCode());
result.setSuperviseContacts(superviseInfo != null ? superviseInfo.getSuperviseContacts() : null); result.setSuperviseContacts(superviseInfo != null ? superviseInfo.getSuperviseContacts() : null);
result.setSuperviseMobile(superviseInfo != null ? superviseInfo.getSuperviseMobile() : null); result.setSuperviseMobile(superviseInfo != null ? superviseInfo.getSuperviseMobile() : null);
result.setSendSamplingPic(superviseInfo==null? null :orderInfoFeign.getSendSamplingPic()); result.setSendSamplingPic(orderInfoFeign.getSendSamplingPic());
result.setSendQualityPosition(superviseInfo==null? null :orderInfoFeign.getSendQualityPosition()); result.setSendQualityPosition(orderInfoFeign.getSendQualityPosition());
result.setSendSamplingVideo(superviseInfo==null? null :orderInfoFeign.getSendSamplingVideo()); result.setSendSamplingVideo(orderInfoFeign.getSendSamplingVideo());
// 采样 监卸信息 // 采样 监卸信息
SuperviseInfo superviseUnloadInfo = getSuperviseInfo(orderChild.getOrderNo(), OrderChildEnum.SuperviseTypeEnum.SUPERVISE_UNLOAD.getCode()); SuperviseInfo superviseUnloadInfo = getSuperviseInfo(orderChild.getOrderNo(), OrderChildEnum.SuperviseTypeEnum.SUPERVISE_UNLOAD.getCode());
...@@ -2078,6 +2103,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -2078,6 +2103,8 @@ public class OrderChildServiceImpl implements OrderChildService {
return CheckResult.FAIL.code; return CheckResult.FAIL.code;
} }
} }
return CheckResult.OK.code; return CheckResult.OK.code;
} }
...@@ -2131,6 +2158,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -2131,6 +2158,7 @@ public class OrderChildServiceImpl implements OrderChildService {
OWNER_WALLET_NOT_EXIST(APP_POP_UP_OWNER_WALLET_NULL_NOT_EXIST_ERROR.getCode(), "车主未绑卡"), OWNER_WALLET_NOT_EXIST(APP_POP_UP_OWNER_WALLET_NULL_NOT_EXIST_ERROR.getCode(), "车主未绑卡"),
DRIVER_NO_BANKCARD(APP_POP_UP_DRIVER_NO_BANKCARD_ERROR.getCode(), "司机未绑卡"), DRIVER_NO_BANKCARD(APP_POP_UP_DRIVER_NO_BANKCARD_ERROR.getCode(), "司机未绑卡"),
OWNER_NO_BANKCARD(APP_POP_UP_OWNER_NO_BANKCARD_ERROR.getCode(), "车主未绑卡"); OWNER_NO_BANKCARD(APP_POP_UP_OWNER_NO_BANKCARD_ERROR.getCode(), "车主未绑卡");
private final int code; private final int code;
private final String msg; private final String msg;
} }
...@@ -3677,9 +3705,18 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -3677,9 +3705,18 @@ public class OrderChildServiceImpl implements OrderChildService {
public NeedAlertSuperviseInfoResultVO needAlertSuperviseInfo(NeedAlertSuperviseInfoParam param) { public NeedAlertSuperviseInfoResultVO needAlertSuperviseInfo(NeedAlertSuperviseInfoParam param) {
//查询运单信息 //查询运单信息
OrderChild orderChild = orderChildDao.getByChildNo(param.getChildNo()).orElseThrow(DATA_NOT_FIND); OrderChild orderChild = orderChildDao.getByChildNo(param.getChildNo()).orElseThrow(DATA_NOT_FIND);
SuperviseInfo superviseInfo = getSuperviseInfoWithSubStatus(orderChild.getOrderNo(), orderChild.getChildNo(), orderChild.getTruckNo());
//返回对象 //返回对象
NeedAlertSuperviseInfoResultVO result = new NeedAlertSuperviseInfoResultVO(); NeedAlertSuperviseInfoResultVO result = new NeedAlertSuperviseInfoResultVO();
//数煤宝的订单
if(Objects.equals(orderChild.getOrderSource(), SyncPlatformEnum.Source.TRADE_PLATFORM.getCode())){
FeignOrderVO orderInfoFeign = orderFeign.getOrderInfoFeign(orderChild.getOrderNo());//feign订单
if(Objects.nonNull(orderInfoFeign)){
result.setNeedAlert(OrderChildEnum.NeedAlertEnum.FAIL.getCode());
result.setLocation(orderInfoFeign.getSendQualityPosition());
return result;
}
}
SuperviseInfo superviseInfo = getSuperviseInfoWithSubStatus(orderChild.getOrderNo(), orderChild.getChildNo(), orderChild.getTruckNo());
if (superviseInfo != null) { if (superviseInfo != null) {
result.setNeedAlert(OrderChildEnum.NeedAlertEnum.FAIL.getCode()); result.setNeedAlert(OrderChildEnum.NeedAlertEnum.FAIL.getCode());
result.setLocation(superviseInfo.getTaskAddress()); result.setLocation(superviseInfo.getTaskAddress());
...@@ -3886,4 +3923,9 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -3886,4 +3923,9 @@ public class OrderChildServiceImpl implements OrderChildService {
} }
return new WeightChildSignatureDto(); return new WeightChildSignatureDto();
} }
@Override
public Long queryTruckProcessingOrderChild(String truckNo) {
return orderChildDao.queryTruckProcessingOrderChild(truckNo);
}
} }
...@@ -116,6 +116,8 @@ public enum PerformanceResultEnum implements ResultEnum { ...@@ -116,6 +116,8 @@ public enum PerformanceResultEnum implements ResultEnum {
APP_POP_UP_DRIVER_NOT_AUTH(-496, "司机钱包不存在"), APP_POP_UP_DRIVER_NOT_AUTH(-496, "司机钱包不存在"),
/**车主未实名 **/ /**车主未实名 **/
APP_POP_UP_OWNER_NOT_AUTH(-495, "车主钱包不存在"), APP_POP_UP_OWNER_NOT_AUTH(-495, "车主钱包不存在"),
/**车主未实名 **/
APP_TRUCK_HAVE_GOING_CHILD(-494, "请您先完成马上来的运单"),
WALLET_CODE_IS_NULL(1704, "用户钱包不存在"), WALLET_CODE_IS_NULL(1704, "用户钱包不存在"),
......
...@@ -33,4 +33,9 @@ public interface OrderChildFeign { ...@@ -33,4 +33,9 @@ public interface OrderChildFeign {
Result<Object> cancelOrderChild(@RequestBody @Validated CancelOrderGoodsParam param); Result<Object> cancelOrderChild(@RequestBody @Validated CancelOrderGoodsParam param);
@GetMapping(value = {"clx-performance/feign/orderChild/queryTruckProcessingOrderChild"})
Long queryTruckProcessingOrderChild(@RequestParam("truckNo") @NotBlank(message = "车牌号不能为空") String truckNo);
} }
package com.clx.performance.param.app; package com.clx.performance.param.app;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Getter; import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
...@@ -21,6 +22,7 @@ public class NeedAlertSuperviseInfoParam { ...@@ -21,6 +22,7 @@ public class NeedAlertSuperviseInfoParam {
@Schema(description = "类型 1-监装 2-监卸", example = "1") @Schema(description = "类型 1-监装 2-监卸", example = "1")
@NotNull(message = "类型不能为空")
private Integer type; private Integer type;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论