提交 9a7409bf authored 作者: huningning's avatar huningning

Merge branch 'v6.4_transportation_20231110' into test

......@@ -3,10 +3,12 @@ package com.clx.performance.feign;
import com.clx.performance.param.app.collect.CollectTruckParam;
import com.clx.performance.param.feign.OrderAdjustTonnageDownParam;
import com.clx.performance.param.pc.OrderCancelFeignParam;
import com.clx.performance.param.pc.OrderChildReportParam;
import com.clx.performance.param.pc.owner.FrozenAccountParam;
import com.clx.performance.param.pc.owner.ThawAccountParam;
import com.clx.performance.param.pc.owner.UpdateStatusParam;
import com.clx.performance.vo.app.collect.AppCollectTruckVO;
import com.clx.performance.vo.feign.FreightEstimateVO;
import com.clx.performance.vo.feign.OrderGoodsFeignVO;
import com.clx.performance.vo.pc.OwnerAccountAllVO;
import com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRuleVO;
......@@ -101,4 +103,8 @@ public interface PerformanceFeign {
@PostMapping(value = {"clx-performance/feign/truck/listCollectTruck"})
Result<List<AppCollectTruckVO>> listCollectTruck(@RequestBody CollectTruckParam param);
@PostMapping(value = {"clx-performance/feign/orderGoods/listFreightEstimate"})
Result<FreightEstimateVO> listFreightEstimate(@RequestBody OrderChildReportParam param);
}
package com.clx.performance.param.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class OrderChildReportParam {
@ApiModelProperty(value = "发货地址id 必填")
@NotNull(message = "发货地址id不能为空")
private Integer sendAddressId;
@ApiModelProperty(value = "收货地址id 必填")
@NotNull(message = "收货地址id不能为空")
private Integer receiveAddressId;
@ApiModelProperty(value = "开始时间 必填")
@NotNull(message = "开始时间")
private String beginTime;
}
package com.clx.performance.vo.feign;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
import java.util.List;
@ApiModel(description = "运费预估")
@Getter
@Setter
@ToString
@NoArgsConstructor
public class FreightEstimateVO {
private List<Double> freightPriceList;
private List<Double> lossNet;
}
\ No newline at end of file
package com.clx.performance.controller.feign;
import com.clx.performance.param.pc.OrderChildReportParam;
import com.clx.performance.service.OrderGoodsService;
import com.clx.performance.vo.feign.FreightEstimateVO;
import com.clx.performance.vo.feign.OrderGoodsFeignVO;
import com.msl.common.result.Result;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
......@@ -41,4 +40,10 @@ public class OrderGoodsFeignController {
return Result.ok(orderGoodsService.updateSystemAddressId(ownerAddressId,systemAddressId));
}
@PostMapping({"/listFreightEstimate"})
Result<FreightEstimateVO> listFreightEstimate(@RequestBody OrderChildReportParam param) {
return Result.ok(orderGoodsService.listFreightEstimate(param));
}
}
......@@ -6,10 +6,7 @@ import com.clx.performance.mapper.OrderChildMapper;
import com.clx.performance.model.OrderChild;
import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.pc.OrderChildCancelRecordParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PageMonitorOrderChildQCParam;
import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.param.pc.*;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
......@@ -153,4 +150,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
IPage<OrderChildVO> orderChildCancelRecord(OrderChildCancelRecordParam param);
List<OrderChild> selectInOrderChildNoList(List<String> childNoList);
List<Double> getLossNet(OrderChildReportParam param);
}
......@@ -93,4 +93,7 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
BigDecimal sumAlreadyTransportWeightByOrderNo(String orderNo);
List<Double> getFreightPrice( Integer sendAddressId,Integer receiveAddressId);
}
......@@ -11,10 +11,7 @@ import com.clx.performance.mapper.OrderChildMapper;
import com.clx.performance.model.OrderChild;
import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.pc.OrderChildCancelRecordParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PageMonitorOrderChildQCParam;
import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.param.pc.*;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.OrderGoodsVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
......@@ -452,5 +449,8 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.set(OrderChild::getReceiveSystemAddressId, systemAddressId)
);
}
@Override
public List<Double> getLossNet(OrderChildReportParam param) {
return baseMapper.getLossNet(param);
}
}
......@@ -251,7 +251,7 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
@Override
public BigDecimal getAlreadyTransportWeight(String orderNo) {
return baseMapper.getAlreadyTransportWeight(orderNo);
public List<Double> getFreightPrice( Integer sendAddressId,Integer receiveAddressId) {
return baseMapper.getFreightPrice(sendAddressId,receiveAddressId);
}
}
......@@ -7,6 +7,7 @@ import com.clx.performance.model.OrderChild;
import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.pc.OrderChildCancelRecordParam;
import com.clx.performance.param.pc.OrderChildReportParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.sqlProvider.OrderChildSqlProvider;
......@@ -81,4 +82,7 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
@SelectProvider(type = OrderChildSqlProvider.class, method = "orderChildCancelRecord")
IPage<OrderChildVO> orderChildCancelRecord(@Param("page")Page<OrderChildVO> page, @Param(value = "param") OrderChildCancelRecordParam param);
@SelectProvider(type = OrderChildSqlProvider.class, method = "getLossNet")
List<Double> getLossNet(@Param("param") OrderChildReportParam param);
}
\ No newline at end of file
......@@ -83,4 +83,10 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
@Select("select sum(already_transport_weight) from order_goods where order_no=#{orderNo}")
BigDecimal sumAlreadyTransportWeightByOrderNo(@Param("orderNo")String orderNo);
@Select("select pending_order_freight from order_goods where " +
" send_address_id = #{sendAddressId} and" +
" receive_address_id = #{receiveAddressId} order by id desc limit 10 ")
List<Double> getFreightPrice(@Param("sendAddressId") Integer sendAddressId,
@Param("receiveAddressId") Integer receiveAddressId);
}
......@@ -3,16 +3,15 @@ package com.clx.performance.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.model.OrderChild;
import com.clx.performance.param.pc.OrderGoodsCancelParam;
import com.clx.performance.param.pc.UpdateEditOrderGoodsParam;
import com.clx.performance.param.pc.PageOrderGoodsListParam;
import com.clx.performance.param.pc.*;
import com.clx.performance.model.OrderGoods;
import com.clx.performance.param.app.OrderGoodsListPageParam;
import com.clx.performance.param.pc.UpdateOrderGoodsPriceParam;
import com.clx.performance.vo.app.OrderGoodsAPPVO;
import com.clx.performance.vo.feign.FreightEstimateVO;
import com.clx.performance.vo.feign.OrderGoodsFeignVO;
import com.clx.performance.vo.pc.OrderGoodsEditVO;
import com.clx.performance.vo.pc.OrderGoodsVO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
......@@ -92,4 +91,6 @@ public interface OrderGoodsService {
OrderGoodsEditVO findOrderGoodsById(Integer id);
Boolean updateSystemAddressId( Integer ownerAddressId, Integer systemAddressId);
FreightEstimateVO listFreightEstimate(OrderChildReportParam param);
}
......@@ -12,8 +12,7 @@ import com.clx.order.param.feign.OrderCancelReasonParam;
import com.clx.order.param.feign.RollbackOrderWeightParam;
import com.clx.performance.component.OrderCancelComponent;
import com.clx.performance.extranal.user.DriverService;
import com.clx.performance.param.pc.OrderGoodsEditParams;
import com.clx.performance.param.pc.PageOrderGoodsListParam;
import com.clx.performance.param.pc.*;
import com.clx.order.vo.feign.FeignOrderVO;
import com.clx.performance.component.GoodsOrderTruckRecordComponent;
import com.clx.performance.component.OrderGoodsStatusLazyComponent;
......@@ -27,13 +26,11 @@ import com.clx.performance.model.OrderGoods;
import com.clx.performance.model.OrderGoodsDriverTruck;
import com.clx.performance.model.OrderGoodsTruckBind;
import com.clx.performance.param.app.OrderGoodsListPageParam;
import com.clx.performance.param.pc.OrderGoodsCancelParam;
import com.clx.performance.param.pc.UpdateEditOrderGoodsParam;
import com.clx.performance.param.pc.UpdateOrderGoodsPriceParam;
import com.clx.performance.service.*;
import com.clx.performance.service.child.OrderChildPostService;
import com.clx.performance.struct.OrderGoodsStruct;
import com.clx.performance.vo.app.OrderGoodsAPPVO;
import com.clx.performance.vo.feign.FreightEstimateVO;
import com.clx.performance.vo.feign.OrderGoodsFeignVO;
import com.clx.performance.vo.pc.OrderGoodsEditVO;
import com.clx.performance.vo.pc.OrderGoodsVO;
......@@ -737,4 +734,14 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
return true;
}
@Override
public FreightEstimateVO listFreightEstimate(OrderChildReportParam param) {
List<Double> lossNet = orderChildDao.getLossNet(param);
List<Double> freightPrice = orderGoodsDao.getFreightPrice(param.getSendAddressId(), param.getReceiveAddressId());
FreightEstimateVO freightEstimateVO= new FreightEstimateVO();
freightEstimateVO.setLossNet(lossNet);
freightEstimateVO.setFreightPriceList(freightPrice);
return freightEstimateVO;
}
}
......@@ -6,6 +6,7 @@ import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.pc.OrderChildCancelRecordParam;
import com.clx.performance.param.pc.OrderChildReportParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.vo.app.OrderChildVO;
......@@ -200,4 +201,21 @@ public class OrderChildSqlProvider {
}
public String getLossNet(@Param("orderChildNo") OrderChildReportParam param) {
return new SQL(){{
SELECT("IF (( a.unload_net < a.load_net ),( a.load_net - a.unload_net ), 0 ) as lossNet "
);
FROM("order_child a ");
WHERE("a.status in (" + StringUtils.join(OrderChildEnum.FINISH_lIST, ",")+")");
WHERE("a.receive_address_id = " + param.getReceiveAddressId());
WHERE("a.send_address_id = " + param.getSendAddressId());
WHERE("a.pay_time >= " +param.getBeginTime());
}}.toString();
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论