Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
a238c6a1
提交
a238c6a1
authored
8月 14, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/v20.8_add_sub_weight_20240805' into dev
# Conflicts: # performance-web/src/main/java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
上级
cc622433
0c8a95fc
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
41 行增加
和
64 行删除
+41
-64
OrderGoodsDao.java
.../src/main/java/com/clx/performance/dao/OrderGoodsDao.java
+0
-2
OrderGoodsDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
+0
-1
OrderExtractWeightDTO.java
...n/java/com/clx/performance/dto/OrderExtractWeightDTO.java
+0
-27
OrderGoodsMapper.java
...ain/java/com/clx/performance/mapper/OrderGoodsMapper.java
+0
-4
OrderWeightService.java
.../java/com/clx/performance/service/OrderWeightService.java
+4
-0
OrderChildServiceImpl.java
...m/clx/performance/service/impl/OrderChildServiceImpl.java
+2
-2
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+12
-6
OrderWeightServiceImpl.java
.../clx/performance/service/impl/OrderWeightServiceImpl.java
+23
-9
OrderGoodsSqlProvider.java
...om/clx/performance/sqlProvider/OrderGoodsSqlProvider.java
+0
-13
没有找到文件。
performance-web/src/main/java/com/clx/performance/dao/OrderGoodsDao.java
浏览文件 @
a238c6a1
...
@@ -2,7 +2,6 @@ package com.clx.performance.dao;
...
@@ -2,7 +2,6 @@ package com.clx.performance.dao;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.OrderExtractWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.mapper.OrderGoodsMapper
;
import
com.clx.performance.mapper.OrderGoodsMapper
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
...
@@ -113,5 +112,4 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
...
@@ -113,5 +112,4 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
void
batchCancelOrderGoodsWeight
(
List
<
OrderGoodsCancelWeightDTO
>
cancelOrderGoodsList
);
void
batchCancelOrderGoodsWeight
(
List
<
OrderGoodsCancelWeightDTO
>
cancelOrderGoodsList
);
List
<
OrderExtractWeightDTO
>
calcOrderGoodsExtractWeightByOrderNoList
(
List
<
String
>
orderNoList
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderGoodsDaoImpl.java
浏览文件 @
a238c6a1
...
@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
...
@@ -5,7 +5,6 @@ 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.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.OrderExtractWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.mapper.OrderGoodsMapper
;
import
com.clx.performance.mapper.OrderGoodsMapper
;
...
...
performance-web/src/main/java/com/clx/performance/dto/OrderExtractWeightDTO.java
deleted
100644 → 0
浏览文件 @
cc622433
package
com
.
clx
.
performance
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.math.BigDecimal
;
/**
* @ClassName OrderExtractWeightDTO
* @Description
* @Author kavin
* @Date 2024/8/8 11:47
* @Version 1.0
*/
@Getter
@Setter
public
class
OrderExtractWeightDTO
{
@ApiModelProperty
(
"订单编号"
)
private
String
orderNo
;
@ApiModelProperty
(
"已提取吨数"
)
private
BigDecimal
extractWeight
;
}
performance-web/src/main/java/com/clx/performance/mapper/OrderGoodsMapper.java
浏览文件 @
a238c6a1
...
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
...
@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
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.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.CancelOrderGoodsWeightDTO
;
import
com.clx.performance.dto.OrderExtractWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.dto.OrderGoodsCancelWeightDTO
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoodsFleetOpenTruck
;
import
com.clx.performance.model.OrderGoodsFleetOpenTruck
;
...
@@ -110,7 +109,4 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
...
@@ -110,7 +109,4 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
@UpdateProvider
(
type
=
OrderGoodsSqlProvider
.
class
,
method
=
"batchCancelOrderGoodsWeight"
)
@UpdateProvider
(
type
=
OrderGoodsSqlProvider
.
class
,
method
=
"batchCancelOrderGoodsWeight"
)
void
batchCancelOrderGoodsWeight
(
@Param
(
"cancelOrderGoodsList"
)
List
<
OrderGoodsCancelWeightDTO
>
cancelOrderGoodsList
);
void
batchCancelOrderGoodsWeight
(
@Param
(
"cancelOrderGoodsList"
)
List
<
OrderGoodsCancelWeightDTO
>
cancelOrderGoodsList
);
@SelectProvider
(
type
=
OrderGoodsSqlProvider
.
class
,
method
=
"calcOrderGoodsExtractWeightByOrderNoList"
)
List
<
OrderExtractWeightDTO
>
calcOrderGoodsExtractWeightByOrderNoList
(
List
<
String
>
orderNoList
);
}
}
performance-web/src/main/java/com/clx/performance/service/OrderWeightService.java
浏览文件 @
a238c6a1
package
com
.
clx
.
performance
.
service
;
package
com
.
clx
.
performance
.
service
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.vo.feign.OrderExtractWeightVO
;
import
com.clx.performance.vo.feign.OrderExtractWeightVO
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
...
@@ -8,4 +9,7 @@ public interface OrderWeightService {
...
@@ -8,4 +9,7 @@ public interface OrderWeightService {
OrderExtractWeightVO
getOrderCanExtractWeight
(
String
orderNo
);
OrderExtractWeightVO
getOrderCanExtractWeight
(
String
orderNo
);
BigDecimal
getOrderResidueWeight
(
String
orderNo
);
BigDecimal
getOrderResidueWeight
(
String
orderNo
);
//计算货单真实的提取量
BigDecimal
calcOrderGoodsRealExtractWeight
(
OrderGoods
item
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
浏览文件 @
a238c6a1
...
@@ -2186,8 +2186,8 @@ public class OrderChildServiceImpl implements OrderChildService {
...
@@ -2186,8 +2186,8 @@ public class OrderChildServiceImpl implements OrderChildService {
}
}
if
(
dif
.
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
if
(
dif
.
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
BigDecimal
orderResidueWeight
=
orderWeightService
.
getOrderResidueWeight
(
orderGoods
.
getOrderNo
());
BigDecimal
orderResidueWeight
=
orderWeightService
.
getOrderResidueWeight
(
orderGoods
.
getOrderNo
());
if
(
orderResidueWeight
.
compareTo
(
dif
)
<
0
){
if
(
orderResidueWeight
.
compareTo
(
BigDecimal
.
ZERO
)
<=
0
){
throw
new
ServiceSystemException
(
ORDER_WEIGHT_LACK
);
throw
new
ServiceSystemException
(
ORDER_WEIGHT_LACK
);
}
}
//运单修改装车吨数,从货单进行扣减
//运单修改装车吨数,从货单进行扣减
log
.
info
(
"货单号:{},运单号 :{},扣减吨数:{}"
,
orderGoods
.
getOrderGoodsNo
(),
childNo
,
dif
);
log
.
info
(
"货单号:{},运单号 :{},扣减吨数:{}"
,
orderGoods
.
getOrderGoodsNo
(),
childNo
,
dif
);
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
a238c6a1
...
@@ -18,7 +18,6 @@ import com.clx.performance.component.OrderCancelComponent;
...
@@ -18,7 +18,6 @@ import com.clx.performance.component.OrderCancelComponent;
import
com.clx.performance.component.OrderGoodsStatusLazyComponent
;
import
com.clx.performance.component.OrderGoodsStatusLazyComponent
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dao.*
;
import
com.clx.performance.dao.*
;
import
com.clx.performance.dto.OrderExtractWeightDTO
;
import
com.clx.performance.dto.OrderGoodsBindTruckNumDTO
;
import
com.clx.performance.dto.OrderGoodsBindTruckNumDTO
;
import
com.clx.performance.dto.OrderGoodsCancelDTO
;
import
com.clx.performance.dto.OrderGoodsCancelDTO
;
import
com.clx.performance.enums.*
;
import
com.clx.performance.enums.*
;
...
@@ -223,12 +222,19 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
...
@@ -223,12 +222,19 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
log
.
warn
(
"通过订单号批量查询订单信息失败,失败原因"
);
log
.
warn
(
"通过订单号批量查询订单信息失败,失败原因"
);
throw
new
ServiceSystemException
(
ResultEnum
.
DATA_ERROR
,
"查询货单对应的订单信息失败"
);
throw
new
ServiceSystemException
(
ResultEnum
.
DATA_ERROR
,
"查询货单对应的订单信息失败"
);
}
}
Map
<
String
,
FeignOrderInfoVO
>
orderInfoMap
=
orderListOption
.
get
();
List
<
OrderExtractWeightDTO
>
list
=
orderGoodsDao
.
calcOrderGoodsExtractWeightByOrderNoList
(
orderNoList
);
Map
<
String
,
BigDecimal
>
orderExtractWeightMap
=
list
.
stream
().
collect
(
List
<
OrderGoods
>
orderGoods
=
orderGoodsDao
.
listInField
(
OrderGoods:
:
getOrderNo
,
orderNoList
);
Collectors
.
toMap
(
OrderExtractWeightDTO:
:
getOrderNo
,
OrderExtractWeightDTO:
:
getExtractWeight
));
Map
<
String
,
BigDecimal
>
orderExtractWeightMap
=
new
HashMap
<>();
for
(
OrderGoods
orderGood
:
orderGoods
)
{
//计算货单真实的提取量
BigDecimal
weight
=
orderWeightService
.
calcOrderGoodsRealExtractWeight
(
orderGood
);
String
orderNo
=
orderGood
.
getOrderNo
();
orderExtractWeightMap
.
put
(
orderNo
,
Objects
.
nonNull
(
orderExtractWeightMap
.
get
(
orderNo
))?
orderExtractWeightMap
.
get
(
orderNo
).
add
(
weight
):
weight
);
}
Map
<
String
,
FeignOrderInfoVO
>
orderInfoMap
=
orderListOption
.
get
();
page
.
getRecords
().
forEach
(
item
->{
page
.
getRecords
().
forEach
(
item
->{
FeignOrderInfoVO
orderInfo
=
orderInfoMap
.
get
(
item
.
getOrderNo
());
FeignOrderInfoVO
orderInfo
=
orderInfoMap
.
get
(
item
.
getOrderNo
());
BigDecimal
orderExtractWeight
=
orderExtractWeightMap
.
get
(
item
.
getOrderNo
());
BigDecimal
orderExtractWeight
=
orderExtractWeightMap
.
get
(
item
.
getOrderNo
());
...
@@ -753,7 +759,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
...
@@ -753,7 +759,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
}
}
}
}
orderGoodsTruckBindDao
.
updateOrderGoodsBindStatus
(
orderGoods
.
getOrderGoodsNo
(),
OrderGoodsTruckBindEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsTruckBindDao
.
updateOrderGoodsBindStatus
(
orderGoods
.
getOrderGoodsNo
(),
OrderGoodsTruckBindEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsDao
.
updateOrderGoodsWeightAlreadyAndStatus
(
orderGoods
.
get
Goods
Id
(),
childResidueWeight
,
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateOrderGoodsWeightAlreadyAndStatus
(
orderGoods
.
getId
(),
childResidueWeight
,
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
}
}
private
void
cancelOperateOneTypeStrategy
(
OrderGoodsCancelDTO
dto
)
{
private
void
cancelOperateOneTypeStrategy
(
OrderGoodsCancelDTO
dto
)
{
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderWeightServiceImpl.java
浏览文件 @
a238c6a1
...
@@ -63,15 +63,7 @@ public class OrderWeightServiceImpl implements OrderWeightService {
...
@@ -63,15 +63,7 @@ public class OrderWeightServiceImpl implements OrderWeightService {
BigDecimal
platOrderGoodsWeight
=
BigDecimal
.
ZERO
;
BigDecimal
platOrderGoodsWeight
=
BigDecimal
.
ZERO
;
for
(
OrderGoods
item
:
orderGoodsList
)
{
for
(
OrderGoods
item
:
orderGoodsList
)
{
BigDecimal
weight
;
//取消,完成,完结的货单取 已拉运吨数 作为提取吨数,
BigDecimal
weight
=
calcOrderGoodsRealExtractWeight
(
item
);
if
(
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
())
||
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
SUCCESS
.
getCode
())
||
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
())){
weight
=
item
.
getAlreadyTransportWeight
();
}
else
{
weight
=
item
.
getExtractWeight
();
}
if
(
Objects
.
equals
(
item
.
getVehicleUsage
(),
VehicleUsageEnum
.
Status
.
OWN
.
getCode
())){
if
(
Objects
.
equals
(
item
.
getVehicleUsage
(),
VehicleUsageEnum
.
Status
.
OWN
.
getCode
())){
ownOrderGoodsWeight
=
ownOrderGoodsWeight
.
add
(
weight
);
ownOrderGoodsWeight
=
ownOrderGoodsWeight
.
add
(
weight
);
}
}
...
@@ -155,4 +147,26 @@ public class OrderWeightServiceImpl implements OrderWeightService {
...
@@ -155,4 +147,26 @@ public class OrderWeightServiceImpl implements OrderWeightService {
}
}
return
orderInfo
.
getTransportWeight
().
subtract
(
alreadyWeight
);
return
orderInfo
.
getTransportWeight
().
subtract
(
alreadyWeight
);
}
}
//计算货单真实的提取量
@Override
public
BigDecimal
calcOrderGoodsRealExtractWeight
(
OrderGoods
item
){
//取消,完成,完结的货单取 已拉运吨数 作为提取吨数,
BigDecimal
weight
;
if
(
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
())
||
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
SUCCESS
.
getCode
())
||
Objects
.
equals
(
item
.
getOrderGoodsStatus
(),
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
())){
weight
=
item
.
getAlreadyTransportWeight
();
}
else
{
//货单的已拉运吨数大于提取吨数,使用已拉运吨数作为提取吨数
if
(
item
.
getExtractWeight
().
compareTo
(
Objects
.
nonNull
(
item
.
getAlreadyLoadWeight
())?
item
.
getAlreadyLoadWeight
():
BigDecimal
.
ZERO
)
>=
0
){
weight
=
item
.
getExtractWeight
();
}
else
{
weight
=
item
.
getAlreadyTransportWeight
();
}
}
return
weight
;
}
}
}
performance-web/src/main/java/com/clx/performance/sqlProvider/OrderGoodsSqlProvider.java
浏览文件 @
a238c6a1
...
@@ -402,18 +402,5 @@ public class OrderGoodsSqlProvider {
...
@@ -402,18 +402,5 @@ public class OrderGoodsSqlProvider {
return
sj
.
toString
();
return
sj
.
toString
();
}
}
public
String
calcOrderGoodsExtractWeightByOrderNoList
(
List
<
String
>
orderNoList
){
String
sql
=
new
SQL
()
{{
SELECT
(
"order_no,sum(extract_weight) extractWeight"
);
FROM
(
"order_goods"
);
StringJoiner
sj
=
new
StringJoiner
(
","
,
"order_no in ("
,
")"
);
orderNoList
.
forEach
(
item
->
sj
.
add
(
"'"
+
item
+
"'"
));
WHERE
(
sj
.
toString
());
GROUP_BY
(
"order_no"
);
}}.
toString
();
return
sql
;
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论