Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
6fc7f028
提交
6fc7f028
authored
10月 26, 2023
作者:
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
上级
b7582089
b7f42fb9
显示空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
155 行增加
和
24 行删除
+155
-24
UpdateEditOrderGoodsParam.java
...m/clx/performance/param/pc/UpdateEditOrderGoodsParam.java
+1
-1
UpdateOrderGoodsPriceParam.java
.../clx/performance/param/pc/UpdateOrderGoodsPriceParam.java
+32
-0
GoodsOrderController.java
...m/clx/performance/controller/pc/GoodsOrderController.java
+10
-1
OrderGoodsDao.java
.../src/main/java/com/clx/performance/dao/OrderGoodsDao.java
+1
-0
OrderGoodsDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
+4
-1
OrderGoodsService.java
...n/java/com/clx/performance/service/OrderGoodsService.java
+4
-1
OrderCancelServiceImpl.java
.../clx/performance/service/impl/OrderCancelServiceImpl.java
+94
-19
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+9
-1
没有找到文件。
performance-api/src/main/java/com/clx/
order/params
/UpdateEditOrderGoodsParam.java
→
performance-api/src/main/java/com/clx/
performance/param/pc
/UpdateEditOrderGoodsParam.java
浏览文件 @
6fc7f028
package
com
.
clx
.
order
.
params
;
package
com
.
clx
.
performance
.
param
.
pc
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
...
...
performance-api/src/main/java/com/clx/performance/param/pc/UpdateOrderGoodsPriceParam.java
0 → 100644
浏览文件 @
6fc7f028
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.convertor.type.MoneyInConvert
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
/**
* @ClassName UpdateOrderGoodsPriceParam
* @Description
* @Author kavin
* @Date 2023/10/26 10:30
* @Version 1.0
*/
@Getter
@Setter
public
class
UpdateOrderGoodsPriceParam
{
@NotNull
(
message
=
"货单id不能为空"
)
@ApiModelProperty
(
"货单id"
)
private
Integer
id
;
@NotNull
(
message
=
"挂单运费不能为空"
)
@ApiModelProperty
(
"挂单运费"
)
@MoneyInConvert
private
BigDecimal
pendingOrderFreight
;
}
performance-web/src/main/java/com/clx/performance/controller/pc/GoodsOrderController.java
浏览文件 @
6fc7f028
...
@@ -4,11 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
...
@@ -4,11 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.params.OrderGoodsParams
;
import
com.clx.order.params.OrderGoodsParams
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.
order.params
.UpdateEditOrderGoodsParam
;
import
com.clx.
performance.param.pc
.UpdateEditOrderGoodsParam
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.component.GoodsOrderStrategyContext
;
import
com.clx.performance.component.GoodsOrderStrategyContext
;
import
com.clx.performance.constant.RedisConstants
;
import
com.clx.performance.constant.RedisConstants
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.param.pc.UpdateOrderGoodsPriceParam
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.OrderGoodsService
;
import
com.clx.performance.service.OrderGoodsService
;
import
com.clx.performance.vo.pc.OrderChildPCVO
;
import
com.clx.performance.vo.pc.OrderChildPCVO
;
...
@@ -142,4 +143,12 @@ public class GoodsOrderController {
...
@@ -142,4 +143,12 @@ public class GoodsOrderController {
public
Result
<
BigDecimal
>
orderCancelResidueWeight
(
@RequestParam
(
value
=
"orderNo"
)
String
orderNo
,
@RequestParam
(
value
=
"optionType"
)
String
optionType
)
{
public
Result
<
BigDecimal
>
orderCancelResidueWeight
(
@RequestParam
(
value
=
"orderNo"
)
String
orderNo
,
@RequestParam
(
value
=
"optionType"
)
String
optionType
)
{
return
Result
.
ok
(
orderGoodsService
.
orderCancelResidueWeight
(
orderNo
,
optionType
));
return
Result
.
ok
(
orderGoodsService
.
orderCancelResidueWeight
(
orderNo
,
optionType
));
}
}
@ApiOperation
(
value
=
"调整货单价格"
,
notes
=
"<br>By:刘海泉"
)
@PostMapping
(
"/updateOrderGoodsPrice"
)
public
Result
updateOrderGoodsPrice
(
UpdateOrderGoodsPriceParam
param
)
{
orderGoodsService
.
updateOrderGoodsPrice
(
param
);
return
Result
.
ok
();
}
}
}
performance-web/src/main/java/com/clx/performance/dao/OrderGoodsDao.java
浏览文件 @
6fc7f028
...
@@ -55,4 +55,5 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
...
@@ -55,4 +55,5 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
List
<
OrderGoods
>
listIntegralOrderGoodsSync
();
List
<
OrderGoods
>
listIntegralOrderGoodsSync
();
boolean
updatePendingOrderFreightById
(
Integer
id
,
BigDecimal
pendingOrderFreight
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
浏览文件 @
6fc7f028
...
@@ -145,5 +145,8 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
...
@@ -145,5 +145,8 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
);
);
}
}
@Override
public
boolean
updatePendingOrderFreightById
(
Integer
id
,
BigDecimal
pendingOrderFreight
)
{
return
update
(
lUdWrapper
().
eq
(
OrderGoods
::
getGoodsId
,
id
).
set
(
OrderGoods
::
getPendingOrderFreight
,
pendingOrderFreight
));
}
}
}
performance-web/src/main/java/com/clx/performance/service/OrderGoodsService.java
浏览文件 @
6fc7f028
...
@@ -3,9 +3,10 @@ package com.clx.performance.service;
...
@@ -3,9 +3,10 @@ package com.clx.performance.service;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.
order.params
.UpdateEditOrderGoodsParam
;
import
com.clx.
performance.param.pc
.UpdateEditOrderGoodsParam
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.param.app.OrderGoodsListPageParam
;
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.app.OrderGoodsAPPVO
;
import
com.clx.performance.vo.feign.OrderGoodsFeignVO
;
import
com.clx.performance.vo.feign.OrderGoodsFeignVO
;
import
com.clx.performance.vo.pc.OrderGoodsVO
;
import
com.clx.performance.vo.pc.OrderGoodsVO
;
...
@@ -40,4 +41,6 @@ public interface OrderGoodsService {
...
@@ -40,4 +41,6 @@ public interface OrderGoodsService {
BigDecimal
orderCancelResidueWeight
(
String
orderNo
,
String
optionType
);
BigDecimal
orderCancelResidueWeight
(
String
orderNo
,
String
optionType
);
void
updateEditOrderGoods
(
UpdateEditOrderGoodsParam
param
);
void
updateEditOrderGoods
(
UpdateEditOrderGoodsParam
param
);
void
updateOrderGoodsPrice
(
UpdateOrderGoodsPriceParam
param
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderCancelServiceImpl.java
浏览文件 @
6fc7f028
...
@@ -6,6 +6,7 @@ import com.clx.order.feign.OrderFeign;
...
@@ -6,6 +6,7 @@ import com.clx.order.feign.OrderFeign;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.order.vo.feign.FeignOrderVO
;
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.dao.OrderGoodsTruckBindDao
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
...
@@ -13,6 +14,7 @@ import com.clx.performance.model.OrderChild;
...
@@ -13,6 +14,7 @@ import com.clx.performance.model.OrderChild;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.OrderChildService
;
import
com.msl.common.result.Result
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -36,25 +38,30 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -36,25 +38,30 @@ public class OrderCancelServiceImpl implements OrderCancelService {
private
final
OrderGoodsDao
orderGoodsDao
;
private
final
OrderGoodsDao
orderGoodsDao
;
private
final
OrderGoodsTruckBindDao
orderGoodsTruckBindDao
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
BigDecimal
orderResidueWeight
=
new
BigDecimal
(
orderInfoFeign
.
getResidueWeight
());
BigDecimal
orderTransportWeight
=
new
BigDecimal
(
orderInfoFeign
.
getTransportWeight
());
if
(
BigDecimal
.
ZERO
.
compareTo
(
orderResidueWeight
)
==
0
)
{
throw
new
RuntimeException
(
"需要承运吨数的车辆,已全部到达货源地,无法取消"
);
}
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
//未产生货单
//未产生货单
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
}
BigDecimal
orderGoodsResidueWeight
=
orderGoodsList
.
stream
().
map
(
OrderGoods:
:
getResidueTransportWeight
).
reduce
(
BigDecimal:
:
add
).
get
();
return
;
if
(
BigDecimal
.
ZERO
.
compareTo
(
orderGoodsResidueWeight
)
==
0
)
{
throw
new
RuntimeException
(
"需要承运吨数的车辆,已全部到达货源地,无法取消"
);
}
}
List
<
OrderChild
>
orderChildren
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderChildren
))
{
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderChildrenList
))
{
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
//说明此刻未产生运单
//说明此刻未产生运单
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
...
@@ -62,17 +69,22 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -62,17 +69,22 @@ public class OrderCancelServiceImpl implements OrderCancelService {
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
}
else
{
}
else
{
BigDecimal
orderChildResidueWeight
=
orderChildrenList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
if
(
orderChildResidueWeight
.
compareTo
(
orderTransportWeight
)
==
0
)
{
throw
new
RuntimeException
(
"当前订单已无余量可取消"
);
}
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setId
(
orderGoods
.
getId
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
COMPLETED
.
getCode
());
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
COMPLETED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
}
}
}
}
...
@@ -81,13 +93,12 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -81,13 +93,12 @@ public class OrderCancelServiceImpl implements OrderCancelService {
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerCancelOrder
(
String
orderNo
)
{
public
void
ownerCancelOrder
(
String
orderNo
)
{
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
BigDecimal
orderResidueWeightAll
=
BigDecimal
.
ZERO
;
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
Map
<
Integer
,
BigDecimal
>
truckDemandMap
=
new
HashMap
<>();
Map
<
Integer
,
BigDecimal
>
truckDemandMap
=
new
HashMap
<>();
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
OWNER_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
OWNER_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
if
(!
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
().
equals
(
orderInfoFeign
.
getTruckDemand
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已完结
//已完结
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
...
@@ -96,6 +107,7 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -96,6 +107,7 @@ public class OrderCancelServiceImpl implements OrderCancelService {
OrderChild
update
=
new
OrderChild
();
OrderChild
update
=
new
OrderChild
();
update
.
setId
(
orderChild
.
getId
());
update
.
setId
(
orderChild
.
getId
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
//TODO 补充批量更新接口 关闭运单状态
orderChildDao
.
updateEntityByKey
(
update
);
orderChildDao
.
updateEntityByKey
(
update
);
}
}
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
...
@@ -105,18 +117,81 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -105,18 +117,81 @@ public class OrderCancelServiceImpl implements OrderCancelService {
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
String
orderGoodsNo
=
entry
.
getKey
();
String
orderGoodsNo
=
entry
.
getKey
();
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal:
:
add
).
get
();
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
)));
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setId
(
orderGoods
.
getId
());
update
.
setResidueTransportWeight
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
));
//TODO 补充批量更新接口 关闭货单状态
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
update
.
getResidueTransportWeight
()));
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已取消
//已取消
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
}
}
else
{
Map
<
Integer
,
BigDecimal
>
vehicleUsageMap
=
new
HashMap
<>();
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已完结
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
OrderChild
update
=
new
OrderChild
();
update
.
setId
(
orderChild
.
getId
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
//TODO 补充批量更新接口 关闭运单状态
orderChildDao
.
updateEntityByKey
(
update
);
}
//货单
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
//运单
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildrenList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
String
orderGoodsNo
=
entry
.
getKey
();
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
vehicleUsageMap
.
put
(
orderGoods
.
getVehicleUsage
(),
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
()).
add
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
)));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已取消
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
vehicleUsageMap
.
put
(
orderGoods
.
getVehicleUsage
(),
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
String
platformResidueCarryWeight
=
orderInfoFeign
.
getPlatformResidueCarryWeight
();
String
ownResidueCarryWeight
=
orderInfoFeign
.
getOwnResidueCarryWeight
();
BigDecimal
platformResidueSum
=
new
BigDecimal
(
platformResidueCarryWeight
).
add
(
vehicleUsageMap
.
get
(
1
));
BigDecimal
ownResidueSum
=
new
BigDecimal
(
ownResidueCarryWeight
).
add
(
vehicleUsageMap
.
get
(
2
));
BigDecimal
residueSum
=
new
BigDecimal
(
orderInfoFeign
.
getResidueWeight
()).
add
(
platformResidueSum
).
add
(
ownResidueSum
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
6fc7f028
...
@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
...
@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.order.params.PageOrderGoodsListParam
;
import
com.clx.
order.params
.UpdateEditOrderGoodsParam
;
import
com.clx.
performance.param.pc
.UpdateEditOrderGoodsParam
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
...
@@ -16,6 +16,7 @@ import com.clx.performance.model.OrderGoods;
...
@@ -16,6 +16,7 @@ import com.clx.performance.model.OrderGoods;
import
com.clx.performance.model.OrderGoodsDriverTruck
;
import
com.clx.performance.model.OrderGoodsDriverTruck
;
import
com.clx.performance.model.OrderGoodsTruckBind
;
import
com.clx.performance.model.OrderGoodsTruckBind
;
import
com.clx.performance.param.app.OrderGoodsListPageParam
;
import
com.clx.performance.param.app.OrderGoodsListPageParam
;
import
com.clx.performance.param.pc.UpdateOrderGoodsPriceParam
;
import
com.clx.performance.service.OrderGoodsService
;
import
com.clx.performance.service.OrderGoodsService
;
import
com.clx.performance.struct.OrderGoodsStruct
;
import
com.clx.performance.struct.OrderGoodsStruct
;
import
com.clx.performance.vo.app.OrderGoodsAPPVO
;
import
com.clx.performance.vo.app.OrderGoodsAPPVO
;
...
@@ -222,5 +223,12 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
...
@@ -222,5 +223,12 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
}
}
@Override
public
void
updateOrderGoodsPrice
(
UpdateOrderGoodsPriceParam
param
)
{
orderGoodsDao
.
updatePendingOrderFreightById
(
param
.
getId
(),
param
.
getPendingOrderFreight
());
//记录货单调价日志
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论