Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
3ff63f73
提交
3ff63f73
authored
10月 19, 2023
作者:
huyufan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
供一部接口相关开发
上级
32a101ff
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
336 行增加
和
2 行删除
+336
-2
OpenOwnerBindCardParam.java
...om/clx/performance/param/open/OpenOwnerBindCardParam.java
+34
-0
OpenOwnerCaseOutParam.java
...com/clx/performance/param/open/OpenOwnerCaseOutParam.java
+39
-0
OpenOwnerTopUpParam.java
...a/com/clx/performance/param/open/OpenOwnerTopUpParam.java
+44
-0
OwnerCaseOutParam.java
.../java/com/clx/performance/param/pc/OwnerCaseOutParam.java
+2
-1
OwnerTopUpParam.java
...in/java/com/clx/performance/param/pc/OwnerTopUpParam.java
+2
-1
OpenOwnerAccountController.java
...rformance/controller/open/OpenOwnerAccountController.java
+80
-0
OwnerAccountService.java
...java/com/clx/performance/service/OwnerAccountService.java
+13
-0
OwnerAccountServiceImpl.java
...clx/performance/service/impl/OwnerAccountServiceImpl.java
+122
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/param/open/OpenOwnerBindCardParam.java
0 → 100644
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
param
.
open
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@ApiModel
(
description
=
"货主绑卡"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
OpenOwnerBindCardParam
{
@ApiModelProperty
(
value
=
"货主编号"
)
private
Long
userNo
;
@ApiModelProperty
(
value
=
"货主姓名"
)
private
String
name
;
@ApiModelProperty
(
value
=
"所属银行"
)
private
String
ownerAccountBank
;
@ApiModelProperty
(
value
=
"开户行"
)
private
String
ownerOpenBank
;
@ApiModelProperty
(
value
=
"户名"
)
private
String
ownerAccountName
;
@ApiModelProperty
(
value
=
"银行账户"
)
private
String
ownerBankAccount
;
}
performance-api/src/main/java/com/clx/performance/param/open/OpenOwnerCaseOutParam.java
0 → 100644
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
param
.
open
;
import
com.msl.common.convertor.type.MoneyInConvert
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.math.BigDecimal
;
@ApiModel
(
description
=
"货主提现"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
OpenOwnerCaseOutParam
{
@ApiModelProperty
(
value
=
"货主用户编号"
,
example
=
"123"
)
private
Long
ownerUserNo
;
@ApiModelProperty
(
value
=
"提现金额(元)"
,
example
=
"1.23"
)
@MoneyInConvert
private
BigDecimal
caseOutBalance
;
@ApiModelProperty
(
value
=
"账户类型: 1:保证金 2:预付运费"
,
example
=
"1"
)
private
Integer
accountType
;
@ApiModelProperty
(
value
=
"提现银行"
,
example
=
"浙江银行"
)
private
String
caseOutBank
;
@ApiModelProperty
(
value
=
"提现银行卡号"
,
example
=
"62213545878787"
)
private
String
caseOutBankNumber
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/param/open/OpenOwnerTopUpParam.java
0 → 100644
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
param
.
open
;
import
com.msl.common.convertor.type.MoneyInConvert
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.math.BigDecimal
;
@ApiModel
(
description
=
"货主充值"
)
@Getter
@Setter
@ToString
@NoArgsConstructor
public
class
OpenOwnerTopUpParam
{
@ApiModelProperty
(
value
=
"货主用户编号"
,
example
=
"123"
)
private
Long
ownerUserNo
;
@ApiModelProperty
(
value
=
"充值金额(元)"
,
example
=
"1.23"
)
@MoneyInConvert
private
BigDecimal
topUpBalance
;
@ApiModelProperty
(
value
=
"账户类型: 1:保证金 2:预付运费"
,
example
=
"1"
)
private
Integer
accountType
;
@ApiModelProperty
(
value
=
"打款银行"
,
example
=
"浙江银行"
)
private
String
drawingBank
;
@ApiModelProperty
(
value
=
"打款银行卡号"
,
example
=
"62213545878787"
)
private
String
drawingBankNumber
;
@ApiModelProperty
(
value
=
"打款凭证"
,
example
=
"/a.png"
)
private
String
drawingProof
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/param/pc/OwnerCaseOutParam.java
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.convertor.type.MoneyInConvert
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -22,7 +23,7 @@ public class OwnerCaseOutParam {
private
Long
ownerUserNo
;
@ApiModelProperty
(
value
=
"提现金额(元)"
,
example
=
"1.23"
)
@Money
Out
Convert
@Money
In
Convert
private
BigDecimal
caseOutBalance
;
@ApiModelProperty
(
value
=
"账户类型: 1:保证金 2:预付运费"
,
example
=
"1"
)
...
...
performance-api/src/main/java/com/clx/performance/param/pc/OwnerTopUpParam.java
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
param
.
pc
;
import
com.msl.common.convertor.type.MoneyInConvert
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -22,7 +23,7 @@ public class OwnerTopUpParam {
private
Long
ownerUserNo
;
@ApiModelProperty
(
value
=
"充值金额(元)"
,
example
=
"1.23"
)
@Money
Out
Convert
@Money
In
Convert
private
BigDecimal
topUpBalance
;
@ApiModelProperty
(
value
=
"账户类型: 1:保证金 2:预付运费"
,
example
=
"1"
)
...
...
performance-web/src/main/java/com/clx/performance/controller/open/OpenOwnerAccountController.java
0 → 100644
浏览文件 @
3ff63f73
package
com
.
clx
.
performance
.
controller
.
open
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.model.OwnerTransferInfo
;
import
com.clx.performance.param.open.OpenOwnerBindCardParam
;
import
com.clx.performance.param.open.OpenOwnerCaseOutParam
;
import
com.clx.performance.param.open.OpenOwnerTopUpParam
;
import
com.clx.performance.param.pc.*
;
import
com.clx.performance.param.pc.owner.CreteAccountParam
;
import
com.clx.performance.param.pc.owner.FrozenAccountParam
;
import
com.clx.performance.service.*
;
import
com.clx.performance.vo.pc.*
;
import
com.clx.user.vo.pc.owner.OwnerBindCardVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.convertor.aspect.UnitCovert
;
import
com.msl.common.result.Result
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.utils.TokenUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.constraints.NotNull
;
import
java.util.Map
;
@Slf4j
@RestController
@RequestMapping
(
"/open/owner"
)
@Validated
@AllArgsConstructor
@Api
(
tags
=
"PC-货主资金管理"
)
public
class
OpenOwnerAccountController
{
private
final
OwnerAccountService
ownerAccountService
;
@ApiOperation
(
value
=
"账户充值"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/accountTopUp"
)
@UnitCovert
(
param
=
false
)
public
Result
<
Long
>
openAccountTopUp
(
@RequestBody
OpenOwnerTopUpParam
param
)
{
Long
id
=
ownerAccountService
.
openAccountTopUp
(
param
);
return
Result
.
ok
(
id
);
}
@ApiOperation
(
value
=
"账户提现"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/accountCaseOut"
)
@UnitCovert
(
param
=
false
)
public
Result
<
Long
>
accountCaseOut
(
@RequestBody
OpenOwnerCaseOutParam
param
)
{
Long
id
=
ownerAccountService
.
openAccountCaseOut
(
param
);
return
Result
.
ok
(
id
);
}
@ApiOperation
(
value
=
"获取货主信息绑卡信息"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/getOwnerBindCard"
)
public
Result
<
OwnerBindCardVO
>
getOwnerBindCard
(
@RequestParam
Long
userNo
)
{
return
Result
.
ok
(
ownerAccountService
.
getOwnerBindCard
(
userNo
));
}
@ApiOperation
(
value
=
"绑定货主银行卡"
)
@PostMapping
({
"/bindOwnerBindCard"
})
Result
<
Object
>
openBindOwnerBindCard
(
@RequestBody
OpenOwnerBindCardParam
param
)
{
ownerAccountService
.
openBindOwnerBindCard
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"解绑货主银行卡"
)
@PostMapping
({
"/unBindOwnerBindCard"
})
Result
<
Object
>
unBindOwnerBindCard
(
@RequestBody
OpenOwnerBindCardParam
param
)
{
ownerAccountService
.
openUnBindOwnerBindCard
(
param
);
return
Result
.
ok
();
}
}
performance-web/src/main/java/com/clx/performance/service/OwnerAccountService.java
浏览文件 @
3ff63f73
...
...
@@ -2,6 +2,9 @@ package com.clx.performance.service;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.model.OwnerTransferInfo
;
import
com.clx.performance.param.open.OpenOwnerBindCardParam
;
import
com.clx.performance.param.open.OpenOwnerCaseOutParam
;
import
com.clx.performance.param.open.OpenOwnerTopUpParam
;
import
com.clx.performance.param.pc.*
;
import
com.clx.performance.param.pc.owner.CreteAccountParam
;
import
com.clx.performance.param.pc.owner.FrozenAccountParam
;
...
...
@@ -25,8 +28,12 @@ public interface OwnerAccountService {
Long
accountTopUp
(
OwnerTopUpParam
param
);
Long
openAccountTopUp
(
OpenOwnerTopUpParam
param
);
Long
accountCaseOut
(
OwnerCaseOutParam
param
);
Long
openAccountCaseOut
(
OpenOwnerCaseOutParam
param
);
/**
* 充值审批
*/
...
...
@@ -64,8 +71,14 @@ public interface OwnerAccountService {
void
bindOwnerBindCard
(
OwnerBindCardParam
param
);
void
openBindOwnerBindCard
(
OpenOwnerBindCardParam
param
);
void
unBindOwnerBindCard
(
OwnerBindCardParam
param
);
void
openUnBindOwnerBindCard
(
OpenOwnerBindCardParam
param
);
void
ownerAccountFrozen
(
FrozenAccountParam
param
);
void
createAccount
(
CreteAccountParam
param
);
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OwnerAccountServiceImpl.java
浏览文件 @
3ff63f73
...
...
@@ -9,6 +9,9 @@ import com.clx.performance.enums.IdTypeEnum;
import
com.clx.performance.enums.OwnerAccountEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.model.*
;
import
com.clx.performance.param.open.OpenOwnerBindCardParam
;
import
com.clx.performance.param.open.OpenOwnerCaseOutParam
;
import
com.clx.performance.param.open.OpenOwnerTopUpParam
;
import
com.clx.performance.param.pc.*
;
import
com.clx.performance.param.pc.owner.CreteAccountParam
;
import
com.clx.performance.param.pc.owner.FrozenAccountParam
;
...
...
@@ -110,6 +113,23 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
return
entity
.
getTopUpNo
();
}
public
Long
openAccountTopUp
(
OpenOwnerTopUpParam
param
)
{
OwnerTopUp
entity
=
new
OwnerTopUp
();
entity
.
setAccountType
(
param
.
getAccountType
());
entity
.
setOwnerUserNo
(
param
.
getOwnerUserNo
());
entity
.
setTopUpBalance
(
param
.
getTopUpBalance
());
entity
.
setStatus
(
OwnerAccountEnum
.
TopUpStatus
.
PENDING
.
getCode
());
entity
.
setDrawingBank
(
param
.
getDrawingBank
());
entity
.
setDrawingBankNumber
(
param
.
getDrawingBankNumber
());
entity
.
setDrawingProof
(
param
.
getDrawingProof
());
//充值编号
entity
.
setTopUpNo
(
idGenerateSnowFlake
.
nextId
(
IdTypeEnum
.
Type
.
TOP_UP
.
getCode
()));
ownerTopUpDao
.
saveEntity
(
entity
);
return
entity
.
getTopUpNo
();
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Long
accountCaseOut
(
OwnerCaseOutParam
param
)
{
...
...
@@ -156,6 +176,52 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
return
entity
.
getCaseOutNo
();
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Long
openAccountCaseOut
(
OpenOwnerCaseOutParam
param
)
{
BigDecimal
caseOutBalance
=
param
.
getCaseOutBalance
();
LocalDateTime
now
=
LocalDateTime
.
now
();
while
(
true
)
{
//冻结账户可用金额
OwnerAccount
account
=
ownerAccountDao
.
getAccountByOwnerUserNoAndAccountType
(
param
.
getOwnerUserNo
(),
param
.
getAccountType
());
OwnerAccount
update
=
new
OwnerAccount
();
update
.
setUsableBalance
(
caseOutBalance
.
negate
());
update
.
setFrozenBalance
(
caseOutBalance
);
update
.
setModifiedTime
(
account
.
getModifiedTime
());
update
.
setId
(
account
.
getId
());
int
flag
=
ownerAccountDao
.
updateAccount
(
update
,
now
);
if
(
flag
>
0
)
{
break
;
}
}
//提现记录
OwnerCaseOut
entity
=
new
OwnerCaseOut
();
entity
.
setAccountType
(
param
.
getAccountType
());
entity
.
setCaseOutNo
(
idGenerateSnowFlake
.
nextId
(
IdTypeEnum
.
Type
.
CASE_OUT
.
getCode
()));
entity
.
setOwnerUserNo
(
param
.
getOwnerUserNo
());
entity
.
setStatus
(
OwnerAccountEnum
.
CaseOutStatus
.
PENDING_PAYMENT
.
getCode
());
entity
.
setCaseOutBank
(
param
.
getCaseOutBank
());
entity
.
setCaseOutBankNumber
(
param
.
getCaseOutBankNumber
());
ownerCaseOutDao
.
saveEntity
(
entity
);
//插入冻结流水
OwnerRunningWaterRecord
runningWaterRecord
=
new
OwnerRunningWaterRecord
();
runningWaterRecord
.
setOwnerName
(
"测试"
);
runningWaterRecord
.
setMobile
(
"11111111111"
);
runningWaterRecord
.
setCreateBy
(
"操作人测试"
);
runningWaterRecord
.
setRelationId
(
entity
.
getCaseOutNo
());
runningWaterRecord
.
setAccountBalance
(
caseOutBalance
);
runningWaterRecord
.
setOwnerUserNo
(
param
.
getOwnerUserNo
());
runningWaterRecord
.
setAccountType
(
param
.
getAccountType
());
runningWaterRecord
.
setRunningWaterType
(
OwnerAccountEnum
.
RunningWaterStatus
.
FROZEN
.
getCode
());
runningWaterRecord
.
setRunningWaterNo
(
idGenerateSnowFlake
.
nextId
(
IdTypeEnum
.
Type
.
CASE_OUT_FROZEN
.
getCode
()));
ownerRunningWaterRecordDao
.
saveEntity
(
runningWaterRecord
);
return
entity
.
getCaseOutNo
();
}
/**
* 充值审批
*/
...
...
@@ -427,6 +493,37 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
ownerBindCardRecordDao
.
saveEntity
(
record
);
}
@Override
public
void
openBindOwnerBindCard
(
OpenOwnerBindCardParam
param
)
{
Result
<
OwnerBindCardVO
>
result
=
ownerInfoFeign
.
getOwnerInfoVO
(
param
.
getUserNo
());
if
(!
result
.
succeed
())
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前参数未查询到有效数据"
);
}
if
(
result
.
succeed
()
&&
ObjectUtil
.
isNotNull
(
result
.
getData
())
&&
StringUtils
.
isNotBlank
(
result
.
getData
().
getOwnerAccountBank
()))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前货主存在绑定银行卡,请先解绑银行卡后再进行绑定操作"
);
}
UpdateOwnerBindCardFeignParam
feignParam
=
new
UpdateOwnerBindCardFeignParam
();
feignParam
.
setUserNo
(
param
.
getUserNo
());
feignParam
.
setOwnerAccountBank
(
param
.
getOwnerAccountBank
());
feignParam
.
setOwnerAccountName
(
param
.
getOwnerAccountName
());
feignParam
.
setOwnerBankAccount
(
param
.
getOwnerBankAccount
());
feignParam
.
setOwnerOpenBank
(
param
.
getOwnerOpenBank
());
ownerInfoFeign
.
bindOwnerBindCard
(
feignParam
);
OwnerBindCardRecord
record
=
new
OwnerBindCardRecord
();
record
.
setOwnerUserNo
(
param
.
getUserNo
());
record
.
setOwnerUserName
(
param
.
getName
());
record
.
setCreateItem
(
"绑定银行卡"
);
record
.
setOwnerBank
(
param
.
getOwnerAccountBank
());
record
.
setOpenAccountBank
(
param
.
getOwnerAccountBank
());
record
.
setAccountBankName
(
param
.
getOwnerAccountName
());
record
.
setBankCardNumber
(
param
.
getOwnerBankAccount
());
record
.
setCreateBy
(
"曹做人"
);
ownerBindCardRecordDao
.
saveEntity
(
record
);
}
@Override
public
void
unBindOwnerBindCard
(
OwnerBindCardParam
param
)
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
...
...
@@ -453,6 +550,31 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
ownerInfoFeign
.
unBindOwnerBindCard
(
feignParam
);
}
@Override
public
void
openUnBindOwnerBindCard
(
OpenOwnerBindCardParam
param
)
{
Result
<
OwnerBindCardVO
>
result
=
ownerInfoFeign
.
getOwnerInfoVO
(
param
.
getUserNo
());
if
(!
result
.
succeed
())
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
HTTP_ERROR
,
"当前参数未查询到有效数据"
);
}
OwnerBindCardRecord
record
=
new
OwnerBindCardRecord
();
//record.setOwnerType(param.getOwnerType());
record
.
setOwnerUserNo
(
param
.
getUserNo
());
record
.
setCreateItem
(
"解绑银行卡"
);
record
.
setOwnerBank
(
param
.
getOwnerAccountBank
());
record
.
setOpenAccountBank
(
param
.
getOwnerAccountBank
());
record
.
setAccountBankName
(
param
.
getOwnerAccountName
());
record
.
setCreateBy
(
param
.
getName
());
ownerBindCardRecordDao
.
saveEntity
(
record
);
UpdateOwnerBindCardFeignParam
feignParam
=
new
UpdateOwnerBindCardFeignParam
();
feignParam
.
setUserNo
(
param
.
getUserNo
());
// feignParam.setOwnerAccountBank(param.getOwnerAccountBank());
// feignParam.setOwnerAccountName(param.getOwnerAccountName());
// feignParam.setOwnerBankAccount(param.getOwnerBankAccount());
// feignParam.setOwnerOpenBank(param.getOwnerOpenBank());
ownerInfoFeign
.
unBindOwnerBindCard
(
feignParam
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerAccountFrozen
(
FrozenAccountParam
param
)
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论