Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
601194c7
提交
601194c7
authored
7月 24, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
当运单、货单取消之后,需要重新计算对应该订单的接单率
上级
b5059be2
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
30 行增加
和
2 行删除
+30
-2
PerformanceProgressServiceImpl.java
...formance/service/impl/PerformanceProgressServiceImpl.java
+30
-2
没有找到文件。
performance-web/src/main/java/com/clx/performance/service/impl/PerformanceProgressServiceImpl.java
浏览文件 @
601194c7
...
...
@@ -326,6 +326,12 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
item
.
setSendSystemAddressId
(
data
.
getSendSystemAddressId
());
item
.
setSendSystemAddressShorter
(
getSystemAddressShorter
(
data
.
getSendSystemAddressId
()));
}
//挂单吨数发生变化需要重新计算接单率
if
(
performanceProgressOptional
.
get
().
getPendingWeight
().
compareTo
(
item
.
getPendingWeight
())!=
0
){
BigDecimal
orderedWeight
=
calcOrderedWeight
(
data
.
getOrderNo
());
BigDecimal
orderedRate
=
calcOrderedRate
(
orderedWeight
,
item
.
getPendingWeight
());
item
.
setOrderedRate
(
orderedRate
);
}
performanceProgressDao
.
updateEntityByKey
(
item
);
}
else
{
//查询最大的seq
...
...
@@ -467,8 +473,7 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
onTheWayTruckNum
=
loadTruckNum
-
unloadTruckNum
;
//接单率 = 接单吨数 / 挂单吨数
orderedRate
=
orderedWeight
.
divide
(
optional
.
get
().
getPendingWeight
(),
3
,
RoundingMode
.
HALF_UP
)
.
multiply
(
new
BigDecimal
(
100
));
orderedRate
=
calcOrderedRate
(
orderedWeight
,
optional
.
get
().
getPendingWeight
());
//任务完成率 = 到站量 / 任务量
taskCompleteRatio
=
sumUnloadWeight
.
divide
(
orderInfo
.
getTransportWeight
(),
3
,
RoundingMode
.
HALF_UP
)
...
...
@@ -489,4 +494,27 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
update
.
setSumOnTheWayWeight
(
sumOnTheWayWeight
);
performanceProgressDao
.
updateEntityByKey
(
update
);
}
// 计算接单率
public
BigDecimal
calcOrderedRate
(
BigDecimal
orderedWeight
,
BigDecimal
pendingWeight
){
//接单率 = 接单吨数 / 挂单吨数
return
orderedWeight
.
divide
(
pendingWeight
,
3
,
RoundingMode
.
HALF_UP
);
}
public
BigDecimal
calcOrderedWeight
(
String
orderNo
){
List
<
OrderChild
>
orderChildList
=
orderChildDao
.
listBeforeCompleteByOrderNo
(
orderNo
);
BigDecimal
orderedWeight
=
BigDecimal
.
ZERO
;
if
(
CollectionUtils
.
isEmpty
(
orderChildList
)){
return
orderedWeight
;
}
for
(
OrderChild
child
:
orderChildList
)
{
if
(
child
.
getStatus
()
>=
OrderChildEnum
.
Status
.
LOAD
.
getCode
()){
orderedWeight
=
orderedWeight
.
add
(
child
.
getLoadNet
());
}
else
{
orderedWeight
=
orderedWeight
.
add
(
child
.
getWeight
());
}
}
return
orderedWeight
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论