Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
66ce90c5
提交
66ce90c5
authored
11月 08, 2023
作者:
huyufan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
bug处理
上级
5ce53ed4
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
60 行增加
和
33 行删除
+60
-33
OrderCancelComponent.java
...a/com/clx/performance/component/OrderCancelComponent.java
+5
-5
OrderGoodsStatusLazyComponent.java
.../performance/component/OrderGoodsStatusLazyComponent.java
+10
-5
OrderChildDao.java
.../src/main/java/com/clx/performance/dao/OrderChildDao.java
+1
-1
OrderChildDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
+2
-2
OrderChildMapper.java
...ain/java/com/clx/performance/mapper/OrderChildMapper.java
+2
-1
OrderChildService.java
...n/java/com/clx/performance/service/OrderChildService.java
+2
-0
OrderCancelServiceImpl.java
.../clx/performance/service/impl/OrderCancelServiceImpl.java
+8
-8
OrderChildServiceImpl.java
...m/clx/performance/service/impl/OrderChildServiceImpl.java
+11
-0
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+13
-5
OrderChildSqlProvider.java
...om/clx/performance/sqlProvider/OrderChildSqlProvider.java
+6
-6
没有找到文件。
performance-web/src/main/java/com/clx/performance/component/OrderCancelComponent.java
浏览文件 @
66ce90c5
...
...
@@ -110,20 +110,20 @@ public class OrderCancelComponent implements InitializingBean {
List
<
OrderChild
>
orderChildren
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
log
.
info
(
"执行货主取消未拉运+未到达货源地吨数,当前运单个数"
+
orderChildren
.
size
());
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
String
>
childNoList
=
new
LinkedList
<>();
for
(
OrderChild
orderChild
:
orderChildren
)
{
log
.
info
(
"取消的运单:{}"
,
JSONUtil
.
parse
(
orderChild
));
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
}
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
new
HashMap
<>();
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
log
.
info
(
"
ids:{}"
,
ids
);
if
(
CollectionUtil
.
isNotEmpty
(
childNoList
))
{
log
.
info
(
"
childNoList:{}"
,
childNoList
);
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
"货主取消"
,
now
,
now
,
ids
);
now
,
now
,
childNoList
);
orderChildMap
=
orderChildren
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
...
...
performance-web/src/main/java/com/clx/performance/component/OrderGoodsStatusLazyComponent.java
浏览文件 @
66ce90c5
...
...
@@ -15,6 +15,7 @@ import com.clx.performance.enums.TruckDemandEnum;
import
com.clx.performance.extranal.user.DriverService
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.breakcontract.BreakContractDriverRecordService
;
import
com.clx.user.enums.driver.DriverInfoEnum
;
import
com.msl.common.base.Optional
;
...
...
@@ -22,6 +23,7 @@ import com.xxl.job.core.handler.annotation.XxlJob;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.InitializingBean
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.ZSetOperations
;
import
org.springframework.stereotype.Component
;
...
...
@@ -56,6 +58,7 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
private
final
BreakContractDriverRecordService
breakContractDriverRecordService
;
//根据货单最晚接单时间处理
public
void
expireProduceByLastOrderTime
(
LocalDateTime
localDateTime
,
String
orderGoodsNo
)
{
redisTemplate
.
opsForZSet
().
add
(
RedisConstants
.
ORDER_GOODS_STATUS_LAZY_LAST_ORDER_TIME
,
orderGoodsNo
,
localDateTime
.
toInstant
(
ZoneOffset
.
of
(
"+8"
)).
toEpochMilli
());
...
...
@@ -201,10 +204,10 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
BigDecimal
childSum
=
BigDecimal
.
ZERO
;
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
String
>
childNoList
=
new
LinkedList
<>();
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
childSum
=
childSum
.
add
(
orderChild
.
getWeight
());
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
orderChild
.
setCancelTime
(
now
);
...
...
@@ -212,9 +215,9 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
breakContractDriverRecordService
.
saveDriverRecordOfOrderChildCancel
(
orderChild
,
0L
,
"系统"
);
}
log
.
info
(
"取消运单ID集合:{}"
,
ids
);
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
"系统取消"
,
now
,
now
,
ids
);
log
.
info
(
"取消运单ID集合:{}"
,
childNoList
);
if
(
CollectionUtil
.
isNotEmpty
(
childNoList
))
{
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
"系统取消"
,
now
,
now
,
childNoList
);
}
RollbackOrderWeightParam
param
=
new
RollbackOrderWeightParam
();
...
...
@@ -246,6 +249,8 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
orderGoodsDao
.
updateOrderGoodsSetResidueWeightAndAlreadyWeight
(
childSum
,
childSum
,
orderGoods
.
getId
());
}
redisTemplate
.
opsForZSet
().
remove
(
RedisConstants
.
ORDER_GOODS_STATUS_LAZY_LAST_ARRIVE_SEND_TIME
,
orderGoodsId
.
getValue
());
}
}
}
...
...
performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java
浏览文件 @
66ce90c5
...
...
@@ -103,7 +103,7 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
List
<
OrderChild
>
selectArriveSendOrderChildGe
(
String
orderGoodsNo
);
void
batchUpdateOrderChildStatus
(
Integer
status
,
String
remark
,
LocalDateTime
cancelTime
,
LocalDateTime
finishTime
,
List
<
Integer
>
ids
);
void
batchUpdateOrderChildStatus
(
Integer
status
,
String
remark
,
LocalDateTime
cancelTime
,
LocalDateTime
finishTime
,
List
<
String
>
childNoList
);
List
<
OrderChild
>
selectOrderChildListByOrderGoodsNoAndStatusGE
(
String
orderGoodsNo
,
Integer
status
);
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
浏览文件 @
66ce90c5
...
...
@@ -312,8 +312,8 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
}
@Override
public
void
batchUpdateOrderChildStatus
(
Integer
status
,
String
remark
,
LocalDateTime
cancelTime
,
LocalDateTime
finishTime
,
List
<
Integer
>
ids
)
{
baseMapper
.
updateOrderGoodsSetResidueWeight
(
status
,
remark
,
cancelTime
,
finishTime
,
ids
);
public
void
batchUpdateOrderChildStatus
(
Integer
status
,
String
remark
,
LocalDateTime
cancelTime
,
LocalDateTime
finishTime
,
List
<
String
>
childNoList
)
{
baseMapper
.
updateOrderGoodsSetResidueWeight
(
status
,
remark
,
cancelTime
,
finishTime
,
childNoList
);
}
@Override
...
...
performance-web/src/main/java/com/clx/performance/mapper/OrderChildMapper.java
浏览文件 @
66ce90c5
...
...
@@ -50,5 +50,5 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
@UpdateProvider
(
type
=
OrderChildSqlProvider
.
class
,
method
=
"batchUpdateOrderChildStatus"
)
Integer
updateOrderGoodsSetResidueWeight
(
@Param
(
value
=
"status"
)
Integer
status
,
@Param
(
value
=
"remark"
)
String
remark
,
@Param
(
value
=
"cancelTime"
)
LocalDateTime
cancelTime
,
@Param
(
value
=
"finishTime"
)
LocalDateTime
finishTime
,
@Param
(
value
=
"
ids"
)
List
<
Integer
>
ids
);
@Param
(
value
=
"
childNoList"
)
List
<
String
>
childNoList
);
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/service/OrderChildService.java
浏览文件 @
66ce90c5
...
...
@@ -78,4 +78,6 @@ public interface OrderChildService {
*/
List
<
OrderChild
>
selectInTransitOrderChild
(
String
orderNo
);
void
orderChildFinish
(
String
childNo
);
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderCancelServiceImpl.java
浏览文件 @
66ce90c5
...
...
@@ -112,17 +112,17 @@ public class OrderCancelServiceImpl implements OrderCancelService {
}
else
{
List
<
OrderChild
>
arriveSendChildList
=
orderChildDao
.
selectResidueWeight
(
orderNo
,
OrderChildEnum
.
Status
.
ARRIVE_SEND
.
getCode
());
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
String
>
childNoList
=
new
LinkedList
<>();
for
(
OrderChild
orderChild
:
arriveSendChildList
)
{
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
}
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
if
(
CollectionUtil
.
isNotEmpty
(
childNoList
))
{
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
"系统取消"
,
now
,
now
,
ids
);
now
,
now
,
childNoList
);
orderStatusCode
=
OrderEnum
.
Status
.
COMPLETED
.
getCode
();
}
...
...
@@ -402,16 +402,16 @@ public class OrderCancelServiceImpl implements OrderCancelService {
if
(
CollectionUtil
.
isEmpty
(
orderChildren
))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前订单已发生变化,请重新选择取消方式"
);
}
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
String
>
childNoList
=
new
LinkedList
<>();
for
(
OrderChild
orderChild
:
orderChildren
)
{
//释放车辆
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
}
if
(
CollectionUtil
.
isNotEmpty
(
ids
))
{
if
(
CollectionUtil
.
isNotEmpty
(
childNoList
))
{
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
(),
"平台取消"
,
now
,
now
,
ids
);
now
,
now
,
childNoList
);
}
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
浏览文件 @
66ce90c5
...
...
@@ -932,7 +932,10 @@ public class OrderChildServiceImpl implements OrderChildService {
}
BigDecimal
dif
=
param
.
getLoadNet
().
subtract
(
orderChild
.
getWeight
());
if
(
dif
.
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
ORDER_CHILD_WEIGHT_NOT_EQ
);
}
orderChild
.
setLoadRough
(
param
.
getLoadRough
());
orderChild
.
setLoadTare
(
param
.
getLoadTare
());
orderChild
.
setLoadNet
(
param
.
getLoadNet
());
...
...
@@ -1214,6 +1217,14 @@ public class OrderChildServiceImpl implements OrderChildService {
}
@Override
public
void
orderChildFinish
(
String
childNo
){
// 运单结束 统计积分
integralMqService
.
orderChildFinish
(
childNo
);
}
/**
* 生成计费单
*/
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
66ce90c5
...
...
@@ -30,6 +30,8 @@ import com.clx.performance.param.app.OrderGoodsListPageParam;
import
com.clx.performance.param.pc.OrderGoodsCancelParam
;
import
com.clx.performance.param.pc.UpdateEditOrderGoodsParam
;
import
com.clx.performance.param.pc.UpdateOrderGoodsPriceParam
;
import
com.clx.performance.service.IntegralMqService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.OrderGoodsLogService
;
import
com.clx.performance.service.OrderGoodsService
;
import
com.clx.performance.struct.OrderGoodsStruct
;
...
...
@@ -93,12 +95,15 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
private
GoodsOrderTruckRecordComponent
goodsOrderTruckRecordComponent
;
private
OrderGoodsStatusLazyComponent
orderGoodsStatusLazyComponent
;
private
DriverService
driverService
;
private
OrderCancelComponent
orderCancelComponent
;
private
final
OrderChildService
orderChildService
;
@Override
public
OrderGoodsVO
getOrderGoodsInfoByOrderGoodsNoForPC
(
String
orderGoodsNo
)
{
OrderGoodsVO
orderGoodsVO
=
orderGoodsDao
.
getOrderGoodsInfoByOrderGoodsNoForPC
(
orderGoodsNo
).
map
(
orderGoodsStruct:
:
convert
).
get
();
...
...
@@ -402,6 +407,9 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
for
(
OrderGoodsTruckBind
bind
:
getChildList
)
{
if
(!
truckList
.
contains
(
bind
.
getTruckNo
()))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前取消的车辆已经接单,车牌号为:"
+
bind
.
getTruckNo
());
}
else
{
//已存在的记录不需要重新创建绑定记录
truckList
.
remove
(
bind
.
getTruckNo
());
}
}
}
...
...
@@ -466,7 +474,7 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
List
<
OrderChild
>
orderChildList
=
null
;
BigDecimal
residueWeight
=
null
;
BigDecimal
sum
=
BigDecimal
.
ZERO
;
List
<
Integer
>
ids
=
new
LinkedList
<>();
List
<
String
>
childNoList
=
new
LinkedList
<>();
RollbackOrderWeightParam
param
=
new
RollbackOrderWeightParam
();
Integer
cancelOperateType
=
goodsCancelParam
.
getCancelOperateType
();
...
...
@@ -511,12 +519,12 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
if
(
CollectionUtils
.
isNotEmpty
(
filterOrderChildList
))
{
for
(
OrderChild
orderChild
:
filterOrderChildList
)
{
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
sum
=
sum
.
add
(
orderChild
.
getWeight
());
}
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
"系统取消"
,
now
,
now
,
ids
);
now
,
now
,
childNoList
);
}
orderChildList
.
removeAll
(
filterOrderChildList
);
if
(
CollectionUtil
.
isNotEmpty
(
orderChildList
))
{
...
...
@@ -558,12 +566,12 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
for
(
OrderChild
orderChild
:
filterOrderChildList
)
{
driverService
.
updateOrderStatus
(
orderChild
.
getDriverUserNo
(),
DriverInfoEnum
.
DriverStatus
.
NO
.
getCode
(),
orderChild
.
getTruckId
(),
1
);
ids
.
add
(
orderChild
.
getId
());
childNoList
.
add
(
orderChild
.
getChildNo
());
sum
=
sum
.
add
(
orderChild
.
getWeight
());
}
orderChildDao
.
batchUpdateOrderChildStatus
(
OrderChildEnum
.
Status
.
PLATFORM_CANCEL
.
getCode
(),
"系统取消"
,
now
,
now
,
ids
);
now
,
now
,
childNoList
);
orderChildList
.
removeAll
(
filterOrderChildList
);
if
(
CollectionUtil
.
isNotEmpty
(
orderChildList
))
{
orderGoodsStatus
=
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
();
...
...
performance-web/src/main/java/com/clx/performance/sqlProvider/OrderChildSqlProvider.java
浏览文件 @
66ce90c5
...
...
@@ -129,17 +129,17 @@ public class OrderChildSqlProvider {
public
String
batchUpdateOrderChildStatus
(
@Param
(
value
=
"status"
)
Integer
status
,
@Param
(
value
=
"remark"
)
String
remark
,
@Param
(
value
=
"cancelTime"
)
LocalDateTime
cancelTime
,
@Param
(
value
=
"finishTime"
)
LocalDateTime
finishTime
,
@Param
(
value
=
"
ids"
)
List
<
Integer
>
ids
){
@Param
(
value
=
"
childNoList"
)
List
<
String
>
childNoList
){
StringBuffer
sqlList
=
new
StringBuffer
();
sqlList
.
append
(
"update order_child set cancel_remark = '"
+
remark
+
"' ,status = "
+
status
+
",cancel_time = "
+
cancelTime
+
",finish_time = "
+
finishTime
+
" where
id
in ("
);
for
(
int
i
=
0
;
i
<
ids
.
size
();
i
++)
{
Integer
id
=
ids
.
get
(
i
);
+
cancelTime
+
",finish_time = "
+
finishTime
+
" where
child_no
in ("
);
for
(
int
i
=
0
;
i
<
childNoList
.
size
();
i
++)
{
String
childNo
=
childNoList
.
get
(
i
);
sqlList
.
append
(
"'"
).
append
(
id
).
append
(
"'"
);
sqlList
.
append
(
"'"
).
append
(
childNo
).
append
(
"'"
);
if
(
i
<
ids
.
size
()
-
1
)
{
if
(
i
<
childNoList
.
size
()
-
1
)
{
sqlList
.
append
(
","
);
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论