Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
21a6a1c3
提交
21a6a1c3
authored
11月 01, 2023
作者:
huyufan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
处理BUg
上级
acfa365b
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
50 行增加
和
39 行删除
+50
-39
OrderGoodsStatusLazyComponent.java
.../performance/component/OrderGoodsStatusLazyComponent.java
+9
-0
OrderCancelServiceImpl.java
.../clx/performance/service/impl/OrderCancelServiceImpl.java
+41
-39
没有找到文件。
performance-web/src/main/java/com/clx/performance/component/OrderGoodsStatusLazyComponent.java
浏览文件 @
21a6a1c3
...
@@ -12,8 +12,10 @@ import com.clx.performance.enums.OrderChildEnum;
...
@@ -12,8 +12,10 @@ import com.clx.performance.enums.OrderChildEnum;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsTruckBindEnum
;
import
com.clx.performance.enums.OrderGoodsTruckBindEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
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
;
import
com.clx.user.enums.driver.DriverInfoEnum
;
import
com.msl.common.base.Optional
;
import
com.msl.common.base.Optional
;
import
com.xxl.job.core.handler.annotation.XxlJob
;
import
com.xxl.job.core.handler.annotation.XxlJob
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
...
@@ -49,6 +51,8 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
...
@@ -49,6 +51,8 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
private
final
OrderChildDao
orderChildDao
;
private
final
OrderChildDao
orderChildDao
;
private
final
DriverService
driverService
;
//根据货单最晚接单时间处理
//根据货单最晚接单时间处理
public
void
expireProduceByLastOrderTime
(
LocalDateTime
localDateTime
,
String
orderGoodsNo
)
{
public
void
expireProduceByLastOrderTime
(
LocalDateTime
localDateTime
,
String
orderGoodsNo
)
{
redisTemplate
.
opsForZSet
().
add
(
RedisConstants
.
ORDER_GOODS_STATUS_LAZY_LAST_ORDER_TIME
,
orderGoodsNo
,
localDateTime
.
toInstant
(
ZoneOffset
.
of
(
"+8"
)).
toEpochMilli
());
redisTemplate
.
opsForZSet
().
add
(
RedisConstants
.
ORDER_GOODS_STATUS_LAZY_LAST_ORDER_TIME
,
orderGoodsNo
,
localDateTime
.
toInstant
(
ZoneOffset
.
of
(
"+8"
)).
toEpochMilli
());
...
@@ -198,7 +202,12 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
...
@@ -198,7 +202,12 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
childSum
=
childSum
.
add
(
orderChild
.
getWeight
());
childSum
=
childSum
.
add
(
orderChild
.
getWeight
());
ids
.
add
(
orderChild
.
getId
());
ids
.
add
(
orderChild
.
getId
());
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
}
}
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
ids
);
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
ids
);
RollbackOrderWeightParam
param
=
new
RollbackOrderWeightParam
();
RollbackOrderWeightParam
param
=
new
RollbackOrderWeightParam
();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderCancelServiceImpl.java
浏览文件 @
21a6a1c3
...
@@ -14,11 +14,13 @@ import com.clx.performance.enums.OrderChildEnum;
...
@@ -14,11 +14,13 @@ import com.clx.performance.enums.OrderChildEnum;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
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
;
import
com.clx.performance.param.mq.OrderCancelMqParam
;
import
com.clx.performance.param.mq.OrderCancelMqParam
;
import
com.clx.performance.param.pc.OrderCancelParam
;
import
com.clx.performance.param.pc.OrderCancelParam
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.user.enums.driver.DriverInfoEnum
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.msl.common.result.Result
;
import
com.msl.common.result.Result
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.data.UserSessionData
;
...
@@ -52,6 +54,8 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -52,6 +54,8 @@ public class OrderCancelServiceImpl implements OrderCancelService {
private
final
RabbitTemplate
rabbitTemplate
;
private
final
RabbitTemplate
rabbitTemplate
;
private
final
DriverService
driverService
;
//
//
// @Override
// @Override
// @Transactional(rollbackFor = Exception.class)
// @Transactional(rollbackFor = Exception.class)
...
@@ -309,8 +313,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -309,8 +313,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
//FeignOrderVO orderInfoFeign = orderFeign.getOrderInfoFeign(orderNo);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
//未产生货单
//未产生货单
...
@@ -319,15 +321,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -319,15 +321,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
}
this
.
ownerCancelOrder
(
orderNo
);
this
.
ownerCancelOrder
(
orderNo
);
// log.info("执行货主订单取消前置:更改相关状态完毕,开始执行吨数回填,发送MQ消息,订单No {}", orderNo);
// OrderCancelMqParam mqParam = new OrderCancelMqParam();
// mqParam.setType("2");
// mqParam.setOrderNo(orderNo);
// Message message = MessageBuilder.withBody(JSONUtil.parse(mqParam).toString().getBytes()).build();
// rabbitTemplate.send(
// RabbitKeyConstants.ORDER_CANCEL_EXCHANGE, RabbitKeyConstants.ORDER_CANCEL_ROUTE_KEY, message
// );
return
;
return
;
}
}
...
@@ -414,11 +407,16 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -414,11 +407,16 @@ public class OrderCancelServiceImpl implements OrderCancelService {
if
(!
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
().
equals
(
orderInfoFeignVO
.
getTruckDemand
()))
{
if
(!
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
().
equals
(
orderInfoFeignVO
.
getTruckDemand
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeignVO
.
getOrderStatus
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeignVO
.
getOrderStatus
()))
{
//已完结
//已完结
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
}
orderChildDao
.
batchUpdateOrderChildStatus
(
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
orderChildrenList
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
())
);
ids
);
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
()
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
.
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
...
@@ -450,13 +448,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -450,13 +448,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
())
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
())
.
add
(
orderGoods
.
getResidueTransportWeight
()));
.
add
(
orderGoods
.
getResidueTransportWeight
()));
ids
.
add
(
orderGoods
.
getId
());
ids
.
add
(
orderGoods
.
getId
());
// OrderGoods update = new OrderGoods();
// update.setId(orderGoods.getId());
// //TODO 补充批量更新接口 关闭货单状态
// update.setResidueTransportWeight(BigDecimal.ZERO);
// update.setOrderGoodsStatus(OrderGoodsStatusEnum.Status.CANCEL.getCode());
// orderGoodsDao.updateOrderGoodsSetResidueWeightAndAlreadyWeight(BigDecimal.ZERO, BigDecimal.ZERO, orderGoods.getId());
}
}
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
orderGoodsDao
.
batchUpdateOrderGoodsWeight
(
BigDecimal
.
ZERO
,
ids
);
orderGoodsDao
.
batchUpdateOrderGoodsWeight
(
BigDecimal
.
ZERO
,
ids
);
...
@@ -493,15 +484,15 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -493,15 +484,15 @@ public class OrderCancelServiceImpl implements OrderCancelService {
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeignVO
.
getOrderStatus
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeignVO
.
getOrderStatus
()))
{
//已完结
//已完结
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
List
<
Integer
>
ids
=
new
LinkedList
<>();
//
for (OrderChild orderChild : orderChildrenList) {
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
// OrderChild update = new OrderChild();
//释放车辆
// update.setId(orderChild.getId()
);
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
// update.setStatus(OrderChildEnum.Status.PLATFORM_CANCEL.getCode
());
ids
.
add
(
orderChild
.
getId
());
// //TODO 补充批量更新接口 关闭运单状态
}
// orderChildDao.updateEntityByKey(update);
orderChildDao
.
batchUpdateOrderChildStatus
(
// }
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
orderChildrenList
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
())
);
ids
);
//货单
//货单
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
()
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
.
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
...
@@ -535,12 +526,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -535,12 +526,6 @@ public class OrderCancelServiceImpl implements OrderCancelService {
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
())
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
())
.
add
(
orderGoods
.
getResidueTransportWeight
()));
.
add
(
orderGoods
.
getResidueTransportWeight
()));
ids
.
add
(
orderGoods
.
getId
());
ids
.
add
(
orderGoods
.
getId
());
// OrderGoods update = new OrderGoods();
// update.setId(orderGoods.getId());
// //TODO 补充批量更新接口 关闭货单状态
// update.setResidueTransportWeight(BigDecimal.ZERO);
// //update.setOrderGoodsStatus(OrderGoodsStatusEnum.Status.COMPLETED.getCode());
// orderGoodsDao.updateEntityByKey(update);
}
}
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
orderGoodsDao
.
batchUpdateOrderGoodsWeight
(
BigDecimal
.
ZERO
,
ids
);
orderGoodsDao
.
batchUpdateOrderGoodsWeight
(
BigDecimal
.
ZERO
,
ids
);
...
@@ -629,8 +614,17 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -629,8 +614,17 @@ public class OrderCancelServiceImpl implements OrderCancelService {
// if (!orderFeign.updateOrderStatusByOrderNo(orderNo, OrderEnum.Status.CANCELED.getCode()).succeed()) {
// if (!orderFeign.updateOrderStatusByOrderNo(orderNo, OrderEnum.Status.CANCELED.getCode()).succeed()) {
// throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "货主取消订单失败,原因:远程调用取消订单失败");
// throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "货主取消订单失败,原因:远程调用取消订单失败");
// }
// }
List
<
Integer
>
ids
=
orderChildren
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
ids
=
new
LinkedList
<>();
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
ids
);
for
(
OrderChild
orderChild
:
orderChildren
)
{
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
}
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
ids
);
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildren
.
stream
()
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildren
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
...
@@ -737,8 +731,16 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -737,8 +731,16 @@ public class OrderCancelServiceImpl implements OrderCancelService {
// if (!orderFeign.updateOrderStatusByOrderNo(orderNo, OrderEnum.Status.CANCELED.getCode()).succeed()) {
// if (!orderFeign.updateOrderStatusByOrderNo(orderNo, OrderEnum.Status.CANCELED.getCode()).succeed()) {
// throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "货主取消订单失败,原因:远程调用取消订单失败");
// throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "货主取消订单失败,原因:远程调用取消订单失败");
// }
// }
List
<
Integer
>
ids
=
orderChildren
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
ids
=
new
LinkedList
<>();
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
ids
);
for
(
OrderChild
orderChild
:
orderChildren
)
{
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
}
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
ids
);
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildren
.
stream
()
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildren
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论