Commit 2d6b2366 by zhaoyang

下载资产包资产列表

parent 09139817
package com.abssqr.plat.biz.api.astPool; package com.abssqr.plat.biz.api.ast;
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.AstPoolLoanPage;
...@@ -12,7 +12,7 @@ import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; ...@@ -12,7 +12,7 @@ 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.AstPoolLoanVO; 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.ast.AstPoolService;
import com.abssqr.plat.common.facade.validation.Valid; import com.abssqr.plat.common.facade.validation.Valid;
import com.abssqr.plat.common.model.convertor.web.AstPoolLoanWebConvert; import com.abssqr.plat.common.model.convertor.web.AstPoolLoanWebConvert;
import com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert; import com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert;
...@@ -27,7 +27,6 @@ import org.apache.commons.lang3.StringUtils; ...@@ -27,7 +27,6 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import static com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert.convertParam2Page; import static com.abssqr.plat.common.model.convertor.web.AstPoolWebConvert.convertParam2Page;
......
package com.abssqr.plat.biz.api.ast;
import com.abssqr.plat.biz.support.ServiceSupport;
import com.abssqr.plat.common.dal.mysql.auto.paging.PackAstPage;
import com.abssqr.plat.common.facade.param.ast.AstDownLoadParam;
import com.abssqr.plat.common.facade.service.ast.AstService;
import com.abssqr.plat.common.facade.validation.Valid;
import com.abssqr.plat.common.model.repo.ast.LoanRepository;
import com.abssqr.plat.core.service.ast.DownLoadAstManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.util.*;
@Component
public class AstServiceImpl extends ServiceSupport implements AstService {
protected final Logger LOGGER = LoggerFactory.getLogger(getClass());
private final int limit=2000;
@Autowired
LoanRepository loanRepository;
@Autowired
DownLoadAstManager downLoadAstManager;
@Override
public void downLoadAstFile(@Valid AstDownLoadParam astDownLoadParam, HttpServletResponse response) {
PackAstPage packAstPage=new PackAstPage();
packAstPage.setPackNo(astDownLoadParam.getPackCode());
packAstPage.setCurrPageNo(1);
packAstPage.setLimit(limit);
List<String> loanFieldCodes = astDownLoadParam.getLoanFieldCodes();
try {
downLoadAstManager.writeData2Stream(packAstPage,loanFieldCodes,getOutputStream(astDownLoadParam.getPackCode(),response));
} catch (Exception e) {
LOGGER.error("写入数据失败错误信息[0]",e.getMessage());
}
}
private ServletOutputStream getOutputStream(String packNo,HttpServletResponse response) throws Exception{
response.reset();
response.setCharacterEncoding("UTF-8");
response.setContentType("multipart/form-data");
String outfileName = null;
try {
outfileName = new String((packNo+".xls").getBytes(), "ISO-8859-1");
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e.getMessage());
}
response.setHeader("Content-Disposition", "attachment;fileName=" + outfileName);
return response.getOutputStream();
}
}
...@@ -396,7 +396,7 @@ ...@@ -396,7 +396,7 @@
</operation> </operation>
<operation name="getLoanListByAstPoolNo" resultmap="AstPoolLoan" multiplicity="paging" paging="" remark="根据资产池编号查询对应的资产"> <operation name="getLoanListByAstPoolNo" resultmap="AstPoolLoan" multiplicity="paging" paging="AstPoolLoan" remark="根据资产池编号查询对应的资产">
SELECT SELECT
L1.AST_NO, --资产编号 L1.AST_NO, --资产编号
L1.PRIN_BAL, --贷款剩余本金 L1.PRIN_BAL, --贷款剩余本金
...@@ -418,4 +418,15 @@ ...@@ -418,4 +418,15 @@
R2.STATUS='in' R2.STATUS='in'
AND R3.AST_POOL_NO=#{astPoolNo,jdbcType=VARCHAR} AND R3.AST_POOL_NO=#{astPoolNo,jdbcType=VARCHAR}
</operation> </operation>
<operation name="getLoanPageByPackNo" multiplicity="paging" paging="PackAst" remark="根据资产包编号分页获取所有的资产">
SELECT sf.*
FROM ABS_LOAN L1
LEFT JOIN ABS_LOAN_PACK_REL R1 ON L1.AST_NO=R1.AST_NO
WHERE
R1.PACK_NO=#{packNo,jdbcType=VARCHAR}
</operation>
</table> </table>
...@@ -10,6 +10,7 @@ import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstMatchPage; ...@@ -10,6 +10,7 @@ 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.AstPoolLoanPage; import com.abssqr.plat.common.dal.mysql.auto.paging.AstPoolLoanPage;
import com.abssqr.plat.common.dal.mysql.auto.paging.PackAstPage;
import com.abssqr.plat.common.dal.mysql.auto.mapper.LoanDOMapper; import com.abssqr.plat.common.dal.mysql.auto.mapper.LoanDOMapper;
/** /**
...@@ -169,4 +170,20 @@ public class LoanDAO{ ...@@ -169,4 +170,20 @@ public class LoanDAO{
astPoolLoan.setTotal(total); astPoolLoan.setTotal(total);
return astPoolLoan; return astPoolLoan;
} }
/**
* desc:根据资产包编号分页获取所有的资产.<br/>
* @param packAst packAst
* @return PackAstPage
*/
public PackAstPage getLoanPageByPackNo(PackAstPage packAst){
int total = loanDOMapper.getLoanPageByPackNoCount(packAst);
if(total>0){
packAst.setDatas(loanDOMapper.getLoanPageByPackNoResult(packAst));
}else{
packAst.setDatas(new ArrayList());
}
packAst.setTotal(total);
return packAst;
}
} }
...@@ -10,6 +10,7 @@ import com.abssqr.plat.common.dal.mysql.auto.paging.CapitalAstUnMatchPage; ...@@ -10,6 +10,7 @@ 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.AstPoolLoanPage; 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 com.abssqr.plat.common.dal.mysql.auto.paging.PackAstPage;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
...@@ -123,4 +124,16 @@ public interface LoanDOMapper{ ...@@ -123,4 +124,16 @@ public interface LoanDOMapper{
* @return List<AstPoolLoan> * @return List<AstPoolLoan>
*/ */
List<AstPoolLoan> getLoanListByAstPoolNoResult(AstPoolLoanPage astPoolLoan); List<AstPoolLoan> getLoanListByAstPoolNoResult(AstPoolLoanPage astPoolLoan);
/**
* desc:根据资产包编号分页获取所有的资产.<br/>
* @param packAst packAst
* @return int
*/
int getLoanPageByPackNoCount(PackAstPage packAst);
/**
* desc:根据资产包编号分页获取所有的资产.<br/>
* @param packAst packAst
* @return List<LoanDO>
*/
List<LoanDO> getLoanPageByPackNoResult(PackAstPage packAst);
} }
...@@ -556,4 +556,32 @@ ...@@ -556,4 +556,32 @@
) table_alias ) table_alias
where table_alias.rowno &gt; #{startRow} where table_alias.rowno &gt; #{startRow}
</select> </select>
<!--根据资产包编号分页获取所有的资产 pageCount mydalgen自动生成,请勿修改-->
<select id="getLoanPageByPackNoCount" resultType="int" >
SELECT
COUNT(*) AS total
FROM
ABS_LOAN L1
LEFT JOIN ABS_LOAN_PACK_REL R1 ON L1.AST_NO=R1.AST_NO
WHERE
R1.PACK_NO=#{packNo,jdbcType=VARCHAR}
</select>
<!--根据资产包编号分页获取所有的资产 pageResult mydalgen自动生成,请勿修改-->
<select id="getLoanPageByPackNoResult" resultMap="BaseResultMap" >
select
*
from(
select
tt.*,ROWNUM AS rowno
from(
SELECT /*MS-ABS-LOAN-GETLOANPAGEBYPACKNO*/ <include refid="Base_SF_Column_List" />
FROM ABS_LOAN L1
LEFT JOIN ABS_LOAN_PACK_REL R1 ON L1.AST_NO=R1.AST_NO
WHERE
R1.PACK_NO=#{packNo,jdbcType=VARCHAR}
) tt where ROWNUM &lt;= #{endRow}
) table_alias
where table_alias.rowno &gt; #{startRow}
</select>
</mapper> </mapper>
package com.abssqr.plat.common.facade.enums;
import com.general.system.common.model.IEnum;
import java.util.HashMap;
import java.util.Map;
public enum LoanFieldEnum implements IEnum {
AST_NO("astNO","资金编号",0),
PAID_INTR_AMT("paidIntrAmt","利息余额",1),
PAID_PRIN_AMT("paidPrinAmt","本金余额",2),
INTR_PENAL_BAL("intrPenalAmt","由逾期利息产生的罚息",3),
PRIN_PENAL_BAL("prinPenalAmt","由逾期本金产生的罚息",4),
PAID_FEE_PENAL_AMT("paidFeePenalAmt","由分期费用逾期产生的滞纳金余额",5),
PAID_OTHER_FEE_AMT("paidOtherFeeAmt","其他费用余额",6),
OTHER_FEE_PENAL_BAL("otherFeePenalBal","其他费用滞纳金余额",7),
PAID_INTR_PENAL_AMT("paidIntrPenalAmt","由逾期利息产生的罚息",8),
PAID_PRIN_PENAL_AMT("paidPrinPenalAmt","由逾期本金产生的罚息",9),
PAID_OTHER_FEE_PENAL_AMT("paidOtherFeePenalAmt","其他费用滞纳金余额",10),
TRANS_CNT("transCnt","交易次数",11),
CAPITAL_NO("capitalNo","资金编号",12);
private static final Map<String, LoanFieldEnum> codeMap = new HashMap<>();
static {
for (LoanFieldEnum item : LoanFieldEnum.values()) {
codeMap.put(item.getCode().toString(), item);
}
}
private String code;
private String desc;
private int sort;
private LoanFieldEnum(String code, String desc,int sort) {
this.code = code;
this.desc = desc;
this.sort=sort;
}
public static LoanFieldEnum getByCode(String code) {
return codeMap.get(code);
}
@Override
public String getCode() {
return this.code;
}
@Override
public String getDesc() {
return this.desc;
}
public int getSort() {
return sort;
}
}
package com.abssqr.plat.common.facade.param.ast;
import com.abssqr.plat.common.facade.base.BaseParam;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.validation.VldEnums;
import com.abssqr.plat.common.facade.validation.VldString;
import java.util.ArrayList;
import java.util.List;
public class AstDownLoadParam extends BaseParam{
private List<String> loanFieldCodes=new ArrayList<>();
@VldString(nullable = false)
private String packCode;
public List<String> getLoanFieldCodes() {
return loanFieldCodes;
}
public void setLoanFieldCodes(List<String> loanFieldCodes) {
this.loanFieldCodes = loanFieldCodes;
}
public String getPackCode() {
return packCode;
}
public void setPackCode(String packCode) {
this.packCode = packCode;
}
@Override
public EventCodeEnum getEventCode() {
return EventCodeEnum.ADMIN_DTL_QRY;
}
}
package com.abssqr.plat.common.facade.service; package com.abssqr.plat.common.facade.service.ast;
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam; 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;
......
package com.abssqr.plat.common.facade.service.ast;
import com.abssqr.plat.common.facade.param.ast.AstDownLoadParam;
import javax.servlet.Servlet;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
public interface AstService {
void downLoadAstFile(AstDownLoadParam astDownLoadParam, HttpServletResponse response);
}
...@@ -8,6 +8,7 @@ package com.abssqr.plat.common.model.convertor; ...@@ -8,6 +8,7 @@ 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.facade.enums.*; import com.abssqr.plat.common.facade.enums.*;
import com.abssqr.plat.common.facade.model.ast.DownLoadLoanEntity;
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;
...@@ -217,4 +218,37 @@ public class LoanConvert { ...@@ -217,4 +218,37 @@ public class LoanConvert {
return instance; return instance;
} }
public static DownLoadLoanEntity convert2DownLoadEntity(LoanDO var){
DownLoadLoanEntity instance = new DownLoadLoanEntity();
instance.setAstNo(var.getAstNo());
instance.setCurTerm(var.getCurTerm());
instance.setTermCnt(var.getTermCnt());
instance.setPrinBal(var.getPrinBal().getAmount().toPlainString());
instance.setOvdPrinBal(var.getOvdPrinBal().getAmount().toPlainString());
instance.setOvdIntrBal(var.getOvdIntrBal().getAmount().toPlainString());
instance.setOvdFeeBal(var.getOvdFeeBal().getAmount().toPlainString());
instance.setPrinPenalBal(var.getPrinPenalBal().getAmount().toPlainString());
instance.setIntrBal(var.getIntrBal().getAmount().toPlainString());
instance.setIntrPenalBal(var.getIntrPenalBal().getAmount().toPlainString());
instance.setFeeBal(var.getFeeBal().getAmount().toPlainString());
instance.setFeePenalBal( var.getFeePenalBal().getAmount().toPlainString());
instance.setOtherFeeBal(var.getOtherFeeBal().getAmount().toPlainString());
instance.setOtherFeePenalBal( var.getOtherFeePenalBal().getAmount().toPlainString());
instance.setPaidPrinAmt(var.getPaidPrinAmt().getAmount().toPlainString());
instance.setPaidPrinPenalAmt( var.getPaidPrinPenalAmt().getAmount().toPlainString());
instance.setPaidIntrAmt(var.getPaidIntrAmt().getAmount().toPlainString());
instance.setLastUpdateDate(var.getLastUpdateDate());
instance.setOutProdNo(var.getOutProdNo());
instance.setCertNo(var.getCertNo());
instance.setTransCnt((var.getTransCnt() == null) ? 0 : var.getTransCnt());
instance.setCapitalNo(var.getCapitalNo() == null ? CapitalAstMatchEnum.DEFAULT.getCode() : var.getCapitalNo());
instance.setLayerName(var.getLayerName());
return instance;
}
} }
...@@ -114,4 +114,10 @@ public interface LoanRepository { ...@@ -114,4 +114,10 @@ public interface LoanRepository {
AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage); AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage);
PackAstPage getLoanPageByPackNo(PackAstPage packAstPage);
} }
...@@ -173,9 +173,16 @@ public class LoanRepositoryImpl implements LoanRepository { ...@@ -173,9 +173,16 @@ public class LoanRepositoryImpl implements LoanRepository {
@Override @Override
public AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage) { public AstPoolLoanPage getLoanPageByAstPoolNo(AstPoolLoanPage astPoolPage) {
AstPoolLoanPage astPoolLoanPage = loanDAO.getLoanListByAstPoolNo(astPoolPage); AstPoolLoanPage astPoolLoanPage = loanDAO.getLoanListByAstPoolNo(astPoolPage);
return astPoolLoanPage; return astPoolLoanPage;
} }
@Override
public PackAstPage getLoanPageByPackNo(PackAstPage packAstPage){
PackAstPage result = loanDAO.getLoanPageByPackNo(packAstPage);
return result;
}
} }
package com.abssqr.plat.core.service.ast;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.abssqr.plat.common.dal.mysql.auto.paging.PackAstPage;
import com.abssqr.plat.common.facade.enums.LoanFieldEnum;
import com.abssqr.plat.common.model.repo.ast.LoanRepository;
import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.util.*;
import java.util.stream.Collectors;
@Component
public class DownLoadAstManager {
@Autowired
LoanRepository loanRepository;
/**
* 查询资产并写入前端流
* @param packAstPage
* @param fieldCodes
* @param outputStream
*/
public void writeData2Stream(PackAstPage packAstPage,List<String> fieldCodes,OutputStream outputStream){
Map<String, String> alias = buildAliasMap(fieldCodes);
ExcelWriter writer = ExcelUtil.getBigWriter();
writer.setOnlyAlias(true);
writer.setHeaderAlias(alias);
do{
packAstPage = loanRepository.getLoanPageByPackNo(packAstPage);
writer.write(packAstPage.getDatas());
}while(packAstPage.hasNextPage());
writer.flush(outputStream);
IOUtils.closeQuietly(outputStream);
}
private Map<String,String> buildAliasMap(List<String> fieldCodes){
//根据序号排序
Set<LoanFieldEnum> loanFieldEnumSet=new TreeSet(Comparator.comparing(LoanFieldEnum::getSort));
fieldCodes.forEach(v->{
LoanFieldEnum fieldEnum = LoanFieldEnum.getByCode(v);
loanFieldEnumSet.add(fieldEnum);
});
Map<String, String> result = loanFieldEnumSet.stream().collect(Collectors.toMap(LoanFieldEnum::getCode
, LoanFieldEnum::getDesc));
return result;
}
}
...@@ -5,10 +5,9 @@ package com.abssqr.plat.test.unittest.astPool; /** ...@@ -5,10 +5,9 @@ package com.abssqr.plat.test.unittest.astPool; /**
import com.abssqr.plat.common.facade.param.ast.AstPageQryParam; 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.BasePage;
import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO; import com.abssqr.plat.common.facade.result.ast.AstPoolLoanVO;
import com.abssqr.plat.common.facade.service.AstPoolService; import com.abssqr.plat.common.facade.service.ast.AstPoolService;
import com.abssqr.plat.test.BaseAutoTests; import com.abssqr.plat.test.BaseAutoTests;
import com.abssqr.test.annotation.XTest; import com.abssqr.test.annotation.XTest;
import com.abssqr.test.icase.ICase; import com.abssqr.test.icase.ICase;
......
...@@ -5,7 +5,7 @@ package com.abssqr.plat.test.unittest.astPool; /** ...@@ -5,7 +5,7 @@ package com.abssqr.plat.test.unittest.astPool; /**
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam; import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam;
import com.abssqr.plat.common.facade.service.AstPoolService; import com.abssqr.plat.common.facade.service.ast.AstPoolService;
import com.abssqr.plat.test.BaseAutoTests; import com.abssqr.plat.test.BaseAutoTests;
import com.abssqr.test.annotation.XTest; import com.abssqr.test.annotation.XTest;
import com.abssqr.test.icase.ICase; import com.abssqr.test.icase.ICase;
......
package com.abssqr.plat.test.unittest.astPool; package com.abssqr.plat.test.unittest.astPool;
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.ast.AstPoolService;
import com.abssqr.plat.test.BaseAutoTests; import com.abssqr.plat.test.BaseAutoTests;
import com.abssqr.test.annotation.XTest; import com.abssqr.test.annotation.XTest;
import com.abssqr.test.icase.ICase; import com.abssqr.test.icase.ICase;
......
...@@ -3,7 +3,7 @@ package com.abssqr.plat.test.unittest.astPool; ...@@ -3,7 +3,7 @@ package com.abssqr.plat.test.unittest.astPool;
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.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.ast.AstPoolService;
import com.abssqr.plat.test.BaseAutoTests; import com.abssqr.plat.test.BaseAutoTests;
import com.abssqr.test.annotation.XTest; import com.abssqr.test.annotation.XTest;
import com.abssqr.test.icase.ICase; import com.abssqr.test.icase.ICase;
......
...@@ -12,6 +12,7 @@ import java.util.Map; ...@@ -12,6 +12,7 @@ import java.util.Map;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.abssqr.plat.common.facade.enums.AstScreenRuleTypeEnum; import com.abssqr.plat.common.facade.enums.AstScreenRuleTypeEnum;
import com.abssqr.plat.common.facade.enums.AstTypeEnum; import com.abssqr.plat.common.facade.enums.AstTypeEnum;
import com.abssqr.plat.common.facade.enums.LoanFieldEnum;
import com.general.system.common.model.IEnum; import com.general.system.common.model.IEnum;
import com.general.system.common.util.LogUtil; import com.general.system.common.util.LogUtil;
import com.general.system.modular.result.DictResult; import com.general.system.modular.result.DictResult;
...@@ -42,6 +43,8 @@ public class DictConfigRealize extends DictStaticConfig { ...@@ -42,6 +43,8 @@ public class DictConfigRealize extends DictStaticConfig {
// 渠道编号 // 渠道编号
dictMap.put("astType", AstTypeEnum.values()); dictMap.put("astType", AstTypeEnum.values());
dictMap.put("astScreenRuleType", AstScreenRuleTypeEnum.values()); dictMap.put("astScreenRuleType", AstScreenRuleTypeEnum.values());
dictMap.put("loanField", LoanFieldEnum.values());
return dictMap; return dictMap;
} }
......
package com.abssqr.plat.web.controller.ast; package com.abssqr.plat.web.controller.ast;
import com.abssqr.plat.common.facade.param.astPool.AstPoolOprParam; import cn.hutool.poi.excel.ExcelUtil;
import com.abssqr.plat.common.facade.service.AstPoolService; import cn.hutool.poi.excel.ExcelWriter;
import com.abssqr.plat.common.facade.enums.LoanFieldEnum;
import com.abssqr.plat.common.facade.param.ast.AstDownLoadParam;
import com.abssqr.plat.common.facade.service.ast.AstPoolService;
import com.abssqr.plat.common.facade.service.ast.AstService;
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.*;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
@RestJsonController @RestJsonController
@RequestMapping("ast")
public class AstController { public class AstController {
@Autowired @Autowired
private AstPoolService astPoolService; private AstService astService;
@GetMapping("ast/getField.json")
public BaseResult<LoanFieldEnum> getField(){
return BaseResult.success(LoanFieldEnum.values());
}
@PostMapping("query.json") @PostMapping("ast/downLoadLoans")
public BaseResult add(@RequestBody AstPoolOprParam astPoolOprParam){ public void downLoadPackExcel(@RequestBody AstDownLoadParam astDownLoadParam,HttpServletResponse response){
return BaseResult.success(astPoolService.add(astPoolOprParam)); astService.downLoadAstFile(astDownLoadParam,response);
} }
} }
...@@ -6,7 +6,7 @@ import com.abssqr.plat.common.facade.param.astPool.AstPoolPageQryParam; ...@@ -6,7 +6,7 @@ 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.AstPoolLoanVO; 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.ast.AstPoolService;
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;
......
...@@ -356,6 +356,13 @@ ...@@ -356,6 +356,13 @@
<artifactId>commons-dbutils</artifactId> <artifactId>commons-dbutils</artifactId>
<version>1.7</version> <version>1.7</version>
</dependency> </dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.3.1</version>
</dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
......
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