Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
youka-api
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
java-youka-wallet
youka-api
Commits
a16cc3e6
Commit
a16cc3e6
authored
Jun 11, 2018
by
tang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
去除上传照片审核信息
parent
2db32706
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
67 additions
and
64 deletions
+67
-64
BenefitSevice.java
src/main/java/com/thinkgem/jeesite/modules/pay/service/BenefitSevice.java
+10
-21
PayApiService.java
src/main/java/com/thinkgem/jeesite/modules/pay/service/PayApiService.java
+11
-8
UserApiController.java
src/main/java/com/thinkgem/jeesite/modules/user/api/UserApiController.java
+26
-18
UserApiService.java
src/main/java/com/thinkgem/jeesite/modules/user/service/UserApiService.java
+20
-17
No files found.
src/main/java/com/thinkgem/jeesite/modules/pay/service/BenefitSevice.java
View file @
a16cc3e6
...
...
@@ -39,8 +39,6 @@ public class BenefitSevice {
*/
public
BalanceEntity
getBalance
(
BenefitEntity
entity
){
BalanceEntity
balanceEntity
=
new
BalanceEntity
();
// 总收益
entity
.
setBenefitType
(
"A"
);
BenefitEntity
benefitEntityA
=
payDao
.
getBenefitSum
(
entity
);
...
...
@@ -50,22 +48,7 @@ public class BenefitSevice {
BenefitEntity
benefitEntityM
=
payDao
.
getBenefitSum
(
entity
);
// 余额 = 总收益-总提现
if
(
benefitEntityA
==
null
){
balanceEntity
.
setBalance
(
"0.00"
);
}
else
{
if
(
benefitEntityA
.
getAmount
()
==
null
){
benefitEntityA
.
setAmount
(
"0.00"
);
}
if
(
benefitEntityM
==
null
){
balanceEntity
.
setBalance
(
benefitEntityA
.
getAmount
());
}
else
{
if
(
benefitEntityM
.
getAmount
()
==
null
){
benefitEntityM
.
setAmount
(
"0.00"
);
}
DecimalFormat
df
=
new
DecimalFormat
(
"######0.00"
);
balanceEntity
.
setBalance
(
df
.
format
(
Double
.
valueOf
(
benefitEntityA
.
getAmount
())
-
Double
.
valueOf
(
benefitEntityM
.
getAmount
())));
}
}
BalanceEntity
balanceEntity
=
getLastBalance
(
benefitEntityA
,
benefitEntityM
);
// 今日收益
entity
.
setBenefitType
(
"A"
);
...
...
@@ -165,7 +148,7 @@ public class BenefitSevice {
* @return
*/
public
BalanceEntity
getBalanceM
(
BenefitEntity
entity
){
BalanceEntity
balanceEntity
=
new
BalanceEntity
();
// 总共可以提现的金额
entity
.
setBenefitType
(
"A"
);
...
...
@@ -177,6 +160,14 @@ public class BenefitSevice {
BenefitEntity
benefitEntityM
=
payDao
.
getBenefitSum
(
entity
);
// 可以提现的余额 = 总共可以提现的金额-总提现金额
BalanceEntity
balanceEntity
=
getLastBalance
(
benefitEntityA
,
benefitEntityM
);
return
balanceEntity
;
}
public
BalanceEntity
getLastBalance
(
BenefitEntity
benefitEntityA
,
BenefitEntity
benefitEntityM
){
BalanceEntity
balanceEntity
=
new
BalanceEntity
();
if
(
benefitEntityA
==
null
){
balanceEntity
.
setBalance
(
"0.00"
);
}
else
{
...
...
@@ -193,9 +184,7 @@ public class BenefitSevice {
balanceEntity
.
setBalance
(
df
.
format
(
Double
.
valueOf
(
benefitEntityA
.
getAmount
())
-
Double
.
valueOf
(
benefitEntityM
.
getAmount
())));
}
}
return
balanceEntity
;
}
}
src/main/java/com/thinkgem/jeesite/modules/pay/service/PayApiService.java
View file @
a16cc3e6
...
...
@@ -726,8 +726,9 @@ public class PayApiService {
RateEntity
gradeRate
=
getGradeRate
(
userEntity
.
getLevel
(),
request
.
getPayChannel
());
//获取扣除手续费后的金额,已经转换为分
BigDecimal
amount
=
calculationAmount
(
gradeRate
,
request
.
getAmount
());
int
amountFen
=
amount
.
multiply
(
BigDecimal
.
valueOf
(
100.0
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
).
intValue
();
// BigDecimal amount = calculationAmount(gradeRate, request.getAmount());
// int amountFen = amount.multiply(BigDecimal.valueOf(100.0)).setScale(2, BigDecimal.ROUND_HALF_UP).intValue();
int
amount
=
calculationAmount
(
gradeRate
,
request
.
getAmount
());
//通过用户code获取user_detail表中数据
UserDetailEntity
userDetail
=
userService
.
getUserDetailByCode
(
userEntity
.
getCode
());
PayBackDto
payBackDto
=
new
PayBackDto
();
...
...
@@ -738,14 +739,14 @@ public class PayApiService {
dto
.
setOrderId
(
MakeOrderNum
.
makeOrderNum
());
//非订单号
dto
.
setMerchantId
(
ComCode
.
MERCHANT_ID
);
//商户号
dto
.
setMerchantKey
(
ComCode
.
MERCHANT_KEY
);
dto
.
setAmount
(
amountFen
);
//订单金额,单位为分
dto
.
setAmount
(
Integer
.
valueOf
(
request
.
getAmount
())*
100
);
//订单金额,单位为分
dto
.
setTrxType
(
3
);
//交易类型,默认传3
dto
.
setType
(
cardEntity
.
getCardType
().
equals
(
"D"
)?
6
:
5
);
//5 借记卡 只能 D0 6 贷记卡 D0 t1 ,表中 银行卡类型 D储蓄卡 C信用卡'
dto
.
setBankNo
(
cardEntity
.
getCardNo
());
//支付卡号
dto
.
setCvn2
(
request
.
getCvn2
());
//安全码
dto
.
setPhone
(
cardEntity
.
getCardMobile
());
//支付卡预留手机号
dto
.
setExpired
(
request
.
getExpireDate
());
//信用卡有效期(MMYY)
dto
.
setUserFee
(
Integer
.
valueOf
(
ComCode
.
EXTRA_RATE
)
);
//手续费 单位:分 ,D0 业务必传,商家约定
dto
.
setUserFee
(
amount
<
200
?
Integer
.
valueOf
(
ComCode
.
EXTRA_RATE
)
:
amount
);
//手续费 单位:分 ,D0 业务必传,商家约定
if
(
cardEntity
.
getCardType
().
equals
(
"C"
)){
if
(
cardEntityDebit
==
null
){
throw
new
MyException
(
"还没有结算卡!"
);
...
...
@@ -1265,18 +1266,20 @@ public class PayApiService {
}
/**
* 计算
扣除费率及每笔交易手续费的差值
* 计算
每笔交易手续费的和
* @param gradeRate
* @param amount
* @return
*/
public
BigDecimal
calculationAmount
(
RateEntity
gradeRate
,
String
amount
){
public
int
calculationAmount
(
RateEntity
gradeRate
,
String
amount
){
Double
siglePrice
=
Double
.
valueOf
(
gradeRate
.
getSiglePrice
());
Double
rate
=
Double
.
valueOf
(
gradeRate
.
getRate
());
Double
amountDouble
=
Double
.
valueOf
(
amount
);
//总共所需手续费
int
result
=
BigDecimal
.
valueOf
(
amountDouble
*
rate
).
add
(
BigDecimal
.
valueOf
(
siglePrice
*
100.0
)).
intValue
();
//扣除费率及手续费后的金额
BigDecimal
result
=
BigDecimal
.
valueOf
(
amountDouble
).
subtract
(
BigDecimal
.
valueOf
(
siglePrice
))
.
subtract
(
BigDecimal
.
valueOf
(
amountDouble
*
rate
));
//
BigDecimal result = BigDecimal.valueOf(amountDouble).subtract(BigDecimal.valueOf(siglePrice))
//
.subtract(BigDecimal.valueOf(amountDouble * rate));
return
result
;
}
...
...
src/main/java/com/thinkgem/jeesite/modules/user/api/UserApiController.java
View file @
a16cc3e6
...
...
@@ -14,6 +14,8 @@ import com.thinkgem.jeesite.modules.user.entity.IdentityCodeEntity;
import
com.thinkgem.jeesite.modules.user.entity.Level
;
import
com.thinkgem.jeesite.modules.user.entity.UserEntity
;
import
com.thinkgem.jeesite.modules.user.service.UserApiService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -29,6 +31,8 @@ import java.util.Map;
@RestController
@RequestMapping
(
"/api/user"
)
public
class
UserApiController
{
/** log */
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
UserApiController
.
class
);
@Autowired
private
UserApiService
userService
;
...
...
@@ -418,28 +422,32 @@ public class UserApiController {
// 判断业务入参是否为空
if
(
StringUtils
.
isBlank
(
request
.
getSubMerchantCode
())
||
StringUtils
.
isBlank
(
request
.
getFunction
())
||
StringUtils
.
isBlank
(
request
.
getIdentityCode
())
||
StringUtils
.
isBlank
(
request
.
getRealName
())
||
StringUtils
.
isBlank
(
request
.
getIdCard
())
||
StringUtils
.
isBlank
(
request
.
getIdCardPlace
())
||
StringUtils
.
isBlank
(
request
.
getCardNo
())
||
StringUtils
.
isBlank
(
request
.
getCardMobile
())
||
StringUtils
.
isBlank
(
request
.
getBelongBank
())
||
StringUtils
.
isBlank
(
request
.
getCardPlace
())
||
StringUtils
.
isBlank
(
request
.
getCardBank
())
||
StringUtils
.
isBlank
(
request
.
getIdCardFront
())
||
StringUtils
.
isBlank
(
request
.
getIdCardBack
())
||
StringUtils
.
isBlank
(
request
.
getIdCardHold
())
||
StringUtils
.
isBlank
(
request
.
getDebitCard
())
||
StringUtils
.
isBlank
(
request
.
getCardSrc
()))
{
||
StringUtils
.
isBlank
(
request
.
getRealName
())
||
StringUtils
.
isBlank
(
request
.
getIdCard
())
||
StringUtils
.
isBlank
(
request
.
getCardNo
())
||
StringUtils
.
isBlank
(
request
.
getCardMobile
())
||
StringUtils
.
isBlank
(
request
.
getBelongBank
())
||
StringUtils
.
isBlank
(
request
.
getCardBank
())
)
{
// || StringUtils.isBlank(request.getIdCardPlace())|| StringUtils.isBlank(request.getIdCardFront())|| StringUtils.isBlank(request.getIdCardBack())|| StringUtils.isBlank(request.getIdCardBack())
// || StringUtils.isBlank(request.getIdCardHold())|| StringUtils.isBlank(request.getDebitCard())|| StringUtils.isBlank(request.getCardSrc())|| StringUtils.isBlank(request.getCardPlace())
resp
.
setStatus
(
ComCode
.
STATUS_CODE_4001
);
resp
.
setMessage
(
ComCode
.
STATUS_CODE_4001_DESC
);
return
resp
;
}
// 根据手机号 + 使用场景 + 验证码查询
request
.
setMobile
(
request
.
getCardMobile
());
IdentityCodeEntity
identityCodeEntity
=
userService
.
getIdentifyCode
(
request
);
// 验证码使用场景
if
(
identityCodeEntity
==
null
)
{
resp
.
setStatus
(
ComCode
.
STATUS_CODE_4010
);
resp
.
setMessage
(
ComCode
.
STATUS_CODE_4010_DESC
);
return
resp
;
}
// 验证码是否过期
if
(!
userService
.
checkIdentifyCodeExpired
(
identityCodeEntity
))
{
resp
.
setStatus
(
ComCode
.
STATUS_CODE_4009
);
resp
.
setMessage
(
ComCode
.
STATUS_CODE_4009_DESC
);
return
resp
;
}
//
// 根据手机号 + 使用场景 + 验证码查询
//
request.setMobile(request.getCardMobile());
//
IdentityCodeEntity identityCodeEntity = userService.getIdentifyCode(request);
//
// 验证码使用场景
//
if (identityCodeEntity == null) {
//
resp.setStatus(ComCode.STATUS_CODE_4010);
//
resp.setMessage(ComCode.STATUS_CODE_4010_DESC);
//
return resp;
//
}
//
// 验证码是否过期
//
if (!userService.checkIdentifyCodeExpired(identityCodeEntity)) {
//
resp.setStatus(ComCode.STATUS_CODE_4009);
//
resp.setMessage(ComCode.STATUS_CODE_4009_DESC);
//
return resp;
//
}
userService
.
certification
(
request
);
resp
.
setStatus
(
ComCode
.
STATUS_CODE_2000
);
resp
.
setMessage
(
ComCode
.
STATUS_CODE_2000_DESC
);
...
...
src/main/java/com/thinkgem/jeesite/modules/user/service/UserApiService.java
View file @
a16cc3e6
...
...
@@ -219,7 +219,7 @@ public class UserApiService {
if
(
request
.
getCardSrc
()!=
null
){
cardSrc
=
request
.
getCardSrc
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
);
}
CardEntity
cardEntity
=
new
CardEntity
(
code
,
request
.
getSubMerchantCode
(),
request
.
getCardType
(),
request
.
getCardNo
(),
request
.
getCardMobile
(),
request
.
getBelongBank
(),
request
.
getCardBank
(),
request
.
get
CardPlace
(),
"N"
,
subMerchantId
,
cardSrc
,
type
,
status
,
request
.
getProvince
(),
request
.
getCity
());
CardEntity
cardEntity
=
new
CardEntity
(
code
,
request
.
getSubMerchantCode
(),
request
.
getCardType
(),
request
.
getCardNo
(),
request
.
getCardMobile
(),
request
.
getBelongBank
(),
request
.
getCardBank
(),
request
.
get
Province
()+
request
.
getCity
(),
"N"
,
subMerchantId
,
cardSrc
,
type
,
status
,
request
.
getProvince
(),
request
.
getCity
());
userDao
.
addNewCard
(
cardEntity
);
}
...
...
@@ -238,7 +238,7 @@ public class UserApiService {
@Transactional
(
readOnly
=
false
)
public
void
certification
(
UserRequest
request
)
throws
MyException
,
Exception
{
// 更新用户详情
UserDetailEntity
userDetailEntity
=
new
UserDetailEntity
(
IdGen
.
randomBase62
(
64
),
request
.
getSubMerchantCode
(),
request
.
getRealName
(),
request
.
getIdCard
(),
request
.
get
IdCardPlace
(),
request
.
getIdCardFront
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
),
request
.
getIdCardBack
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
),
request
.
getIdCardHold
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
),
request
.
getDebitCard
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
)
);
UserDetailEntity
userDetailEntity
=
new
UserDetailEntity
(
IdGen
.
randomBase62
(
64
),
request
.
getSubMerchantCode
(),
request
.
getRealName
(),
request
.
getIdCard
(),
request
.
get
Province
()+
request
.
getCity
(),
""
,
""
,
""
,
""
);
if
(
userDao
.
getUserDetailByCode
(
new
UserEntity
(
request
.
getSubMerchantCode
()))
==
null
)
{
userDao
.
saveUserDetail
(
userDetailEntity
);
}
else
{
...
...
@@ -255,14 +255,10 @@ public class UserApiService {
// 更新银行卡详情
CardEntity
cardStatusEntity
=
new
CardEntity
(
request
.
getSubMerchantCode
(),
"N"
);
userDao
.
updateCardStatus
(
cardStatusEntity
);
CardEntity
cardEntity
=
new
CardEntity
(
IdGen
.
randomBase62
(
64
),
request
.
getSubMerchantCode
(),
"D"
,
request
.
getCardNo
(),
request
.
getCardMobile
(),
request
.
getBelongBank
(),
request
.
getCardBank
(),
request
.
getCardPlace
(),
"Y"
,
subMerchantId
,
request
.
getCardSrc
().
replace
(
Global
.
getConfig
(
"sys.pre.url"
),
""
)
,
type
,
status
,
request
.
getProvince
(),
request
.
getCity
());
CardEntity
cardEntity
=
new
CardEntity
(
IdGen
.
randomBase62
(
64
),
request
.
getSubMerchantCode
(),
"D"
,
request
.
getCardNo
(),
request
.
getCardMobile
(),
request
.
getBelongBank
(),
request
.
getCardBank
(),
request
.
getCardPlace
(),
"Y"
,
subMerchantId
,
""
,
type
,
status
,
request
.
getProvince
(),
request
.
getCity
());
userDao
.
addNewCard
(
cardEntity
);
// 更新用户状态
UserEntity
userEntity
=
new
UserEntity
();
userEntity
.
setCode
(
request
.
getSubMerchantCode
());
userEntity
.
setStatus
(
"1"
);
userDao
.
updateUserInfo
(
userEntity
);
// 查询与实名用户相同推荐人的信息
...
...
@@ -360,20 +356,27 @@ public class UserApiService {
userSubMchIdRequest
.
setUserCode
(
request
.
getSubMerchantCode
());
// ComCode.PAYCHANNEL_HL3 商户入网
String
inregralSubMchId
=
this
.
quickPayHandleJuhezhong
(
request
,
""
,
userEntityRequest
.
getLevel
());
userSubMchIdRequest
.
setPayChannel
(
ComCode
.
PAYCHANNEL_HL3
);
userSubMchIdRequest
.
setSubmchid
(
inregralSubMchId
);
this
.
addUserSubmchid
(
userSubMchIdRequest
);
// 关闭HL3通道
// String inregralSubMchId = this.quickPayHandleJuhezhong(request,"",userEntityRequest.getLevel());
// userSubMchIdRequest.setPayChannel(ComCode.PAYCHANNEL_HL3);
// userSubMchIdRequest.setSubmchid(inregralSubMchId);
// this.addUserSubmchid(userSubMchIdRequest);
// 加添费率
this
.
quickPayHandleJuhezhong
(
request
,
""
,
userEntityRequest
.
getLevel
());
// JFen 商户入网 + 添加费率
String
JFenSubMchId
=
this
.
merchantInJFenJuhezhong
(
request
);
// String JFenSubMchId = "B105377143";
// 更新用户状态
UserEntity
userEntity
=
new
UserEntity
();
userEntity
.
setCode
(
request
.
getSubMerchantCode
());
userEntity
.
setStatus
(
"2"
);
//根据第三方接口返回信息更改用户状态
userDao
.
updateUserInfo
(
userEntity
);
userSubMchIdRequest
.
setPayChannel
(
ComCode
.
PAYCHANNEL_HL2
);
userSubMchIdRequest
.
setSubmchid
(
inregral
SubMchId
);
userSubMchIdRequest
.
setSubmchid
(
JFen
SubMchId
);
this
.
addUserSubmchid
(
userSubMchIdRequest
);
rate
.
setPayChannel
(
ComCode
.
PAYCHANNEL_HL2
);
rate
.
setPayMethod
(
"quick"
);
//全部写死是quick
RateEntity
rateEntity
=
this
.
getRateByLevel
(
rate
);
rateEntity
.
setServiceType
(
"0"
);
// 添加费率
...
...
@@ -525,7 +528,7 @@ public class UserApiService {
dto
.
put
(
"legalPersonName"
,
request
.
getRealName
());
dto
.
put
(
"legalPersonID"
,
request
.
getIdCard
());
dto
.
put
(
"subMerchantPersonName"
,
request
.
getRealName
());
dto
.
put
(
"subMerchantPersonPhone"
,
request
.
getMobile
());
dto
.
put
(
"subMerchantPersonPhone"
,
userEntity
.
getMobile
());
dto
.
put
(
"bankType"
,
"TOPRIVATE"
);
dto
.
put
(
"accountName"
,
request
.
getRealName
());
...
...
@@ -533,7 +536,7 @@ public class UserApiService {
dto
.
put
(
"bankName"
,
belongBankEntity
.
getBankName
());
dto
.
put
(
"bankProv"
,
request
.
getProvince
());
dto
.
put
(
"bankCity"
,
request
.
getCity
());
dto
.
put
(
"bankBranch"
,
request
.
get
CardPlace
());
dto
.
put
(
"bankBranch"
,
request
.
get
Province
()+
request
.
getCity
());
dto
.
put
(
"bankCode"
,
request
.
getBelongBank
());
dto
.
put
(
"timestamp"
,
System
.
currentTimeMillis
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment