提交 f7c12eb1 authored 作者: liruixin's avatar liruixin

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into…

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into v5.7_break_contract_reverse_20231020
...@@ -6,10 +6,7 @@ import com.clx.order.enums.OrderEnum; ...@@ -6,10 +6,7 @@ import com.clx.order.enums.OrderEnum;
import com.clx.order.feign.OrderFeign; import com.clx.order.feign.OrderFeign;
import com.clx.performance.dao.OrderChildDao; import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.OrderGoodsDao; import com.clx.performance.dao.OrderGoodsDao;
import com.clx.performance.enums.OrderChildEnum; import com.clx.performance.enums.*;
import com.clx.performance.enums.OrderGoodsStatusEnum;
import com.clx.performance.enums.PendingOrderWayStatusEnum;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.extranal.user.DriverService; import com.clx.performance.extranal.user.DriverService;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.OrderGoods; import com.clx.performance.model.OrderGoods;
...@@ -160,14 +157,51 @@ public class OrderCancelComponent { ...@@ -160,14 +157,51 @@ public class OrderCancelComponent {
} }
} }
public void backFillTonnage(OrderGoods orderGoods, BigDecimal weight) { // public void backFillTonnage(OrderGoods orderGoods, BigDecimal weight) {
if (orderGoods.getOrderGoodsStatus().equals(OrderGoodsStatusEnum.Status.CANCEL.getCode()) // if (orderGoods.getOrderGoodsStatus().equals(OrderGoodsStatusEnum.Status.CANCEL.getCode())
|| orderGoods.getOrderGoodsStatus().equals(OrderGoodsStatusEnum.Status.COMPLETED.getCode()) // || orderGoods.getOrderGoodsStatus().equals(OrderGoodsStatusEnum.Status.COMPLETED.getCode())
) { // ) {
//
// //返回到货单
// orderGoodsDao.updateOrderGoodsSetResidueWeightAndAlreadyWeight(weight,weight, orderGoods.getId());
//
} // if (!orderGoods.getTruckDemand().equals(TruckDemandEnum.TruckType.PLATFORM_ANY_CAR.getCode())) {
} // for (OrderGoods orderGoods : orderGoodsList) {
// truckDemandMap.put(orderGoods.getTruckDemand(),
// truckDemandMap.get(orderGoods.getTruckDemand())
// .add(orderGoods.getResidueTransportWeight()));
// }
// } else {
// for (OrderGoods orderGoods : orderGoodsList) {
// vehicleUsageMap.put(orderGoods.getVehicleUsage(),
// vehicleUsageMap.get(orderGoods.getVehicleUsage())
// .add(orderGoods.getResidueTransportWeight()));
// }
// }
// rollbackOrderWeightParam = new Ro
// //归还吨数
// if (!orderGoods.getTruckDemand().equals(TruckDemandEnum.TruckType.PLATFORM_ANY_CAR.getCode())) {
// rollbackOrderWeightParam.setOrderNo(orderNo);
// if (truckDemand.equals(TruckDemandEnum.TruckType.PLATFORM_CAR.getCode())) {
// rollbackOrderWeightParam.setResidueWeight(truckDemandMap.get(truckDemand));
// rollbackOrderWeightParam.setOwnResidueCarryWeight(BigDecimal.ZERO);
// rollbackOrderWeightParam.setPlatformResidueCarryWeight(truckDemandMap.get(truckDemand));
// }
// if (truckDemand.equals(TruckDemandEnum.TruckType.OWNER_CAR.getCode())) {
// rollbackOrderWeightParam.setResidueWeight(truckDemandMap.get(truckDemand));
// rollbackOrderWeightParam.setOwnResidueCarryWeight(truckDemandMap.get(truckDemand));
// rollbackOrderWeightParam.setPlatformResidueCarryWeight(BigDecimal.ZERO);
// }
// } else {
// BigDecimal platformResidueSum = vehicleUsageMap.get(1);
// BigDecimal ownResidueSum = vehicleUsageMap.get(2);
// BigDecimal residueSum = platformResidueSum.add(ownResidueSum);
// rollbackOrderWeightParam.setOrderNo(orderNo);
// rollbackOrderWeightParam.setResidueWeight(residueSum);
// rollbackOrderWeightParam.setPlatformResidueCarryWeight(platformResidueSum);
// rollbackOrderWeightParam.setOwnResidueCarryWeight(ownResidueSum);
// }
//
// }
// }
} }
...@@ -2,20 +2,27 @@ package com.clx.performance.controller.app; ...@@ -2,20 +2,27 @@ package com.clx.performance.controller.app;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.mapper.OrderGoodsMapper; import com.clx.performance.mapper.OrderGoodsMapper;
import com.clx.performance.model.OrderGoods;
import com.clx.performance.param.app.OrderGoodsListPageParam; import com.clx.performance.param.app.OrderGoodsListPageParam;
import com.clx.performance.service.OrderGoodsService; import com.clx.performance.service.OrderGoodsService;
import com.clx.performance.service.OrderGoodsTruckBindService;
import com.clx.performance.vo.app.OrderGoodsAPPVO; import com.clx.performance.vo.app.OrderGoodsAPPVO;
import com.clx.performance.vo.pc.OrderGoodsVO; import com.clx.performance.vo.pc.OrderGoodsVO;
import com.msl.common.base.PageData; import com.msl.common.base.PageData;
import com.msl.common.convertor.aspect.UnitCovert; import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
/** /**
* @ClassName GoodsOrderController * @ClassName GoodsOrderController
* @Description * @Description
...@@ -28,14 +35,13 @@ import org.springframework.web.bind.annotation.*; ...@@ -28,14 +35,13 @@ import org.springframework.web.bind.annotation.*;
@RestController @RestController
@RequestMapping("/app/goodsOrder") @RequestMapping("/app/goodsOrder")
@Validated @Validated
@AllArgsConstructor
@Api(tags = "APP-货单") @Api(tags = "APP-货单")
public class AppGoodsOrderController { public class AppGoodsOrderController {
@Autowired private final OrderGoodsService orderGoodsService;
OrderGoodsService orderGoodsService;
@Autowired private final OrderGoodsTruckBindService orderGoodsTruckBindService;
OrderGoodsMapper orderGoodsMapper;
@ApiOperation(value = "查看货单详情", notes = "<br>By:胡宇帆") @ApiOperation(value = "查看货单详情", notes = "<br>By:胡宇帆")
...@@ -55,10 +61,10 @@ public class AppGoodsOrderController { ...@@ -55,10 +61,10 @@ public class AppGoodsOrderController {
} }
// @ApiOperation(value = "专属货单", notes = "<br>By:胡宇帆") @ApiOperation(value = "司机端无接单位置上报", notes = "<br>By:胡宇帆")
// @PostMapping("/exclusiveOrderGoodsList") @GetMapping("/getCancelOrderGoods")
// @UnitCovert(param = false) public Result<List<OrderGoods>> getCancelOrderGoods() {
// public Result<List<OrderGoodsVO>> exclusiveOrderGoodsList(@Validated @RequestBody OrderGoodsListParam orderGoodsListParam) { UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
// return Result.ok(orderGoodsService.openOrderPageGoodsList(orderGoodsListParam)); return Result.ok(orderGoodsTruckBindService.getCancelOrderGoods(loginUserInfo.getUserNo()));
// } }
} }
...@@ -196,15 +196,5 @@ public class GoodsOrderController { ...@@ -196,15 +196,5 @@ public class GoodsOrderController {
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "司机端无接单位置上报", notes = "<br>By:胡宇帆")
@GetMapping("/getCancelOrderGoods")
public Result<List<OrderGoods>> getCancelOrderGoods(@RequestParam(value = "truckNo") String truckNo) {
LocalDateTime now = LocalDateTime.now();
return Result.ok(orderGoodsTruckBindService.getCancelOrderGoods(truckNo,
DateUtils.formatDateTime(now.plusDays(-3), "yyyy-MM-dd HH:mm:ss").get(),
DateUtils.formatDateTime(now, "yyyy-MM-dd HH:mm:ss").get()
)
);
}
} }
...@@ -38,6 +38,8 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int ...@@ -38,6 +38,8 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
void updateOrderGoodsReduceWeightAndStatus(Integer id, BigDecimal orderChildWeight, Integer orderGoodsStatus); void updateOrderGoodsReduceWeightAndStatus(Integer id, BigDecimal orderChildWeight, Integer orderGoodsStatus);
void updateOrderGoodsWeightResidueAndAlreadyAndStatus(Integer id, BigDecimal alreadyTransportWeight,BigDecimal residueTransportWeight,Integer orderGoodsStatus);
IPage<OrderGoodsAPPVO> openOrderPageGoodsList(OrderGoodsListPageParam orderGoodsListPageParam); IPage<OrderGoodsAPPVO> openOrderPageGoodsList(OrderGoodsListPageParam orderGoodsListPageParam);
IPage<OrderGoodsAPPVO> exclusiveOrderPageGoodsList(OrderGoodsListPageParam orderGoodsListPageParam, List<String> orderGoodsNoList); IPage<OrderGoodsAPPVO> exclusiveOrderPageGoodsList(OrderGoodsListPageParam orderGoodsListPageParam, List<String> orderGoodsNoList);
......
...@@ -48,7 +48,7 @@ public interface OrderGoodsTruckBindDao extends BaseDao<OrderGoodsTruckBindMappe ...@@ -48,7 +48,7 @@ public interface OrderGoodsTruckBindDao extends BaseDao<OrderGoodsTruckBindMappe
List<OrderGoodsTruckBind> selectCancelRecord(String orderGoodsNo, List<String> truckList); List<OrderGoodsTruckBind> selectCancelRecord(String orderGoodsNo, List<String> truckList);
List<OrderGoodsTruckBind> getCancelOrderGoods(String truckNo, String beginTime, String endTime); List<OrderGoodsTruckBind> getCancelOrderGoods(List<String> truckList, String beginTime, String endTime);
void deleteByOrderGoods(String orderGoodsNo); void deleteByOrderGoods(String orderGoodsNo);
} }
...@@ -78,6 +78,11 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods, ...@@ -78,6 +78,11 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
baseMapper.updateOrderGoodsWeightAndStatus(id, orderChildWeight, orderGoodsStatus); baseMapper.updateOrderGoodsWeightAndStatus(id, orderChildWeight, orderGoodsStatus);
} }
@Override
public void updateOrderGoodsWeightResidueAndAlreadyAndStatus(Integer id, BigDecimal alreadyTransportWeight,BigDecimal residueTransportWeight,Integer orderGoodsStatus) {
baseMapper.updateOrderGoodsWeightResidueAndAlreadyAndStatus(id, alreadyTransportWeight, residueTransportWeight, orderGoodsStatus);
}
@Override @Override
public IPage<OrderGoodsAPPVO> openOrderPageGoodsList(OrderGoodsListPageParam param) { public IPage<OrderGoodsAPPVO> openOrderPageGoodsList(OrderGoodsListPageParam param) {
Page<OrderGoodsAPPVO> page = Page.of(param.getPage(), param.getPageSize()); Page<OrderGoodsAPPVO> page = Page.of(param.getPage(), param.getPageSize());
......
...@@ -157,8 +157,8 @@ public class OrderGoodsTruckBindDaoImpl extends BaseDaoImpl<OrderGoodsTruckBindM ...@@ -157,8 +157,8 @@ public class OrderGoodsTruckBindDaoImpl extends BaseDaoImpl<OrderGoodsTruckBindM
} }
@Override @Override
public List<OrderGoodsTruckBind> getCancelOrderGoods(String truckNo, String beginTime, String endTime) { public List<OrderGoodsTruckBind> getCancelOrderGoods(List<String> truckList, String beginTime, String endTime) {
return baseMapper.selectList(lQrWrapper().eq(OrderGoodsTruckBind::getTruckNo, truckNo) return baseMapper.selectList(lQrWrapper().in(OrderGoodsTruckBind::getTruckNo, truckList)
.eq(OrderGoodsTruckBind::getStatus, OrderGoodsTruckBindEnum.Status.CANCEL.getCode()) .eq(OrderGoodsTruckBind::getStatus, OrderGoodsTruckBindEnum.Status.CANCEL.getCode())
.le(OrderGoodsTruckBind::getCreateTime, endTime) .le(OrderGoodsTruckBind::getCreateTime, endTime)
.ge(OrderGoodsTruckBind::getCreateTime, beginTime) .ge(OrderGoodsTruckBind::getCreateTime, beginTime)
......
...@@ -33,11 +33,8 @@ public class OrderCancelHandler { ...@@ -33,11 +33,8 @@ public class OrderCancelHandler {
public void onMessage(String message) { public void onMessage(String message) {
log.info("处理订单取消监听器执行,订单No为{}", message); log.info("处理订单取消监听器执行,订单No为{}", message);
OrderCancelParam param = JSONUtil.toBean(message, OrderCancelParam.class); OrderCancelParam param = JSONUtil.toBean(message, OrderCancelParam.class);
if (ObjectUtil.equals(param.getCancelType(), 1)) {
orderCancelService.orderCancelProcess(param); orderCancelService.orderCancelProcess(param);
} else {
orderCancelService.orderCancelProcess(param);
}
// //货主端取消订单进行违约计费 // //货主端取消订单进行违约计费
// if(Objects.equals(param.getCreateByType(), RoleEnum.Type.OWNER)){ // if(Objects.equals(param.getCreateByType(), RoleEnum.Type.OWNER)){
// breakContractSettlementOwnerService.saveSettlementOwnerForCancelOrder(param.getOrderNo()); // breakContractSettlementOwnerService.saveSettlementOwnerForCancelOrder(param.getOrderNo());
......
...@@ -42,6 +42,14 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> { ...@@ -42,6 +42,14 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
" where id = #{id}") " where id = #{id}")
void updateOrderGoodsWeightAndStatus(@Param("id") Integer id, @Param("weight") BigDecimal orderChildWeight, @Param("orderGoodsStatus") Integer orderGoodsStatus); void updateOrderGoodsWeightAndStatus(@Param("id") Integer id, @Param("weight") BigDecimal orderChildWeight, @Param("orderGoodsStatus") Integer orderGoodsStatus);
@Update(" update order_goods set " +
" residue_transport_weight = residue_transport_weight-#{residueTransportWeight}," +
" already_transport_weight = already_transport_weight+#{alreadyTransportWeight}," +
"order_goods_status = #{orderGoodsStatus} " +
" where id = #{id}")
void updateOrderGoodsWeightResidueAndAlreadyAndStatus(@Param("id") Integer id, @Param("alreadyTransportWeight") BigDecimal alreadyTransportWeight, @Param("residueTransportWeight") BigDecimal residueTransportWeight,@Param("orderGoodsStatus") Integer orderGoodsStatus);
@SelectProvider(type = OrderGoodsSqlProvider.class, method = "openOrderPageGoodsList") @SelectProvider(type = OrderGoodsSqlProvider.class, method = "openOrderPageGoodsList")
IPage<OrderGoodsAPPVO> openOrderPageGoodsList(Page<OrderGoodsAPPVO> page); IPage<OrderGoodsAPPVO> openOrderPageGoodsList(Page<OrderGoodsAPPVO> page);
......
...@@ -8,5 +8,5 @@ public interface OrderGoodsTruckBindService { ...@@ -8,5 +8,5 @@ public interface OrderGoodsTruckBindService {
List<Integer> getTrucksByOrderGoodsNo(String orderGoodsNo); List<Integer> getTrucksByOrderGoodsNo(String orderGoodsNo);
List<OrderGoods> getCancelOrderGoods(String truckNo, String beginTime, String endTime); List<OrderGoods> getCancelOrderGoods(Long userNo);
} }
...@@ -288,11 +288,20 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -288,11 +288,20 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setTruckModel(driverTruckInfo.getModel()); orderChild.setTruckModel(driverTruckInfo.getModel());
Integer overWeight = orderInfo.getOverWeight(); Integer overWeight = orderInfo.getOverWeight();
if(Objects.equals(overWeight,OrderGoodsOverWeightEnum.NO.getCode())){ if(Objects.equals(overWeight,OrderGoodsOverWeightEnum.NO.getCode())){
if (orderGoods.getResidueTransportWeight().compareTo(new BigDecimal(33)) < 0) {
orderChild.setWeight(orderGoods.getResidueTransportWeight());
} else {
orderChild.setWeight(new BigDecimal(33)); orderChild.setWeight(new BigDecimal(33));
}else{ }
} else{
if (orderGoods.getResidueTransportWeight().compareTo(new BigDecimal(50)) < 0) {
orderChild.setWeight(orderGoods.getResidueTransportWeight());
} else {
orderChild.setWeight(new BigDecimal(50)); orderChild.setWeight(new BigDecimal(50));
} }
}
//orderChild.setWeight(orderChild.getTruckLoad()); //orderChild.setWeight(orderChild.getTruckLoad());
orderChild.setFreight(orderChildFreightCalc(orderChild)); orderChild.setFreight(orderChildFreightCalc(orderChild));
orderChild.setPayTime(now); orderChild.setPayTime(now);
......
...@@ -132,6 +132,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService { ...@@ -132,6 +132,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
//当前订单已经取消或完结 //当前订单已经取消或完结
} else { } else {
orderGoodsDao.updateOrderGoodsReduceWeightAndStatus(orderGoods.getId(), orderChildWeight, orderGoodsStatus); orderGoodsDao.updateOrderGoodsReduceWeightAndStatus(orderGoods.getId(), orderChildWeight, orderGoodsStatus);
} }
...@@ -458,7 +459,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService { ...@@ -458,7 +459,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
Integer orderGoodsStatus = OrderGoodsStatusEnum.Status.CANCEL.getCode(); Integer orderGoodsStatus = OrderGoodsStatusEnum.Status.CANCEL.getCode();
switch (cancelOperateType) { switch (cancelOperateType) {
case 1: case 1:
orderChildList = orderChildDao.selectResidueWeightByOrderGoodsNo(orderGoods.getOrderGoodsNo(), null); orderChildList = orderChildDao.selectResidueWeightByOrderGoodsNo(orderGoods.getOrderGoodsNo(), OrderChildEnum.Status.DRIVER_CANCEL.getCode());
if (CollectionUtils.isNotEmpty(orderChildList)) { if (CollectionUtils.isNotEmpty(orderChildList)) {
throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "当前货单已产生运单"); throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "当前货单已产生运单");
} }
......
...@@ -3,14 +3,21 @@ package com.clx.performance.service.impl; ...@@ -3,14 +3,21 @@ package com.clx.performance.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.clx.performance.dao.OrderGoodsDao; import com.clx.performance.dao.OrderGoodsDao;
import com.clx.performance.dao.OrderGoodsTruckBindDao; import com.clx.performance.dao.OrderGoodsTruckBindDao;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.model.OrderGoods; import com.clx.performance.model.OrderGoods;
import com.clx.performance.model.OrderGoodsTruckBind; import com.clx.performance.model.OrderGoodsTruckBind;
import com.clx.performance.service.OrderGoodsTruckBindService; import com.clx.performance.service.OrderGoodsTruckBindService;
import com.clx.user.feign.TruckFeign;
import com.clx.user.vo.app.driver.truck.DriverTruckAppVo;
import com.msl.common.exception.ServiceSystemException;
import com.msl.common.result.Result;
import com.msl.common.utils.DateUtils;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -24,6 +31,7 @@ public class OrderGoodsTruckBindServiceImpl implements OrderGoodsTruckBindServic ...@@ -24,6 +31,7 @@ public class OrderGoodsTruckBindServiceImpl implements OrderGoodsTruckBindServic
private final OrderGoodsDao orderGoodsDao; private final OrderGoodsDao orderGoodsDao;
private final TruckFeign truckFeign;
@Override @Override
public List<Integer> getTrucksByOrderGoodsNo(String orderGoodsNo) { public List<Integer> getTrucksByOrderGoodsNo(String orderGoodsNo) {
...@@ -31,8 +39,18 @@ public class OrderGoodsTruckBindServiceImpl implements OrderGoodsTruckBindServic ...@@ -31,8 +39,18 @@ public class OrderGoodsTruckBindServiceImpl implements OrderGoodsTruckBindServic
} }
@Override @Override
public List<OrderGoods> getCancelOrderGoods(String truckNo, String beginTime, String endTime) { public List<OrderGoods> getCancelOrderGoods(Long userNo) {
List<OrderGoodsTruckBind> list = orderGoodsTruckBindDao.getCancelOrderGoods(truckNo, beginTime, endTime); Result<List<DriverTruckAppVo>> result = truckFeign.driverTruckList(userNo);
if (!result.succeed() || CollectionUtil.isEmpty(result.getData())) {
throw new ServiceSystemException(PerformanceResultEnum.DATA_NOT_FIND);
}
List<String> truckList = result.getData().stream().map(DriverTruckAppVo::getTruckNo).collect(Collectors.toList());
LocalDateTime now = LocalDateTime.now();
List<OrderGoodsTruckBind> list = orderGoodsTruckBindDao.getCancelOrderGoods(truckList,
DateUtils.formatDateTime(now.plusDays(-3), "yyyy-MM-dd HH:mm:ss").get(),
DateUtils.formatDateTime(now, "yyyy-MM-dd HH:mm:ss").get());
if (CollectionUtil.isEmpty(list)) { if (CollectionUtil.isEmpty(list)) {
return null; return null;
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论