提交 1d32573e authored 作者: wejack639's avatar wejack639

feature(运单):运单详情接口和货单详情接口增加货源地信息

......@@ -43,10 +43,10 @@ public enum PerformanceProgressEnum {
TODAY_EXPECT_COMPLETE(1, "今日预计完成吨数"),
TRADE_REQUIRE_ARRIVE_STATION_TIME(2, "交易要求到站时间"),
TRANSPORT_EXPECT_ARRIVE_STATION_TIME(3, "调度备注/跟进措施"),
TRANSPORT_EXPECT_ARRIVE_STATION_TIME(3, "物流预计到站时间"),
ABNORMAL_REMARK(4, "异常备注"),
PERFORMANCE_ABNORMAL_REASON(5, "履约异常原因"),
DISPATCH_FOLLOW(6, "物流预计到站时间"),
DISPATCH_FOLLOW(6, "调度备注/跟进措施"),
;
private final Integer code;
......
......@@ -230,4 +230,21 @@ public class OrderChildVO {
@ApiModelProperty("接单保证金 平台服务费费率 弹窗和文案显示 0 不显示 1 显示")
private Integer goodsOrderDetailShow = 0;
/* 20240730 增加货源地信息 */
@ApiModelProperty(value = "货源地现场联系人")
private String sendContact;
@ApiModelProperty(value = "货源地联系人手机号")
private String sendContactPhone;
@ApiModelProperty(value = "发货-是否需要系统排队 0 否 1 是")
private Integer sendWaitSystem;
@ApiModelProperty(value = "发货-排队系统名称")
private String sendWaitSystemName;
@ApiModelProperty(value = "发货-排队系统形式 1:小程序 2:app")
private Integer sendWaitMode;
}
\ No newline at end of file
......@@ -170,4 +170,20 @@ public class OrderGoodsVO {
@ApiModelProperty("接单保证金 平台服务费费率 弹窗和文案显示 0 不显示 1 显示")
private Integer goodsOrderDetailShow = 0;
/* 20240730 增加货源地信息 */
@ApiModelProperty(value = "货源地现场联系人")
private String sendContact;
@ApiModelProperty(value = "货源地联系人手机号")
private String sendContactPhone;
@ApiModelProperty(value = "发货-是否需要系统排队 0 否 1 是")
private Integer sendWaitSystem;
@ApiModelProperty(value = "发货-排队系统名称")
private String sendWaitSystemName;
@ApiModelProperty(value = "发货-排队系统形式 1:小程序 2:app")
private Integer sendWaitMode;
}
\ No newline at end of file
package com.clx.performance.vo.pc;
import com.clx.performance.enums.OrderEnum;
import com.msl.common.convertor.type.MoneyOutConvert;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
......@@ -81,6 +82,7 @@ public class PerformanceProgressVO{
}
@ApiModelProperty("司机运费")
@MoneyOutConvert
private BigDecimal driverFreightPrice;
......@@ -97,6 +99,9 @@ public class PerformanceProgressVO{
@ApiModelProperty("接单车数")
private Integer orderedTruckNum;
@ApiModelProperty("接单吨数")
private BigDecimal orderedWeight;
@ApiModelProperty("到达货源地车数")
private Integer arriveSendTruckNum;
......@@ -171,6 +176,7 @@ public class PerformanceProgressVO{
@ApiModelProperty("测算运费")
@MoneyOutConvert
private BigDecimal predictionFreightPrice;
......
package com.clx.performance.constant;
import java.math.BigDecimal;
/**
* @ClassName BusinessConstants
* @Description
* @Author kavin
* @Date 2024/7/22 15:26
* @Version 1.0
*/
public class BusinessConstants {
//承运订单需要减去的吨数
public static final BigDecimal ORDER_SUB_WEIGHT = new BigDecimal("35");
}
......@@ -121,6 +121,7 @@ public class CarrierOrderChildController {
@ApiOperation(value = "履约进度表-历史线路拉运量", notes = "<br>By:l刘海泉")
@GetMapping("/getHistoryLineTransportVolume")
@UnitCovert(param = false)
public Result<List<HistoryLineTranVolumeChartVO>> getHistoryLineTransportVolume(@NotBlank(message = "订单编号不能为空") String orderNo) {
return Result.ok(orderChildService.getHistoryLineTransportVolume(orderNo));
}
......
......@@ -19,4 +19,6 @@ public interface PerformanceProgressDao extends BaseDao<PerformanceProgressMappe
void updateRecordOrder(Long seq,boolean isUp);
long getMaxSeq();
void updatePerformanceProgress(PerformanceProgress update);
}
......@@ -683,6 +683,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public List<OrderChild> listCompleteByOrderNos(List<String> orderNoList) {
return list(lQrWrapper()
.in(OrderChild :: getOrderNo,orderNoList)
.ge(OrderChild :: getStatus,OrderChildEnum.Status.LOAD.getCode())
.le(OrderChild :: getStatus,OrderChildEnum.Status.COMPLETE.getCode())
);
}
......
......@@ -47,4 +47,17 @@ public class PerformanceProgressDaoImpl extends BaseDaoImpl<PerformanceProgressM
LambdaQueryWrapper<PerformanceProgress> query = new LambdaQueryWrapper<>();
return baseMapper.selectCount(query);
}
@Override
public void updatePerformanceProgress(PerformanceProgress update) {
LambdaUpdateWrapper<PerformanceProgress> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(PerformanceProgress :: getId,update.getId());
updateWrapper.set(PerformanceProgress :: getTodayExpectComplete,update.getTodayExpectComplete());
updateWrapper.set(PerformanceProgress :: getTransportExpectArriveStationTime,update.getTransportExpectArriveStationTime());
updateWrapper.set(PerformanceProgress :: getTradeRequireArriveStationTime,update.getTradeRequireArriveStationTime());
updateWrapper.set(PerformanceProgress :: getAbnormalRemark,update.getAbnormalRemark());
updateWrapper.set(PerformanceProgress :: getPerformanceAbnormalReason,update.getPerformanceAbnormalReason());
updateWrapper.set(PerformanceProgress :: getDispatchFollow,update.getDispatchFollow());
baseMapper.update(null,updateWrapper);
}
}
......@@ -11,5 +11,8 @@ public interface AddressService {
Optional<SystemAddressVO> getSystemAddress(Integer addressId);
String generateAddressDetail(String ... args);
}
......@@ -8,6 +8,7 @@ import com.msl.common.base.Optional;
import com.msl.common.result.Result;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@Service
......@@ -29,4 +30,18 @@ public class AddressServiceImpl implements AddressService {
.filter(Result::succeed)
.map(Result::getData);
}
@Override
public String generateAddressDetail(String ... args) {
StringBuilder sb = new StringBuilder();
String detail = args[args.length-1];
for (String arg : args) {
if(StringUtils.isNotBlank(arg) && !detail.contains(arg)){
sb.append(arg);
}
}
sb.append(detail);
return sb.toString();
}
}
......@@ -131,7 +131,7 @@ public class OrderGoodsDtsListener {
//货单状态发生变化(从已挂单变成挂单中)
(
(Objects.equals(before.getOrderGoodsStatus(),OrderGoodsStatusEnum.Status.CREATED.getCode()) &&
Objects.equals(before.getOrderGoodsStatus(),OrderGoodsStatusEnum.Status.PAYING.getCode()))
Objects.equals(after.getOrderGoodsStatus(),OrderGoodsStatusEnum.Status.PAYING.getCode()))
|| //挂单中之后的状态的挂单运费发生变化
(after.getOrderGoodsStatus() >= OrderGoodsStatusEnum.Status.PAYING.getCode() &&
!Objects.equals(before.getPendingOrderFreight(),after.getPendingOrderFreight()))
......
......@@ -96,7 +96,7 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
@Param("receiveAddressId") Integer receiveAddressId);
@SelectProvider(type = OrderGoodsSqlProvider.class, method = "indexOrderGoodsListSearch")
IPage<OrderGoodsAPPVO> indexOrderGoodsListSearch(@Param("page")Page<OrderGoodsAPPVO> page, @Param("param")AppGoodsOrderSearchParam param);
IPage<OrderGoodsAPPVO> indexOrderGoodsListSearch(@Param("page")Page<OrderGoodsAPPVO> page, @Param("param") AppGoodsOrderSearchParam param);
@SelectProvider(type = OrderGoodsSqlProvider.class, method = "queryProcessFleetOpenTruckList")
......
......@@ -101,6 +101,11 @@ public class PerformanceProgress implements HasKey<Integer> {
@ApiModelProperty("接单车数")
private Integer orderedTruckNum;
@TableField("ordered_weight")
@ApiModelProperty("接单吨数")
private BigDecimal orderedWeight;
@TableField("arrive_send_truck_num")
@ApiModelProperty("到达货源地车数")
private Integer arriveSendTruckNum;
......@@ -117,14 +122,6 @@ public class PerformanceProgress implements HasKey<Integer> {
@ApiModelProperty("在途车数")
private Integer onTheWayTruckNum;
@TableField("ordered_rate")
@ApiModelProperty("接单率")
private BigDecimal orderedRate;
@TableField("task_complete_ratio")
@ApiModelProperty("任务完成率")
private BigDecimal taskCompleteRatio;
@TableField("sum_load_weight")
@ApiModelProperty("矿发吨数")
private BigDecimal sumLoadWeight;
......
......@@ -9,6 +9,7 @@ import com.clx.order.enums.ResultEnum;
import com.clx.order.enums.*;
import com.clx.order.feign.OrderFeign;
import com.clx.order.vo.feign.FeignAddressVO;
import com.clx.order.vo.feign.FeignOrderDetailVO;
import com.clx.order.vo.feign.FeignOrderInfoVO;
import com.clx.order.vo.feign.FeignOrderVO;
import com.clx.order.vo.pc.carrier.InvoicingCompanyVO;
......@@ -32,7 +33,10 @@ import com.clx.performance.enums.*;
import com.clx.performance.enums.settle.SettlementWayEnum;
import com.clx.performance.extranal.order.InvoicingCompanyService;
import com.clx.performance.extranal.order.QuotationService;
import com.clx.performance.extranal.user.*;
import com.clx.performance.extranal.user.AddressService;
import com.clx.performance.extranal.user.DriverService;
import com.clx.performance.extranal.user.OrderService;
import com.clx.performance.extranal.user.OwnerInfoService;
import com.clx.performance.feign.FeignPaymentService;
import com.clx.performance.model.*;
import com.clx.performance.model.breakcontract.BreakContractDriverRecord;
......@@ -60,8 +64,6 @@ import com.clx.performance.utils.zjxl.ZjxlGpsService;
import com.clx.performance.vo.app.*;
import com.clx.performance.vo.app.owner.OwnerOrderChildVO;
import com.clx.performance.vo.pc.*;
import com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverVO;
import com.clx.performance.vo.pc.carrier.settle.CarrierPagePlatformServiceFeeConfigVO;
import com.clx.user.enums.driver.DriverInfoEnum;
import com.clx.user.feign.DocumentFeign;
import com.clx.user.vo.feign.DriverTruckInfoFeignVo;
......@@ -88,8 +90,8 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.apache.commons.lang3.math.NumberUtils;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.springframework.amqp.core.AmqpTemplate;
......@@ -1724,6 +1726,18 @@ public class OrderChildServiceImpl implements OrderChildService {
}
//查询进行中的运单车辆是否开启了中交兴路
result.setNotOpenZJXLMsg(isOpenZJXL(orderChild.getStatus(),orderChild.getTruckNo()));
// 设置货源地信息
Result<FeignOrderDetailVO> orderDetailFeignResult = orderFeign.getOrderDetail(orderChild.getOrderNo());
if (orderDetailFeignResult != null && orderDetailFeignResult.getData() != null) {
FeignOrderDetailVO orderDetailFeign = orderDetailFeignResult.getData();
//货源地信息
result.setSendContact(orderDetailFeign.getSendContact());
result.setSendContactPhone(orderDetailFeign.getSendContactPhone());
result.setSendWaitSystem(orderDetailFeign.getSendWaitSystem());
result.setSendWaitSystemName(orderDetailFeign.getSendWaitSystemName());
result.setSendWaitMode(orderDetailFeign.getSendWaitMode());
}
return result;
}
......
......@@ -11,6 +11,7 @@ import com.clx.order.enums.VehicleUsageEnum;
import com.clx.order.feign.OrderFeign;
import com.clx.order.param.feign.OrderCancelReasonParam;
import com.clx.order.param.feign.RollbackOrderWeightParam;
import com.clx.order.vo.feign.FeignOrderDetailVO;
import com.clx.order.vo.feign.FeignOrderVO;
import com.clx.order.vo.pc.owner.OwnerQuotationDetailVO;
import com.clx.performance.component.GoodsOrderTruckRecordComponent;
......@@ -177,7 +178,16 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
InvoicingCompanyEnum.TaxType.TAX_EXCLUDED.getCode())) {
orderGoodsVO.setGoodsOrderDetailShow(1);
}
Result<FeignOrderDetailVO> orderDetailFeignResult = orderFeign.getOrderDetail(orderNo);
if (orderDetailFeignResult != null && orderDetailFeignResult.getData() != null) {
FeignOrderDetailVO orderDetailFeign = orderDetailFeignResult.getData();
//货源地信息
orderGoodsVO.setSendContact(orderDetailFeign.getSendContact());
orderGoodsVO.setSendContactPhone(orderDetailFeign.getSendContactPhone());
orderGoodsVO.setSendWaitSystem(orderDetailFeign.getSendWaitSystem());
orderGoodsVO.setSendWaitSystemName(orderDetailFeign.getSendWaitSystemName());
orderGoodsVO.setSendWaitMode(orderDetailFeign.getSendWaitMode());
}
return orderGoodsVO;
}
......
......@@ -6,6 +6,8 @@ import com.clx.performance.service.PerformanceProgressLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author kavin
* Date 2024-07-12
......@@ -20,7 +22,7 @@ public class PerformanceProgressLogServiceImpl implements PerformanceProgressLo
PerformanceProgressLog log = new PerformanceProgressLog();
log.setOrderNo(orderNo);
log.setOperateType(logType.getCode());
log.setOperateContent(logType.getName() + ":" + content);
log.setOperateContent(logType.getName() + ":" + (Objects.isNull(content)?"-":content));
log.setCreateBy(userNo);
log.setCreateName(userName);
return log;
......
package com.clx.performance.struct;
import com.clx.performance.model.PerformanceProgress;
import com.clx.performance.param.pc.carrier.UpdatePerformanceProgressParam;
import com.clx.performance.vo.pc.PerformanceProgressDetailVO;
import com.clx.performance.vo.pc.PerformanceProgressVO;
import com.msl.common.utils.DateStructUtil;
......@@ -15,4 +16,5 @@ public interface PerformanceProgressStruct {
PerformanceProgressDetailVO convert(PerformanceProgress item);
PerformanceProgress convertParam(UpdatePerformanceProgressParam param);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论