Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
88e80207
提交
88e80207
authored
9月 23, 2024
作者:
艾庆国
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
承运优化需求9.30
上级
9ea0d57e
隐藏空白字符变更
内嵌
并排
正在显示
40 个修改的文件
包含
784 行增加
和
66 行删除
+784
-66
SettlementDriverDetailEnum.java
.../performance/enums/settle/SettlementDriverDetailEnum.java
+32
-0
BrokerOrderChildDriverPayMqParam.java
...rmance/vo/mq/broker/BrokerOrderChildDriverPayMqParam.java
+16
-0
SettlementDriverConfirmMqParam.java
...formance/vo/mq/settle/SettlementDriverConfirmMqParam.java
+16
-0
SettlementDriverPayAcceptSyncMqParam.java
...ce/vo/mq/settle/SettlementDriverPayAcceptSyncMqParam.java
+22
-0
SettlementDriverSettleMqParam.java
...rformance/vo/mq/settle/SettlementDriverSettleMqParam.java
+16
-0
SettlementOrderChildRiskAddMqParam.java
...ance/vo/mq/settle/SettlementOrderChildRiskAddMqParam.java
+16
-0
TransportVO.java
...in/java/com/clx/performance/vo/pc/broker/TransportVO.java
+2
-0
CarrierPageSettlementDriverVO.java
...e/vo/pc/carrier/settle/CarrierPageSettlementDriverVO.java
+6
-0
RabbitBrokerConfig.java
...n/java/com/clx/performance/config/RabbitBrokerConfig.java
+13
-0
RabbitSettlementConfig.java
...va/com/clx/performance/config/RabbitSettlementConfig.java
+26
-0
RabbitKeyBrokerConstants.java
...om/clx/performance/constant/RabbitKeyBrokerConstants.java
+6
-0
RabbitKeySettlementConstants.java
...lx/performance/constant/RabbitKeySettlementConstants.java
+12
-0
OrderChildDao.java
.../src/main/java/com/clx/performance/dao/OrderChildDao.java
+3
-0
OrderChildDaoImpl.java
.../java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
+9
-0
SettlementDriverDaoImpl.java
.../performance/dao/impl/settle/SettlementDriverDaoImpl.java
+18
-3
SettlementDriverDetailDaoImpl.java
...rmance/dao/impl/settle/SettlementDriverDetailDaoImpl.java
+25
-0
SettlementDriverDao.java
...a/com/clx/performance/dao/settle/SettlementDriverDao.java
+4
-0
SettlementDriverDetailDao.java
...clx/performance/dao/settle/SettlementDriverDetailDao.java
+5
-0
BrokerService.java
...va/com/clx/performance/extranal/broker/BrokerService.java
+1
-0
BrokerServiceImpl.java
...x/performance/extranal/broker/impl/BrokerServiceImpl.java
+11
-0
BrokerFeign.java
.../src/main/java/com/clx/performance/feign/BrokerFeign.java
+7
-0
SettlementJob.java
...ava/com/clx/performance/job/settlement/SettlementJob.java
+75
-6
BrokerOrderChildDriverPayListener.java
...ce/listener/broker/BrokerOrderChildDriverPayListener.java
+45
-0
SettlementDriverConfirmListener.java
...ance/listener/settle/SettlementDriverConfirmListener.java
+43
-0
SettlementDriverPayAcceptSyncListener.java
...istener/settle/SettlementDriverPayAcceptSyncListener.java
+43
-0
SettlementDriverDetail.java
.../clx/performance/model/settle/SettlementDriverDetail.java
+1
-0
OrderChildBrokerMqHandlerService.java
...ance/service/broker/OrderChildBrokerMqHandlerService.java
+4
-0
OrderChildBrokerMqService.java
...performance/service/broker/OrderChildBrokerMqService.java
+2
-0
OrderChildBrokerService.java
...x/performance/service/broker/OrderChildBrokerService.java
+3
-0
OrderChildBrokerMqHandlerServiceImpl.java
...ice/impl/broker/OrderChildBrokerMqHandlerServiceImpl.java
+15
-0
OrderChildBrokerMqServiceImpl.java
...ce/service/impl/broker/OrderChildBrokerMqServiceImpl.java
+15
-0
OrderChildBrokerServiceImpl.java
...ance/service/impl/broker/OrderChildBrokerServiceImpl.java
+8
-0
OrderChildPostServiceImpl.java
...ormance/service/impl/child/OrderChildPostServiceImpl.java
+3
-0
SettlementMqHandlerServiceImpl.java
...e/service/impl/settle/SettlementMqHandlerServiceImpl.java
+209
-44
SettlementMqServiceImpl.java
...formance/service/impl/settle/SettlementMqServiceImpl.java
+26
-4
SettlementOrderChildRiskServiceImpl.java
...vice/impl/settle/SettlementOrderChildRiskServiceImpl.java
+8
-5
SettlementPostServiceImpl.java
...rmance/service/impl/settle/SettlementPostServiceImpl.java
+6
-0
SettlementMqHandlerService.java
...erformance/service/settle/SettlementMqHandlerService.java
+7
-4
SettlementMqService.java
...m/clx/performance/service/settle/SettlementMqService.java
+4
-0
SettlementPostService.java
...clx/performance/service/settle/SettlementPostService.java
+1
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/settle/SettlementDriverDetailEnum.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
enums
.
settle
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
java.util.Arrays
;
import
java.util.Objects
;
import
java.util.Optional
;
public
enum
SettlementDriverDetailEnum
{
;
@Getter
@AllArgsConstructor
public
enum
PayAcceptStatus
{
INIT
(
0
,
"未受理支付"
),
ACCEPTING
(
1
,
"支付受理中"
),
ACCEPTED
(
2
,
"已受理支付"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
PayAcceptStatus
>
getByCode
(
int
code
)
{
return
Arrays
.
stream
(
values
()).
filter
(
e
->
Objects
.
equals
(
e
.
getCode
(),
code
)).
findFirst
();
}
public
static
String
getMsgByCode
(
int
code
)
{
return
getByCode
(
code
).
map
(
PayAcceptStatus:
:
getMsg
).
orElse
(
null
);
}
}
}
performance-api/src/main/java/com/clx/performance/vo/mq/broker/BrokerOrderChildDriverPayMqParam.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
mq
.
broker
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
BrokerOrderChildDriverPayMqParam
{
private
String
childNo
;
//运单编号
}
performance-api/src/main/java/com/clx/performance/vo/mq/settle/SettlementDriverConfirmMqParam.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
mq
.
settle
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
SettlementDriverConfirmMqParam
{
private
String
childNo
;
}
performance-api/src/main/java/com/clx/performance/vo/mq/settle/SettlementDriverPayAcceptSyncMqParam.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
mq
.
settle
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
/**
* @Author: aiqingguo
* @Description: 支付受理
* @Date: 2023-10-19 15:45:25
* @Version: 1.0
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
SettlementDriverPayAcceptSyncMqParam
{
private
String
childNo
;
//运单编号
}
performance-api/src/main/java/com/clx/performance/vo/mq/settle/SettlementDriverSettleMqParam.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
mq
.
settle
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
SettlementDriverSettleMqParam
{
private
String
childNo
;
//运单编号
}
performance-api/src/main/java/com/clx/performance/vo/mq/settle/SettlementOrderChildRiskAddMqParam.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
mq
.
settle
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
SettlementOrderChildRiskAddMqParam
{
private
Integer
id
;
//id
}
performance-api/src/main/java/com/clx/performance/vo/pc/broker/TransportVO.java
浏览文件 @
88e80207
...
...
@@ -37,5 +37,7 @@ public class TransportVO {
@ApiModelProperty
(
value
=
"开票状态 0 未开票 1 已开票 "
,
example
=
"1234124"
,
dataType
=
"String"
)
private
Integer
invoiceStatus
;
@ApiModelProperty
(
value
=
"第三方运单状态 20-已卸货,30-已创建支付单"
,
example
=
"1234124"
,
dataType
=
"String"
)
private
Integer
thirdPartyChildStatus
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/carrier/settle/CarrierPageSettlementDriverVO.java
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
vo
.
pc
.
carrier
.
settle
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
...
...
@@ -81,6 +82,11 @@ public class CarrierPageSettlementDriverVO {
private
BigDecimal
settlementFreight
;
@ApiModelProperty
(
value
=
"状态"
)
private
Integer
status
;
private
String
statusMsg
;
public
String
getStatusMsg
()
{
return
SettlementDriverEnum
.
Status
.
getMsgByCode
(
status
);
}
@ApiModelProperty
(
value
=
"创建时间"
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"结算平台 1:马上来 2:网运平台"
)
...
...
performance-web/src/main/java/com/clx/performance/config/RabbitBrokerConfig.java
浏览文件 @
88e80207
...
...
@@ -77,4 +77,17 @@ public class RabbitBrokerConfig {
.
with
(
RabbitKeyBrokerConstants
.
ORDER_CHILD_UPDATE_ROUTING_KEY
);
}
/**
* 运单司机确认收货
*/
@Bean
public
Queue
brokerOrderChildDriverConfirmQueue
()
{
return
new
Queue
(
RabbitKeyBrokerConstants
.
ORDER_CHILD_DRIVER_PAY_QUEUE
);
}
@Bean
public
Binding
brokerOrderChildDriverConfirmQueueBinding
()
{
return
BindingBuilder
.
bind
(
brokerOrderChildDriverConfirmQueue
()).
to
(
brokerDefaultExchange
())
.
with
(
RabbitKeyBrokerConstants
.
ORDER_CHILD_DRIVER_PAY_ROUTING_KEY
);
}
}
performance-web/src/main/java/com/clx/performance/config/RabbitSettlementConfig.java
浏览文件 @
88e80207
...
...
@@ -86,6 +86,19 @@ public class RabbitSettlementConfig {
.
with
(
RabbitKeySettlementConstants
.
SETTLEMENT_INVOICE_TYPE_SYNC_ROUTING_KEY
);
}
/**
* 开票方式同步
*/
@Bean
public
Queue
settlementDriverPayAcceptSyncQueue
()
{
return
new
Queue
(
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_QUEUE
);
}
@Bean
public
Binding
settlementDriverPayAcceptSyncQueueBinding
()
{
return
BindingBuilder
.
bind
(
settlementDriverPayAcceptSyncQueue
()).
to
(
settlementDefaultExchange
())
.
with
(
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_ROUTING_KEY
);
}
/**
* 结算
*/
...
...
@@ -175,4 +188,17 @@ public class RabbitSettlementConfig {
.
with
(
RabbitKeySettlementConstants
.
SETTLEMENT_INVOICE_STATUS_UPDATE_ROUTING_KEY
);
}
/**
* 司机确认收货
*/
@Bean
public
Queue
settlementDriverConfirmQueue
()
{
return
new
Queue
(
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_CONFIRM_QUEUE
);
}
@Bean
public
Binding
settlementDriverConfirmQueueBinding
()
{
return
BindingBuilder
.
bind
(
settlementDriverConfirmQueue
()).
to
(
settlementDefaultExchange
())
.
with
(
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_CONFIRM_ROUTING_KEY
);
}
}
performance-web/src/main/java/com/clx/performance/constant/RabbitKeyBrokerConstants.java
浏览文件 @
88e80207
...
...
@@ -45,4 +45,10 @@ public class RabbitKeyBrokerConstants {
public
static
final
String
ORDER_CHILD_UPDATE_QUEUE
=
PREFIX
+
"orderChild.update"
+
QUEUE
;
public
static
final
String
ORDER_CHILD_UPDATE_ROUTING_KEY
=
PREFIX
+
"orderChild.update"
+
QUEUE_ROUTING_KEY
;
/**
* 司机支付
*/
public
static
final
String
ORDER_CHILD_DRIVER_PAY_QUEUE
=
PREFIX
+
"orderChildDriver.pay"
+
QUEUE
;
public
static
final
String
ORDER_CHILD_DRIVER_PAY_ROUTING_KEY
=
PREFIX
+
"orderChildDriver.pay"
+
QUEUE_ROUTING_KEY
;
}
performance-web/src/main/java/com/clx/performance/constant/RabbitKeySettlementConstants.java
浏览文件 @
88e80207
...
...
@@ -51,6 +51,12 @@ public class RabbitKeySettlementConstants {
public
static
final
String
SETTLEMENT_INVOICE_TYPE_SYNC_QUEUE
=
PREFIX
+
"settlementInvoiceType.sync"
+
QUEUE
;
public
static
final
String
SETTLEMENT_INVOICE_TYPE_SYNC_ROUTING_KEY
=
PREFIX
+
"settlementInvoiceType.sync"
+
QUEUE_ROUTING_KEY
;
/**
* 同步支付受理
*/
public
static
final
String
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_QUEUE
=
PREFIX
+
"settlementDriverPayAccept.sync"
+
QUEUE
;
public
static
final
String
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_ROUTING_KEY
=
PREFIX
+
"settlementDriverPayAccept.sync"
+
QUEUE_ROUTING_KEY
;
/**
* 结算
*/
...
...
@@ -92,4 +98,10 @@ public class RabbitKeySettlementConstants {
public
static
final
String
SETTLEMENT_INVOICE_STATUS_UPDATE_QUEUE
=
PREFIX
+
"settlementInvoice.update"
+
QUEUE
;
public
static
final
String
SETTLEMENT_INVOICE_STATUS_UPDATE_ROUTING_KEY
=
PREFIX
+
"settlementInvoice.update"
+
QUEUE_ROUTING_KEY
;
/**
* 司机确认收货
*/
public
static
final
String
SETTLEMENT_DRIVER_CONFIRM_QUEUE
=
PREFIX
+
"settlementDriver.confirm"
+
QUEUE
;
public
static
final
String
SETTLEMENT_DRIVER_CONFIRM_ROUTING_KEY
=
PREFIX
+
"settlementDriver.confirm"
+
QUEUE_ROUTING_KEY
;
}
performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java
浏览文件 @
88e80207
...
...
@@ -211,4 +211,7 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
List
<
OrderGoodsNotCancelChildDTO
>
countValidByOrderGoodsNoList
(
List
<
String
>
orderGoodsList
);
void
batchUpdateCancel
(
List
<
OrderChild
>
canCancelOrderChildList
);
List
<
OrderChild
>
findListByChildNoList
(
List
<
String
>
childNoList
);
}
performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java
浏览文件 @
88e80207
...
...
@@ -703,4 +703,13 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public
void
batchUpdateCancel
(
List
<
OrderChild
>
canCancelOrderChildList
)
{
baseMapper
.
batchUpdateCancel
(
canCancelOrderChildList
);
}
@Override
public
List
<
OrderChild
>
findListByChildNoList
(
List
<
String
>
childNoList
)
{
return
list
(
lQrWrapper
()
.
in
(
OrderChild
::
getChildNo
,
childNoList
)
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/settle/SettlementDriverDaoImpl.java
浏览文件 @
88e80207
...
...
@@ -6,10 +6,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.settle.SettlementDriverDao
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.mapper.settle.SettlementDriverMapper
;
import
com.clx.performance.model.settle.SettlementDriver
;
import
com.clx.performance.model.settle.SettlementOrderChildRisk
;
import
com.clx.performance.model.settle.SettlementOwner
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverParam
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
...
...
@@ -18,7 +18,6 @@ import org.springframework.stereotype.Repository;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Set
;
/**
* @Author: aiqinguo
...
...
@@ -38,6 +37,14 @@ public class SettlementDriverDaoImpl extends BaseDaoImpl<SettlementDriverMapper,
);
}
@Override
public
boolean
updateSettleStatus
(
SettlementDriver
item
)
{
return
update
(
lUdWrapper
()
.
eq
(
SettlementDriver:
:
getId
,
item
.
getId
())
.
set
(
SettlementDriver:
:
getStatus
,
item
.
getStatus
())
);
}
@Override
public
Optional
<
SettlementDriver
>
findBySettlementNo
(
String
settlementNo
)
{
return
Optional
.
of
(
lQrWrapper
()
...
...
@@ -54,6 +61,14 @@ public class SettlementDriverDaoImpl extends BaseDaoImpl<SettlementDriverMapper,
.
map
(
super
::
getOne
);
}
@Override
public
List
<
SettlementDriver
>
listDriverConfirmSync
()
{
return
list
(
lUdWrapper
()
.
eq
(
SettlementDriver:
:
getInvoiceType
,
SettlementOwnerEnum
.
InvoiceType
.
ONLINE
.
getCode
())
.
eq
(
SettlementDriver:
:
getStatus
,
SettlementDriverEnum
.
Status
.
DRIVER_UNCONFIRMED
.
getCode
())
);
}
@Override
public
IPage
<
SettlementDriver
>
pageCarrierSettlementDriver
(
PageCarrierSettlementDriverParam
param
)
{
LambdaQueryWrapper
<
SettlementDriver
>
query
=
new
LambdaQueryWrapper
<>();
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/settle/SettlementDriverDetailDaoImpl.java
浏览文件 @
88e80207
...
...
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.settle.SettlementDriverDetailEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.mapper.settle.SettlementDriverDetailMapper
;
...
...
@@ -85,6 +86,13 @@ public class SettlementDriverDetailDaoImpl extends BaseDaoImpl<SettlementDriverD
);
}
@Override
public
boolean
updatePayAcceptStatus
(
SettlementDriverDetail
item
)
{
return
update
(
lUdWrapper
()
.
eq
(
SettlementDriverDetail:
:
getId
,
item
.
getId
())
.
set
(
SettlementDriverDetail:
:
getPayAcceptStatus
,
item
.
getPayAcceptStatus
())
);
}
@Override
...
...
@@ -96,6 +104,23 @@ public class SettlementDriverDetailDaoImpl extends BaseDaoImpl<SettlementDriverD
.
map
(
super
::
getOne
);
}
@Override
public
List
<
SettlementDriverDetail
>
listDriverPaySync
(
LocalDateTime
time
)
{
return
list
(
lUdWrapper
()
.
eq
(
SettlementDriverDetail:
:
getInvoiceType
,
SettlementOwnerEnum
.
InvoiceType
.
ONLINE
.
getCode
())
.
eq
(
SettlementDriverDetail:
:
getPayAcceptStatus
,
SettlementDriverDetailEnum
.
PayAcceptStatus
.
INIT
.
getCode
())
.
ge
(
SettlementDriverDetail:
:
getCreateTime
,
time
)
);
}
@Override
public
List
<
SettlementDriverDetail
>
listDriverPayAcceptSync
()
{
return
list
(
lUdWrapper
()
.
eq
(
SettlementDriverDetail:
:
getInvoiceType
,
SettlementOwnerEnum
.
InvoiceType
.
ONLINE
.
getCode
())
.
eq
(
SettlementDriverDetail:
:
getPayAcceptStatus
,
SettlementDriverDetailEnum
.
PayAcceptStatus
.
ACCEPTING
.
getCode
())
);
}
@Override
public
IPage
<
SettlementDriverDetail
>
pageSettlementDriverDetail
(
PageCarrierSettlementDriverDetailParam
param
)
{
LambdaQueryWrapper
<
SettlementDriverDetail
>
query
=
new
LambdaQueryWrapper
<>();
...
...
performance-web/src/main/java/com/clx/performance/dao/settle/SettlementDriverDao.java
浏览文件 @
88e80207
...
...
@@ -20,10 +20,14 @@ public interface SettlementDriverDao extends BaseDao<SettlementDriverMapper, Set
boolean
updatePayStatus
(
SettlementDriver
item
);
boolean
updateSettleStatus
(
SettlementDriver
item
);
Optional
<
SettlementDriver
>
findBySettlementNo
(
String
settlementNo
);
Optional
<
SettlementDriver
>
findByChildNo
(
String
childNo
);
List
<
SettlementDriver
>
listDriverConfirmSync
();
IPage
<
SettlementDriver
>
pageCarrierSettlementDriver
(
PageCarrierSettlementDriverParam
param
);
...
...
performance-web/src/main/java/com/clx/performance/dao/settle/SettlementDriverDetailDao.java
浏览文件 @
88e80207
...
...
@@ -24,10 +24,15 @@ public interface SettlementDriverDetailDao extends BaseDao<SettlementDriverDetai
boolean
updateInvoiceTypeAndPrepayFreightFlag
(
SettlementDriverDetail
item
);
boolean
updateConvertOrdinary
(
SettlementDriverDetail
item
);
boolean
updatePreFreight
(
SettlementDriverDetail
item
);
boolean
updatePayAcceptStatus
(
SettlementDriverDetail
item
);
Optional
<
SettlementDriverDetail
>
getByChildNo
(
String
childNo
);
List
<
SettlementDriverDetail
>
listDriverPaySync
(
LocalDateTime
time
);
List
<
SettlementDriverDetail
>
listDriverPayAcceptSync
();
IPage
<
SettlementDriverDetail
>
pageSettlementDriverDetail
(
PageCarrierSettlementDriverDetailParam
param
);
List
<
SettlementDriverDetail
>
listUnPay
(
LocalDateTime
beginTime
);
...
...
performance-web/src/main/java/com/clx/performance/extranal/broker/BrokerService.java
浏览文件 @
88e80207
...
...
@@ -7,6 +7,7 @@ public interface BrokerService {
void
orderChildSync
(
TransportParam
param
);
void
orderChildUpdate
(
TransportParam
param
);
void
orderChildPay
(
String
childNo
);
TransportVO
getOrderChildStatus
(
String
childNo
);
...
...
performance-web/src/main/java/com/clx/performance/extranal/broker/impl/BrokerServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -45,6 +45,17 @@ public class BrokerServiceImpl implements BrokerService {
log
.
info
(
"运单更新网络货运, childNo:{}, result:{}"
,
param
.
getOrderChild
().
getSourceChildNo
(),
JSON
.
toJSONString
(
result
));
}
@Override
public
void
orderChildPay
(
String
childNo
)
{
Result
<
Object
>
result
=
brokerFeign
.
payConfirm
(
childNo
,
settlementConfig
.
getBrokerUserCode
());
if
(
result
.
getCode
()
!=
0
)
{
log
.
info
(
"司机支付, childNo:{}, msg:{}"
,
childNo
,
result
.
getMsg
());
}
log
.
info
(
"司机支付, childNo:{}, result:{}"
,
childNo
,
JSON
.
toJSONString
(
result
));
}
@Override
public
TransportVO
getOrderChildStatus
(
String
childNo
)
{
...
...
performance-web/src/main/java/com/clx/performance/feign/BrokerFeign.java
浏览文件 @
88e80207
...
...
@@ -32,4 +32,11 @@ public interface BrokerFeign {
@RequestParam
@NotNull
(
message
=
"userCode不能为空"
)
String
userCode
,
@RequestParam
String
settlementNo
);
/**
* 司机支付
*/
@RequestMapping
(
value
=
"/broker-service/open/transport/payConfirm"
,
method
=
RequestMethod
.
POST
)
Result
<
Object
>
payConfirm
(
@RequestParam
@NotBlank
(
message
=
"运单编号不能为空"
)
String
orderCode
,
@RequestParam
@NotNull
(
message
=
"userCode不能为空"
)
String
userCode
);
}
performance-web/src/main/java/com/clx/performance/job/settlement/SettlementJob.java
浏览文件 @
88e80207
...
...
@@ -2,13 +2,11 @@ package com.clx.performance.job.settlement;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderChildSyncTransportInvoiceRecordDao
;
import
com.clx.performance.dao.settle.OrderChildSyncTransportRecordDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.model.settle.OrderChildSyncTransportRecord
;
import
com.clx.performance.model.settle.SettlementOwner
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.dao.settle.*
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.*
;
import
com.clx.performance.service.broker.OrderChildBrokerMqService
;
import
com.clx.performance.service.settle.SettlementMqService
;
import
com.msl.common.job.JobLog
;
...
...
@@ -22,6 +20,7 @@ import org.springframework.stereotype.Service;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Slf4j
@Service
...
...
@@ -35,9 +34,12 @@ public class SettlementJob {
private
final
SettlementMqService
settlementMqService
;
private
final
SettlementOwnerDetailDao
settlementOwnerDetailDao
;
private
final
SettlementDriverDetailDao
settlementDriverDetailDao
;
private
final
SettlementDriverDao
settlementDriverDao
;
private
final
SettlementOwnerDao
settlementOwnerDao
;
private
final
OrderChildSyncTransportRecordDao
orderChildSyncTransportRecordDao
;
private
final
OrderChildBrokerMqService
orderChildBrokerMqService
;
private
final
OrderChildDao
orderChildDao
;
/**
* 同步无车承运运单开票类型
...
...
@@ -57,6 +59,45 @@ public class SettlementJob {
}
}
/**
* 司机确认收货同步
*/
@XxlJob
(
"settlementDriverConfirmSync"
)
public
void
settlementDriverConfirmSync
()
{
List
<
SettlementDriver
>
recordList
=
settlementDriverDao
.
listDriverConfirmSync
();
log
.
info
(
"待司机确认收货同步,size:{}"
,
recordList
.
size
());
if
(
recordList
.
isEmpty
())
{
return
;}
List
<
OrderChild
>
childList
=
orderChildDao
.
findListByChildNoList
(
recordList
.
stream
().
map
(
SettlementDriver:
:
getChildNo
).
collect
(
Collectors
.
toList
()));
childList
=
childList
.
stream
().
filter
(
item
->
item
.
getConfirmTime
()
!=
null
).
collect
(
Collectors
.
toList
());
log
.
info
(
"待司机确认收货同步,size:{}"
,
childList
.
size
());
for
(
OrderChild
item
:
childList
)
{
settlementMqService
.
settlementDriverConfirm
(
item
.
getChildNo
());
}
}
/**
* 同步无车承运运单支付受理
*/
@XxlJob
(
"settlementDriverPayAcceptSync"
)
public
void
settlementDriverPayAcceptSync
()
{
List
<
SettlementDriverDetail
>
recordList
=
settlementDriverDetailDao
.
listDriverPayAcceptSync
();
log
.
info
(
"待同步无车承运运单支付受理,size:{}"
,
recordList
.
size
());
if
(
recordList
.
isEmpty
())
{
return
;}
for
(
SettlementDriverDetail
item
:
recordList
)
{
settlementMqService
.
driverPayAcceptSync
(
item
.
getChildNo
());
}
}
/**
* 同步无车承运运单开票状态
*/
...
...
@@ -188,4 +229,32 @@ public class SettlementJob {
}
}
/**
* 网络货运运单支付同步(测试)
*/
@XxlJob
(
"settlementDriverPayTest"
)
public
void
settlementDriverPayTest
()
{
try
{
List
<
String
>
childNoList
=
null
;
String
jobParam
=
XxlJobHelper
.
getJobParam
();
log
.
info
(
"网络货运运单支付同步, param:{}"
,
jobParam
);
if
(
StringUtils
.
isNotBlank
(
jobParam
))
{
childNoList
=
JSON
.
parseArray
(
jobParam
,
String
.
class
);
}
if
(
childNoList
==
null
||
childNoList
.
isEmpty
())
{
return
;
}
for
(
String
childNo
:
childNoList
)
{
// 发送mq (运单司机支付)
orderChildBrokerMqService
.
orderChildDriverPay
(
childNo
);
}
}
catch
(
Exception
e
)
{
log
.
warn
(
"网络货运运单支付同步 失败,msg:{}"
,
ExceptionUtils
.
getStackTrace
(
e
));
JobLog
.
error
(
"网络货运运单支付同步 失败"
,
e
);
}
}
}
performance-web/src/main/java/com/clx/performance/listener/broker/BrokerOrderChildDriverPayListener.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
listener
.
broker
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.constant.RabbitKeyBrokerConstants
;
import
com.clx.performance.service.broker.OrderChildBrokerMqHandlerService
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildDriverPayMqParam
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.exception.ExceptionUtils
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
/**
* @Author: 艾庆国
* @Description: 司机支付 mq
* @Date: 2023-10-20 11:45:08
* @Version: 1.0
*/
@Slf4j
@Component
public
class
BrokerOrderChildDriverPayListener
{
@Autowired
private
OrderChildBrokerMqHandlerService
orderChildBrokerMqHandlerService
;
@RabbitListener
(
queues
=
RabbitKeyBrokerConstants
.
ORDER_CHILD_DRIVER_PAY_QUEUE
)
public
void
process
(
Message
message
)
{
try
{
log
.
info
(
"无车承运-司机支付, message:{}"
,
new
String
(
message
.
getBody
()));
process
(
JSON
.
parseObject
(
new
String
(
message
.
getBody
()),
new
TypeReference
<
MqWrapper
<
BrokerOrderChildDriverPayMqParam
>>(){}).
getData
());
log
.
info
(
"无车承运-司机支付 成功, message:{}"
,
new
String
(
message
.
getBody
()));
}
catch
(
Exception
e
){
log
.
info
(
"无车承运-司机支付 失败,msg:{}"
,
ExceptionUtils
.
getStackTrace
(
e
));
}
}
private
void
process
(
BrokerOrderChildDriverPayMqParam
mq
){
orderChildBrokerMqHandlerService
.
orderChildDriverPay
(
mq
);
}
}
performance-web/src/main/java/com/clx/performance/listener/settle/SettlementDriverConfirmListener.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
listener
.
settle
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.constant.RabbitKeySettlementConstants
;
import
com.clx.performance.service.settle.SettlementMqHandlerService
;
import
com.clx.performance.vo.mq.settle.SettlementDriverConfirmMqParam
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
/**
* @Author: 艾庆国
* @Description: 司机确认收货 mq
* @Date: 2023-10-20 11:45:08
* @Version: 1.0
*/
@Slf4j
@Component
public
class
SettlementDriverConfirmListener
{
@Autowired
private
SettlementMqHandlerService
settlementMqHandlerService
;
@RabbitListener
(
queues
=
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_CONFIRM_QUEUE
)
public
void
process
(
Message
message
)
{
try
{
log
.
info
(
"结算-司机确认收货, message:{}"
,
new
String
(
message
.
getBody
()));
process
(
JSON
.
parseObject
(
new
String
(
message
.
getBody
()),
new
TypeReference
<
MqWrapper
<
SettlementDriverConfirmMqParam
>>(){}).
getData
());
}
catch
(
Exception
e
){
log
.
info
(
"结算-司机确认收货 失败"
,
e
);
}
}
private
void
process
(
SettlementDriverConfirmMqParam
mq
){
settlementMqHandlerService
.
settlementDriverConfirm
(
mq
);
}
}
performance-web/src/main/java/com/clx/performance/listener/settle/SettlementDriverPayAcceptSyncListener.java
0 → 100644
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
listener
.
settle
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.constant.RabbitKeySettlementConstants
;
import
com.clx.performance.service.settle.SettlementMqHandlerService
;
import
com.clx.performance.vo.mq.settle.SettlementDriverPayAcceptSyncMqParam
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
/**
* @Author: 艾庆国
* @Description: 司机支付受理同步 mq
* @Date: 2023-10-20 11:45:08
* @Version: 1.0
*/
@Slf4j
@Component
public
class
SettlementDriverPayAcceptSyncListener
{
@Autowired
private
SettlementMqHandlerService
settlementMqHandlerService
;
@RabbitListener
(
queues
=
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_QUEUE
)
public
void
process
(
Message
message
)
{
try
{
log
.
info
(
"结算-司机支付受理同步, message:{}"
,
new
String
(
message
.
getBody
()));
process
(
JSON
.
parseObject
(
new
String
(
message
.
getBody
()),
new
TypeReference
<
MqWrapper
<
SettlementDriverPayAcceptSyncMqParam
>>(){}).
getData
());
}
catch
(
Exception
e
){
log
.
info
(
"结算-司机支付受理同步 失败"
,
e
);
}
}
private
void
process
(
SettlementDriverPayAcceptSyncMqParam
mq
){
settlementMqHandlerService
.
driverPayAcceptSync
(
mq
);
}
}
performance-web/src/main/java/com/clx/performance/model/settle/SettlementDriverDetail.java
浏览文件 @
88e80207
...
...
@@ -53,6 +53,7 @@ public class SettlementDriverDetail implements HasKey<Integer> {
private
String
invoicingCompanyGroupCode
;
//开票公司统一社会信用代码
private
BigDecimal
platformServiceFee
;
//平台服务费(分)
private
BigDecimal
platformServiceFeeRate
;
//平台服务费费率%
private
Integer
payAcceptStatus
;
//支付受理状态:0未受理支付 1支付受理中 2已受理支付
private
Integer
status
;
//状态
private
LocalDateTime
createTime
;
//创建时间
private
LocalDateTime
modifiedTime
;
//修改时间
...
...
performance-web/src/main/java/com/clx/performance/service/broker/OrderChildBrokerMqHandlerService.java
浏览文件 @
88e80207
package
com
.
clx
.
performance
.
service
.
broker
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildDriverPayMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildSyncMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildUpdateMqParam
;
...
...
@@ -7,4 +8,7 @@ public interface OrderChildBrokerMqHandlerService {
void
orderChildSync
(
BrokerOrderChildSyncMqParam
mq
);
void
orderChildUpdate
(
BrokerOrderChildUpdateMqParam
mq
);
void
orderChildDriverPay
(
BrokerOrderChildDriverPayMqParam
mq
);
}
performance-web/src/main/java/com/clx/performance/service/broker/OrderChildBrokerMqService.java
浏览文件 @
88e80207
...
...
@@ -9,4 +9,6 @@ public interface OrderChildBrokerMqService {
void
orderChildUpdate
(
List
<
String
>
childNoList
);
void
orderChildDriverPay
(
String
childNo
);
}
performance-web/src/main/java/com/clx/performance/service/broker/OrderChildBrokerService.java
浏览文件 @
88e80207
...
...
@@ -12,4 +12,7 @@ public interface OrderChildBrokerService {
SettlementDriverDetail
settlementDriverDetail
);
void
orderChildUpdate
(
OrderChild
orderChild
,
OrderGoods
orderGoods
,
SettlementOwnerDetail
settlementOwnerDetail
,
SettlementDriverDetail
settlementDriverDetail
,
SettlementDriver
settlementDriver
);
void
orderChildDriverPay
(
SettlementDriverDetail
settlementDriverDetail
);
}
performance-web/src/main/java/com/clx/performance/service/impl/broker/OrderChildBrokerMqHandlerServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -7,6 +7,7 @@ import com.clx.performance.dao.settle.SettlementDriverDetailDao;
import
com.clx.performance.dao.settle.SettlementOrderChildRiskDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.settle.SettlementDriverDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOrderChildRiskEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.model.OrderChild
;
...
...
@@ -18,6 +19,7 @@ import com.clx.performance.model.settle.SettlementOwnerDetail;
import
com.clx.performance.service.broker.OrderChildBrokerMqHandlerService
;
import
com.clx.performance.service.broker.OrderChildBrokerMqService
;
import
com.clx.performance.service.broker.OrderChildBrokerService
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildDriverPayMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildSyncMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildUpdateMqParam
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -141,4 +143,17 @@ public class OrderChildBrokerMqHandlerServiceImpl implements OrderChildBrokerMqH
}
@Override
public
void
orderChildDriverPay
(
BrokerOrderChildDriverPayMqParam
mq
)
{
SettlementDriverDetail
settlementDriverDetail
=
settlementDriverDetailDao
.
getByChildNo
(
mq
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
settlementDriverDetail
.
setPayAcceptStatus
(
SettlementDriverDetailEnum
.
PayAcceptStatus
.
ACCEPTING
.
getCode
());
settlementDriverDetailDao
.
updatePayAcceptStatus
(
settlementDriverDetail
);
// 司机支付
orderChildBrokerService
.
orderChildDriverPay
(
settlementDriverDetail
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/broker/OrderChildBrokerMqServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -5,6 +5,7 @@ import com.clx.performance.common.MqDelay;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.constant.RabbitKeyBrokerConstants
;
import
com.clx.performance.service.broker.OrderChildBrokerMqService
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildDriverPayMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildSyncMqParam
;
import
com.clx.performance.vo.mq.broker.BrokerOrderChildUpdateMqParam
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -58,4 +59,18 @@ public class OrderChildBrokerMqServiceImpl implements OrderChildBrokerMqService
}
}
@Override
public
void
orderChildDriverPay
(
String
childNo
)
{
BrokerOrderChildDriverPayMqParam
mq
=
new
BrokerOrderChildDriverPayMqParam
();
mq
.
setChildNo
(
childNo
);
MqDelay
delay
=
new
MqDelay
<>(
RabbitKeyBrokerConstants
.
DEFAULT_EXCHANGE
,
RabbitKeyBrokerConstants
.
ORDER_CHILD_DRIVER_PAY_ROUTING_KEY
,
new
MqWrapper
<>(
mq
));
Message
message
=
MessageBuilder
.
withBody
(
JSON
.
toJSONString
(
new
MqWrapper
<>(
delay
)).
getBytes
()).
build
();
message
.
getMessageProperties
().
setExpiration
(
"5000"
);
rabbitTemplate
.
send
(
RabbitKeyBrokerConstants
.
DEFAULT_EXCHANGE
,
RabbitKeyBrokerConstants
.
DEFAULT_DELAY_ROUTING_KEY
,
message
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/broker/OrderChildBrokerServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -7,6 +7,7 @@ import com.clx.order.vo.feign.FeignOrderVO;
import
com.clx.order.vo.pc.carrier.InvoicingCompanyVO
;
import
com.clx.performance.dao.OrderChildImageDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PowerTypeEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
...
...
@@ -84,6 +85,13 @@ public class OrderChildBrokerServiceImpl implements OrderChildBrokerService {
brokerService
.
orderChildUpdate
(
transportParam
);
}
@Override
public
void
orderChildDriverPay
(
SettlementDriverDetail
settlementDriverDetail
)
{
// 运单支付
brokerService
.
orderChildPay
(
settlementDriverDetail
.
getChildNo
());
}
private
TransportParam
buildParam
(
OrderChild
orderChild
,
OrderGoods
orderGoods
,
SettlementOwnerDetail
settlementOwnerDetail
,
SettlementDriverDetail
settlementDriverDetail
,
SettlementDriver
settlementDriver
){
String
host
=
documentFeign
.
getHost
().
getData
();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/child/OrderChildPostServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -90,6 +90,9 @@ public class OrderChildPostServiceImpl implements OrderChildPostService {
// 发送mq 司机确认收货
orderChildMqService
.
orderChildDriverConfirm
(
orderChild
.
getChildNo
());
// 发送mq (司机付款同步网络货运)
settlementMqService
.
settlementDriverConfirm
(
orderChild
.
getChildNo
());
// 发送mq (更新无车承运)
orderChildBrokerMqService
.
orderChildUpdate
(
orderChild
.
getChildNo
());
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementMqHandlerServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -40,10 +40,7 @@ import com.clx.performance.utils.LocalDateTimeUtils;
import
com.clx.performance.utils.RedisUtil
;
import
com.clx.performance.utils.spring.ApplicationContextUtils
;
import
com.clx.performance.vo.mq.*
;
import
com.clx.performance.vo.mq.settle.SettlementInvoiceStatusUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOrderChildRiskProcessMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOwnerDetialInvoiceCompanyUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementPlatformAutoConfirmMqParam
;
import
com.clx.performance.vo.mq.settle.*
;
import
com.clx.performance.vo.pc.broker.TransportVO
;
import
com.clx.user.vo.feign.DriverInfoFeignVo
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
...
...
@@ -244,7 +241,7 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
}
//生成车主结算单
settlementDriverSave
(
settlementDriverDetail
,
settlementNo
);
//
settlementDriverSave(settlementDriverDetail,settlementNo);
//车主结算单自动支付
log
.
info
(
" 运单号 {}, 是否是普通单 {} "
,
settlementDriverDetail
.
getChildNo
(),
settlementDriverDetail
.
getInvoiceType
());
if
(!
settlementDriverDetail
.
getInvoiceType
().
equals
(
SettlementOwnerEnum
.
InvoiceType
.
ONLINE
.
getCode
()))
{
...
...
@@ -273,6 +270,55 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
settlementDriverDetailDao
.
updateSettlementNo
(
settlementDriverDetail
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
settlementDriverSettlement
(
SettlementDriverSettleMqParam
mq
)
{
SettlementDriverDetail
settlementDriverDetail
=
settlementDriverDetailDao
.
getByChildNo
(
mq
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
SettlementDriver
settlementDriver
=
settlementDriverDao
.
findByChildNo
(
settlementDriverDetail
.
getChildNo
()).
orNull
();
if
(
settlementDriver
!=
null
)
{
return
;}
String
settlementNo
=
settlementNoGenerate
();
settlementDriver
=
new
SettlementDriver
();
settlementDriver
.
setDriverUserNo
(
settlementDriverDetail
.
getDriverUserNo
());
settlementDriver
.
setDriverName
(
settlementDriverDetail
.
getDriverName
());
settlementDriver
.
setSettlementNo
(
settlementNo
);
settlementDriver
.
setChildNo
(
settlementDriverDetail
.
getChildNo
());
settlementDriver
.
setOrderGoodsNo
(
settlementDriverDetail
.
getOrderGoodsNo
());
settlementDriver
.
setOrderNo
(
settlementDriverDetail
.
getOrderNo
());
settlementDriver
.
setGoodsId
(
settlementDriverDetail
.
getGoodsId
());
settlementDriver
.
setGoodsName
(
settlementDriverDetail
.
getGoodsName
());
settlementDriver
.
setTruckNo
(
settlementDriverDetail
.
getTruckNo
());
settlementDriver
.
setFreightPrice
(
settlementDriverDetail
.
getFreightPrice
());
settlementDriver
.
setWeight
(
settlementDriverDetail
.
getWeight
());
settlementDriver
.
setFreight
(
settlementDriverDetail
.
getFreight
());
settlementDriver
.
setLossPrice
(
settlementDriverDetail
.
getLossPrice
());
settlementDriver
.
setLossWeight
(
settlementDriverDetail
.
getLossWeight
());
settlementDriver
.
setLoanFlag
(
settlementDriverDetail
.
getLoanFlag
());
settlementDriver
.
setLossFreight
(
settlementDriverDetail
.
getLossFreight
());
settlementDriver
.
setPrepayFreightFlag
(
settlementDriverDetail
.
getPrepayFreightFlag
());
settlementDriver
.
setSettlementFreight
(
settlementDriverDetail
.
getSettlementFreight
());
settlementDriver
.
setInvoiceType
(
settlementDriverDetail
.
getInvoiceType
());
settlementDriver
.
setSettlementPlatform
(
settlementDriverDetail
.
getInvoiceType
()
==
1
?
String
.
valueOf
(
SettlementPlatformEnum
.
Platform
.
WY
.
getCode
()):
String
.
valueOf
(
SettlementPlatformEnum
.
Platform
.
MSL
.
getCode
()));
settlementDriver
.
setStatus
(
SettlementDriverEnum
.
Status
.
DRIVER_UNCONFIRMED
.
getCode
());
settlementDriver
.
setInvoicingCompanyId
(
settlementDriverDetail
.
getInvoicingCompanyId
());
settlementDriver
.
setInvoicingCompanyShorterName
(
settlementDriverDetail
.
getInvoicingCompanyShorterName
());
settlementDriver
.
setInvoicingCompanyGroupCode
(
settlementDriverDetail
.
getInvoicingCompanyGroupCode
());
settlementDriver
.
setPlatformServiceFeeRate
(
settlementDriverDetail
.
getPlatformServiceFeeRate
());
settlementDriver
.
setPlatformServiceFee
(
settlementDriverDetail
.
getPlatformServiceFee
());
settlementDriverDao
.
saveEntity
(
settlementDriver
);
settlementPostService
.
driverSettle
(
settlementDriverDetail
.
getChildNo
());
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
settle
(
SettlementSettleMqParam
mq
)
{
...
...
@@ -358,6 +404,49 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
}
}
@Override
public
void
driverPayAcceptSync
(
SettlementDriverPayAcceptSyncMqParam
mq
)
{
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
mq
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
SettlementOwnerDetail
settlementOwnerDetail
=
settlementOwnerDetailDao
.
getByChildNo
(
orderChild
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(!
Objects
.
equals
(
settlementOwnerDetail
.
getInvoiceChannel
(),
SettlementOwnerDetailEnum
.
InvoiceChannel
.
BROKER
.
getCode
())){
return
;
}
if
(
settlementOwnerDetail
.
getInvoiceType
()
==
null
)
{
return
;}
SettlementDriverDetail
settlementDriverDetail
=
settlementDriverDetailDao
.
getByChildNo
(
orderChild
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(!
Objects
.
equals
(
settlementDriverDetail
.
getPayAcceptStatus
(),
SettlementDriverDetailEnum
.
PayAcceptStatus
.
ACCEPTING
.
getCode
())){
return
;
}
SettlementDriver
settlementDriver
=
settlementDriverDao
.
getByChildNo
(
orderChild
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
try
{
// 获取状态
TransportVO
result
=
brokerService
.
getOrderChildStatus
(
mq
.
getChildNo
());
if
(
result
==
null
){
log
.
info
(
"运单号 {} 未找到运单信息"
,
mq
.
getChildNo
());
return
;
}
if
(
Objects
.
equals
(
result
.
getSyncStatus
(),
0
))
{
return
;
}
else
if
(
Objects
.
equals
(
result
.
getThirdPartyChildStatus
(),
30
))
{
// 更新状态
settlementDriverDetail
.
setPayAcceptStatus
(
SettlementDriverDetailEnum
.
PayAcceptStatus
.
ACCEPTED
.
getCode
());
settlementDriverDetailDao
.
updatePayAcceptStatus
(
settlementDriverDetail
);
}
}
catch
(
Exception
e
){
log
.
info
(
"结算获取支付受理状态失败, 运单号 {}"
,
mq
.
getChildNo
(),
e
);
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
invoiceStatusSync
(
SettlementInvoiceStatusSyncMqParam
mq
)
{
...
...
@@ -606,45 +695,45 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
// settlementService.updateSettlementDetailInvoiceType(settlementOwnerDetail.getChildNo(), SettlementOwnerEnum.InvoiceType.ORDINARY.getCode());
}
private
void
settlementDriverSave
(
SettlementDriverDetail
detail
,
String
settlementNo
){
SettlementDriver
settlementDriver
=
settlementDriverDao
.
findByChildNo
(
detail
.
getChildNo
()).
orElse
(
new
SettlementDriver
());
settlementDriver
.
setDriverUserNo
(
detail
.
getDriverUserNo
());
settlementDriver
.
setDriverName
(
detail
.
getDriverName
());
settlementDriver
.
setSettlementNo
(
settlementNo
);
settlementDriver
.
setChildNo
(
detail
.
getChildNo
());
settlementDriver
.
setOrderGoodsNo
(
detail
.
getOrderGoodsNo
());
settlementDriver
.
setOrderNo
(
detail
.
getOrderNo
());
settlementDriver
.
setGoodsId
(
detail
.
getGoodsId
());
settlementDriver
.
setGoodsName
(
detail
.
getGoodsName
());
settlementDriver
.
setTruckNo
(
detail
.
getTruckNo
());
settlementDriver
.
setFreightPrice
(
detail
.
getFreightPrice
());
settlementDriver
.
setWeight
(
detail
.
getWeight
());
settlementDriver
.
setFreight
(
detail
.
getFreight
());
settlementDriver
.
setLossPrice
(
detail
.
getLossPrice
());
settlementDriver
.
setLossWeight
(
detail
.
getLossWeight
());
settlementDriver
.
setLoanFlag
(
detail
.
getLoanFlag
());
settlementDriver
.
setLossFreight
(
detail
.
getLossFreight
());
settlementDriver
.
setPrepayFreightFlag
(
detail
.
getPrepayFreightFlag
());
settlementDriver
.
setSettlementFreight
(
detail
.
getSettlementFreight
());
settlementDriver
.
setInvoiceType
(
detail
.
getInvoiceType
());
settlementDriver
.
setSettlementPlatform
(
detail
.
getInvoiceType
()
==
1
?
String
.
valueOf
(
SettlementPlatformEnum
.
Platform
.
WY
.
getCode
()):
String
.
valueOf
(
SettlementPlatformEnum
.
Platform
.
MSL
.
getCode
()));
settlementDriver
.
setStatus
(
SettlementDriverEnum
.
Status
.
WAIT_SETTLEMENT
.
getCode
());
settlementDriver
.
setInvoicingCompanyId
(
detail
.
getInvoicingCompanyId
());
settlementDriver
.
setInvoicingCompanyShorterName
(
detail
.
getInvoicingCompanyShorterName
());
settlementDriver
.
setInvoicingCompanyGroupCode
(
detail
.
getInvoicingCompanyGroupCode
());
settlementDriver
.
setPlatformServiceFeeRate
(
detail
.
getPlatformServiceFeeRate
());
settlementDriver
.
setPlatformServiceFee
(
detail
.
getPlatformServiceFee
());
if
(
settlementDriver
.
getId
()
==
null
)
{
settlementDriverDao
.
saveEntity
(
settlementDriver
);
}
else
{
settlementDriverDao
.
updateEntityByKey
(
settlementDriver
);
}
}
//
private void settlementDriverSave(SettlementDriverDetail detail,String settlementNo){
//
SettlementDriver settlementDriver = settlementDriverDao.findByChildNo(detail.getChildNo()).orElse(new SettlementDriver());
//
settlementDriver.setDriverUserNo(detail.getDriverUserNo());
//
settlementDriver.setDriverName(detail.getDriverName());
//
settlementDriver.setSettlementNo(settlementNo);
//
settlementDriver.setChildNo(detail.getChildNo());
//
settlementDriver.setOrderGoodsNo(detail.getOrderGoodsNo());
//
settlementDriver.setOrderNo(detail.getOrderNo());
//
settlementDriver.setGoodsId(detail.getGoodsId());
//
settlementDriver.setGoodsName(detail.getGoodsName());
//
settlementDriver.setTruckNo(detail.getTruckNo());
//
settlementDriver.setFreightPrice(detail.getFreightPrice());
//
settlementDriver.setWeight(detail.getWeight());
//
settlementDriver.setFreight(detail.getFreight());
//
settlementDriver.setLossPrice(detail.getLossPrice());
//
settlementDriver.setLossWeight(detail.getLossWeight());
//
settlementDriver.setLoanFlag(detail.getLoanFlag());
//
settlementDriver.setLossFreight(detail.getLossFreight());
//
settlementDriver.setPrepayFreightFlag(detail.getPrepayFreightFlag());
//
settlementDriver.setSettlementFreight(detail.getSettlementFreight());
//
settlementDriver.setInvoiceType(detail.getInvoiceType());
//
settlementDriver.setSettlementPlatform(detail.getInvoiceType() == 1 ?
//
String.valueOf(SettlementPlatformEnum.Platform.WY.getCode()):
//
String.valueOf(SettlementPlatformEnum.Platform.MSL.getCode()));
//
//
settlementDriver.setStatus(SettlementDriverEnum.Status.WAIT_SETTLEMENT.getCode());
//
//
settlementDriver.setInvoicingCompanyId(detail.getInvoicingCompanyId());
//
settlementDriver.setInvoicingCompanyShorterName(detail.getInvoicingCompanyShorterName());
//
settlementDriver.setInvoicingCompanyGroupCode(detail.getInvoicingCompanyGroupCode());
//
settlementDriver.setPlatformServiceFeeRate(detail.getPlatformServiceFeeRate());
//
settlementDriver.setPlatformServiceFee(detail.getPlatformServiceFee());
//
//
if (settlementDriver.getId() == null) {
//
settlementDriverDao.saveEntity(settlementDriver);
//
}else {
//
settlementDriverDao.updateEntityByKey(settlementDriver);
//
}
//
}
@Override
public
void
settlementDriverNotify
(
String
childNo
,
Integer
payType
,
String
payErrorMsg
){
...
...
@@ -914,6 +1003,57 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
return
uniqueOrderNumService
.
getUniqueOrderNum
(
com
.
msl
.
common
.
utils
.
LocalDateTimeUtils
.
convertLocalDateTimeToString
(
LocalDateTime
.
now
(),
com
.
msl
.
common
.
utils
.
LocalDateTimeUtils
.
DATE_DAY
));
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
riskAdd
(
SettlementOrderChildRiskAddMqParam
mq
)
{
SettlementOrderChildRisk
settlementOrderChildRisk
=
settlementOrderChildRiskDao
.
getById
(
mq
.
getId
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
if
(
Objects
.
equals
(
settlementOrderChildRisk
.
getStatus
(),
SettlementOrderChildRiskEnum
.
Status
.
PROCESSED
.
getCode
()))
{
return
;
}
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
settlementOrderChildRisk
.
getChildNo
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
InvoicingCompanyVO
invoicingCompanyByGroupCode
=
invoicingCompanyService
.
getInvoicingCompanyByGroupCode
(
orderChild
.
getInvoicingCompanyGroupCode
());
if
(!
Objects
.
equals
(
invoicingCompanyByGroupCode
.
getRiskProcessType
(),
InvoicingCompanyEnum
.
RiskProcessType
.
AUTO
.
getCode
()))
{
return
;
}
// 转普通单
SettlementOwnerDetail
settlementOwnerDetail
=
settlementOwnerDetailDao
.
getByChildNo
(
settlementOrderChildRisk
.
getChildNo
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
SettlementDriverDetail
settlementDriverDetail
=
settlementDriverDetailDao
.
getByChildNo
(
settlementOrderChildRisk
.
getChildNo
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
settlementOrderChildRisk
.
setStatus
(
SettlementOrderChildRiskEnum
.
Status
.
PROCESSED
.
getCode
());
settlementOrderChildRisk
.
setProcessMethod
(
SettlementOrderChildRiskEnum
.
ProcessMethod
.
CONVERT_ORDINARY
.
getCode
());
settlementOrderChildRisk
.
setProcessBy
(
"系统"
);
settlementOrderChildRisk
.
setProcessTime
(
LocalDateTime
.
now
());
settlementOwnerDetail
.
setInvoiceType
(
SettlementOwnerEnum
.
InvoiceType
.
ORDINARY
.
getCode
());
settlementOwnerDetail
.
setInvoicingCompanyId
(
null
);
settlementOwnerDetail
.
setInvoicingCompanyShorterName
(
null
);
settlementOwnerDetail
.
setInvoicingCompanyGroupCode
(
null
);
settlementOwnerDetail
.
setInvoiceTypeStatus
(
SettlementOwnerDetailEnum
.
InvoiceTypeStatus
.
SUCCESS
.
getCode
());
settlementOwnerDetail
.
setInvoiceTypeModifiedTime
(
LocalDateTime
.
now
());
settlementOwnerDetailDao
.
updateConvertOrdinary
(
settlementOwnerDetail
);
settlementDriverDetail
.
setInvoiceType
(
settlementOwnerDetail
.
getInvoiceType
());
settlementDriverDetail
.
setInvoicingCompanyId
(
settlementOwnerDetail
.
getInvoicingCompanyId
());
settlementDriverDetail
.
setInvoicingCompanyShorterName
(
settlementOwnerDetail
.
getInvoicingCompanyShorterName
());
settlementDriverDetail
.
setInvoicingCompanyGroupCode
(
settlementOwnerDetail
.
getInvoicingCompanyGroupCode
());
settlementDriverDetailDao
.
updateConvertOrdinary
(
settlementDriverDetail
);
settlementOrderChildRisk
.
setInvoiceType
(
settlementOwnerDetail
.
getInvoiceType
());
settlementOrderChildRiskDao
.
updateProcess
(
settlementOrderChildRisk
);
// 发送mq (风控处理)
settlementMqService
.
riskProcess
(
settlementOrderChildRisk
.
getId
());
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
riskProcess
(
SettlementOrderChildRiskProcessMqParam
mq
)
{
...
...
@@ -1124,6 +1264,31 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
}
@Override
public
void
settlementDriverConfirm
(
SettlementDriverConfirmMqParam
mq
)
{
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
mq
.
getChildNo
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
if
(
orderChild
.
getConfirmTime
()
==
null
)
{
return
;}
SettlementDriver
settlementDriver
=
settlementDriverDao
.
findByChildNo
(
orderChild
.
getChildNo
()).
orNull
();
if
(
settlementDriver
==
null
||
!
Objects
.
equals
(
settlementDriver
.
getStatus
(),
SettlementDriverEnum
.
Status
.
DRIVER_UNCONFIRMED
.
getCode
())
)
{
return
;
}
settlementDriver
.
setStatus
(
SettlementDriverEnum
.
Status
.
WAIT_SETTLEMENT
.
getCode
());
settlementDriverDao
.
updateSettleStatus
(
settlementDriver
);
if
(!
Objects
.
equals
(
settlementDriver
.
getInvoiceType
(),
SettlementOwnerEnum
.
InvoiceType
.
ONLINE
.
getCode
())){
return
;
}
// 发送mq (运单司机支付)
orderChildBrokerMqService
.
orderChildDriverPay
(
orderChild
.
getChildNo
());
}
private
BigDecimal
invoiceFreightCalc
(
Integer
settlementWay
,
BigDecimal
invoiceServiceFeeRate
,
SettlementOwnerDetail
settlementOwnerDetail
)
{
if
(
Objects
.
equals
(
settlementWay
,
SettlementWayEnum
.
WayType
.
LOAD
.
getCode
()))
{
//订单结算方式为“装车净重”时,开票金额=实际净重*平台运费报价-货损金额。
return
settlementOwnerDetail
.
getWeight
().
multiply
(
settlementOwnerDetail
.
getFreightPrice
())
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementMqServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -6,10 +6,7 @@ import com.clx.performance.common.MqWrapper;
import
com.clx.performance.constant.RabbitKeySettlementConstants
;
import
com.clx.performance.service.settle.SettlementMqService
;
import
com.clx.performance.vo.mq.*
;
import
com.clx.performance.vo.mq.settle.SettlementInvoiceStatusUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOrderChildRiskProcessMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOwnerDetialInvoiceCompanyUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementPlatformAutoConfirmMqParam
;
import
com.clx.performance.vo.mq.settle.*
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.core.MessageBuilder
;
...
...
@@ -75,6 +72,19 @@ public class SettlementMqServiceImpl implements SettlementMqService {
RabbitKeySettlementConstants
.
DEFAULT_DELAY_ROUTING_KEY
,
message
);
}
@Override
public
void
driverPayAcceptSync
(
String
childNo
)
{
SettlementDriverPayAcceptSyncMqParam
mq
=
new
SettlementDriverPayAcceptSyncMqParam
();
mq
.
setChildNo
(
childNo
);
MqDelay
delay
=
new
MqDelay
<>(
RabbitKeySettlementConstants
.
DEFAULT_EXCHANGE
,
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_PAY_ACCEPT_SYNC_ROUTING_KEY
,
new
MqWrapper
<>(
mq
));
Message
message
=
MessageBuilder
.
withBody
(
JSON
.
toJSONString
(
new
MqWrapper
<>(
delay
)).
getBytes
()).
build
();
message
.
getMessageProperties
().
setExpiration
(
"5000"
);
rabbitTemplate
.
send
(
RabbitKeySettlementConstants
.
DEFAULT_EXCHANGE
,
RabbitKeySettlementConstants
.
DEFAULT_DELAY_ROUTING_KEY
,
message
);
}
@Override
public
void
settle
(
String
childNo
,
Integer
invoiceType
,
String
remark
)
{
...
...
@@ -162,4 +172,16 @@ public class SettlementMqServiceImpl implements SettlementMqService {
RabbitKeySettlementConstants
.
DEFAULT_DELAY_ROUTING_KEY
,
message
);
}
@Override
public
void
settlementDriverConfirm
(
String
childNo
)
{
SettlementDriverConfirmMqParam
mq
=
new
SettlementDriverConfirmMqParam
();
mq
.
setChildNo
(
childNo
);
MqDelay
delay
=
new
MqDelay
<>(
RabbitKeySettlementConstants
.
DEFAULT_EXCHANGE
,
RabbitKeySettlementConstants
.
SETTLEMENT_DRIVER_CONFIRM_ROUTING_KEY
,
new
MqWrapper
<>(
mq
));
Message
message
=
MessageBuilder
.
withBody
(
JSON
.
toJSONString
(
new
MqWrapper
<>(
delay
)).
getBytes
()).
build
();
message
.
getMessageProperties
().
setExpiration
(
"5000"
);
rabbitTemplate
.
send
(
RabbitKeySettlementConstants
.
DEFAULT_EXCHANGE
,
RabbitKeySettlementConstants
.
DEFAULT_DELAY_ROUTING_KEY
,
message
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementOrderChildRiskServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -8,10 +8,7 @@ import com.clx.performance.dao.settle.SettlementOrderChildRiskDao;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.ResultEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOrderChildRiskEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.enums.settle.*
;
import
com.clx.performance.model.settle.SettlementDriver
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOrderChildRisk
;
...
...
@@ -104,7 +101,13 @@ public class SettlementOrderChildRiskServiceImpl implements SettlementOrderChild
}
}
else
{
// 状态回滚
if
(
settlementDriver
!=
null
){
settlementDriver
.
setStatus
(
SettlementDriverEnum
.
Status
.
DRIVER_UNCONFIRMED
.
getCode
());
settlementDriverDao
.
updatePayStatus
(
settlementDriver
);
}
settlementDriverDetail
.
setPayAcceptStatus
(
SettlementDriverDetailEnum
.
PayAcceptStatus
.
INIT
.
getCode
());
settlementDriverDetailDao
.
updatePayAcceptStatus
(
settlementDriverDetail
);
}
settlementOrderChildRiskDao
.
updateProcess
(
settlementOrderChildRisk
);
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementPostServiceImpl.java
浏览文件 @
88e80207
...
...
@@ -60,4 +60,10 @@ public class SettlementPostServiceImpl implements SettlementPostService {
}
}
@Override
public
void
driverSettle
(
String
childNo
)
{
// 发送mq (司机确认收货)
settlementMqService
.
settlementDriverConfirm
(
childNo
);
}
}
performance-web/src/main/java/com/clx/performance/service/settle/SettlementMqHandlerService.java
浏览文件 @
88e80207
...
...
@@ -2,10 +2,7 @@ package com.clx.performance.service.settle;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.vo.mq.*
;
import
com.clx.performance.vo.mq.settle.SettlementInvoiceStatusUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOrderChildRiskProcessMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementOwnerDetialInvoiceCompanyUpdateMqParam
;
import
com.clx.performance.vo.mq.settle.SettlementPlatformAutoConfirmMqParam
;
import
com.clx.performance.vo.mq.settle.*
;
public
interface
SettlementMqHandlerService
{
...
...
@@ -13,9 +10,12 @@ public interface SettlementMqHandlerService {
void
settlementStatistics
(
SettlementStatisticsMqParam
mq
);
void
settlementDriverSettlement
(
SettlementDriverSettleMqParam
mq
);
void
settle
(
SettlementSettleMqParam
mq
);
void
invoiceTypeSync
(
SettlementInvoiceTypeSyncMqParam
mq
);
void
driverPayAcceptSync
(
SettlementDriverPayAcceptSyncMqParam
mq
);
void
invoiceStatusSync
(
SettlementInvoiceStatusSyncMqParam
mq
);
...
...
@@ -27,6 +27,7 @@ public interface SettlementMqHandlerService {
String
settlementNoGenerate
();
void
riskAdd
(
SettlementOrderChildRiskAddMqParam
mq
);
void
riskProcess
(
SettlementOrderChildRiskProcessMqParam
mq
);
void
invoiceCompanyUpdate
(
SettlementOwnerDetialInvoiceCompanyUpdateMqParam
mq
);
...
...
@@ -35,4 +36,6 @@ public interface SettlementMqHandlerService {
void
settlementInvoiceStatusUpdate
(
SettlementInvoiceStatusUpdateMqParam
mq
);
void
settlementDriverConfirm
(
SettlementDriverConfirmMqParam
mq
);
}
performance-web/src/main/java/com/clx/performance/service/settle/SettlementMqService.java
浏览文件 @
88e80207
...
...
@@ -9,6 +9,8 @@ public interface SettlementMqService {
void
invoiceTypeSync
(
String
childNo
);
void
driverPayAcceptSync
(
String
childNo
);
void
settle
(
String
childNo
,
Integer
invoiceType
,
String
remark
);
void
invoiceStatusSync
(
String
childNo
);
...
...
@@ -23,4 +25,6 @@ public interface SettlementMqService {
void
settlementInvoiceStatusUpdate
(
String
settlementNo
);
void
settlementDriverConfirm
(
String
childNo
);
}
performance-web/src/main/java/com/clx/performance/service/settle/SettlementPostService.java
浏览文件 @
88e80207
...
...
@@ -15,4 +15,5 @@ public interface SettlementPostService {
void
updateInvoice
(
List
<
String
>
childNoList
);
void
driverSettle
(
String
childNo
);
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论