Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
b9f9c869
提交
b9f9c869
authored
7月 02, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增取消运单、货单对应的方法,恢复到上级对应的吨数
上级
f511c152
隐藏空白字符变更
内嵌
并排
正在显示
13 个修改的文件
包含
86 行增加
和
8 行删除
+86
-8
PerformanceFeign.java
...main/java/com/clx/performance/feign/PerformanceFeign.java
+1
-1
OrderGoodsFeignController.java
...rformance/controller/feign/OrderGoodsFeignController.java
+2
-1
OrderChildDao.java
.../src/main/java/com/clx/performance/dao/OrderChildDao.java
+3
-0
OrderGoodsDao.java
.../src/main/java/com/clx/performance/dao/OrderGoodsDao.java
+3
-0
OrderChildDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
+6
-1
OrderGoodsDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
+6
-0
CancelOrderGoodsWeightDTO.java
...va/com/clx/performance/dto/CancelOrderGoodsWeightDTO.java
+21
-0
OrderChildMapper.java
...ain/java/com/clx/performance/mapper/OrderChildMapper.java
+9
-0
OrderGoodsMapper.java
...ain/java/com/clx/performance/mapper/OrderGoodsMapper.java
+6
-0
OrderGoodsService.java
...n/java/com/clx/performance/service/OrderGoodsService.java
+1
-1
OrderChildServiceImpl.java
...m/clx/performance/service/impl/OrderChildServiceImpl.java
+9
-2
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+5
-2
OrderGoodsSqlProvider.java
...om/clx/performance/sqlProvider/OrderGoodsSqlProvider.java
+14
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/feign/PerformanceFeign.java
浏览文件 @
b9f9c869
...
...
@@ -139,6 +139,6 @@ public interface PerformanceFeign {
* @return
*/
@PostMapping
(
value
=
{
"clx-performance/feign/orderGoods/cancelOrderGoods"
})
Result
<
Object
>
cancelOrderGoods
(
@RequestBody
@Validated
CancelOrderGoodsParam
param
);
Result
<
BigDecimal
>
cancelOrderGoods
(
@RequestBody
@Validated
CancelOrderGoodsParam
param
);
}
performance-web/src/main/java/com/clx/performance/controller/feign/OrderGoodsFeignController.java
浏览文件 @
b9f9c869
...
...
@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
import
java.util.List
;
@RestController
...
...
@@ -58,7 +59,7 @@ public class OrderGoodsFeignController {
@ApiOperation
(
value
=
"取消货单"
,
notes
=
"<br>By:李瑞新"
)
@PostMapping
({
"/cancelOrderGoods"
})
Result
<
Object
>
cancelOrderGoods
(
@RequestBody
@Validated
CancelOrderGoodsParam
param
)
{
Result
<
BigDecimal
>
cancelOrderGoods
(
@RequestBody
@Validated
CancelOrderGoodsParam
param
)
{
orderGoodsService
.
cancelOrderGoods
(
param
);
return
Result
.
ok
();
}
...
...
performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java
浏览文件 @
b9f9c869
...
...
@@ -2,6 +2,7 @@ package com.clx.performance.dao;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.linewarn.LineWarnOrderChildStatisticsDTO
;
import
com.clx.performance.mapper.OrderChildMapper
;
import
com.clx.performance.model.OrderChild
;
...
...
@@ -194,4 +195,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
List
<
OrderChild
>
listByOrderNo
(
String
orderNo
,
List
<
Integer
>
status
);
void
updateBatchOwnerCancel
(
List
<
String
>
childNos
);
List
<
CancelOrderGoodsWeightDTO
>
statisticsCancelOrderGoodsWeight
(
List
<
String
>
childNos
);
}
performance-web/src/main/java/com/clx/performance/dao/OrderGoodsDao.java
浏览文件 @
b9f9c869
package
com
.
clx
.
performance
.
dao
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.model.OrderGoodsFleetOpenTruck
;
import
com.clx.performance.param.app.AppGoodsOrderSearchParam
;
import
com.clx.performance.param.pc.OrderGoodsEditParams
;
...
...
@@ -102,4 +103,6 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
List
<
OrderGoodsFleetOpenTruck
>
queryProcessFleetOpenTruckList
();
void
cancelOrderGoods
(
String
orderNo
);
void
batchCancelOrderGoods
(
List
<
CancelOrderGoodsWeightDTO
>
cancelOrderGoodsWeight
);
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
浏览文件 @
b9f9c869
...
...
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.linewarn.LineWarnOrderChildStatisticsDTO
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.mapper.OrderChildMapper
;
...
...
@@ -26,7 +27,6 @@ import org.springframework.stereotype.Repository;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Objects
;
...
...
@@ -635,4 +635,9 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.
set
(
OrderChild:
:
getCancelRemark
,
"货主减少拉运吨数,系统自动取消"
)
);
}
@Override
public
List
<
CancelOrderGoodsWeightDTO
>
statisticsCancelOrderGoodsWeight
(
List
<
String
>
childNos
)
{
return
baseMapper
.
statisticsCancelOrderGoodsWeight
(
childNos
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
浏览文件 @
b9f9c869
...
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.mapper.OrderGoodsMapper
;
import
com.clx.performance.model.OrderGoods
;
...
...
@@ -283,4 +284,9 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
.
set
(
OrderGoods:
:
getOrderGoodsStatus
,
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
())
);
}
@Override
public
void
batchCancelOrderGoods
(
List
<
CancelOrderGoodsWeightDTO
>
cancelOrderGoodsWeight
)
{
baseMapper
.
batchCancelOrderGoods
(
cancelOrderGoodsWeight
);
}
}
performance-web/src/main/java/com/clx/performance/dto/CancelOrderGoodsWeightDTO.java
0 → 100644
浏览文件 @
b9f9c869
package
com
.
clx
.
performance
.
dto
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.math.BigDecimal
;
/**
* @ClassName CancelOrderGoodsWeightDTO
* @Description
* @Author kavin
* @Date 2024/7/2 15:38
* @Version 1.0
*/
@Getter
@Setter
public
class
CancelOrderGoodsWeightDTO
{
private
String
orderGoodsNo
;
private
BigDecimal
cancelWeight
;
}
performance-web/src/main/java/com/clx/performance/mapper/OrderChildMapper.java
浏览文件 @
b9f9c869
...
...
@@ -3,6 +3,7 @@ package com.clx.performance.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.linewarn.LineWarnOrderChildStatisticsDTO
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.param.app.PageOrderChildOfDriverParam
;
...
...
@@ -168,4 +169,11 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
"</script>"
)
List
<
LineWarnOrderChildStatisticsDTO
>
sumUnloadNumByOrderGoodsNoList
(
List
<
String
>
orderGoodsNoList
);
@Select
(
"<script>select order_goods_no orderGoodsNo, sum(weight) cancelWeight from order_child "
+
" where child_no "
+
" in <foreach collection='list' item='item' open='(' separator=',' close=')'>#{item}</foreach> "
+
" group by order_goods_no "
+
"</script>"
)
List
<
CancelOrderGoodsWeightDTO
>
statisticsCancelOrderGoodsWeight
(
@Param
(
"list"
)
List
<
String
>
childNos
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/mapper/OrderGoodsMapper.java
浏览文件 @
b9f9c869
...
...
@@ -3,6 +3,7 @@ package com.clx.performance.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.model.OrderGoodsFleetOpenTruck
;
import
com.clx.performance.param.app.AppGoodsOrderSearchParam
;
import
com.clx.performance.param.pc.OrderGoodsEditParams
;
...
...
@@ -100,4 +101,9 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
@SelectProvider
(
type
=
OrderGoodsSqlProvider
.
class
,
method
=
"queryProcessFleetOpenTruckList"
)
List
<
OrderGoodsFleetOpenTruck
>
queryProcessFleetOpenTruckList
();
@UpdateProvider
(
type
=
OrderGoodsSqlProvider
.
class
,
method
=
"batchCancelOrderGoods"
)
void
batchCancelOrderGoods
(
List
<
CancelOrderGoodsWeightDTO
>
cancelOrderGoodsWeight
);
}
performance-web/src/main/java/com/clx/performance/service/OrderGoodsService.java
浏览文件 @
b9f9c869
...
...
@@ -104,5 +104,5 @@ public interface OrderGoodsService {
void
saveBindTruck
(
DistributionTruckParam
param
);
void
cancelOrderGoods
(
CancelOrderGoodsParam
param
);
BigDecimal
cancelOrderGoods
(
CancelOrderGoodsParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
浏览文件 @
b9f9c869
...
...
@@ -16,6 +16,7 @@ import com.clx.performance.constant.RedissonConstants;
import
com.clx.performance.dao.*
;
import
com.clx.performance.dao.breakcontract.BreakContractDriverRecordDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.OrderChildExpectDTO
;
import
com.clx.performance.dto.gd.GdRouteDTO
;
import
com.clx.performance.dto.payment.WalletResidueCardDTO
;
...
...
@@ -2453,7 +2454,7 @@ public class OrderChildServiceImpl implements OrderChildService {
//未到达货源地之前运单(不包括取消)
List
<
OrderChild
>
arriveBeforeOrderChild
=
orderChildDao
.
listByOrderNo
(
param
.
getOrderNo
(),
arriveBeforeStatus
);
log
.
info
(
"arriveBeforeOrderChild:{}"
,
arriveBeforeOrderChild
);
if
(
orderedWeight
.
compareTo
(
availableWeight
)
>
0
){
//已挂吨数大于可拉运吨数 取消未到达货源地的运单
if
(
orderedWeight
.
compareTo
(
availableWeight
)
>
0
){
//已挂吨数大于可拉运吨数 取消未到达货源地的运单
log
.
info
(
"已挂吨数大于可拉运吨数,取消未到达货源地的运单:{}"
,
orderedWeight
.
compareTo
(
availableWeight
));
//到达货源地之后运单(不包括取消)
List
<
OrderChild
>
arriveAfterOrderChild
=
orderChildDao
.
listByOrderNo
(
param
.
getOrderNo
(),
arriveAfterStatus
);
...
...
@@ -2461,7 +2462,7 @@ public class OrderChildServiceImpl implements OrderChildService {
BigDecimal
arriveAfterWeight
=
arriveAfterOrderChild
.
stream
().
map
(
OrderChild:
:
getWeight
)
.
reduce
(
BigDecimal:
:
add
).
orElse
(
BigDecimal
.
ZERO
);
//总拉运吨数
log
.
info
(
"总拉运吨数:{}"
,
arriveAfterWeight
);
if
(
availableWeight
.
compareTo
(
arriveAfterWeight
)
>
0
){
//可拉运吨数大于运单拉运吨数 取消未到达货源地的运单
if
(
availableWeight
.
compareTo
(
arriveAfterWeight
)
>
0
){
//可拉运吨数大于运单拉运吨数 取消未到达货源地的运单
log
.
info
(
"可拉运吨数大于运单拉运吨数,取消未到达货源地的运单:{}"
,
availableWeight
.
compareTo
(
arriveAfterWeight
));
BigDecimal
weight
=
BigDecimal
.
ZERO
;
//运单累加吨数
BigDecimal
subtract
=
availableWeight
.
subtract
(
arriveAfterWeight
);
//可拉运吨数-运单拉运吨数=司机可以接单拉运吨数
...
...
@@ -2484,6 +2485,12 @@ public class OrderChildServiceImpl implements OrderChildService {
//批量取消运单
if
(
CollectionUtils
.
isNotEmpty
(
childNos
)){
//按照货单进行取消运单吨数统计
List
<
CancelOrderGoodsWeightDTO
>
cancelOrderGoodsWeight
=
orderChildDao
.
statisticsCancelOrderGoodsWeight
(
childNos
);
//恢复取消的运单吨数到对应的货单上
if
(
CollectionUtils
.
isNotEmpty
(
cancelOrderGoodsWeight
)){
orderGoodsDao
.
batchCancelOrderGoods
(
cancelOrderGoodsWeight
);
}
orderChildDao
.
updateBatchOwnerCancel
(
childNos
);
//保存日志
List
<
OrderChildLog
>
logs
=
new
ArrayList
<>();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
b9f9c869
...
...
@@ -976,7 +976,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
cancelOrderGoods
(
CancelOrderGoodsParam
param
)
{
public
BigDecimal
cancelOrderGoods
(
CancelOrderGoodsParam
param
)
{
log
.
info
(
"取消货单:{}"
,
param
);
//取消货单
...
...
@@ -987,6 +987,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
log
.
info
(
"orderGoodsListByOrderNo:{}"
,
orderGoodsListByOrderNo
);
List
<
OrderGoodsLog
>
orderGoodsLogs
=
new
ArrayList
<>();
OrderGoodsLog
orderGoodsLog
=
null
;
BigDecimal
totalCancelWeight
=
BigDecimal
.
ZERO
;
for
(
OrderGoods
orderGoods:
orderGoodsListByOrderNo
){
orderGoodsLog
=
new
OrderGoodsLog
();
orderGoodsLog
.
setOrderGoodsNo
(
orderGoods
.
getOrderGoodsNo
());
...
...
@@ -995,9 +996,11 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
orderGoodsLog
.
setCreateBy
(
param
.
getCreateBy
());
orderGoodsLog
.
setRemark
(
"货主发起减吨请求,当前已挂单量超过总拉运量,自动取消"
);
orderGoodsLogs
.
add
(
orderGoodsLog
);
totalCancelWeight
.
add
(
Objects
.
nonNull
(
orderGoods
.
getResidueTransportWeight
())?
orderGoods
.
getResidueTransportWeight
()
:
BigDecimal
.
ZERO
);
}
orderGoodsLogService
.
saveBatchLog
(
orderGoodsLogs
);
return
totalCancelWeight
;
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/OrderGoodsSqlProvider.java
浏览文件 @
b9f9c869
...
...
@@ -2,6 +2,7 @@ package com.clx.performance.sqlProvider;
import
cn.hutool.core.util.ObjectUtil
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStopEnum
;
import
com.clx.performance.enums.PendingOrderWayStatusEnum
;
...
...
@@ -356,4 +357,17 @@ public class OrderGoodsSqlProvider {
return
sql
;
}
public
String
batchCancelOrderGoods
(
List
<
CancelOrderGoodsWeightDTO
>
cancelOrderGoodsWeight
){
StringJoiner
sj
=
new
StringJoiner
(
"; "
);
for
(
CancelOrderGoodsWeightDTO
item
:
cancelOrderGoodsWeight
){
sj
.
add
(
"update order_goods set residue_transport_weight = residue_transport_weight +"
+
item
.
getCancelWeight
()
+
", already_transport_weight = already_transport_weight -"
+
item
.
getCancelWeight
()
+
" where order_goods_no = "
+
item
.
getOrderGoodsNo
())
;
}
return
sj
.
toString
();
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论