Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
browser-backend
Project
Project
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
Administrator
browser-backend
Commits
580f0d37
Commit
580f0d37
authored
Oct 13, 2020
by
xuxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
充值续费相关日志添加
parent
bbeea2dc
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
51 additions
and
40 deletions
+51
-40
PaymentServiceImpl.java
...owserbackend/account/service/impl/PaymentServiceImpl.java
+19
-8
IpResourceServiceImpl.java
...erbackend/browser/service/Impl/IpResourceServiceImpl.java
+32
-32
No files found.
src/main/java/com/edgec/browserbackend/account/service/impl/PaymentServiceImpl.java
View file @
580f0d37
...
...
@@ -71,6 +71,7 @@ public class PaymentServiceImpl implements PaymentService {
UserPayment
byTradeNo
=
userPaymentRepository
.
findByTradeNo
(
tradno
);
if
(
byTradeNo
!=
null
&&
!
byTradeNo
.
isSucceed
())
{
log
.
info
(
"微信支付回调确认订单"
+
byTradeNo
.
getTradeNo
()
+
"支付状态,此时chargeType为 0"
);
log
.
error
(
"wechat order:step-5 callback {}"
,
byTradeNo
.
getTradeNo
());
wxCheckOrderStatus
(
byTradeNo
.
getTradeNo
(),
0
);
}
return
"<xml>\n"
+
...
...
@@ -85,6 +86,7 @@ public class PaymentServiceImpl implements PaymentService {
UserPayment
byTradeNo
=
userPaymentRepository
.
findByTradeNo
(
tradno
);
if
(
byTradeNo
!=
null
&&
!
byTradeNo
.
isSucceed
())
{
log
.
info
(
"支付宝支付回调确认订单"
+
byTradeNo
.
getTradeNo
()
+
"支付状态,此时chargeType为 0"
);
log
.
error
(
"alipay order:step-2 callback {}"
,
tradno
);
aliCheckOrderStatus
(
byTradeNo
.
getTradeNo
(),
0
);
}
}
...
...
@@ -194,7 +196,7 @@ public class PaymentServiceImpl implements PaymentService {
AlipayTradeQueryResponse
response
=
alipayClient
.
execute
(
alipayRequest
);
log
.
info
(
"ali order status
:"
+
JSONObject
.
toJSONString
(
response
)
);
log
.
info
(
"ali order status
{}, {}"
,
JSONObject
.
toJSONString
(
response
),
tradno
);
if
(
response
.
getTradeStatus
()
==
null
)
{
result
.
setPaid
(
false
);
result
.
setStatus
(
convertAlipayStatus
(
"WAIT_BUYER_PAY"
));
...
...
@@ -210,7 +212,7 @@ public class PaymentServiceImpl implements PaymentService {
result
.
setPaid
(
false
);
}
catch
(
Exception
e
)
{
log
.
error
(
"Alipay payment order generation fails
"
,
e
);
log
.
error
(
"Alipay payment order generation fails
{},{}"
,
e
,
tradno
);
result
.
setPaid
(
false
);
}
return
result
;
...
...
@@ -257,6 +259,7 @@ public class PaymentServiceImpl implements PaymentService {
// 将支付信息保存到 userPayment
internalOrder
.
setTransId
(
response
.
getTradeNo
());
userPaymentRepository
.
save
(
internalOrder
);
log
.
error
(
"alipay order:step-1 create pay order {}"
,
internalOrder
.
getTradeNo
());
String
form
=
response
.
getBody
();
return
form
;
...
...
@@ -274,9 +277,11 @@ public class PaymentServiceImpl implements PaymentService {
throw
new
ClientRequestException
(
AccountErrorCode
.
NOPERMISSION
,
"account does not have permission: "
+
username
);
}
// 创建并封装 UserPayment 信息
UserPayment
internalOrder
=
getUserPayment
(
username
,
amount
,
PaymentMethod
.
WECHAT
);
log
.
error
(
"wechat order:step-1 create order {}"
,
internalOrder
.
getTradeNo
());
try
{
// 创建并封装 UserPayment 信息
UserPayment
internalOrder
=
getUserPayment
(
username
,
amount
,
PaymentMethod
.
WECHAT
);
// 回调的url
String
notifyUrl
=
AccountController
.
WECHAT_PAY_CALLBACK_URL
+
internalOrder
.
getTradeNo
();
...
...
@@ -293,18 +298,20 @@ public class PaymentServiceImpl implements PaymentService {
Map
<
String
,
String
>
respData
=
wxPay
.
unifiedOrder
(
data
);
if
(
respData
.
get
(
"return_code"
).
equals
(
"SUCCESS"
)
&&
respData
.
get
(
"result_code"
).
equals
(
"SUCCESS"
))
{
log
.
error
(
"wechat order:step-2 pay status {},{}"
,
respData
.
get
(
"result_code"
),
internalOrder
.
getTradeNo
());
// 若微信支付成功,则将支付信息保存到 userPayment
userPaymentRepository
.
save
(
internalOrder
);
log
.
error
(
"wechat order:step-3.1 save pay info success {}"
,
internalOrder
.
getTradeNo
());
UserPaymentDto
result
=
new
UserPaymentDto
();
result
.
setTradeNo
(
internalOrder
.
getTradeNo
());
result
.
setUrl
(
respData
.
get
(
"code_url"
));
return
result
;
}
else
{
log
.
error
(
"
Fail to create ex order : "
+
JSONObject
.
toJSONString
(
respData
));
log
.
error
(
"
wechat order:step-3.2 Fail to create ex order {},{}"
+
JSONObject
.
toJSONString
(
respData
),
internalOrder
.
getTradeNo
(
));
throw
new
ClientRequestException
(
AccountErrorCode
.
WECHATERROR
,
"Wechat payment order error"
);
}
}
catch
(
Exception
e
)
{
log
.
error
(
"
Wechat payment order generation fails"
,
e
);
log
.
error
(
"
wechat order:step-4 Wechat payment order generation fails {}, {}"
,
e
,
internalOrder
.
getTradeNo
()
);
throw
new
ClientRequestException
(
AccountErrorCode
.
WECHATERROR
,
"Wechat payment order error"
);
}
}
...
...
@@ -599,7 +606,7 @@ public class PaymentServiceImpl implements PaymentService {
}
result
.
setPaid
(
false
);
}
catch
(
Exception
e
)
{
log
.
error
(
"Wechat payment order generation fails
"
,
e
);
log
.
error
(
"Wechat payment order generation fails
{},{}"
,
e
,
tradeno
);
result
.
setPaid
(
false
);
}
return
result
;
...
...
@@ -665,7 +672,7 @@ public class PaymentServiceImpl implements PaymentService {
result
.
setPaid
(
false
);
}
catch
(
Exception
e
)
{
log
.
error
(
"Alipay payment order generation fails
"
,
e
);
log
.
error
(
"Alipay payment order generation fails
{},{}"
,
e
,
tradno
);
result
.
setPaid
(
false
);
}
return
result
;
...
...
@@ -790,6 +797,8 @@ public class PaymentServiceImpl implements PaymentService {
byTradeNo
.
setSucceed
(
true
);
// 2.1 更新 userPayment 的支付状态为成功
boolean
b
=
userPaymentRepository
.
updatePaymentResult
(
byTradeNo
,
true
,
new
Date
());
log
.
error
(
"wechat or ali pay success:step-1 update order status {},{}"
,
b
,
byTradeNo
.
getTradeNo
());
if
(
b
)
{
log
.
info
(
"订单 "
+
byTradeNo
.
getTradeNo
()
+
" 的支付状态更新为成功"
);
// 2.2 获取充值优惠赠送
...
...
@@ -804,12 +813,14 @@ public class PaymentServiceImpl implements PaymentService {
UserPrePaidBilling
bill
=
getUserPrePaidBilling
(
byTradeNo
,
byName
,
balance
,
payBack
);
userPrePaidBillingRepository
.
save
(
bill
);
log
.
info
(
"构建订单 "
+
byTradeNo
.
getTradeNo
()
+
" 的充值信息成功"
);
log
.
error
(
"wechat or ali pay success:step-2 create paidbilling info {},{}"
,
bill
.
getId
(),
byTradeNo
.
getTradeNo
());
}
// 2.4 更新账户余额 userBalance
balance
.
setBalanced
(
balance
.
getBalanced
()
+
byTradeNo
.
getAmount
()
+
payBack
.
getBack
());
userBalanceRepository
.
save
(
balance
);
log
.
info
(
"更新充值订单 "
+
byTradeNo
.
getTradeNo
()
+
" 所对应的账户 "
+
balance
.
getUsername
()
+
" 的余额成功"
);
log
.
error
(
"wechat or ali pay success:step-3 create balance info {},{}"
,
balance
.
getUsername
(),
byTradeNo
.
getTradeNo
());
// 2.5 如果当前用户通过邀请码注册的,则更新邀请人的佣金
if
(
byName
.
getPromotionCode
()
!=
null
)
{
...
...
src/main/java/com/edgec/browserbackend/browser/service/Impl/IpResourceServiceImpl.java
View file @
580f0d37
...
...
@@ -175,9 +175,9 @@ public class IpResourceServiceImpl implements IpResourceService {
Map
<
String
,
List
<
String
>>
priceList
=
ipOptionsRepository
.
findAll
().
get
(
0
).
getIpPlatForm
();
List
<
String
>
vendorPrices
=
priceList
.
get
(
ipResourceRequestDto
.
getRegionCn
());
String
price
=
vendorPrices
.
stream
()
.
filter
(
x
->
Vendor
.
valueOf
(
ipResourceRequestDto
.
getVendor
()).
getValue
().
equals
(
x
.
substring
(
0
,
x
.
indexOf
(
"-"
))))
.
map
(
x
->
x
.
substring
(
x
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
.
filter
(
x
->
Vendor
.
valueOf
(
ipResourceRequestDto
.
getVendor
()).
getValue
().
equals
(
x
.
substring
(
0
,
x
.
indexOf
(
"-"
))))
.
map
(
x
->
x
.
substring
(
x
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
newprice
=
"week"
.
equals
(
ipResourceRequestDto
.
getUnit
())
?
(
Integer
.
valueOf
(
price
)
/
3
)
:
Integer
.
valueOf
(
price
);
}
...
...
@@ -357,9 +357,9 @@ public class IpResourceServiceImpl implements IpResourceService {
List
<
String
>
vendorPrices
=
ipPlatForm
.
get
(
ipResource
.
getRegionCn
());
// 计算 ip 价格
String
price
=
vendorPrices
.
stream
()
.
filter
(
vendorprice
->
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
.
map
(
vendorprice
->
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
.
filter
(
vendorprice
->
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
.
map
(
vendorprice
->
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
double
newprice1
=
ipResourceRequestDto
.
getUnit
().
equals
(
"week"
)
?
(
Integer
.
valueOf
(
price
)
/
3
)
:
Integer
.
valueOf
(
price
);
// 封装 ip 的续费 信息
...
...
@@ -398,9 +398,9 @@ public class IpResourceServiceImpl implements IpResourceService {
}
String
price
=
vendorPrices
.
stream
()
.
filter
(
vendorprice
->
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
.
map
(
vendorprice
->
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
.
filter
(
vendorprice
->
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
.
map
(
vendorprice
->
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
))
.
collect
(
Collectors
.
joining
());
double
newprice1
=
ipResourceRequestDto
.
getUnit
().
equals
(
"week"
)
?
(
Integer
.
valueOf
(
price
)
/
3
)
:
Integer
.
valueOf
(
price
);
IpChargeRequestDto
ipChargeRequestDto
=
buildIpChargeRequestDto
(
ipResourceRequestDto
,
2
,
ipResourceRequestDto
.
getPayMethod
());
...
...
@@ -409,10 +409,10 @@ public class IpResourceServiceImpl implements IpResourceService {
if
(
ipResourceRequestDto
.
getUnit
().
equals
(
"week"
))
{
ipResource
.
setValidTime
(
Instant
.
ofEpochMilli
(
ipResource
.
getValidTime
()).
atZone
(
ZoneOffset
.
UTC
)
.
plusWeeks
(
finalPeriod
).
toInstant
().
toEpochMilli
());
.
plusWeeks
(
finalPeriod
).
toInstant
().
toEpochMilli
());
}
else
{
ipResource
.
setValidTime
(
Instant
.
ofEpochMilli
(
ipResource
.
getValidTime
()).
atZone
(
ZoneOffset
.
UTC
)
.
plusMonths
(
finalPeriod
).
toInstant
().
toEpochMilli
());
.
plusMonths
(
finalPeriod
).
toInstant
().
toEpochMilli
());
}
ipResourceRepository
.
save
(
ipResource
);
ipOperationResultDto
.
getSuccessList
().
add
(
x
);
...
...
@@ -984,9 +984,9 @@ public class IpResourceServiceImpl implements IpResourceService {
case
5
:
// 已分配且未过期
ipResources
=
ipResourceRepository
.
findShopIdInList
(
shopIds
,
false
)
.
stream
()
.
filter
(
x
->
x
.
getValidTime
()
>
Instant
.
now
().
toEpochMilli
())
.
collect
(
Collectors
.
toList
());
.
stream
()
.
filter
(
x
->
x
.
getValidTime
()
>
Instant
.
now
().
toEpochMilli
())
.
collect
(
Collectors
.
toList
());
if
(!
isParent
)
notUsed
=
ipResourceRepository
.
findByOwnerAndStatusInAndIsDeletedAndBind
(
username
,
Arrays
.
asList
(
0
,
2
,
4
,
8
),
false
,
false
);
else
...
...
@@ -1050,24 +1050,24 @@ public class IpResourceServiceImpl implements IpResourceService {
private
AtomicReference
<
Double
>
getDoubleAtomicReference
(
IpResourceRequestDto
ipResourceRequestDto
,
Map
<
String
,
List
<
String
>>
ipPlatForm
)
{
AtomicReference
<
Double
>
totalprice
=
new
AtomicReference
<>((
double
)
0
);
ipResourceRequestDto
.
getAddr
().
stream
()
.
map
(
x
->
ipResourceRepository
.
findByAddrAndIsDeleted
(
x
,
false
))
.
forEach
(
ipResource
->
{
List
<
String
>
regionAndPriceInfos
;
if
(!
ipResourceRequestDto
.
getVendor
().
equals
(
"own"
))
{
regionAndPriceInfos
=
ipPlatForm
.
get
(
ipResource
.
getRegionCn
());
}
else
{
regionAndPriceInfos
=
ipResource
.
isSpecialLine
()
?
ipPlatForm
.
get
(
"自有专线"
)
:
ipPlatForm
.
get
(
"自有"
);
}
for
(
String
vendorprice
:
regionAndPriceInfos
)
{
if
(
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
totalprice
.
updateAndGet
(
v
->
new
Double
(
v
+
Double
.
valueOf
(
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
)))
);
}
}
);
.
map
(
x
->
ipResourceRepository
.
findByAddrAndIsDeleted
(
x
,
false
))
.
forEach
(
ipResource
->
{
List
<
String
>
regionAndPriceInfos
;
if
(!
ipResourceRequestDto
.
getVendor
().
equals
(
"own"
))
{
regionAndPriceInfos
=
ipPlatForm
.
get
(
ipResource
.
getRegionCn
());
}
else
{
regionAndPriceInfos
=
ipResource
.
isSpecialLine
()
?
ipPlatForm
.
get
(
"自有专线"
)
:
ipPlatForm
.
get
(
"自有"
);
}
for
(
String
vendorprice
:
regionAndPriceInfos
)
{
if
(
ipResource
.
getVendor
().
getValue
().
equals
(
vendorprice
.
substring
(
0
,
vendorprice
.
indexOf
(
"-"
))))
totalprice
.
updateAndGet
(
v
->
new
Double
(
v
+
Double
.
valueOf
(
vendorprice
.
substring
(
vendorprice
.
lastIndexOf
(
"-"
)
+
1
)))
);
}
}
);
return
totalprice
;
}
...
...
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