Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
2eb68a62
提交
2eb68a62
authored
10月 28, 2023
作者:
liuhaiquan
浏览文件
操作
浏览文件
下载
差异文件
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
上级
5970d4a0
90bdfe69
显示空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
211 行增加
和
39 行删除
+211
-39
PageCarrierBreakContractSettlementDriverDetailVO.java
...ier/PageCarrierBreakContractSettlementDriverDetailVO.java
+3
-0
PageCarrierBreakContractSettlementDriverVO.java
...t/carrier/PageCarrierBreakContractSettlementDriverVO.java
+3
-0
PageCarrierBreakContractSettlementOwnerDetailVO.java
...rier/PageCarrierBreakContractSettlementOwnerDetailVO.java
+3
-0
PageCarrierBreakContractSettlementOwnerVO.java
...ct/carrier/PageCarrierBreakContractSettlementOwnerVO.java
+3
-0
PageOwnerBreakContractOwnerRecordVO.java
...akcontract/owner/PageOwnerBreakContractOwnerRecordVO.java
+2
-0
OrderCancelFeignController.java
...formance/controller/feign/OrderCancelFeignController.java
+1
-1
GoodsOrderController.java
...m/clx/performance/controller/pc/GoodsOrderController.java
+13
-1
OrderCancelController.java
.../clx/performance/controller/pc/OrderCancelController.java
+41
-0
OrderChildDao.java
.../src/main/java/com/clx/performance/dao/OrderChildDao.java
+5
-1
OrderChildDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
+15
-2
OrderGoodsService.java
...n/java/com/clx/performance/service/OrderGoodsService.java
+10
-1
OrderCancelServiceImpl.java
.../clx/performance/service/impl/OrderCancelServiceImpl.java
+5
-5
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+83
-12
BreakContractDriverRecordServiceImpl.java
...l/breakcontract/BreakContractDriverRecordServiceImpl.java
+3
-0
BreakContractOwnerRecordServiceImpl.java
...pl/breakcontract/BreakContractOwnerRecordServiceImpl.java
+11
-4
BreakContractSettlementOwnerServiceImpl.java
...reakcontract/BreakContractSettlementOwnerServiceImpl.java
+1
-1
JobTest.java
...rmance-web/src/test/java/com/clx/performance/JobTest.java
+9
-11
没有找到文件。
performance-api/src/main/java/com/clx/performance/vo/pc/breakcontract/carrier/PageCarrierBreakContractSettlementDriverDetailVO.java
浏览文件 @
2eb68a62
...
...
@@ -16,6 +16,9 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
PageCarrierBreakContractSettlementDriverDetailVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"违约方类型:1平台 2货主 3车主"
)
private
Integer
breakContractPartyType
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/breakcontract/carrier/PageCarrierBreakContractSettlementDriverVO.java
浏览文件 @
2eb68a62
...
...
@@ -15,6 +15,9 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
PageCarrierBreakContractSettlementDriverVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"违约方类型:1平台 2货主 3车主"
)
private
Integer
breakContractPartyType
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/breakcontract/carrier/PageCarrierBreakContractSettlementOwnerDetailVO.java
浏览文件 @
2eb68a62
...
...
@@ -15,6 +15,9 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
PageCarrierBreakContractSettlementOwnerDetailVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"违约方类型:1平台 2货主 3车主"
)
private
Integer
breakContractPartyType
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/breakcontract/carrier/PageCarrierBreakContractSettlementOwnerVO.java
浏览文件 @
2eb68a62
...
...
@@ -15,6 +15,9 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
PageCarrierBreakContractSettlementOwnerVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"违约方类型:1平台 2货主 3车主"
)
private
Integer
breakContractPartyType
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/breakcontract/owner/PageOwnerBreakContractOwnerRecordVO.java
浏览文件 @
2eb68a62
...
...
@@ -20,6 +20,8 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
PageOwnerBreakContractOwnerRecordVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"违约订单"
)
private
String
orderNo
;
...
...
performance-web/src/main/java/com/clx/performance/controller/feign/OrderCancelFeignController.java
浏览文件 @
2eb68a62
...
...
@@ -25,7 +25,7 @@ public class OrderCancelFeignController {
private
final
OrderCancelService
orderCancelService
;
@ApiOperation
(
value
=
"
查看货单列表
"
,
notes
=
"<br>By:胡宇帆"
)
@ApiOperation
(
value
=
"
货主端订单取消
"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/orderCancel"
)
public
Result
<
Object
>
orderCancel
(
@RequestBody
OrderCancelParam
param
)
{
orderCancelService
.
ownerCancelOrderPre
(
param
.
getOrderNo
());
...
...
performance-web/src/main/java/com/clx/performance/controller/pc/GoodsOrderController.java
浏览文件 @
2eb68a62
...
...
@@ -145,8 +145,14 @@ public class GoodsOrderController {
return
Result
.
ok
(
orderGoodsService
.
orderGoodsCancelStyle
(
orderGoodsNo
));
}
@ApiOperation
(
value
=
"查看未装车的车辆用于货单取消弹窗展示"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/getOrderChildTruckList"
)
public
Result
<
List
<
String
>>
getOrderChildTruckList
(
@RequestParam
(
value
=
"orderGoodsNo"
)
String
orderGoodsNo
)
{
return
Result
.
ok
(
orderGoodsService
.
getOrderChildTruckList
(
orderGoodsNo
));
}
@ApiOperation
(
value
=
"取消货单"
,
notes
=
"<br>By:胡宇帆"
)
@
Ge
tMapping
(
"/orderGoodsCancel"
)
@
Pos
tMapping
(
"/orderGoodsCancel"
)
public
Result
<
Object
>
orderGoodsCancel
(
@RequestBody
OrderGoodsCancelParam
param
)
{
orderGoodsService
.
orderGoodsCancel
(
param
);
return
Result
.
ok
();
...
...
@@ -158,6 +164,12 @@ public class GoodsOrderController {
return
Result
.
ok
(
orderGoodsService
.
orderCancelResidueWeight
(
orderNo
,
optionType
));
}
@ApiOperation
(
value
=
"获取当前货单可取消吨数"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/orderGoodsCancelResidueWeight"
)
public
Result
<
BigDecimal
>
orderGoodsCancelResidueWeight
(
@RequestBody
OrderGoodsCancelParam
goodsCancelParam
)
{
return
Result
.
ok
(
orderGoodsService
.
orderGoodsCancelResidueWeight
(
goodsCancelParam
));
}
@ApiOperation
(
value
=
"调整货单价格"
,
notes
=
"<br>By:刘海泉"
)
@PostMapping
(
"/updateOrderGoodsPrice"
)
@UnitCovert
(
result
=
false
)
...
...
performance-web/src/main/java/com/clx/performance/controller/pc/OrderCancelController.java
0 → 100644
浏览文件 @
2eb68a62
package
com
.
clx
.
performance
.
controller
.
pc
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.vo.pc.OrderGoodsVO
;
import
com.msl.common.convertor.aspect.UnitCovert
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
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
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/order/"
)
@Validated
@Api
(
tags
=
"PC-订单取消取消"
)
@AllArgsConstructor
public
class
OrderCancelController
{
private
final
OrderCancelService
orderCancelService
;
@ApiOperation
(
value
=
"承运端取消订单"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/platformCancelOrderPre"
)
public
Result
<
Object
>
platformCancelOrderPre
(
@RequestParam
String
orderNo
)
{
orderCancelService
.
platformCancelOrderPre
(
orderNo
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"货主端取消订单"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/ownCancelOrderPre"
)
public
Result
<
Object
>
ownCancelOrderPre
(
@RequestParam
String
orderNo
)
{
orderCancelService
.
ownerCancelOrderPre
(
orderNo
);
return
Result
.
ok
();
}
}
performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java
浏览文件 @
2eb68a62
...
...
@@ -82,7 +82,9 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
List
<
OrderChild
>
selectResidueWeight
(
String
orderNo
,
Integer
status
);
List
<
OrderChild
>
selectResidueWeight
(
String
orderNo
,
Integer
status
,
List
<
String
>
truckList
);
List
<
OrderChild
>
selectResidueWeightByOrderGoodsNo
(
String
orderGoodsNo
,
Integer
status
);
List
<
OrderChild
>
selectResidueWeightByOrderGoodsNo
(
String
orderGoodsNo
,
Integer
status
,
List
<
String
>
truckList
);
/**
* 查询在途运单
...
...
@@ -93,4 +95,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
void
batchUpdateOrderChildStatus
(
Integer
status
,
List
<
Integer
>
ids
);
List
<
OrderChild
>
selectOrderChildListByOrderGoodsNoAndStatusGE
(
String
orderGoodsNo
,
Integer
status
);
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
浏览文件 @
2eb68a62
...
...
@@ -267,8 +267,15 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
}
@Override
public
List
<
OrderChild
>
selectResidueWeight
(
String
orderNo
,
Integer
status
,
List
<
String
>
truckList
)
{
return
baseMapper
.
selectList
(
lQrWrapper
().
eq
(
OrderChild:
:
getOrderNo
,
orderNo
)
public
List
<
OrderChild
>
selectResidueWeightByOrderGoodsNo
(
String
orderGoodsNo
,
Integer
status
)
{
return
baseMapper
.
selectList
(
lQrWrapper
().
eq
(
OrderChild:
:
getOrderGoodsNo
,
orderGoodsNo
)
.
lt
(
ObjectUtil
.
isNotEmpty
(
status
),
OrderChild:
:
getStatus
,
status
)
);
}
@Override
public
List
<
OrderChild
>
selectResidueWeightByOrderGoodsNo
(
String
orderGoodsNo
,
Integer
status
,
List
<
String
>
truckList
)
{
return
baseMapper
.
selectList
(
lQrWrapper
().
eq
(
OrderChild:
:
getOrderGoodsNo
,
orderGoodsNo
)
.
lt
(
ObjectUtil
.
isNotEmpty
(
status
),
OrderChild:
:
getStatus
,
status
)
.
in
(
OrderChild:
:
getTruckNo
,
truckList
)
);
...
...
@@ -288,6 +295,12 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
baseMapper
.
updateOrderGoodsSetResidueWeight
(
status
,
ids
);
}
@Override
public
List
<
OrderChild
>
selectOrderChildListByOrderGoodsNoAndStatusGE
(
String
orderGoodsNo
,
Integer
status
)
{
return
baseMapper
.
selectList
(
lQrWrapper
().
eq
(
OrderChild:
:
getOrderGoodsNo
,
orderGoodsNo
)
.
ge
(
ObjectUtil
.
isNotNull
(
status
),
OrderChild:
:
getStatus
,
status
)
);
}
@Override
public
List
<
OrderChild
>
getOrderChildByOrderNo
(
String
orderNo
)
{
LambdaQueryWrapper
<
OrderChild
>
query
=
new
LambdaQueryWrapper
();
...
...
performance-web/src/main/java/com/clx/performance/service/OrderGoodsService.java
浏览文件 @
2eb68a62
...
...
@@ -61,7 +61,16 @@ public interface OrderGoodsService {
/**
* 取消货单
* @param
OrderGoodsCancelParam
* @param
orderGoodsNo
*/
void
orderGoodsCancel
(
OrderGoodsCancelParam
orderGoodsNo
);
/**
* 查看货单可取消吨数
* @param goodsCancelParam
* @return
*/
BigDecimal
orderGoodsCancelResidueWeight
(
OrderGoodsCancelParam
goodsCancelParam
);
List
<
String
>
getOrderChildTruckList
(
String
orderGoodsNo
);
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderCancelServiceImpl.java
浏览文件 @
2eb68a62
...
...
@@ -357,18 +357,18 @@ public class OrderCancelServiceImpl implements OrderCancelService {
//货单还有余量,是已完结
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
}
else
{
List
<
OrderChild
>
orderChildrenListComplete
=
orderChildDao
.
select
ResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
COMPLETE
.
getCode
());
List
<
OrderChild
>
orderChildrenListComplete
=
orderChildDao
.
select
OrderChildListByOrderGoodsNoAndStatusGE
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
if
(
CollectionUtil
.
isNotEmpty
(
orderChildrenListComplete
))
{
Map
<
String
,
List
<
OrderChild
>>
orderChildCompleteMap
=
orderChildrenListComplete
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
//没有余量,需要判断已完成的运单量是不等于货单的全部提取量,等于则是已完成,否则是已完结
List
<
OrderChild
>
childList
=
orderChildCompleteMap
.
get
(
orderGoods
.
getOrderGoodsNo
());
BigDecimal
reduce
=
childList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
BigDecimal
reduce
=
orderChildrenListComplete
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
if
(
reduce
.
compareTo
(
orderGoods
.
getExtractWeight
())
==
0
)
{
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
SUCCESS
.
getCode
());
}
else
{
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
}
}
else
{
//虽然没有余量,但是可以取消的运单都是未到达货源地的
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
2eb68a62
package
com
.
clx
.
performance
.
service
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
...
...
@@ -45,6 +46,7 @@ import org.springframework.transaction.annotation.Transactional;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
...
...
@@ -222,10 +224,14 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
}
else
{
String
residueWeight
=
orderInfoFeign
.
getResidueWeight
();
List
<
OrderChild
>
orderChildList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
BigDecimal
childResidueWeight
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
BigDecimal
orderGoodsResidueWeight
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
).
stream
().
map
(
OrderGoods:
:
getResidueTransportWeight
).
reduce
(
BigDecimal:
:
add
).
get
();
BigDecimal
childResidueWeight
=
BigDecimal
.
ZERO
;
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
childResidueWeight
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
BigDecimal
orderGoodsResidueWeight
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
).
stream
().
map
(
OrderGoods:
:
getResidueTransportWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
return
childResidueWeight
.
add
(
new
BigDecimal
(
residueWeight
)).
add
(
orderGoods
ResidueWeight
);
return
new
BigDecimal
(
residueWeight
).
add
(
orderGoodsResidueWeight
).
add
(
child
ResidueWeight
);
}
}
...
...
@@ -280,7 +286,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
Integer
cancelOperateType
=
goodsCancelParam
.
getCancelOperateType
();
switch
(
cancelOperateType
){
case
1
:
orderChildList
=
orderChildDao
.
selectResidueWeight
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
()
);
orderChildList
=
orderChildDao
.
selectResidueWeight
ByOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
(),
null
);
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前货单已产生运单"
);
}
...
...
@@ -303,10 +309,16 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
orderGoodsTruckBindDao
.
updateOrderGoodsBindStatus
(
orderGoodsNo
,
OrderGoodsTruckBindEnum
.
Status
.
CANCEL
.
getCode
());
log
.
info
(
"取消货单,参数:{}"
,
JSONUtil
.
parse
(
param
));
orderFeign
.
rollbackOrderWeight
(
param
);
if
(
orderFeign
.
rollbackOrderWeight
(
param
).
succeed
())
{
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
return
;
case
2
:
orderChildList
=
orderChildDao
.
selectResidueWeight
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
orderChildList
=
orderChildDao
.
selectResidueWeight
ByOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
sum
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
...
...
@@ -329,14 +341,16 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
orderGoodsTruckBindDao
.
updateOrderGoodsBindStatus
(
orderGoodsNo
,
OrderGoodsTruckBindEnum
.
Status
.
CANCEL
.
getCode
());
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
orderChildList
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
()));
log
.
info
(
"取消货单,参数:{}"
,
JSONUtil
.
parse
(
param
));
Result
<
Object
>
result
=
orderFeign
.
rollbackOrderWeight
(
param
);
if
(
result
.
succeed
())
{
//orderGoodsDao.updateEntityByKey();
if
(
orderFeign
.
rollbackOrderWeight
(
param
).
succeed
())
{
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
return
;
case
3
:
orderChildList
=
orderChildDao
.
selectResidueWeight
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
LOAD
.
getCode
(),
goodsCancelParam
.
getTruckList
());
orderChildList
=
orderChildDao
.
selectResidueWeight
ByOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
LOAD
.
getCode
(),
goodsCancelParam
.
getTruckList
());
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
sum
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
...
...
@@ -358,7 +372,13 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
orderGoodsTruckBindDao
.
updateOrderGoodsBindStatus
(
orderGoodsNo
,
OrderGoodsTruckBindEnum
.
Status
.
CANCEL
.
getCode
());
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
orderChildList
.
stream
().
map
(
OrderChild:
:
getId
).
collect
(
Collectors
.
toList
()));
log
.
info
(
"取消货单,参数:{}"
,
JSONUtil
.
parse
(
param
));
orderFeign
.
rollbackOrderWeight
(
param
);
if
(
orderFeign
.
rollbackOrderWeight
(
param
).
succeed
())
{
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
return
;
default
:
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"参数类型有误"
);
...
...
@@ -368,4 +388,55 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
}
@Override
public
BigDecimal
orderGoodsCancelResidueWeight
(
OrderGoodsCancelParam
goodsCancelParam
)
{
String
orderGoodsNo
=
goodsCancelParam
.
getOrderGoodsNo
();
Optional
<
OrderGoods
>
optional
=
orderGoodsDao
.
getByOrderGoodsNo
(
orderGoodsNo
);
if
(!
optional
.
isPresent
())
{
return
null
;
}
OrderGoods
orderGoods
=
optional
.
get
();
List
<
OrderChild
>
orderChildList
=
null
;
BigDecimal
residueWeight
=
null
;
BigDecimal
sum
=
BigDecimal
.
ZERO
;
RollbackOrderWeightParam
param
=
new
RollbackOrderWeightParam
();
Integer
cancelOperateType
=
goodsCancelParam
.
getCancelOperateType
();
switch
(
cancelOperateType
){
case
1
:
case
2
:
orderChildList
=
orderChildDao
.
selectResidueWeightByOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
sum
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
residueWeight
=
orderGoods
.
getResidueTransportWeight
().
add
(
sum
);
return
residueWeight
;
case
3
:
orderChildList
=
orderChildDao
.
selectResidueWeightByOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
(),
OrderChildEnum
.
Status
.
LOAD
.
getCode
(),
goodsCancelParam
.
getTruckList
());
if
(
CollectionUtils
.
isNotEmpty
(
orderChildList
))
{
sum
=
orderChildList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
}
residueWeight
=
orderGoods
.
getResidueTransportWeight
().
add
(
sum
);
return
residueWeight
;
default
:
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"参数类型有误"
);
}
}
@Override
public
List
<
String
>
getOrderChildTruckList
(
String
orderGoodsNo
)
{
List
<
OrderChild
>
orderChildList
=
orderChildDao
.
selectResidueWeightByOrderGoodsNo
(
orderGoodsNo
,
OrderChildEnum
.
Status
.
LOAD
.
getCode
());
if
(
CollectionUtil
.
isNotEmpty
(
orderChildList
))
{
return
orderChildList
.
stream
().
map
(
OrderChild:
:
getTruckNo
).
collect
(
Collectors
.
toList
());
}
return
null
;
}
}
performance-web/src/main/java/com/clx/performance/service/impl/breakcontract/BreakContractDriverRecordServiceImpl.java
浏览文件 @
2eb68a62
...
...
@@ -106,8 +106,11 @@ public class BreakContractDriverRecordServiceImpl implements BreakContractDrive
breakDriver
.
setSettlePlatform
(
BreakContractSettlementDriverEnum
.
SettlePlatform
.
MSL
.
getCode
());
record
.
setSettlementNo
(
settlementNo
);
//保存违约记录
breakContractDriverRecordDao
.
saveEntity
(
record
);
//保存违约计费
breakContractSettlementDriverDao
.
saveEntity
(
breakDriver
);
//保存违约结算单
breakContractSettlementDriverDetailDao
.
saveEntity
(
breakDriverDetail
);
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/breakcontract/BreakContractOwnerRecordServiceImpl.java
浏览文件 @
2eb68a62
...
...
@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.order.vo.feign.FeignOrderInfoVO
;
import
com.clx.performance.dao.breakcontract.*
;
import
com.clx.performance.enums.BreakContractRecordEnum
;
import
com.clx.performance.enums.BreakContractSettlementDriverEnum
;
import
com.clx.performance.enums.BreakContractSettlementOwnerEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.*
;
import
com.clx.performance.extranal.user.OrderService
;
import
com.clx.performance.extranal.user.OwnerInfoService
;
import
com.clx.performance.model.breakcontract.*
;
...
...
@@ -16,6 +13,7 @@ import com.clx.performance.param.pc.breakcontract.carrier.BreakContractOwnerReco
import
com.clx.performance.param.pc.breakcontract.carrier.PageBreakContractOwnerRecordParam
;
import
com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam
;
import
com.clx.performance.service.breakcontract.BreakContractOwnerRecordService
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementLogService
;
import
com.clx.performance.service.impl.UniqueOrderNumService
;
import
com.clx.performance.struct.breakcontract.*
;
import
com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRecordVO
;
...
...
@@ -62,6 +60,8 @@ public class BreakContractOwnerRecordServiceImpl implements BreakContractOwnerR
private
final
BreakContractSettlementOwnerDetailDao
breakContractSettlementOwnerDetailDao
;
private
final
BreakContractSettlementLogService
breakContractSettlementLogService
;
@Override
public
void
saveRecord
(
BreakContractOwnerRecordAddParam
param
)
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
...
...
@@ -103,9 +103,16 @@ public class BreakContractOwnerRecordServiceImpl implements BreakContractOwnerR
breakOwner
.
setStatus
(
BreakContractSettlementOwnerEnum
.
Status
.
TO_BE_LOCKED
.
getCode
());
record
.
setSettlementNo
(
settlementNo
);
//保存违约记录
breakContractOwnerRecordDao
.
saveEntity
(
record
);
//保存违约计费
breakContractSettlementOwnerDao
.
saveEntity
(
breakOwner
);
//保存违约结算单
breakContractSettlementOwnerDetailDao
.
saveEntity
(
breakOwnerDetail
);
//保存结算单日志----创建结算单
breakContractSettlementLogService
.
saveBreakSettlementLog
(
settlementNo
,
BreakContractSettlementLogEnum
.
Type
.
CREATE_SETTLEMENT
.
getCode
(),
BreakContractSettlementLogEnum
.
Type
.
CREATE_SETTLEMENT
.
getMsg
(),
OrderChildLogEnum
.
CreateType
.
PLATFORM
.
getCode
(),
userNo
,
loginUserInfo
.
getUserName
());
}
@Override
...
...
performance-web/src/main/java/com/clx/performance/service/impl/breakcontract/BreakContractSettlementOwnerServiceImpl.java
浏览文件 @
2eb68a62
...
...
@@ -139,7 +139,7 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
//保存结算单日志----上传结算凭证
breakContractSettlementLogService
.
saveBreakSettlementLog
(
settlementOwner
.
getSettlementNo
(),
BreakContractSettlementLogEnum
.
Type
.
CREATE_SETTLEMENT
.
getCode
(),
BreakContractSettlementLogEnum
.
Type
.
CREATE
_SETTLEMENT
.
getMsg
(),
BreakContractSettlementLogEnum
.
Type
.
UPLOAD_SETTLEMENT
.
getCode
(),
BreakContractSettlementLogEnum
.
Type
.
UPLOAD
_SETTLEMENT
.
getMsg
(),
OrderChildLogEnum
.
CreateType
.
PLATFORM
.
getCode
(),
loginUserInfo
.
getUserNo
(),
loginUserInfo
.
getUserName
());
}
...
...
performance-web/src/test/java/com/clx/performance/JobTest.java
浏览文件 @
2eb68a62
...
...
@@ -52,17 +52,15 @@ public class JobTest {
@Test
public
void
test1
()
{
OrderCancelMqParam
mqParam
=
new
OrderCancelMqParam
();
mqParam
.
setType
(
"2"
);
mqParam
.
setOrderNo
(
"123"
);
Message
message
=
MessageBuilder
.
withBody
(
JSONUtil
.
parse
(
mqParam
).
toString
().
getBytes
()).
build
();
rabbitTemplate
.
send
(
RabbitKeyConstants
.
ORDER_CANCEL_EXCHANGE
,
RabbitKeyConstants
.
ORDER_CANCEL_ROUTE_KEY
,
message
);
//CX2023092600223 平台已承接的订单,没有产生货单
//CX2023101600386 truckDemand 类型是2,且有货单,有运单, 没有未到达货源地的运单
//PT2023092600207 类型都是1,且有运单
//orderCancelService.ownerCancelOrderPre("PT2023102700469");
// OrderCancelMqParam mqParam = new OrderCancelMqParam();
// mqParam.setType("2");
// mqParam.setOrderNo("123");
// Message message = MessageBuilder.withBody(JSONUtil.parse(mqParam).toString().getBytes()).build();
// rabbitTemplate.send(
// RabbitKeyConstants.ORDER_CANCEL_EXCHANGE, RabbitKeyConstants.ORDER_CANCEL_ROUTE_KEY, message
// );
orderCancelService
.
ownerCancelOrderPre
(
"PT2023102700473"
);
//orderCancelService.ownerCancelOrder("PT2023102600466");
System
.
out
.
println
();
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论