Commit 09139817 by zhaoyang

查询资产列表和测试

parent 400b1a89
package com.abssqr.plat.biz.api.astPool; package com.abssqr.plat.biz.api.astPool;
import com.abssqr.plat.biz.support.ServiceSupport; import com.abssqr.plat.biz.support.ServiceSupport;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.facade.base.BaseStringParam; import com.abssqr.plat.common.facade.base.BaseStringParam;
import com.abssqr.plat.common.facade.enums.AstTypeEnum; import com.abssqr.plat.common.facade.enums.AstTypeEnum;
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.facade.result.BasePage; import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanListVO; import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import com.abssqr.plat.common.facade.result.astPool.AstPoolVO; import com.abssqr.plat.common.facade.result.astPool.AstPoolVO;
import com.abssqr.plat.common.facade.service.AstPoolService; import com.abssqr.plat.common.facade.service.AstPoolService;
import com.abssqr.plat.common.facade.validation.Valid; import com.abssqr.plat.common.facade.validation.Valid;
import com.abssqr.plat.common.model.convertor.AstPoolConvert; import com.abssqr.plat.common.model.convertor.web.AstPoolLoanWebConvert;
import com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert;
import com.abssqr.plat.common.model.domain.ast.AstPoolEntity; import com.abssqr.plat.common.model.domain.ast.AstPoolEntity;
import com.abssqr.plat.common.model.enums.IdTypeEnum; import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.repo.ast.LoanRepository; import com.abssqr.plat.common.model.repo.ast.LoanRepository;
...@@ -26,6 +29,8 @@ import org.springframework.stereotype.Service; ...@@ -26,6 +29,8 @@ import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import static com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert.convertParam2Page;
@Service @Service
public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService{ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService{
...@@ -73,22 +78,9 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService ...@@ -73,22 +78,9 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService
@Override @Override
public BasePage<AstPoolVO> page(@Valid AstPoolPageQryParam astPoolPageQryParam) { public BasePage<AstPoolVO> page(@Valid AstPoolPageQryParam astPoolPageQryParam) {
return super.doQry(astPoolPageQryParam,()->{ return super.doQry(astPoolPageQryParam,()->{
BasePage<AstPoolVO> result=new BasePage();
//组装Page对象
String astPoolName = astPoolPageQryParam.getAstPoolName();
AstPoolPage astPoolPage=new AstPoolPage();
astPoolPage.setAstPoolName(astPoolName);
astPoolPage.setLimit(astPoolPageQryParam.getPageSize());
astPoolPage.setCurrPageNo(astPoolPageQryParam.getPageNum());
//组装返回Page对象 //组装返回Page对象
AstPoolPage page = astPoolRepository.getPage(astPoolPage); AstPoolPage page = astPoolRepository.getPage(convertParam2Page(astPoolPageQryParam));
result.setDatas(AstPoolConvert.convert2VOs(page.getDatas())); return AstPoolWebConvert.convertPage2Result(page);
result.setCurrPageNo(page.getCurrPageNo());
result.setTotal(page.getTotal());
result.setLimit(page.getLimit());
return result;
}); });
} }
...@@ -101,29 +93,26 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService ...@@ -101,29 +93,26 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService
@Override @Override
public AstPoolVO get(String astPoolNo) { public AstPoolVO get(String astPoolNo) {
return super.doQry(new BaseStringParam(astPoolNo),()->{ return super.doQry(new BaseStringParam(astPoolNo),()->{
AstPoolEntity astPoolEntity = astPoolRepository.getByAstPoolNo(astPoolNo); AstPoolEntity astPoolEntity = astPoolRepository.getByAstPoolNo(astPoolNo);
VarChecker.checkNotNull(astPoolEntity,"资产池不存在"); VarChecker.checkNotNull(astPoolEntity,"资产池不存在");
AstPoolVO astPoolVO = AstPoolWebConvert.convertEntity2VO(astPoolEntity);
AstPoolLoanStat astPoolLoanStat = loanRepository.statAstPoolLoan(astPoolNo); AstPoolLoanStat astPoolLoanStat = loanRepository.statAstPoolLoan(astPoolNo);
AstPoolVO astPoolVO = AstPoolConvert.convert2VO(astPoolEntity);
astPoolVO.setAstAmt(astPoolLoanStat.getAllPrinBal()); return AstPoolWebConvert.convertStat2VO(astPoolVO, astPoolLoanStat);
astPoolVO.setAstCnt(astPoolLoanStat.getAllCnt());
astPoolVO.setPackedAstAmt(astPoolLoanStat.getPackPrinBal());
astPoolVO.setPackedAstCnt(astPoolLoanStat.getPackCnt());
return astPoolVO;
}); });
} }
@Override @Override
public List<AstPoolLoanListVO> astList(String astPoolNo) { public BasePage<AstPoolLoanVO> astList(AstPageQryParam astPageQryParam) {
return null; return super.doQry(astPageQryParam,()->{
} AstPoolLoanPage result = astPoolRepository.astPage(AstPoolLoanWebConvert.convertAstParam2AstPage(astPageQryParam));
/* return AstPoolLoanWebConvert.convertAstPoolLoan2AstPoolVOs(result);
@Override });
public AstPoolLoanListVO astList(String astPoolNo) {
List<AstPoolLoan> loanListByAstPoolNo = loanRepository.getLoanListByAstPoolNo(astPoolNo);
List<AstPoolLoanListVO> loanListVOS = LoanConvert.convert2AstPoolLoanListVOs(loanListByAstPoolNo);
return loanListVOS;
} }
*/
} }
...@@ -396,7 +396,7 @@ ...@@ -396,7 +396,7 @@
</operation> </operation>
<operation name="getLoanListByAstPoolNo" resultmap="AstPoolLoan" multiplicity="paging" paging="AstPoolLoanPage" remark="根据资产池编号查询对应的资产"> <operation name="getLoanListByAstPoolNo" resultmap="AstPoolLoan" multiplicity="paging" paging="" remark="根据资产池编号查询对应的资产">
SELECT SELECT
L1.AST_NO, --资产编号 L1.AST_NO, --资产编号
L1.PRIN_BAL, --贷款剩余本金 L1.PRIN_BAL, --贷款剩余本金
......
...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.resultmap.LoanPropCntStat; ...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.resultmap.LoanPropCntStat;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage; import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage; import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPagePage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.mapper.LoanDOMapper; import com.abssqr.plat.common.dal.mysql.auto.mapper.LoanDOMapper;
/** /**
...@@ -155,18 +155,18 @@ public class LoanDAO{ ...@@ -155,18 +155,18 @@ public class LoanDAO{
} }
/** /**
* desc:根据资产池编号查询对应的资产.<br/> * desc:根据资产池编号查询对应的资产.<br/>
* @param astPoolLoanPage astPoolLoanPage * @param astPoolLoan astPoolLoan
* @return AstPoolLoanPagePage * @return AstPoolLoanPage
*/ */
public AstPoolLoanPagePage getLoanListByAstPoolNo(AstPoolLoanPagePage astPoolLoanPage){ public AstPoolLoanPage getLoanListByAstPoolNo(AstPoolLoanPage astPoolLoan){
int total = loanDOMapper.getLoanListByAstPoolNoCount(astPoolLoanPage); int total = loanDOMapper.getLoanListByAstPoolNoCount(astPoolLoan);
if(total>0){ if(total>0){
astPoolLoanPage.setDatas(loanDOMapper.getLoanListByAstPoolNoResult(astPoolLoanPage)); astPoolLoan.setDatas(loanDOMapper.getLoanListByAstPoolNoResult(astPoolLoan));
}else{ }else{
astPoolLoanPage.setDatas(new ArrayList()); astPoolLoan.setDatas(new ArrayList());
} }
astPoolLoanPage.setTotal(total); astPoolLoan.setTotal(total);
return astPoolLoanPage; return astPoolLoan;
} }
} }
...@@ -8,7 +8,7 @@ import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage; ...@@ -8,7 +8,7 @@ import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage;
import java.lang.String; import java.lang.String;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage; import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPagePage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -113,14 +113,14 @@ public interface LoanDOMapper{ ...@@ -113,14 +113,14 @@ public interface LoanDOMapper{
AstPoolLoanStat statPrinAndCnt(String astPoolNo); AstPoolLoanStat statPrinAndCnt(String astPoolNo);
/** /**
* desc:根据资产池编号查询对应的资产.<br/> * desc:根据资产池编号查询对应的资产.<br/>
* @param astPoolLoanPage astPoolLoanPage * @param astPoolLoan astPoolLoan
* @return int * @return int
*/ */
int getLoanListByAstPoolNoCount(AstPoolLoanPagePage astPoolLoanPage); int getLoanListByAstPoolNoCount(AstPoolLoanPage astPoolLoan);
/** /**
* desc:根据资产池编号查询对应的资产.<br/> * desc:根据资产池编号查询对应的资产.<br/>
* @param astPoolLoanPage astPoolLoanPage * @param astPoolLoan astPoolLoan
* @return List<AstPoolLoan> * @return List<AstPoolLoan>
*/ */
List<AstPoolLoan> getLoanListByAstPoolNoResult(AstPoolLoanPagePage astPoolLoanPage); List<AstPoolLoan> getLoanListByAstPoolNoResult(AstPoolLoanPage astPoolLoan);
} }
package com.abssqr.plat.common.dal.mysql.auto.paging;
import com.abssqr.plat.common.dal.mysql.auto.paging.BasePage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
/**
* The table ABS_LOAN 信贷资产
*/
public class AstPoolLoanPagePage extends BasePage<AstPoolLoan>{
/**
* astPoolNo .
*/
private String astPoolNo;
/**
* Set astPoolNo .
*/
public void setAstPoolNo(String astPoolNo){
this.astPoolNo = astPoolNo;
}
/**
* Get astPoolNo .
*
* @return the string
*/
public String getAstPoolNo(){
return astPoolNo;
}
}
package com.abssqr.plat.common.facade.param.ast;
import com.abssqr.plat.common.facade.base.BasePageQryParam;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
public class AstPageQryParam extends BasePageQryParam{
private String astPoolNo;
public String getAstPoolNo() {
return astPoolNo;
}
public void setAstPoolNo(String astPoolNo) {
this.astPoolNo = astPoolNo;
}
@Override
public EventCodeEnum getEventCode() {
return EventCodeEnum.ADMIN_DTL_QRY;
}
}
package com.abssqr.plat.common.facade.result.ast; package com.abssqr.plat.common.facade.result.ast;
import com.abssqr.plat.common.facade.enums.AstRiskClassEnum;
import com.abssqr.plat.common.facade.enums.RepayMethodEnum;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money; import com.general.system.common.model.Money;
...@@ -7,7 +9,7 @@ import java.io.Serializable; ...@@ -7,7 +9,7 @@ import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
public class AstPoolLoanListVO extends BaseEntity implements Serializable { public class AstPoolLoanVO extends BaseEntity implements Serializable {
//资产编号 //资产编号
private String astNo; private String astNo;
//贷款剩余本金 //贷款剩余本金
...@@ -19,13 +21,13 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable { ...@@ -19,13 +21,13 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable {
//贷款利率 //贷款利率
private BigDecimal rate; private BigDecimal rate;
//贷款五级分类 //贷款五级分类
private String riskCl; private AstRiskClassEnum riskCl;
//还款周期 //还款周期
private Long repayPeriod; private Long repayPeriod;
//还款周期类型 //还款周期类型
private String repoayPeriodType; private String repayPeriodType;
//还款方式 //还款方式
private String repayMethod; private RepayMethodEnum repayMethod;
//资产归属 //资产归属
private String planName; private String planName;
...@@ -69,11 +71,11 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable { ...@@ -69,11 +71,11 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable {
this.rate = rate; this.rate = rate;
} }
public String getRiskCl() { public AstRiskClassEnum getRiskCl() {
return riskCl; return riskCl;
} }
public void setRiskCl(String riskCl) { public void setRiskCl(AstRiskClassEnum riskCl) {
this.riskCl = riskCl; this.riskCl = riskCl;
} }
...@@ -85,19 +87,19 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable { ...@@ -85,19 +87,19 @@ public class AstPoolLoanListVO extends BaseEntity implements Serializable {
this.repayPeriod = repayPeriod; this.repayPeriod = repayPeriod;
} }
public String getRepoayPeriodType() { public String getRepayPeriodType() {
return repoayPeriodType; return repayPeriodType;
} }
public void setRepoayPeriodType(String repoayPeriodType) { public void setRepayPeriodType(String repayPeriodType) {
this.repoayPeriodType = repoayPeriodType; this.repayPeriodType = repayPeriodType;
} }
public String getRepayMethod() { public RepayMethodEnum getRepayMethod() {
return repayMethod; return repayMethod;
} }
public void setRepayMethod(String repayMethod) { public void setRepayMethod(RepayMethodEnum repayMethod) {
this.repayMethod = repayMethod; this.repayMethod = repayMethod;
} }
......
...@@ -25,6 +25,9 @@ public class AstPoolVO extends BaseEntity implements Serializable { ...@@ -25,6 +25,9 @@ public class AstPoolVO extends BaseEntity implements Serializable {
//已打包资产剩余笔数 //已打包资产剩余笔数
private Long packedAstCnt; private Long packedAstCnt;
//资产池编号
private String astPoolNo;
public String getAstPoolName() { public String getAstPoolName() {
return astPoolName; return astPoolName;
} }
...@@ -80,4 +83,12 @@ public class AstPoolVO extends BaseEntity implements Serializable { ...@@ -80,4 +83,12 @@ public class AstPoolVO extends BaseEntity implements Serializable {
public void setPackedAstCnt(Long packedAstCnt) { public void setPackedAstCnt(Long packedAstCnt) {
this.packedAstCnt = packedAstCnt; this.packedAstCnt = packedAstCnt;
} }
public String getAstPoolNo() {
return astPoolNo;
}
public void setAstPoolNo(String astPoolNo) {
this.astPoolNo = astPoolNo;
}
} }
package com.abssqr.plat.common.facade.service; package com.abssqr.plat.common.facade.service;
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.facade.result.BasePage; import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanListVO; import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import com.abssqr.plat.common.facade.result.astPool.AstPoolVO; import com.abssqr.plat.common.facade.result.astPool.AstPoolVO;
import java.util.List; import java.util.List;
...@@ -16,5 +17,5 @@ public interface AstPoolService { ...@@ -16,5 +17,5 @@ public interface AstPoolService {
AstPoolVO get(String astPoolNo); AstPoolVO get(String astPoolNo);
List<AstPoolLoanListVO> astList(String astPoolNo); BasePage<AstPoolLoanVO> astList(AstPageQryParam astPageQryParam);
} }
...@@ -51,7 +51,7 @@ public class AstPoolConvert { ...@@ -51,7 +51,7 @@ public class AstPoolConvert {
AstPoolVO result =new AstPoolVO(); AstPoolVO result =new AstPoolVO();
result.setAstType(AstTypeEnum.getByCode(param.getAstType())); result.setAstType(AstTypeEnum.getByCode(param.getAstType()));
result.setAstPoolName(param.getAstPoolName()); result.setAstPoolName(param.getAstPoolName());
result.setProdNo(param.getProdNo()); result.setAstPoolNo(param.getAstPoolNo());
return result; return result;
} }
......
...@@ -7,19 +7,15 @@ package com.abssqr.plat.common.model.convertor; ...@@ -7,19 +7,15 @@ package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanBakDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanBakDO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanDO;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
import com.abssqr.plat.common.facade.enums.*; import com.abssqr.plat.common.facade.enums.*;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanListVO;
import com.abssqr.plat.common.model.domain.ast.Loan; import com.abssqr.plat.common.model.domain.ast.Loan;
import com.abssqr.plat.common.model.domain.ast.LoanBak; import com.abssqr.plat.common.model.domain.ast.LoanBak;
import com.abssqr.plat.common.model.domain.ast.LoanRisk; import com.abssqr.plat.common.model.domain.ast.LoanRisk;
import com.abssqr.plat.common.model.utils.TextUtil; import com.abssqr.plat.common.model.utils.TextUtil;
import com.general.system.tool.util.ToolUtil; import com.general.system.tool.util.ToolUtil;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Optional;
/** /**
* @author guozhenhua * @author guozhenhua
...@@ -221,27 +217,4 @@ public class LoanConvert { ...@@ -221,27 +217,4 @@ public class LoanConvert {
return instance; return instance;
} }
public static List<AstPoolLoanListVO> convert2AstPoolLoanListVOs(List<AstPoolLoan> astPoolLoanList){
List<AstPoolLoanListVO> loanListVOS=new ArrayList<>();
astPoolLoanList.forEach(v->{
loanListVOS.add(convert2AstPoolLoanListVO(v));
});
return loanListVOS;
}
public static AstPoolLoanListVO convert2AstPoolLoanListVO(AstPoolLoan astPoolLoan){
AstPoolLoanListVO astPoolLoanListVO=new AstPoolLoanListVO();
astPoolLoanListVO.setAstNo(astPoolLoan.getAstNo());
astPoolLoanListVO.setFreeTerm(astPoolLoan.getFreeTerm());
astPoolLoanListVO.setPlanName(astPoolLoan.getPlanName());
astPoolLoanListVO.setPrinBal(astPoolLoan.getPrinBal());
astPoolLoanListVO.setRate(astPoolLoan.getRate());
astPoolLoanListVO.setRepayMethod(astPoolLoan.getRepayMethod());
astPoolLoanListVO.setRepayPeriod(astPoolLoan.getRepayPeriod());
astPoolLoanListVO.setRepoayPeriodType(astPoolLoan.getRepayPeriodType());
astPoolLoanListVO.setRiskCl(astPoolLoan.getRiskCl());
astPoolLoanListVO.setStartDate(astPoolLoan.getStartDate());
return astPoolLoanListVO;
}
} }
package com.abssqr.plat.common.model.convertor.web;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
import com.abssqr.plat.common.facade.enums.AstRiskClassEnum;
import com.abssqr.plat.common.facade.enums.RepayMethodEnum;
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam;
import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import java.util.ArrayList;
import java.util.List;
public class AstPoolLoanWebConvert {
public static AstPoolLoanVO convertAstPoolLoan2AstPoolVO(AstPoolLoan absPoolLoan){
AstPoolLoanVO astPoolLoanVO=new AstPoolLoanVO();
astPoolLoanVO.setAstNo(absPoolLoan.getAstNo());
astPoolLoanVO.setFreeTerm(absPoolLoan.getFreeTerm());
astPoolLoanVO.setPlanName(absPoolLoan.getPlanName());
astPoolLoanVO.setPrinBal(absPoolLoan.getPrinBal());
astPoolLoanVO.setRate(absPoolLoan.getRate());
astPoolLoanVO.setRepayMethod(RepayMethodEnum.getByCode(absPoolLoan.getRepayMethod()));
astPoolLoanVO.setRepayPeriod(absPoolLoan.getRepayPeriod());
astPoolLoanVO.setRepayPeriodType(absPoolLoan.getRepayPeriodType());
astPoolLoanVO.setRiskCl(AstRiskClassEnum.getByCode(absPoolLoan.getRiskCl()));
astPoolLoanVO.setStartDate(absPoolLoan.getStartDate());
return astPoolLoanVO;
}
public static BasePage<AstPoolLoanVO> convertAstPoolLoan2AstPoolVOs(AstPoolLoanPage page){
BasePage<AstPoolLoanVO> result=new BasePage<>();
List<AstPoolLoanVO> astPoolLoanVOS=new ArrayList<>();
page.getDatas().forEach(v->{
astPoolLoanVOS.add(convertAstPoolLoan2AstPoolVO(v));
});
result.setDatas(astPoolLoanVOS);
result.setTotal(page.getTotal());
result.setCurrPageNo(page.getCurrPageNo());
result.setLimit(page.getLimit());
return result;
}
public static AstPoolLoanPage convertAstParam2AstPage(AstPageQryParam astPageQryParam){
AstPoolLoanPage astPoolLoanPage=new AstPoolLoanPage();
astPoolLoanPage.setAstPoolNo(astPageQryParam.getAstPoolNo());
astPoolLoanPage.setCurrPageNo(astPageQryParam.getPageNum());
astPoolLoanPage.setLimit(astPageQryParam.getPageNum());
return astPoolLoanPage;
}
}
package com.abssqr.plat.common.model.convertor.web;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.astPool.AstPoolVO;
import com.abssqr.plat.common.model.convertor.AstPoolConvert;
import com.abssqr.plat.common.model.domain.ast.AstPoolEntity;
public class AstPoolWebConvert {
public static AstPoolVO convertEntity2VO(AstPoolEntity astPoolEntity){
AstPoolVO astPoolVO=new AstPoolVO();
astPoolVO.setAstType(astPoolEntity.getAstTypeEnum());
astPoolVO.setAstPoolNo(astPoolEntity.getAstPoolNo());
astPoolVO.setAstPoolName(astPoolEntity.getAstPoolName());
return astPoolVO;
}
public static AstPoolVO convertStat2VO(AstPoolVO astPoolVO, AstPoolLoanStat astPoolLoanStat){
astPoolVO.setPackedAstCnt(astPoolLoanStat.getPackCnt());
astPoolVO.setPackedAstAmt(astPoolLoanStat.getPackPrinBal());
astPoolVO.setAstAmt(astPoolLoanStat.getAllPrinBal());
astPoolVO.setAstCnt(astPoolLoanStat.getAllCnt());
return astPoolVO;
}
public static AstPoolPage convertParam2Page(AstPoolPageQryParam astPoolPageQryParam){
AstPoolPage astPoolPage=new AstPoolPage();
String astPoolName = astPoolPageQryParam.getAstPoolName();
astPoolPage.setAstPoolName(astPoolName);
astPoolPage.setCurrPageNo(astPoolPageQryParam.getPageNum());
astPoolPage.setLimit(astPoolPageQryParam.getPageSize());
return astPoolPage;
}
public static BasePage<AstPoolVO> convertPage2Result(AstPoolPage astPoolPage){
BasePage<AstPoolVO> basePage=new BasePage<>();
basePage.setDatas(AstPoolConvert.convert2VOs(astPoolPage.getDatas()));
basePage.setLimit(astPoolPage.getLimit());
basePage.setCurrPageNo(astPoolPage.getCurrPageNo());
basePage.setTotal(astPoolPage.getTotal());
return basePage;
}
}
...@@ -5,10 +5,7 @@ ...@@ -5,10 +5,7 @@
package com.abssqr.plat.common.model.repo.ast; package com.abssqr.plat.common.model.repo.ast;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage; import com.abssqr.plat.common.dal.mysql.auto.paging.*;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.LoanBakListPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.LoanListPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.facade.param.loan.LoanPageQryParam; import com.abssqr.plat.common.facade.param.loan.LoanPageQryParam;
...@@ -116,5 +113,5 @@ public interface LoanRepository { ...@@ -116,5 +113,5 @@ public interface LoanRepository {
List<AstPoolLoan> getLoanListByAstPoolNo(String astPoolNo); AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage);
} }
...@@ -10,10 +10,7 @@ import com.abssqr.plat.common.dal.mysql.auto.dao.LoanBakDAO; ...@@ -10,10 +10,7 @@ import com.abssqr.plat.common.dal.mysql.auto.dao.LoanBakDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.LoanContractDAO; import com.abssqr.plat.common.dal.mysql.auto.dao.LoanContractDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.LoanDAO; import com.abssqr.plat.common.dal.mysql.auto.dao.LoanDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanBakDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanBakDO;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage; import com.abssqr.plat.common.dal.mysql.auto.paging.*;
import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.LoanBakListPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.LoanListPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoan;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat; import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstPoolLoanStat;
import com.abssqr.plat.common.facade.param.loan.LoanPageQryParam; import com.abssqr.plat.common.facade.param.loan.LoanPageQryParam;
...@@ -174,15 +171,11 @@ public class LoanRepositoryImpl implements LoanRepository { ...@@ -174,15 +171,11 @@ public class LoanRepositoryImpl implements LoanRepository {
} }
@Override @Override
public List<AstPoolLoan> getLoanListByAstPoolNo(String astPoolNo) { public AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage) {
return null; AstPoolLoanPage astPoolLoanPage = loanDAO.getLoanListByAstPoolNo(astPoolPage);
} return astPoolLoanPage;
/*
@Override
public List<AstPoolLoan> getLoanListByAstPoolNo(String astPoolNo){
List<AstPoolLoan> loanListByAstPoolNo = loanDAO.getLoanListByAstPoolNo(astPoolNo);
return loanListByAstPoolNo;
} }
*/
} }
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
package com.abssqr.plat.common.model.repo.astPool; package com.abssqr.plat.common.model.repo.astPool;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.model.domain.ast.AstPoolEntity; import com.abssqr.plat.common.model.domain.ast.AstPoolEntity;
...@@ -32,4 +33,6 @@ public interface AstPoolRepository { ...@@ -32,4 +33,6 @@ public interface AstPoolRepository {
AstPoolEntity getByAstPoolNo(String astPoolNo); AstPoolEntity getByAstPoolNo(String astPoolNo);
boolean checkAstPool(AstPoolEntity astPoolEntity); boolean checkAstPool(AstPoolEntity astPoolEntity);
AstPoolLoanPage astPage(AstPoolLoanPage astPoolLoanPage);
} }
\ No newline at end of file
...@@ -6,12 +6,15 @@ ...@@ -6,12 +6,15 @@
package com.abssqr.plat.common.model.repo.astPool.impl; package com.abssqr.plat.common.model.repo.astPool.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.AstPoolDAO; import com.abssqr.plat.common.dal.mysql.auto.dao.AstPoolDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.LoanDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.AstPoolDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.AstPoolDO;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolPage;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.model.convertor.AstPoolConvert; import com.abssqr.plat.common.model.convertor.AstPoolConvert;
import com.abssqr.plat.common.model.domain.ast.AstPoolEntity; import com.abssqr.plat.common.model.domain.ast.AstPoolEntity;
import com.abssqr.plat.common.model.repo.astPool.AstPoolRepository; import com.abssqr.plat.common.model.repo.astPool.AstPoolRepository;
import org.aspectj.lang.annotation.AfterReturning;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -26,6 +29,9 @@ public class AstPoolRepositoryImpl implements AstPoolRepository { ...@@ -26,6 +29,9 @@ public class AstPoolRepositoryImpl implements AstPoolRepository {
@Autowired @Autowired
private AstPoolDAO astPoolDAO; private AstPoolDAO astPoolDAO;
@Autowired
private LoanDAO loanDAO;
@Override @Override
public int create(AstPoolEntity astPoolEntity) { public int create(AstPoolEntity astPoolEntity) {
return astPoolDAO.insert(AstPoolConvert.convert2DO(astPoolEntity)); return astPoolDAO.insert(AstPoolConvert.convert2DO(astPoolEntity));
...@@ -52,5 +58,11 @@ public class AstPoolRepositoryImpl implements AstPoolRepository { ...@@ -52,5 +58,11 @@ public class AstPoolRepositoryImpl implements AstPoolRepository {
return true; return true;
} }
@Override
public AstPoolLoanPage astPage(AstPoolLoanPage astPoolLoanPage) {
AstPoolLoanPage loanListByAstPoolNo = loanDAO.getLoanListByAstPoolNo(astPoolLoanPage);
return loanListByAstPoolNo;
}
} }
package com.abssqr.plat.test.unittest.astPool; /**
* abssqr.com Inc.
* Copyright (c) 2017-2020 All Rights Reserved.
*/
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam;
import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import com.abssqr.plat.common.facade.service.AstPoolService;
import com.abssqr.plat.test.BaseAutoTests;
import com.abssqr.test.annotation.XTest;
import com.abssqr.test.icase.ICase;
import com.general.system.common.util.VarChecker;
import com.google.gson.Gson;
import org.springframework.beans.factory.annotation.Autowired;
import org.testng.annotations.Test;
/**
* 资产列表查询
*/
public class AstListUnitTest extends BaseAutoTests {
@Autowired
private AstPoolService astPoolService;
@XTest(relatePath = "unittest/astPool/astList")
@Test(dataProvider = "YamlDataProvider", description = "资产列表查询")
public void add(ICase iCase, AstPageQryParam astPageQryParam,String checkGet) {
try {
BasePage<AstPoolLoanVO> astPoolLoanVOBasePage = astPoolService.astList(astPageQryParam);
VarChecker.checkArgument(checkGet.equals(new Gson().toJson(astPoolLoanVOBasePage)),"查询不符合预期");
} finally {
// 校验数据
super.checkDB(iCase);
// super.clearDB(iCase);
}
}
}
--- !!com.abssqr.test.icase.Case
id: astPool_astList_case0001
desc: 资产池新增测试
context:
clearDBContext:
- ABS_AST_POOL:
AST_POOL_NO: TEST_ASTPOOL001
- ABS_AST_PACK:
PACK_NO: packAdd01
- ABS_LOAN_PACK_REL:
PACK_NO: packAdd01
- ABS_LOAN:
AST_NO: absLoanAstNo0020
- ABS_AST_PACK:
PACK_NO: packAdd01
- ABS_LOAN_CONTRACT:
AST_NO: absLoanAstNo0020
- abs_plan:
PLAN_NO: planNo001
initDBContext:
- ABS_AST_POOL:
ID: "{nextval}"
AST_POOL_NAME: 测试资产池
AST_TYPE: BL
AST_POOL_NO: TEST_ASTPOOL001
PROD_NO: testProdNo1
- ABS_AST_PACK:
ID: "{nextval}"
PACK_NO: packAdd01
PACK_NAME: 资产包01
AVAL_AMT: 1000000000
AST_POOL_NO: TEST_ASTPOOL001
PLAN_NO: planNo001
STATUS: 'init'
PACK_DATE:
PACK_SUBMIT_DATE:
PACK_TYPE: default
AST_TYPE: QCDK
GMT_CREATE: sysdate
GMT_MODIFIED: sysdate
- abs_plan:
id: "{nextval}"
plan_no: planNo001
plan_name: 测试计划名称
total_amt: 0
begin_date: "@20190501@"
end_date: "@20200501@"
fund_type: PUBLIC
sponsor_org_code: sponsorOrgCode01
plan_mgr_org_code: managerOrgCode01
init_calc_date: "@20190502@"
effect_date: "@20190503@"
first_clear_date: "@20190504@"
first_pay_date: "@20190505@"
pay_freq: M
calc_intr_type: ACT_360
vat_rate: 0.3
status: ONGOING
approve_status: PASSED
gmt_create: sysdate
PLAN_TYPE: SPV
- abs_loan_pack_rel:
PACK_NO: packAdd01
AST_NO: absLoanAstNo0020
STATUS: in
GMT_CREATE: sysdate
GMT_MODIFIED: sysdate
- abs_loan:
AST_NO: absLoanAstNo0020
OWN_ORG: planNo001
PROD_NO: prodCode001
RISK_CL: 1
STATUS: nor
OWN_PACK:
OUT_AST_NO: testSyncDataLoanNo0020
OUT_PROD_NO: prod01
CONTRACT_NO: absLoanContNo0020
LAST_OWN_ORG:
LENDER_ORG_CODE: planNo001
manager_org_code: '1009'
SPONSER_ORG_CODE:
CUR_TERM: 0
OVD_DAYS: 0
TERM_CNT: 12
IN_DATE: '@20190610@'
END_DATE: '@20200615@'
CLEAR_DATE:
GMT_CREATE:
START_DATE: '@20190607@'
GMT_MODIFIED: '@20190626@'
LAST_UPDATE_DATE: '@20190610@'
FEE_BAL: 0
INTR_BAL: 1145
PRIN_BAL: 300000
PAID_FEE_AMT: 0
FEE_PENAL_BAL: 0
OTHER_FEE_BAL: 0
PAID_INTR_AMT: 0
PAID_PRIN_AMT: 0
INTR_PENAL_BAL: 0
PRIN_PENAL_BAL: 0
PAID_FEE_PENAL_AMT: 0
PAID_OTHER_FEE_AMT: 0
OTHER_FEE_PENAL_BAL: 0
PAID_INTR_PENAL_AMT: 0
PAID_PRIN_PENAL_AMT: 0
PAID_OTHER_FEE_PENAL_AMT: 0
OVD_PRIN_BAL: 0
OVD_INTR_BAL: 0
OVD_FEE_BAL: 0
OWN_STATUS: pOut
USER_ID:
WTF_STATUS: N
- abs_loan_contract:
id: '{nextval}'
CITY: 123
NAME: 焦建国
AST_NO: absLoanAstNo0020
CERT_NO: 142123197804210535
CONT_NO: absLoanContNo0020
PROD_NO: prodCode001
PURPOSE: U04
CERT_TYPE: 0
LOAN_TYPE: '03'
MOBILE_NO:
OUT_AST_NO: testSyncDataLoanNo0020
PROVINCE: 142
RATE_TYPE: '02'
APPLY_LOC:
OUT_CONT_NO: testSyncDataContNo0020
REPAY_METHOD: RM02
LENDER_ORG_CODE: planNo001
manager_org_code: '1009'
SPONSER_ORG_CODE:
REPAY_PERIOD_TYPE: M
TERM_CNT: 12
RATE_DAYS: 30
REPAY_PERIOD: 1
END_DATE: '@20200615@'
DISB_DATE: '@20190607@'
START_DATE: '@20190607@'
EFFECT_DATE: '@20190607@'
RATE: 0.024
DISB_AMOUNT: 300000
PNY_RATE: 0.036
GRANT_TYPE: CT01
checkDBContext:
###
--- !!com.abssqr.plat.common.facade.param.ast.AstPageQryParam
astPoolNo: TEST_ASTPOOL001
pageNum: 1
pageSize: 1
## checkGet
---
'{"total":1,"limit":1,"currPageNo":1,"datas":[{"astNo":"absLoanAstNo0020","prinBal":{"cent":300000,"currency":"CNY","currencyValue":"156"},"startDate":"Jun 7, 2019 12:00:00 AM","freeTerm":12,"rate":0.024,"riskCl":"NORMAL","repayPeriod":1,"repayPeriodType":"M","repayMethod":"RM02","planName":"测试计划名称"}]}'
\ No newline at end of file
package com.abssqr.plat.web.controller.astPool; package com.abssqr.plat.web.controller.astPool;
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam;
import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam;
import com.abssqr.plat.common.facade.result.BasePage; import com.abssqr.plat.common.facade.result.BasePage;
import com.abssqr.plat.common.facade.result.ast.LoanListVO; import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import com.abssqr.plat.common.facade.result.astPool.AstPoolVO; import com.abssqr.plat.common.facade.result.astPool.AstPoolVO;
import com.abssqr.plat.common.facade.service.AstPoolService; import com.abssqr.plat.common.facade.service.AstPoolService;
import com.abssqr.plat.common.facade.validation.Valid;
import com.general.enhanced.controller.annotation.RestJsonController; import com.general.enhanced.controller.annotation.RestJsonController;
import com.general.system.common.model.BaseResult; import com.general.system.common.model.BaseResult;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@RestJsonController @RestJsonController
@RequestMapping("astPool")
public class AstPoolController { public class AstPoolController {
@Autowired @Autowired
private AstPoolService astPoolService; private AstPoolService astPoolService;
...@@ -23,7 +22,7 @@ public class AstPoolController { ...@@ -23,7 +22,7 @@ public class AstPoolController {
* @param astPoolOprParam * @param astPoolOprParam
* @return * @return
*/ */
@PostMapping("add.json") @PostMapping("astPool/add.json")
public BaseResult add(@RequestBody AstPoolOprParam astPoolOprParam){ public BaseResult add(@RequestBody AstPoolOprParam astPoolOprParam){
return BaseResult.success(astPoolService.add(astPoolOprParam)); return BaseResult.success(astPoolService.add(astPoolOprParam));
} }
...@@ -33,7 +32,7 @@ public class AstPoolController { ...@@ -33,7 +32,7 @@ public class AstPoolController {
* @param astPoolPageQryParam * @param astPoolPageQryParam
* @return * @return
*/ */
@PostMapping("page.json") @PostMapping("astPool/page.json")
public BasePage<AstPoolVO> page(@RequestBody AstPoolPageQryParam astPoolPageQryParam){ public BasePage<AstPoolVO> page(@RequestBody AstPoolPageQryParam astPoolPageQryParam){
return astPoolService.page(astPoolPageQryParam); return astPoolService.page(astPoolPageQryParam);
} }
...@@ -43,7 +42,7 @@ public class AstPoolController { ...@@ -43,7 +42,7 @@ public class AstPoolController {
* @param astPoolNo * @param astPoolNo
* @return * @return
*/ */
@GetMapping("get.json") @GetMapping("astPool/get.json")
public AstPoolVO get(@RequestParam("astPoolNo") String astPoolNo){ public AstPoolVO get(@RequestParam("astPoolNo") String astPoolNo){
return astPoolService.get(astPoolNo); return astPoolService.get(astPoolNo);
} }
...@@ -51,12 +50,12 @@ public class AstPoolController { ...@@ -51,12 +50,12 @@ public class AstPoolController {
/** /**
* 查询资产列表 * 查询资产列表
* @param astPoolNo * @param astPageQryParam
* @return * @return
*/ */
@GetMapping("astList.json") @RequestMapping("astPool/astList.json")
public AstPoolVO astList(@RequestParam("astPoolNo") String astPoolNo){ public BasePage<AstPoolLoanVO> astList(@RequestBody AstPageQryParam astPageQryParam){
return astPoolService.get(astPoolNo); return astPoolService.astList(astPageQryParam);
} }
......
CREATE TABLE ABS_LOAN_PACK_REL CREATE TABLE ABS_LOAN_PACK_REL
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment