Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cash-loan-flow-boss
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
QG
cash-loan-flow-boss
Commits
49664217
Commit
49664217
authored
Mar 03, 2020
by
杨钧
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
迁移还款计划查询接口
parent
5b10b1a0
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
233 additions
and
15 deletions
+233
-15
OrderController.java
...ashloanflowboss/api/order/controller/OrderController.java
+9
-1
RepaymentPlanItem.java
...p/cashloanflowboss/api/order/model/RepaymentPlanItem.java
+99
-0
RepaymentPlansResultModel.java
...anflowboss/api/order/model/RepaymentPlansResultModel.java
+84
-0
OrderService.java
...roup/cashloanflowboss/api/order/service/OrderService.java
+2
-6
OrderServiceImpl.java
.../cashloanflowboss/api/order/service/OrderServiceImpl.java
+14
-6
XYQBCenter.java
...antgroup/cashloanflowboss/spi/xyqb/client/XYQBCenter.java
+10
-2
XYQBCenterService.java
.../cashloanflowboss/spi/xyqb/service/XYQBCenterService.java
+3
-0
XYQBCenterServiceImpl.java
...hloanflowboss/spi/xyqb/service/XYQBCenterServiceImpl.java
+12
-0
No files found.
src/main/java/cn/quantgroup/cashloanflowboss/api/order/controller/OrderController.java
View file @
49664217
...
...
@@ -9,10 +9,13 @@ import cn.quantgroup.cashloanflowboss.core.annotation.channelrole.ChannelIdInit;
import
cn.quantgroup.cashloanflowboss.core.annotation.channelrole.CheckChannelRole
;
import
cn.quantgroup.cashloanflowboss.core.base.Result
;
import
cn.quantgroup.cashloanflowboss.core.base.Tuple
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.Objects
;
/**
* function:
...
...
@@ -23,6 +26,7 @@ import javax.validation.Valid;
@RestController
@RequestMapping
(
"/order"
)
@Slf4j
public
class
OrderController
{
...
...
@@ -195,12 +199,16 @@ public class OrderController {
@CheckChannelRole
(
channelOrderNumberSPEL
=
"#this[0]"
)
@GetMapping
(
"/repaymentPlan"
)
public
Result
repaymentPlan
(
String
channelOrderNumber
,
Long
loanId
)
{
if
(
StringUtils
.
isEmpty
(
channelOrderNumber
)
&&
Objects
.
isNull
(
loanId
)){
log
.
error
(
"还款计划查询 channelOrderNumber 和 loanId 不能同时为空 "
);
return
Result
.
buildFail
(
"channelOrderNumber 和 loanId 不能同时为空"
);
}
return
Result
.
buildSuccess
(
orderService
.
findRepaymentPlan
(
channelOrderNumber
,
loanId
));
}
/**
*
订单还款计划
*
发起结清
*
* @param channelOrderNumber
* @return
...
...
src/main/java/cn/quantgroup/cashloanflowboss/api/order/model/RepaymentPlanItem.java
0 → 100644
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
api
.
order
.
model
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.math.BigDecimal
;
/**
* @author yangjun
* @Date 2020/3/3 9:48
* @Desc
* @Update
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
RepaymentPlanItem
{
/**
* 期数
*/
private
Integer
periodNo
;
/**
* 还款类型 COMMON(正常)或SELF_WITHHOLD(代扣)
*/
private
String
repaymentType
;
/**
* 还款状态,0 ("未还款")、2 ("已逾期")、3 ("已还款")
*/
private
Integer
repaymentStatus
;
/**
* 应还本金
*/
private
BigDecimal
principal
;
/**
* 应还利息
*/
private
BigDecimal
interest
;
/**
* 应还罚息
*/
private
BigDecimal
overdueInterest
;
/**
* 应还服务费
*/
private
BigDecimal
serviceFee
;
/**
* 应还其它费用
*/
private
BigDecimal
otherFee
;
/**
* 最早可还款时间
*/
private
Long
repayableTime
;
/**
* 还款日期(到期时间),10位时间戳
*/
private
Long
dueTime
;
/**
* 应还金额
*/
private
BigDecimal
requiredRepayment
;
/**
* 实还本金
*/
private
BigDecimal
actPrincipal
;
/**
* 实还利息
*/
private
BigDecimal
actInterest
;
/**
* 实还服务费
*/
private
BigDecimal
actServiceFee
;
/**
* 实还罚息
*/
private
BigDecimal
actOverdueInterest
;
/**
* 实还其它费用
*/
private
BigDecimal
actOtherFee
;
/**
* 减免金额
*/
private
BigDecimal
reliefAmount
;
/**
* 实还金额
*/
private
BigDecimal
repayAmount
;
/**
* 逾期天数
*/
private
Integer
overdueDays
;
/**
* 还款时间
*/
private
Long
repayTime
;
}
src/main/java/cn/quantgroup/cashloanflowboss/api/order/model/RepaymentPlansResultModel.java
0 → 100644
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
api
.
order
.
model
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* @author yangjun
* @Date 2020/3/3 9:47
* @Desc
* @Update
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
RepaymentPlansResultModel
{
private
Long
loanId
;
/**
* 放款总金额
*/
private
BigDecimal
totalLoanAmount
;
/**
* 收款总金额
*/
private
BigDecimal
totalReceiveAmount
;
/**
* 放款到账时间
*/
private
Long
lendTime
;
/**
* 申请时间,loan的created_at就行,提现签约时间
*/
private
Long
applyTime
;
/**
* 应还款总金额
*/
private
BigDecimal
totalRepaymentAmount
;
/**
* 总利息
*/
private
BigDecimal
totalInterest
;
/**
* 应还总服务费
*/
private
BigDecimal
totalServiceFee
;
/**
* 应还总其他费用
*/
private
BigDecimal
totalOtherFee
;
/**
* 已还 总
*/
private
BigDecimal
alreadyPaidAmount
;
/**
* 剩余未还 总
*/
private
BigDecimal
notPaidAmount
;
/**
* 已还n期
*/
private
Integer
sumPaidTerm
;
/**
* 是否结清 true 结清
*/
private
Boolean
hasAllPaid
;
/** 还款计划 */
private
List
<
RepaymentPlanItem
>
repaymentPlans
;
}
src/main/java/cn/quantgroup/cashloanflowboss/api/order/service/OrderService.java
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
api
.
order
.
service
;
import
cn.quantgroup.cashloanflowboss.api.order.model.ApproveVo
;
import
cn.quantgroup.cashloanflowboss.api.order.model.HistoryOrderStatusVoModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.LendingFormModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.OrderVo
;
import
cn.quantgroup.cashloanflowboss.api.order.model.*
;
import
cn.quantgroup.cashloanflowboss.core.base.Tuple
;
import
cn.quantgroup.cashloanflowboss.core.tuple.ThreeTuple
;
import
cn.quantgroup.cashloanflowboss.spi.clf.model.CallbackRecordVoModel
;
import
org.springframework.data.domain.Page
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -47,7 +43,7 @@ public interface OrderService {
List
<
CallbackRecordVoModel
>
getOrderCallbackRecordList
(
String
channelOrderNumber
);
Object
findRepaymentPlan
(
String
channelOrderNumber
,
Long
loanId
);
RepaymentPlansResultModel
findRepaymentPlan
(
String
channelOrderNumber
,
Long
loanId
);
void
loadSecondAuditJob
();
...
...
src/main/java/cn/quantgroup/cashloanflowboss/api/order/service/OrderServiceImpl.java
View file @
49664217
...
...
@@ -26,8 +26,6 @@ import cn.quantgroup.cashloanflowboss.spi.clf.repository.ClfOrderMappingReposito
import
cn.quantgroup.cashloanflowboss.spi.clf.service.CLFCenterService
;
import
cn.quantgroup.cashloanflowboss.spi.clotho.service.ClothoCenterService
;
import
cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneService
;
import
cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneUtil
;
import
cn.quantgroup.cashloanflowboss.spi.jolyne.model.JolyneDB
;
import
cn.quantgroup.cashloanflowboss.spi.opapi.OPCenter
;
import
cn.quantgroup.cashloanflowboss.spi.user.service.XyqbUserService
;
import
cn.quantgroup.cashloanflowboss.spi.xyqb.entity.Contract
;
...
...
@@ -38,7 +36,6 @@ import cn.quantgroup.cashloanflowboss.spi.xyqb.service.XYQBCenterService;
import
cn.quantgroup.cashloanflowboss.utils.JSONTools
;
import
cn.quantgroup.user.retbean.XUser
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
java.math.BigDecimal
;
...
...
@@ -580,17 +577,28 @@ public class OrderServiceImpl implements OrderService{
* @return
*/
@Override
public
Object
findRepaymentPlan
(
String
channelOrderNumber
,
Long
loanId
)
{
public
RepaymentPlansResultModel
findRepaymentPlan
(
String
channelOrderNumber
,
Long
loanId
)
{
log
.
info
(
"[findRepaymentPlan] 查询还款计划 channelOrderNumber={},loanId={}"
,
channelOrderNumber
,
loanId
);
if
(
loanId
==
null
||
loanId
<
1
)
{
ClfOrderMapping
orderMapping
=
clfCenterService
.
findOrderMappingByChannelOrderNo
(
channelOrderNumber
);
if
(
orderMapping
==
null
||
orderMapping
.
getLoanId
()
==
null
)
{
log
.
warn
(
"[findRepaymentPlan] 订单信息不存在或没有loanId"
);
return
null
;
}
loanId
=
orderMapping
.
getLoanId
();
}
// xyqbCenterService.findRepaymentPlan(loanId);
return
null
;
ServiceResult
<
RepaymentPlansResultModel
>
serviceResult
=
xyqbCenterService
.
findRepaymentPlan
(
loanId
);
log
.
info
(
"[findRepaymentPlan] 查询还款计划,返回信息 channelOrderNumber={},loanId={},serviceResult={}"
,
channelOrderNumber
,
loanId
,
serviceResult
);
if
(
Objects
.
isNull
(
serviceResult
)||!
serviceResult
.
isSuccess
()){
log
.
error
(
"[findRepaymentPlan] 查询还款计划异常,返回页面空list"
);
return
null
;
}
RepaymentPlansResultModel
repaymentPlansVo
=
serviceResult
.
getData
();
repaymentPlansVo
.
setLoanId
(
loanId
);
log
.
info
(
"[findRepaymentPlan] 查询还款计划,返回信息 channelOrderNumber={},loanId={},repaymentPlansVo={}"
,
channelOrderNumber
,
loanId
,
repaymentPlansVo
);
return
repaymentPlansVo
;
}
@Override
...
...
src/main/java/cn/quantgroup/cashloanflowboss/spi/xyqb/client/XYQBCenter.java
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
spi
.
xyqb
.
client
;
import
cn.quantgroup.cashloanflowboss.api.order.model.RepaymentPlansResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbCurrentOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbHistoryOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.core.base.ServiceResult
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
...
...
@@ -14,7 +16,7 @@ import java.util.Map;
* Created by WeiWei on 2019/8/12.
*/
@Component
@FeignClient
(
name
=
"XYQBCenter"
,
url
=
"
${api.http}
"
,
fallback
=
XYQBCenter
.
Fallback
.
class
)
@FeignClient
(
name
=
"XYQBCenter"
,
url
=
"
http://api-ka3.liangkebang.net
"
,
fallback
=
XYQBCenter
.
Fallback
.
class
)
public
interface
XYQBCenter
{
@PostMapping
(
value
=
"/ex/paycenter/pay_notify"
,
consumes
=
"application/x-www-form-urlencoded"
)
...
...
@@ -26,6 +28,9 @@ public interface XYQBCenter {
@PostMapping
(
value
=
"/ex/ka/order/status/history"
,
consumes
=
"application/x-www-form-urlencoded"
)
ServiceResult
<
XyqbHistoryOrderStatusServiceResultModel
>
getXyqbOrderHistoryStatus
(
@RequestParam
Map
paramMap
);
@GetMapping
(
value
=
"/ex/ka/loan_plan/query"
,
consumes
=
"application/x-www-form-urlencoded"
)
ServiceResult
<
RepaymentPlansResultModel
>
getXyqbRepaymentPlans
(
@RequestParam
Map
paramMap
);
@Component
class
Fallback
implements
XYQBCenter
{
...
...
@@ -44,7 +49,10 @@ public interface XYQBCenter {
return
null
;
}
@Override
public
ServiceResult
<
RepaymentPlansResultModel
>
getXyqbRepaymentPlans
(
Map
paramMap
)
{
return
null
;
}
}
}
src/main/java/cn/quantgroup/cashloanflowboss/spi/xyqb/service/XYQBCenterService.java
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
spi
.
xyqb
.
service
;
import
cn.quantgroup.cashloanflowboss.api.order.model.RepaymentPlansResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbCurrentOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbHistoryOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.core.base.ServiceResult
;
...
...
@@ -50,4 +51,6 @@ public interface XYQBCenterService {
boolean
payResultNotify
(
Long
loanId
,
Boolean
expectPayResult
);
Tuple
<
Boolean
,
String
>
cleanUserActiveOrder
(
Long
userId
);
ServiceResult
<
RepaymentPlansResultModel
>
findRepaymentPlan
(
Long
loanId
);
}
src/main/java/cn/quantgroup/cashloanflowboss/spi/xyqb/service/XYQBCenterServiceImpl.java
View file @
49664217
package
cn
.
quantgroup
.
cashloanflowboss
.
spi
.
xyqb
.
service
;
import
cn.quantgroup.cashloanflowboss.api.order.model.RepaymentPlansResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbCurrentOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.api.order.model.XyqbHistoryOrderStatusServiceResultModel
;
import
cn.quantgroup.cashloanflowboss.core.Application
;
...
...
@@ -27,6 +28,8 @@ import java.util.ArrayList;
import
java.util.Date
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.math.BigDecimal
;
import
java.util.*
;
/**
* Created by WeiWei on 2019/8/12.
...
...
@@ -260,4 +263,13 @@ public class XYQBCenterServiceImpl implements XYQBCenterService {
boolean
result
=
(
Objects
.
nonNull
(
resp
)
&&
resp
.
containsKey
(
"code"
))
?
"0000"
.
equals
(
resp
.
get
(
"code"
))
:
false
;
return
new
Tuple
<>(
result
,
result
?
"清除用户活跃订单成功"
:
"清除用户活跃订单失败"
);
}
@Override
public
ServiceResult
<
RepaymentPlansResultModel
>
findRepaymentPlan
(
Long
loanId
)
{
Map
paramMap
=
Maps
.
newHashMap
();
paramMap
.
put
(
"loanId"
,
loanId
);
paramMap
=
SignUtil
.
sign
(
SignUtil
.
KA_API_KEY
,
paramMap
);
log
.
info
(
"查询还款计划,请求参数 paramMap={}"
,
paramMap
);
return
xyqbCenter
.
getXyqbRepaymentPlans
(
paramMap
);
}
}
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