Commit 032d41c8 by zhaoyang

产品相关代码

parent 2d6b2366
...@@ -65,6 +65,7 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService ...@@ -65,6 +65,7 @@ public class AstPoolServiceImpl extends ServiceSupport implements AstPoolService
//创建默认资产包 //创建默认资产包
astPackManager.craeteDefaultPack(astPoolEntity.getAstPoolNo(),astPoolEntity.getAstTypeEnum(),astPoolEntity.getProdNo()); astPackManager.craeteDefaultPack(astPoolEntity.getAstPoolNo(),astPoolEntity.getAstTypeEnum(),astPoolEntity.getProdNo());
return astPoolRepository.create(astPoolEntity); return astPoolRepository.create(astPoolEntity);
}); });
} }
......
...@@ -6,6 +6,7 @@ import com.abssqr.plat.common.dal.mysql.auto.paging.PackAstPage; ...@@ -6,6 +6,7 @@ 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.param.ast.AstDownLoadParam;
import com.abssqr.plat.common.facade.service.ast.AstService; import com.abssqr.plat.common.facade.service.ast.AstService;
import com.abssqr.plat.common.facade.validation.Valid; import com.abssqr.plat.common.facade.validation.Valid;
import com.abssqr.plat.common.model.exception.AbssqrBizException;
import com.abssqr.plat.common.model.repo.ast.LoanRepository; import com.abssqr.plat.common.model.repo.ast.LoanRepository;
import com.abssqr.plat.core.service.ast.DownLoadAstManager; import com.abssqr.plat.core.service.ast.DownLoadAstManager;
import org.slf4j.Logger; import org.slf4j.Logger;
...@@ -42,6 +43,7 @@ public class AstServiceImpl extends ServiceSupport implements AstService { ...@@ -42,6 +43,7 @@ public class AstServiceImpl extends ServiceSupport implements AstService {
downLoadAstManager.writeData2Stream(packAstPage,loanFieldCodes,getOutputStream(astDownLoadParam.getPackCode(),response)); downLoadAstManager.writeData2Stream(packAstPage,loanFieldCodes,getOutputStream(astDownLoadParam.getPackCode(),response));
} catch (Exception e) { } catch (Exception e) {
LOGGER.error("写入数据失败错误信息[0]",e.getMessage()); LOGGER.error("写入数据失败错误信息[0]",e.getMessage());
throw new AbssqrBizException("下载资产列表任务异常");
} }
} }
......
package com.abssqr.plat.biz.api.plan;
import com.abssqr.plat.biz.support.ServiceSupport;
import com.abssqr.plat.common.facade.enums.PlanStatusEnum;
import com.abssqr.plat.common.facade.model.plan.Plan;
import com.abssqr.plat.common.facade.param.plan.PlanEditOprParam;
import com.abssqr.plat.common.facade.result.plan.PlanVO;
import com.abssqr.plat.common.facade.service.plan.PlanService;
import com.abssqr.plat.common.facade.validation.Valid;
import com.abssqr.plat.common.model.convertor.web.PlanWebConvert;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.repo.plan.PlanRepo;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.BaseResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class PlanServiceImpl extends ServiceSupport implements PlanService{
@Override
public BaseResult<PlanVO> edit(@Valid PlanEditOprParam planEditOprParam){
//如果是暂存则直接保存
if(planEditOprParam.isDraft()){
Plan plan = PlanWebConvert.convertPlanParam(planEditOprParam);
}
return null;
}
}
...@@ -9,9 +9,7 @@ import java.util.stream.Collectors; ...@@ -9,9 +9,7 @@ import java.util.stream.Collectors;
import com.abssqr.plat.biz.shared.dispatcher.DispatcherLoader; import com.abssqr.plat.biz.shared.dispatcher.DispatcherLoader;
import com.abssqr.plat.common.facade.enums.CommonTaskTypeEnum; import com.abssqr.plat.common.facade.enums.CommonTaskTypeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanAstStatTask;
import com.abssqr.plat.common.model.domain.task.CommonTask; import com.abssqr.plat.common.model.domain.task.CommonTask;
import com.abssqr.plat.common.model.repo.ast.PlanAstStatTaskRepo;
import com.abssqr.plat.common.model.repo.job.JobControlRepository; import com.abssqr.plat.common.model.repo.job.JobControlRepository;
import com.abssqr.plat.common.model.repo.task.CommonTaskRepository; import com.abssqr.plat.common.model.repo.task.CommonTaskRepository;
import com.abssqr.plat.core.service.host.HostManager; import com.abssqr.plat.core.service.host.HostManager;
......
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd"> <!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname="abs_plan" physicalName="abs_plan" remark="计划信息"> <table sqlname="abs_plan" physicalName="abs_plan" remark="产品表">
<!-- 特殊字符说明 &lt;&gt; <> --> <!-- 特殊字符说明 &lt;&gt; <> -->
<!-- baseSql option中 select * 会自动替换为 include --> <!-- baseSql option中 select * 会自动替换为 include -->
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,LAST_UPDATE_DATE,TOTAL_AMT,PLAN_NO,STATUS ID,TOTAL_AMT,ALLOC_PERIOD,PLAN_NO,STATUS
,CREATOR,FUND_TYPE,MODIFIER,PLAN_NAME,APPROVE_STATUS ,PLAN_NAME,TRADE_PLACE,CALC_INTR_TYPE,PLAN_FULL_NAME,ALLOC_PERIOD_METHOD
,PLAN_MGR_ORG_CODE,SPONSOR_ORG_CODE,END_DATE ,END_DATE,BEGIN_DATE,GMT_CREATE,GMT_MODIFIED,FIRST_PAY_DATE
,BEGIN_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED ,FIRST_CALC_DATE,FIRST_ALLOC_DATE,FIRST_REPORT_DATE,FIRST_SETTLE_DATE
,FIRST_PAY_DATE,INIT_CALC_DATE,FIRST_CLEAR_DATE
,PAY_FREQ,CALC_INTR_TYPE,VAT_RATE,GMT_CREATOR,GMT_MODIFIER
,PASSED,PLAN_TYPE,PRICE_TYPE,FIN_SER_FEE_RATE
</sql> </sql>
<!-- baseSql option中 select sf.* 会自动替换为 include --> <!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.LAST_UPDATE_DATE,sf.TOTAL_AMT,sf.PLAN_NO,sf.STATUS sf.ID,sf.TOTAL_AMT,sf.ALLOC_PERIOD,sf.PLAN_NO,sf.STATUS
,sf.CREATOR,sf.FUND_TYPE,sf.MODIFIER,sf.PLAN_NAME,sf.APPROVE_STATUS ,sf.PLAN_NAME,sf.TRADE_PLACE,sf.CALC_INTR_TYPE,sf.PLAN_FULL_NAME,sf.ALLOC_PERIOD_METHOD
,sf.PLAN_MGR_ORG_CODE,sf.SPONSOR_ORG_CODE,sf.END_DATE ,sf.END_DATE,sf.BEGIN_DATE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FIRST_PAY_DATE
,sf.BEGIN_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED ,sf.FIRST_CALC_DATE,sf.FIRST_ALLOC_DATE,sf.FIRST_REPORT_DATE,sf.FIRST_SETTLE_DATE
,sf.FIRST_PAY_DATE,sf.INIT_CALC_DATE,sf.FIRST_CLEAR_DATE
,sf.PAY_FREQ,sf.CALC_INTR_TYPE,sf.VAT_RATE,sf.GMT_CREATOR,sf.GMT_MODIFIER
,sf.PASSED,sf.PLAN_TYPE,sf.PRICE_TYPE,sf.FIN_SER_FEE_RATE
</sql> </sql>
<operation name="insert" paramtype="object" remark="插入表:abs_plan"> <operation name="insert" paramtype="object" remark="插入表:abs_plan" >
<![CDATA[ <![CDATA[
INSERT INTO ABS_PLAN( INSERT INTO abs_plan(
ID ID
,LAST_UPDATE_DATE
,TOTAL_AMT ,TOTAL_AMT
,ALLOC_PERIOD
,PLAN_NO ,PLAN_NO
,STATUS ,STATUS
,CREATOR
,FUND_TYPE
,MODIFIER
,PLAN_NAME ,PLAN_NAME
,APPROVE_STATUS ,TRADE_PLACE
,PLAN_MGR_ORG_CODE ,CALC_INTR_TYPE
,SPONSOR_ORG_CODE ,PLAN_FULL_NAME
,ALLOC_PERIOD_METHOD
,END_DATE ,END_DATE
,BEGIN_DATE ,BEGIN_DATE
,GMT_CREATE ,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,FIRST_PAY_DATE ,FIRST_PAY_DATE
,INIT_CALC_DATE ,FIRST_CALC_DATE
,FIRST_CLEAR_DATE ,FIRST_ALLOC_DATE
,PAY_FREQ ,FIRST_REPORT_DATE
,CALC_INTR_TYPE ,FIRST_SETTLE_DATE
,VAT_RATE
,GMT_CREATOR
,GMT_MODIFIER
,PASSED
,PLAN_TYPE
,PRICE_TYPE
,FIN_SER_FEE_RATE
)VALUES( )VALUES(
SEQ_ABS_PLAN.nextval SEQ_ABS_PLAN.nextval
, #{lastUpdateDate,jdbcType=DATE} , #{totalAmt,jdbcType=DECIMAL}
, #{totalAmt,jdbcType=BIGINT} , #{allocPeriod,jdbcType=DECIMAL}
, #{planNo,jdbcType=VARCHAR} , #{planNo,jdbcType=VARCHAR}
, #{status,jdbcType=VARCHAR} , #{status,jdbcType=VARCHAR}
, #{creator,jdbcType=VARCHAR}
, #{fundType,jdbcType=VARCHAR}
, #{modifier,jdbcType=VARCHAR}
, #{planName,jdbcType=VARCHAR} , #{planName,jdbcType=VARCHAR}
, #{approveStatus,jdbcType=VARCHAR} , #{tradePlace,jdbcType=VARCHAR}
, #{planMgrOrgCode,jdbcType=VARCHAR} , #{calcIntrType,jdbcType=VARCHAR}
, #{sponsorOrgCode,jdbcType=VARCHAR} , #{planFullName,jdbcType=VARCHAR}
, #{allocPeriodMethod,jdbcType=VARCHAR}
, #{endDate,jdbcType=DATE} , #{endDate,jdbcType=DATE}
, #{beginDate,jdbcType=DATE} , #{beginDate,jdbcType=DATE}
, sysdate , sysdate
, #{effectDate,jdbcType=DATE}
, sysdate , sysdate
, #{firstPayDate,jdbcType=DATE} , #{firstPayDate,jdbcType=DATE}
, #{initCalcDate,jdbcType=DATE} , #{firstCalcDate,jdbcType=DATE}
, #{firstClearDate,jdbcType=DATE} , #{firstAllocDate,jdbcType=DATE}
, #{payFreq,jdbcType=VARCHAR} , #{firstReportDate,jdbcType=DATE}
, #{calcIntrType,jdbcType=VARCHAR} , #{firstSettleDate,jdbcType=DATE}
, #{vatRate,jdbcType=DECIMAL}
, #{gmtCreator,jdbcType=VARCHAR}
, #{gmtModifier,jdbcType=VARCHAR}
, #{passed,jdbcType=CHAR}
, #{planType,jdbcType=VARCHAR}
, #{priceType,jdbcType=VARCHAR}
, #{finSerFeeRate,jdbcType=DECIMAL}
) )
]]> ]]>
</operation> </operation>
<!-- 根据唯一约束操作数据 --> <!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" -->
<operation name="updateByPlanNo" paramtype="object" remark="根据唯一约束PlanNo更新表:abs_plan"> <!-- 只有一个参数且为List时必须将参数命名为list -->
<![CDATA[ <operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan" >
UPDATE abs_plan <foreach collection="list" item="item" separator=";">
SET INSERT INTO abs_plan(
TOTAL_AMT = #{totalAmt,jdbcType=BIGINT} ID
,FUND_TYPE = #{fundType,jdbcType=VARCHAR} ,TOTAL_AMT
,MODIFIER = #{modifier,jdbcType=VARCHAR} ,ALLOC_PERIOD
,PLAN_NAME = #{planName,jdbcType=VARCHAR} ,PLAN_NO
,PLAN_MGR_ORG_CODE = #{planMgrOrgCode,jdbcType=VARCHAR} ,STATUS
,SPONSOR_ORG_CODE = #{sponsorOrgCode,jdbcType=VARCHAR} ,PLAN_NAME
,END_DATE = #{endDate,jdbcType=DATE} ,TRADE_PLACE
,BEGIN_DATE = #{beginDate,jdbcType=DATE} ,CALC_INTR_TYPE
,EFFECT_DATE = #{effectDate,jdbcType=DATE} ,PLAN_FULL_NAME
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR} ,ALLOC_PERIOD_METHOD
,STATUS = #{status,jdbcType=VARCHAR} ,END_DATE
,GMT_MODIFIED = sysdate ,BEGIN_DATE
,FIRST_PAY_DATE = #{firstPayDate,jdbcType=DATE} ,GMT_CREATE
,INIT_CALC_DATE = #{initCalcDate,jdbcType=DATE} ,GMT_MODIFIED
,FIRST_CLEAR_DATE = #{firstClearDate,jdbcType=DATE} ,FIRST_PAY_DATE
,PAY_FREQ = #{payFreq,jdbcType=VARCHAR} ,FIRST_CALC_DATE
,CALC_INTR_TYPE = #{calcIntrType,jdbcType=VARCHAR} ,FIRST_ALLOC_DATE
,VAT_RATE = #{vatRate,jdbcType=DECIMAL} ,FIRST_REPORT_DATE
,LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=DATE} ,FIRST_SETTLE_DATE
,GMT_MODIFIER = #{gmtModifier,jdbcType=VARCHAR} )VALUES
,PASSED = #{passed,jdbcType=CHAR}
,PRICE_TYPE = #{priceType,jdbcType=CHAR}
,FIN_SER_FEE_RATE = #{finSerFeeRate,jdbcType=DECIMAL}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<!-- 根据唯一约束操作数据 -->
<operation name="updateStatusByPlanNo" paramtype="primitive" remark="根据唯一约束PlanNo更新表:abs_plan">
UPDATE abs_plan
SET
GMT_MODIFIED = sysdate
<if test="approveStatus!=null and approveStatus != ''">
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
</if>
<if test="gmtModifier!=null and gmtModifier != ''">
,GMT_MODIFIER = #{gmtModifier,jdbcType=VARCHAR}
</if>
<if test="status!=null and status != ''">
,STATUS = #{status,jdbcType=VARCHAR}
</if>
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</operation>
<!-- 根据唯一约束操作数据 -->
<operation name="updatePassed" paramtype="primitive" remark="根据唯一约束PlanNo修改状态:abs_plan">
<![CDATA[
UPDATE abs_plan
SET
PASSED = #{passed,jdbcType=CHAR}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="deleteByPlanNo" remark="根据唯一约束PlanNo删除数据:abs_plan">
<![CDATA[
DELETE FROM abs_plan
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="getByPlanNo" multiplicity="one" remark="根据唯一约束PlanNo获取数据:abs_plan">
SELECT *
FROM abs_plan
WHERE
<![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="lockByPlanNo" multiplicity="one" remark="根据唯一约束PlanNo获取数据:abs_plan">
SELECT *
FROM abs_plan
WHERE
<![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR}
FOR UPDATE NOWAIT
]]>
</operation>
<operation name="queryByPlanNo" multiplicity="many" kvmap="true" mapK="plan_no" mapV="plan_name" remark="根据唯一约束PlanNo获取数据:abs_plan">
SELECT *
FROM abs_plan
WHERE
PLAN_NO
IN
<foreach collection="list" item="planNo" open="(" close=")" separator=",">
#{planNo,jdbcType=VARCHAR}
</foreach>
</operation>
<operation name="planExist" resulttype="Integer" multiplicity="one" remark="新增判断计划是否存在">
select count(*)
FROM abs_plan
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
OR
PLAN_NAME = #{planName,jdbcType=VARCHAR}
</operation>
<operation name="getSamePlan" resulttype="Integer" multiplicity="one" remark="编辑判断计划是否存在">
select count(*)
FROM abs_plan
WHERE
PLAN_NO != #{planNo,jdbcType=VARCHAR}
AND
PLAN_NAME = #{planName,jdbcType=VARCHAR}
</operation>
<resultmap name="PlanListResultMap" type="PlanListResultMap" extend="base">
<column name="STOP_PAY_DATE" javatype="java.util.Date" jdbctype="DATE"/>
</resultmap>
<operation name="getPlanList" multiplicity="paging" paging="PlanList" resultmap="PlanListResultMap" remark="分页查询计划">
SELECT
sf.*,oe.STOP_PAY_DATE
FROM
ABS_PLAN sf
left join ABS_ORGANIZATION_ENTITY oe
on sf.plan_no = oe.ENTITY_CODE
WHERE
( (
sf.PASSED = #{passed,jdbcType=CHAR} null
<if test="userCode!=null and userCode != ''"> , #{item.totalAmt,jdbcType=DECIMAL}
OR , #{item.allocPeriod,jdbcType=DECIMAL}
sf.GMT_CREATOR = #{userCode,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
OR , #{item.status,jdbcType=VARCHAR}
sf.GMT_MODIFIER = #{userCode,jdbcType=VARCHAR} , #{item.planName,jdbcType=VARCHAR}
</if> , #{item.tradePlace,jdbcType=VARCHAR}
, #{item.calcIntrType,jdbcType=VARCHAR}
, #{item.planFullName,jdbcType=VARCHAR}
, #{item.allocPeriodMethod,jdbcType=VARCHAR}
, #{item.endDate,jdbcType=DATE}
, #{item.beginDate,jdbcType=DATE}
, sysdate
, sysdate
, #{item.firstPayDate,jdbcType=DATE}
, #{item.firstCalcDate,jdbcType=DATE}
, #{item.firstAllocDate,jdbcType=DATE}
, #{item.firstReportDate,jdbcType=DATE}
, #{item.firstSettleDate,jdbcType=DATE}
) )
<if test="planType!=null and planType != ''">
AND sf.PLAN_TYPE = #{planType,jdbcType=VARCHAR}
</if>
<if test="planNo!=null and planNo != ''">
AND sf.PLAN_NO = #{planNo,jdbcType=VARCHAR}
</if>
<if test="planName!=null and planName != ''">
AND sf.PLAN_NAME LIKE CONCAT(CONCAT('%',#{planName,jdbcType=VARCHAR}),'%')
</if>
<if test="planStatus!=null and planStatus != ''">
AND sf.STATUS = #{planStatus,jdbcType=CHAR}
</if>
<if test="list != null and list.size() &gt; 0">
AND sf.STATUS IN
<foreach collection="list" item="status" index="index" open="(" close=")" separator=",">
#{status,jdbcType=VARCHAR}
</foreach>
</if>
ORDER BY BEGIN_DATE DESC , ID ASC
</operation>
<operation name="getPlansByStatusList" multiplicity="many" remark="根据状态数组获取计划列表">
SELECT
*
FROM
ABS_PLAN
WHERE
STATUS IN
<foreach collection="statusList" item="status" open="(" close=")" separator=",">
#{status,jdbcType=VARCHAR}
</foreach>
<if test="planType!=null and planType != ''">
AND PLAN_TYPE = #{planType,jdbcType=VARCHAR}
</if>
<if test="planNos != null and planNos.size() &gt; 0">
AND PLAN_NO IN
<foreach collection="planNos" item="planNo" separator="," open="(" close=")">
#{planNo,jdbcType=VARCHAR}
</foreach> </foreach>
</if>
ORDER BY PLAN_TYPE,BEGIN_DATE
</operation> </operation>
<operation name="getAllPlanAmt" resulttype="java.lang.Long" multiplicity="one" remark="根据状态数组获取计划列表">
SELECT
SUM(TOTAL_AMT)
FROM
ABS_PLAN
WHERE
PLAN_TYPE = #{planType,jdbcType=VARCHAR}
AND STATUS = #{status,jdbcType=VARCHAR}
</operation>
<resultmap name="AstServiceReportMap" type="AstServiceReport">
<column name="TOTAL_AMOUNT" javatype="java.math.BigDecimal" jdbctype="BIGINT"/>
<column name="LEGAL_END_DATE" javatype="Date" jdbctype="DATE"/>
<column name="BEGIN_DATE" javatype="Date" jdbctype="DATE"/>
<column name="IS_RECYCLE_ACQUISITION" javatype="Boolean" jdbctype="BIT"/>
</resultmap>
<!--往后可能统计剩余规模,这个sql还放在plat -->
<operation name="getAstServiceReport" multiplicity="one" resultmap="AstServiceReportMap" remark="查询资产服务报告">
SELECT
PLAN.TOTAL_AMOUNT,PLAN.LEGAL_END_DATE,TRANSFER.IS_RECYCLE_ACQUISITION,PLAN.BEGIN_DATE
FROM
ABS_PLAN PLAN
LEFT JOIN
ABS_TRANSFER_RULE TRANSFER
ON PLAN.TRANSFER_RULE_NO=TRANSFER.TRANSFER_RULE_NO
WHERE
PLAN.PLAN_NO= #{planNo,jdbcType=VARCHAR}
</operation>
<operation name="getSpvByManagerOrgCode" multiplicity="many" paramtype="primitive" remark="根据服务机构获取存续期受让计划">
SELECT
sf.*
FROM ABS_PLAN sf
JOIN ABS_ORGANIZATION_ENTITY aon
ON sf.plan_no = aon.ENTITY_CODE
WHERE
aon.MANAGER_ORG_CODE=#{managerOrgCode,jdbcType=VARCHAR}
</operation>
<operation name="getFailDailyCount" multiplicity="one" paramtype="primitive" remark="查询每日任务失败的数量" resulttype="java.lang.Long">
SELECT
COUNT(*)
FROM
ABS_PLAN
WHERE
ABS_PLAN.LAST_UPDATE_DATE != #{curDate,jdbcType=DATE}
AND ABS_PLAN.STATUS IN ('PREPARING','ONGOING')
</operation>
<operation name="updatePriceType" paramtype="primitive" remark="更新定价规则">
<![CDATA[
UPDATE abs_plan
SET
PRICE_TYPE = #{priceType,jdbcType=CHAR}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="getAllPlanByType" multiplicity="many" remark="根据类型获取所有的计划">
SELECT
*
FROM
ABS_PLAN
WHERE
PLAN_TYPE=#{planType,jdbcType=VARCHAR}
AND STATUS = 'ONGOING'
</operation>
</table> </table>
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd"> <!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname = "abs_plan_acct_title" physicalName = "abs_plan_acct_title" remark = "计划结算科目信息(收付实现制)"> <table sqlname="abs_plan_acct_title" physicalName="abs_plan_acct_title" remark="ABS_PLAN_ACCT_TITLE">
<column name = "BAL" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "RECP_AMT" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "PAY_AMT" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "RECP_VATAX" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "PAY_VATAX" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "UPPER_LIMIT" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "ENTRY_AMT" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<column name = "INIT_AMT" jdbctype = "BIGINT" javatype = "com.general.system.common.model.Money" remark = ""/>
<!-- 特殊字符说明 &lt;&gt; <> --> <!-- 特殊字符说明 &lt;&gt; <> -->
<!-- baseSql option中 select * 会自动替换为 include --> <!-- baseSql option中 select * 会自动替换为 include -->
<sql id = "Base_Column_List"> <sql id="Base_Column_List">
ID,BAL,PAY_AMT,RECP_AMT,PAY_VATAX,TOTAL_AMT,ENTRY_AMT,REF_NO ID,REF_NO,PLAN_NO,TITLE_NO,TITLE_NAME
,INIT_AMT,RECP_VATAX,UPPER_LIMIT,PLAN_NO,TITLE_NO ,TITLE_TYPE,GMT_CREATE,GMT_MODIFIED
,CALC_TYPE,TITLE_NAME,TITLE_TYPE,SCALE_TYPE,GMT_CREATE
,GMT_MODIFIED,LAST_PAY_DATE,LAST_SETTLE_DATE,RATE
,FIN_SER_FEE_TYPE,EFFECT_DATE
</sql> </sql>
<!-- baseSql option中 select sf.* 会自动替换为 include --> <!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id = "Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.BAL,sf.PAY_AMT,sf.RECP_AMT,sf.PAY_VATAX,sf.TOTAL_AMT,sf.ENTRY_AMT,sf.REF_NO sf.ID,sf.REF_NO,sf.PLAN_NO,sf.TITLE_NO,sf.TITLE_NAME
,sf.INIT_AMT,sf.RECP_VATAX,sf.UPPER_LIMIT,sf.PLAN_NO,sf.TITLE_NO ,sf.TITLE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED
,sf.CALC_TYPE,sf.TITLE_NAME,sf.TITLE_TYPE,sf.SCALE_TYPE,sf.GMT_CREATE
,sf.GMT_MODIFIED,sf.LAST_PAY_DATE,sf.LAST_SETTLE_DATE,sf.RATE
,sf.FIN_SER_FEE_TYPE,sf.EFFECT_DATE
</sql> </sql>
<operation name = "insert" paramtype = "object" remark = "插入表:abs_plan_acct_title"> <operation name="insert" paramtype="object" remark="插入表:abs_plan_acct_title" >
<![CDATA[ <![CDATA[
INSERT INTO abs_plan_acct_title( INSERT INTO abs_plan_acct_title(
ID ID
,BAL
,PAY_AMT
,RECP_AMT
,PAY_VATAX
,TOTAL_AMT
,ENTRY_AMT
,REF_NO ,REF_NO
,INIT_AMT
,RECP_VATAX
,UPPER_LIMIT
,PLAN_NO ,PLAN_NO
,TITLE_NO ,TITLE_NO
,CALC_TYPE
,TITLE_NAME ,TITLE_NAME
,TITLE_TYPE ,TITLE_TYPE
,SCALE_TYPE
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAST_PAY_DATE
,LAST_SETTLE_DATE
,RATE
,FIN_SER_FEE_TYPE
,EFFECT_DATE
)VALUES( )VALUES(
SEQ_ABS_PLAN_ACCT_TITLE.nextval SEQ_ABS_PLAN_ACCT_TITLE.nextval
, #{bal,jdbcType=BIGINT}
, #{payAmt,jdbcType=BIGINT}
, #{recpAmt,jdbcType=BIGINT}
, #{payVatax,jdbcType=BIGINT}
, #{totalAmt,jdbcType=DECIMAL}
, #{entryAmt,jdbcType=BIGINT}
, #{refNo,jdbcType=VARCHAR} , #{refNo,jdbcType=VARCHAR}
, #{initAmt,jdbcType=BIGINT}
, #{recpVatax,jdbcType=BIGINT}
, #{upperLimit,jdbcType=BIGINT}
, #{planNo,jdbcType=VARCHAR} , #{planNo,jdbcType=VARCHAR}
, #{titleNo,jdbcType=VARCHAR} , #{titleNo,jdbcType=VARCHAR}
, #{calcType,jdbcType=VARCHAR}
, #{titleName,jdbcType=VARCHAR} , #{titleName,jdbcType=VARCHAR}
, #{titleType,jdbcType=VARCHAR} , #{titleType,jdbcType=VARCHAR}
, #{scaleType,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{lastPayDate,jdbcType=TIMESTAMP}
, #{lastSettleDate,jdbcType=TIMESTAMP}
, #{rate,jdbcType=DECIMAL}
, #{finSerFeeType,jdbcType=VARCHAR}
, #{effectDate,jdbcType=DATE}
) )
]]> ]]>
</operation> </operation>
<!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" --> <!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" -->
<!-- 只有一个参数且为List时必须将参数命名为list --> <!-- 只有一个参数且为List时必须将参数命名为list -->
<operation name = "insertBatch" paramtype = "objectList" remark = "批量插入表:abs_plan_acct_title"> <operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_acct_title" >
<foreach collection = "list" item = "item" separator = ";"> <foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_acct_title( INSERT INTO abs_plan_acct_title(
ID ID
,BAL
,PAY_AMT
,RECP_AMT
,PAY_VATAX
,TOTAL_AMT
,ENTRY_AMT
,REF_NO ,REF_NO
,INIT_AMT
,RECP_VATAX
,UPPER_LIMIT
,PLAN_NO ,PLAN_NO
,TITLE_NO ,TITLE_NO
,CALC_TYPE
,TITLE_NAME ,TITLE_NAME
,TITLE_TYPE ,TITLE_TYPE
,SCALE_TYPE
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAST_PAY_DATE
,LAST_SETTLE_DATE
,RATE
,FIN_SER_FEE_TYPE
,EFFECT_DATE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_ACCT_TITLE.nextval null
, #{item.bal,jdbcType=BIGINT}
, #{item.payAmt,jdbcType=BIGINT}
, #{item.recpAmt,jdbcType=BIGINT}
, #{item.payVatax,jdbcType=BIGINT}
, #{item.totalAmt,jdbcType=DECIMAL}
, #{item.entryAmt,jdbcType=BIGINT}
, #{item.refNo,jdbcType=VARCHAR} , #{item.refNo,jdbcType=VARCHAR}
, #{item.initAmt,jdbcType=BIGINT}
, #{item.recpVatax,jdbcType=BIGINT}
, #{item.upperLimit,jdbcType=BIGINT}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.titleNo,jdbcType=VARCHAR} , #{item.titleNo,jdbcType=VARCHAR}
, #{item.calcType,jdbcType=VARCHAR}
, #{item.titleName,jdbcType=VARCHAR} , #{item.titleName,jdbcType=VARCHAR}
, #{item.titleType,jdbcType=VARCHAR} , #{item.titleType,jdbcType=VARCHAR}
, #{item.scaleType,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{item.lastPayDate,jdbcType=TIMESTAMP}
, #{item.lastSettleDate,jdbcType=TIMESTAMP}
, #{item.rate,jdbcType=DECIMAL}
, #{item.finSerFeeType,jdbcType=VARCHAR}
, #{item.effectDate,jdbcType=DATE}
) )
</foreach> </foreach>
</operation> </operation>
<!-- 根据唯一约束操作数据 -->
<operation name = "updateAmt" paramtype = "object" remark = "根据唯一约束AbsPlanAcctTitle更新表:abs_plan_acct_title">
UPDATE abs_plan_acct_title
SET
BAL = #{bal,jdbcType=BIGINT}
,PAY_AMT = #{payAmt,jdbcType=BIGINT}
,RECP_AMT = #{recpAmt,jdbcType=BIGINT}
,PAY_VATAX = #{payVatax,jdbcType=BIGINT}
,RECP_VATAX = #{recpVatax,jdbcType=BIGINT}
,UPPER_LIMIT = #{upperLimit,jdbcType=BIGINT}
,SCALE_TYPE = #{scaleType,jdbcType=BIGINT}
,TOTAL_AMT = #{totalAmt,jdbcType=DECIMAL}
,ENTRY_AMT = #{entryAmt,jdbcType=BIGINT}
,GMT_MODIFIED = sysdate
,LAST_PAY_DATE = #{lastPayDate,jdbcType=TIMESTAMP}
,LAST_SETTLE_DATE = #{lastSettleDate,jdbcType=TIMESTAMP}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_NO = #{titleNo,jdbcType=VARCHAR}
</operation>
<operation name = "getByPlan" multiplicity = "many" remark = "根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title">
SELECT *
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</operation>
<operation name = "getByPlanAndTypes" multiplicity = "many" remark = "根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title">
SELECT *
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_TYPE in
<foreach collection="listTitleType" item="titleType" separator="," open="(" close=")">
#{titleType,jdbcType=VARCHAR}
</foreach>
</operation>
<operation name = "getFinFeesByPlan" multiplicity = "many" remark = "根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title">
SELECT *
FROM abs_plan_acct_title
WHERE
CALC_TYPE= 'FCT005'
AND PLAN_NO in
<foreach collection="list" item="planNo" separator="," open="(" close=")">
#{planNo,jdbcType=VARCHAR}
</foreach>
</operation>
<operation name = "getByTitleNo" multiplicity = "one" remark = "根据唯一约束AbsPlanAcctTitle获取数据:abs_plan_acct_title">
SELECT *
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_NO = #{titleNo,jdbcType=VARCHAR}
</operation>
<operation name="deleteByPlanNo" remark="根据计划编号删除分配信息">
DELETE FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</operation>
</table> </table>
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd"> <!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname="abs_plan_alloc" physicalName="abs_plan_alloc" remark="计划-分配计划"> <table sqlname="abs_plan_alloc" physicalName="abs_plan_alloc" remark="分配计划表">
<!-- 特殊字符说明 &lt;&gt; <> --> <!-- 特殊字符说明 &lt;&gt; <> -->
<!-- baseSql option中 select * 会自动替换为 include --> <!-- baseSql option中 select * 会自动替换为 include -->
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,ALLOC_NO,PAY_DATE,CLEAR_DATE,GMT_CREATE ID,PLAN_NO,ALLOC_NO,PAY_DATE,CALC_DATE
,GMT_MODIFIED,ALLOC_AMT,PLAN_NO,STATUS,APPROVE_STATUS ,ALLOC_DATE,GMT_CREATE,REPORT_DATE,SETTLE_DATE,GMT_MODIFIED
,PLAN_TYPE
</sql> </sql>
<!-- baseSql option中 select sf.* 会自动替换为 include --> <!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.ALLOC_NO,sf.PAY_DATE,sf.CLEAR_DATE,sf.GMT_CREATE sf.ID,sf.PLAN_NO,sf.ALLOC_NO,sf.PAY_DATE,sf.CALC_DATE
,sf.GMT_MODIFIED,sf.ALLOC_AMT,sf.PLAN_NO,sf.STATUS ,sf.ALLOC_DATE,sf.GMT_CREATE,sf.REPORT_DATE,sf.SETTLE_DATE,sf.GMT_MODIFIED
,sf.APPROVE_STATUS,sf.PLAN_TYPE
</sql> </sql>
<operation name="insert" paramtype="object" useGeneratedKeys="true" remark="插入表:abs_plan_alloc" > <operation name="insert" paramtype="object" remark="插入表:abs_plan_alloc" >
<![CDATA[ <![CDATA[
INSERT INTO abs_plan_alloc( INSERT INTO abs_plan_alloc(
ID ID
,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,PAY_DATE ,PAY_DATE
,CLEAR_DATE ,CALC_DATE
,ALLOC_DATE
,GMT_CREATE ,GMT_CREATE
,REPORT_DATE
,SETTLE_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,ALLOC_AMT
,PLAN_NO
,STATUS
,APPROVE_STATUS
,PLAN_TYPE
)VALUES( )VALUES(
SEQ_ABS_PLAN_ALLOC.nextval SEQ_ABS_PLAN_ALLOC.nextval
, #{planNo,jdbcType=VARCHAR}
, #{allocNo,jdbcType=VARCHAR} , #{allocNo,jdbcType=VARCHAR}
, #{payDate,jdbcType=DATE} , #{payDate,jdbcType=DATE}
, #{clearDate,jdbcType=DATE} , #{calcDate,jdbcType=DATE}
, #{allocDate,jdbcType=DATE}
, sysdate , sysdate
, #{reportDate,jdbcType=DATE}
, #{settleDate,jdbcType=DATE}
, sysdate , sysdate
, #{allocAmt,jdbcType=BIGINT}
, #{planNo,jdbcType=VARCHAR}
, #{status,jdbcType=VARCHAR}
, #{approveStatus,jdbcType=VARCHAR}
, #{planType,jdbcType=VARCHAR}
) )
]]> ]]>
</operation> </operation>
...@@ -51,208 +47,64 @@ ...@@ -51,208 +47,64 @@
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_alloc( INSERT INTO abs_plan_alloc(
ID ID
,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,PAY_DATE ,PAY_DATE
,CLEAR_DATE ,CALC_DATE
,ALLOC_DATE
,GMT_CREATE ,GMT_CREATE
,REPORT_DATE
,SETTLE_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,ALLOC_AMT
,PLAN_NO
,STATUS
,APPROVE_STATUS
,PLAN_TYPE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_ALLOC.nextval null
, #{item.planNo,jdbcType=VARCHAR}
, #{item.allocNo,jdbcType=VARCHAR} , #{item.allocNo,jdbcType=VARCHAR}
, #{item.payDate,jdbcType=DATE} , #{item.payDate,jdbcType=DATE}
, #{item.clearDate,jdbcType=DATE} , #{item.calcDate,jdbcType=DATE}
, #{item.allocDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.reportDate,jdbcType=DATE}
, #{item.settleDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.allocAmt,jdbcType=BIGINT}
, #{item.planNo,jdbcType=VARCHAR}
, #{item.status,jdbcType=VARCHAR}
, #{item.approveStatus,jdbcType=VARCHAR}
, #{item.planType,jdbcType=VARCHAR}
) )
</foreach> </foreach>
</operation> </operation>
<operation name="updateByAllocNo" paramtype="object" remark="更新表:abs_plan_alloc" > <!-- 不推荐使用全 update 有需要自己打开
<operation name="update" paramtype="object" remark="更新表:abs_plan_alloc" >
<![CDATA[ <![CDATA[
UPDATE abs_plan_alloc UPDATE abs_plan_alloc
SET SET
PAY_DATE = #{payDate,jdbcType=DATE} PLAN_NO = #{planNo,jdbcType=VARCHAR}
,CLEAR_DATE = #{clearDate,jdbcType=DATE} ,ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
,PAY_DATE = #{payDate,jdbcType=DATE}
,CALC_DATE = #{calcDate,jdbcType=DATE}
,ALLOC_DATE = #{allocDate,jdbcType=DATE}
,REPORT_DATE = #{reportDate,jdbcType=DATE}
,SETTLE_DATE = #{settleDate,jdbcType=DATE}
,GMT_MODIFIED = sysdate ,GMT_MODIFIED = sysdate
,ALLOC_AMT = #{allocAmt,jdbcType=BIGINT}
,STATUS = #{status,jdbcType=VARCHAR}
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
WHERE WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
</operation> </operation>
-->
<operation name="deleteByAllocNo" remark="根据AllocNo删除数据:abs_plan_alloc"> <operation name="deleteById" remark="根据主键删除数据:abs_plan_alloc">
<![CDATA[ <![CDATA[
DELETE FROM abs_plan_alloc DELETE FROM abs_plan_alloc
WHERE WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]>
</operation>
<operation name="getByAllocNo" multiplicity="one" remark="根据主键获取数据:abs_plan_alloc">
SELECT *
FROM abs_plan_alloc
WHERE
<![CDATA[
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="updateStatus" paramtype="primitive" remark="更新状态">
<![CDATA[
UPDATE abs_plan_alloc
SET
GMT_MODIFIED = sysdate
,STATUS = #{status,jdbcType=VARCHAR}
WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
and
STATUS = #{oldStatus,jdbcType=VARCHAR}
]]>
</operation>
<operation name="queryByPlanNo" multiplicity="many" remark="根据主键获取数据:abs_plan_alloc">
SELECT *
FROM abs_plan_alloc
WHERE
<![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
ORDER BY CLEAR_DATE
</operation>
<operation name="queryAllocByPlanNo" multiplicity="many" remark="根据计划编号获取时间段分配金额">
SELECT *
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
</operation>
<operation name="queryRecentlyPlans" multiplicity="one" remark="根据兑付日获取查询最近计划:abs_plan_alloc">
select * from(
SELECT
sf.*
FROM
ABS_PLAN_ALLOC sf
WHERE
<![CDATA[
PAY_DATE >= SYSDATE
AND
PLAN_TYPE = #{planType,jdbcType=VARCHAR}
ORDER BY
PAY_DATE
]]> ]]>
) tab where ROWNUM = 1
</operation> </operation>
<operation name="getById" multiplicity="one" remark="根据主键获取数据:abs_plan_alloc">
<operation name="querySameClearDate" multiplicity="one" resulttype="int" remark="查询相同结算日分配计划数量">
SELECT count(*) cnt
FROM abs_plan_alloc
WHERE
CLEAR_DATE = #{clearDate,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND
ALLOC_NO != #{allocNo,jdbcType=VARCHAR}
</operation>
<operation name="lockByAllocNo" multiplicity="one" remark="根据主键获取数据:abs_plan_alloc">
SELECT * SELECT *
FROM abs_plan_alloc FROM abs_plan_alloc
WHERE WHERE
<![CDATA[ <![CDATA[
ALLOC_NO = #{allocNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
FOR UPDATE
]]> ]]>
</operation> </operation>
<operation name="queryUnMatchedApprovedAlloc" multiplicity="many" remark="获取所有已审批通过未解绑的兑付计划">
SELECT *
FROM ABS_PLAN_ALLOC
WHERE
APPROVE_STATUS='PASSED'
AND PLAN_NO=#{planNo,jdbcType=VARCHAR}
AND ALLOC_NO NOT IN(
SELECT BIZ_NO
FROM ABS_COMMON_TASK
WHERE
TASK_TYPE='CAPTITALASSERT_UNMATCH'
)
</operation>
<operation name="queryStatAllocAmtByPlanNoAndPayDate" multiplicity="one" resulttype="java.lang.Long" remark="根据计划编号获取时间段分配金额">
SELECT SUM(ALLOC_AMT) ALLOC_AMT
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
GROUP BY PLAN_NO
</operation>
<operation name="queryStatTotalAllocAmtByPlanNos" multiplicity="one" resulttype="java.lang.Long" remark="根据计划编号获取累计分配金额">
SELECT SUM(ALLOC_AMT) ALLOC_AMT
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
<if test="listPlanNos != null and listPlanNos.size() &gt; 0">
AND PLAN_NO IN
<foreach collection="listPlanNos" item="onePlanNo" separator="," open="(" close=")">
#{onePlanNo, jdbcType=VARCHAR}
</foreach>
</if>
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
GROUP BY PLAN_NO
</operation>
<operation name="deleteByPlanNo" remark="根据计划编号删除分配方案">
DELETE FROM abs_plan_alloc
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</operation>
<operation name="queryApprovedNotPayAlloc" multiplicity="many" remark="查询已审批未兑付的分配计划">
SELECT
*
FROM
ABS_PLAN_ALLOC
WHERE
<![CDATA[
APPROVE_STATUS='PASSED'
AND PLAN_NO=#{planNo,jdbcType=VARCHAR}
AND STATUS <> 'ASSIGNED'
]]>
</operation>
</table> </table>
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname="abs_plan_alloc_item" physicalName="abs_plan_alloc_item" remark="分配事项">
<!-- 特殊字符说明 &lt;&gt; <> -->
<column name="SORT" javatype="Integer" jdbctype="INTEGER"/>
<!-- baseSql option中 select * 会自动替换为 include -->
<sql id="Base_Column_List">
ID,TRIAL_AMT,CONFIRM_AMT,TRIAL_TAX_AMT,CONFIRM_TAX_AMT
,ITEM_NO,PLAN_NO,ALLOC_NO,TITLE_NO,TAX,SORT
,GMT_CREATE,GMT_MODIFIED,SETTLE_AMT
</sql>
<!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id="Base_SF_Column_List">
sf.ID,sf.TRIAL_AMT,sf.CONFIRM_AMT,sf.TRIAL_TAX_AMT,sf.CONFIRM_TAX_AMT
,sf.ITEM_NO,sf.PLAN_NO,sf.ALLOC_NO,sf.TITLE_NO,sf.TAX,sf.SORT
,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.SETTLE_AMT
</sql>
<operation name="insert" paramtype="object" useGeneratedKeys="true" remark="插入表:abs_plan_alloc_item" >
<![CDATA[
INSERT INTO abs_plan_alloc_item(
ID
,TRIAL_AMT
,CONFIRM_AMT
,TRIAL_TAX_AMT
,CONFIRM_TAX_AMT
,ITEM_NO
,PLAN_NO
,ALLOC_NO
,TITLE_NO
,TAX
,SORT
,GMT_CREATE
,GMT_MODIFIED
,SETTLE_AMT
)VALUES(
SEQ_ABS_PLAN_ALLOC_ITEM.nextval
, #{trialAmt,jdbcType=BIGINT}
, #{confirmAmt,jdbcType=BIGINT}
, #{trialTaxAmt,jdbcType=BIGINT}
, #{confirmTaxAmt,jdbcType=BIGINT}
, #{itemNo,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR}
, #{allocNo,jdbcType=VARCHAR}
, #{titleNo,jdbcType=VARCHAR}
, #{tax,jdbcType=CHAR}
, #{sort,jdbcType=INTEGER}
, sysdate
, sysdate
, #{settleAmt,jdbcType=BIGINT}
)
]]>
</operation>
<!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" -->
<!-- 只有一个参数且为List时必须将参数命名为list -->
<operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_alloc_item" >
<foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_alloc_item(
ID
,TRIAL_AMT
,CONFIRM_AMT
,TRIAL_TAX_AMT
,CONFIRM_TAX_AMT
,ITEM_NO
,PLAN_NO
,ALLOC_NO
,TITLE_NO
,TAX
,SORT
,GMT_CREATE
,GMT_MODIFIED
,SETTLE_AMT
)VALUES
(
SEQ_ABS_PLAN_ALLOC_ITEM.nextval
, #{item.trialAmt,jdbcType=BIGINT}
, #{item.confirmAmt,jdbcType=BIGINT}
, #{item.trialTaxAmt,jdbcType=BIGINT}
, #{item.confirmTaxAmt,jdbcType=BIGINT}
, #{item.itemNo,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR}
, #{item.allocNo,jdbcType=VARCHAR}
, #{item.titleNo,jdbcType=VARCHAR}
, #{item.tax,jdbcType=CHAR}
, #{item.sort,jdbcType=INTEGER}
, sysdate
, sysdate
, #{item.settleAmt,jdbcType=BIGINT}
)
</foreach>
</operation>
<!-- 不推荐使用全 update 有需要自己打开
<operation name="update" paramtype="object" remark="更新表:abs_plan_alloc_item" >
<![CDATA[
UPDATE abs_plan_alloc_item
SET
TRIAL_AMT = #{trialAmt,jdbcType=BIGINT}
,CONFIRM_AMT = #{confirmAmt,jdbcType=BIGINT}
,TRIAL_TAX_AMT = #{trialTaxAmt,jdbcType=BIGINT}
,CONFIRM_TAX_AMT = #{confirmTaxAmt,jdbcType=BIGINT}
,ITEM_NO = #{itemNo,jdbcType=VARCHAR}
,PLAN_NO = #{planNo,jdbcType=VARCHAR}
,ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
,TITLE_NO = #{titleNo,jdbcType=VARCHAR}
,TAX = #{tax,jdbcType=CHAR}
,SORT = #{sort,jdbcType=CHAR}
,GMT_MODIFIED = sysdate
WHERE
ID = #{id,jdbcType=BIGINT}
]]>
</operation>
-->
<operation name="deleteById" remark="根据主键删除数据:abs_plan_alloc_item">
<![CDATA[
DELETE FROM abs_plan_alloc_item
WHERE
ID = #{id,jdbcType=BIGINT}
]]>
</operation>
<operation name="getById" multiplicity="one" remark="根据主键获取数据:abs_plan_alloc_item">
SELECT *
FROM abs_plan_alloc_item
WHERE
<![CDATA[
ID = #{id,jdbcType=BIGINT}
]]>
</operation>
<!-- 根据唯一约束操作数据 -->
<operation name="updateByItemNo" paramtype="object" remark="根据唯一约束ItemNo更新表:abs_plan_alloc_item">
<![CDATA[
UPDATE abs_plan_alloc_item
SET
TRIAL_AMT = #{trialAmt,jdbcType=BIGINT}
,CONFIRM_AMT = #{confirmAmt,jdbcType=BIGINT}
,TRIAL_TAX_AMT = #{trialTaxAmt,jdbcType=BIGINT}
,CONFIRM_TAX_AMT = #{confirmTaxAmt,jdbcType=BIGINT}
,PLAN_NO = #{planNo,jdbcType=VARCHAR}
,ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
,TITLE_NO = #{titleNo,jdbcType=VARCHAR}
,TAX = #{tax,jdbcType=CHAR}
,SORT = #{sort,jdbcType=CHAR}
,SETTLE_AMT = #{settleAmt,jdbcType=BIGINT}
,GMT_MODIFIED = sysdate
WHERE
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="deleteByItemNo" remark="根据唯一约束ItemNo删除数据:abs_plan_alloc_item">
<![CDATA[
DELETE FROM abs_plan_alloc_item
WHERE
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="getByItemNo" multiplicity="one" remark="根据唯一约束ItemNo获取数据:abs_plan_alloc_item">
SELECT *
FROM abs_plan_alloc_item
WHERE
<![CDATA[
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]>
</operation>
<resultmap name="PlanAllocItemResultMap" type="PlanAllocItemResultMap" extend="base">
<column name="title_name" javatype="String" jdbctype="VARCHAR" />
<column name="title_type" javatype="String" jdbctype="VARCHAR" />
<column name="pay_trial" javatype="Boolean" jdbctype="CHAR" />
</resultmap>
<operation name="getByPlanNo" multiplicity="many" kvmap="list" mapK="ALLOC_NO" resultmap="PlanAllocItemResultMap" remark="根据计划编号获取分配事项">
select sf.*,t.title_name,t.TITLE_TYPE,
decode(FIN_SER_FEE_TYPE,'WITHHOLD','0','1') as pay_trial
from
abs_plan_alloc_item sf
left join abs_plan_acct_title t
ON sf.title_no = t.title_no
where
sf.PLAN_NO = #{planNo,jdbcType=VARCHAR}
order by sf.ALLOC_NO asc,sf.SORT asc
</operation>
<operation name="getByAllocNo" multiplicity="many" kvmap="true" mapK="TITLE_NO" mapV="SETTLE_AMT" resultmap="PlanAllocItemResultMap" remark="根据分配编号获取分配事项">
SELECT sf.*,t.TITLE_NAME,t.TITLE_TYPE,
decode(FIN_SER_FEE_TYPE,'WITHHOLD',0,1) as pay_trial
FROM
ABS_PLAN_ALLOC_ITEM sf
left join abs_plan_acct_title t
ON sf.title_no = t.title_no
WHERE
sf.ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
ORDER BY sf.SORT asc
</operation>
<operation name="deleteByAllocNo" remark="根据allocNo删除数据:abs_plan_alloc_item">
<![CDATA[
DELETE FROM abs_plan_alloc_item
WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="deleteByPlanNo" remark="根据planNo删除数据">
DELETE FROM abs_plan_alloc_item
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</operation>
</table>
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd"> <!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname="abs_plan_fee_structure" physicalName="abs_plan_fee_structure" remark="计划费用结构"> <table sqlname="abs_plan_fee_structure" physicalName="abs_plan_fee_structure" remark="ABS_PLAN_FEE_STRUCTURE">
<!-- 特殊字符说明 &lt;&gt; <> --> <!-- 特殊字符说明 &lt;&gt; <> -->
<!-- baseSql option中 select * 会自动替换为 include --> <!-- baseSql option中 select * 会自动替换为 include -->
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO,PLAN_NO ID,SORT,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO
,FEE_NAME,FEE_CALC_TYPE,FEE_TIME_TYPE,FEE_SCALE_TYPE,CALC_BY_DAY ,PLAN_NO,FEE_CALC_TYPE,FEE_SCALE_TYPE,GMT_CREATE,GMT_MODIFIED
,GMT_CREATE,GMT_MODIFIED,FEE_RATE ,FEE_CALC_DEFAULT_DATE,FEE_RATE
,FIN_SER_FEE_TYPE
</sql> </sql>
<!-- baseSql option中 select sf.* 会自动替换为 include --> <!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO,sf.PLAN_NO sf.ID,sf.SORT,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO
,sf.FEE_NAME,sf.FEE_CALC_TYPE,sf.FEE_TIME_TYPE,sf.FEE_SCALE_TYPE,sf.CALC_BY_DAY ,sf.PLAN_NO,sf.FEE_CALC_TYPE,sf.FEE_SCALE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED
,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FEE_RATE ,sf.FEE_CALC_DEFAULT_DATE,sf.FEE_RATE
,sf.FIN_SER_FEE_TYPE
</sql> </sql>
<operation name="insert" paramtype="object" remark="插入表:abs_plan_fee_structure" >
<![CDATA[
INSERT INTO abs_plan_fee_structure(
ID
,SORT
,FIXED_FEE_AMT
,PAY_LIMIT_AMT
,FEE_NO
,PLAN_NO
,FEE_CALC_TYPE
,FEE_SCALE_TYPE
,GMT_CREATE
,GMT_MODIFIED
,FEE_CALC_DEFAULT_DATE
,FEE_RATE
)VALUES(
SEQ_ABS_PLAN_FEE_STRUCTURE.nextval
, #{order,jdbcType=DECIMAL}
, #{fixedFeeAmt,jdbcType=DECIMAL}
, #{payLimitAmt,jdbcType=DECIMAL}
, #{feeNo,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR}
, #{feeCalcType,jdbcType=VARCHAR}
, #{feeScaleType,jdbcType=VARCHAR}
, sysdate
, sysdate
, #{feeCalcDefaultDate,jdbcType=DATE}
, #{feeRate,jdbcType=DECIMAL}
)
]]>
</operation>
<!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" --> <!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" -->
<!-- 只有一个参数且为List时必须将参数命名为list --> <!-- 只有一个参数且为List时必须将参数命名为list -->
<operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_fee_structure" > <operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_fee_structure" >
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO ABS_PLAN_FEE_STRUCTURE( INSERT INTO abs_plan_fee_structure(
ID ID
,SORT
,FIXED_FEE_AMT ,FIXED_FEE_AMT
,PAY_LIMIT_AMT ,PAY_LIMIT_AMT
,FEE_NO ,FEE_NO
,PLAN_NO ,PLAN_NO
,FEE_NAME
,FEE_CALC_TYPE ,FEE_CALC_TYPE
,FEE_TIME_TYPE
,FEE_SCALE_TYPE ,FEE_SCALE_TYPE
,CALC_BY_DAY
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,FEE_CALC_DEFAULT_DATE
,FEE_RATE ,FEE_RATE
,FIN_SER_FEE_TYPE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_FEE_STRUCTURE.nextval null
, #{item.fixedFeeAmt,jdbcType=BIGINT} , #{item.order,jdbcType=DECIMAL}
, #{item.payLimitAmt,jdbcType=BIGINT} , #{item.fixedFeeAmt,jdbcType=DECIMAL}
, #{item.payLimitAmt,jdbcType=DECIMAL}
, #{item.feeNo,jdbcType=VARCHAR} , #{item.feeNo,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.feeName,jdbcType=VARCHAR}
, #{item.feeCalcType,jdbcType=VARCHAR} , #{item.feeCalcType,jdbcType=VARCHAR}
, #{item.feeTimeType,jdbcType=VARCHAR}
, #{item.feeScaleType,jdbcType=VARCHAR} , #{item.feeScaleType,jdbcType=VARCHAR}
, #{item.calcByDay,jdbcType=CHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{item.feeCalcDefaultDate,jdbcType=DATE}
, #{item.feeRate,jdbcType=DECIMAL} , #{item.feeRate,jdbcType=DECIMAL}
, #{item.finSerFeeType,jdbcType=VARCHAR}
) )
</foreach> </foreach>
</operation> </operation>
<operation name="deleteByPlanNo" remark="根据计划编号删除数据:abs_plan_fee_structure"> <!-- 不推荐使用全 update 有需要自己打开
<operation name="update" paramtype="object" remark="更新表:abs_plan_fee_structure" >
<![CDATA[
UPDATE abs_plan_fee_structure
SET
SORT = #{order,jdbcType=DECIMAL}
,FIXED_FEE_AMT = #{fixedFeeAmt,jdbcType=DECIMAL}
,PAY_LIMIT_AMT = #{payLimitAmt,jdbcType=DECIMAL}
,FEE_NO = #{feeNo,jdbcType=VARCHAR}
,PLAN_NO = #{planNo,jdbcType=VARCHAR}
,FEE_CALC_TYPE = #{feeCalcType,jdbcType=VARCHAR}
,FEE_SCALE_TYPE = #{feeScaleType,jdbcType=VARCHAR}
,GMT_MODIFIED = sysdate
,FEE_CALC_DEFAULT_DATE = #{feeCalcDefaultDate,jdbcType=DATE}
,FEE_RATE = #{feeRate,jdbcType=DECIMAL}
WHERE
ID = #{id,jdbcType=DECIMAL}
]]>
</operation>
-->
<operation name="deleteById" remark="根据主键删除数据:abs_plan_fee_structure">
<![CDATA[ <![CDATA[
DELETE FROM abs_plan_fee_structure DELETE FROM abs_plan_fee_structure
WHERE WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
</operation> </operation>
<operation name="selectByPlanNo" multiplicity="many" remark="根据计划编号获取数据:abs_plan_fee_structure"> <operation name="getById" multiplicity="one" remark="根据主键获取数据:abs_plan_fee_structure">
SELECT * SELECT *
FROM abs_plan_fee_structure FROM abs_plan_fee_structure
WHERE WHERE
<![CDATA[ <![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
ORDER BY ID ASC
</operation> </operation>
</table> </table>
<!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd"> <!DOCTYPE table SYSTEM "../config/table-config-1.0.dtd">
<table sqlname="abs_plan_invest_structure" physicalName="abs_plan_invest_structure" remark="投资结构"> <table sqlname="abs_plan_invest_structure" physicalName="abs_plan_invest_structure" remark="ABS_PLAN_INVEST_STRUCTURE">
<!-- 特殊字符说明 &lt;&gt; <> --> <!-- 特殊字符说明 &lt;&gt; <> -->
<!-- baseSql option中 select * 会自动替换为 include --> <!-- baseSql option中 select * 会自动替换为 include -->
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,LAYER_AMT,PLAN_NO,LAYER_NO,INTR_TYPE ID,ORDER,LAYER_AMT,GRADE,PLAN_NO
,LAYER_NAME,LAYER_TYPE,GMT_CREATE,GMT_MODIFIED,LAYER_END_DATE ,LAYER_NO,INTR_TYPE,LAYER_NAME,LAYER_TYPE,ALLOC_METHOD
,LAYER_INTR,EFFECT_DATE ,END_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED,EXPECT_END_DATE
,LAYER_INTR
</sql> </sql>
<!-- baseSql option中 select sf.* 会自动替换为 include --> <!-- baseSql option中 select sf.* 会自动替换为 include -->
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.LAYER_AMT,sf.PLAN_NO,sf.LAYER_NO,sf.INTR_TYPE sf.ID,sf.ORDER,sf.LAYER_AMT,sf.GRADE,sf.PLAN_NO
,sf.LAYER_NAME,sf.LAYER_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.LAYER_END_DATE ,sf.LAYER_NO,sf.INTR_TYPE,sf.LAYER_NAME,sf.LAYER_TYPE,sf.ALLOC_METHOD
,sf.LAYER_INTR,sf.EFFECT_DATE ,sf.END_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED,sf.EXPECT_END_DATE
,sf.LAYER_INTR
</sql> </sql>
<operation name="insert" paramtype="object" remark="插入表:abs_plan_invest_structure" >
<![CDATA[
INSERT INTO abs_plan_invest_structure(
ID
,ORDER
,LAYER_AMT
,GRADE
,PLAN_NO
,LAYER_NO
,INTR_TYPE
,LAYER_NAME
,LAYER_TYPE
,ALLOC_METHOD
,END_DATE
,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED
,EXPECT_END_DATE
,LAYER_INTR
)VALUES(
SEQ_ABS_PLAN_INVEST_STRUCTURE.nextval
, #{order,jdbcType=DECIMAL}
, #{layerAmt,jdbcType=DECIMAL}
, #{grade,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR}
, #{layerNo,jdbcType=VARCHAR}
, #{intrType,jdbcType=VARCHAR}
, #{layerName,jdbcType=VARCHAR}
, #{layerType,jdbcType=VARCHAR}
, #{allocMethod,jdbcType=VARCHAR}
, #{endDate,jdbcType=DATE}
, sysdate
, #{effectDate,jdbcType=DATE}
, sysdate
, #{expectEndDate,jdbcType=DATE}
, #{layerIntr,jdbcType=DECIMAL}
)
]]>
</operation>
<!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" --> <!-- foreach 可以自定义类型,paramtype="primitive" foreach->javatype="自己书写的类" -->
<!-- 只有一个参数且为List时必须将参数命名为list --> <!-- 只有一个参数且为List时必须将参数命名为list -->
<operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_invest_structure" > <operation name="insertBatch" paramtype="objectList" remark="批量插入表:abs_plan_invest_structure" >
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO ABS_PLAN_INVEST_STRUCTURE( INSERT INTO abs_plan_invest_structure(
ID ID
,ORDER
,LAYER_AMT ,LAYER_AMT
,GRADE
,PLAN_NO ,PLAN_NO
,LAYER_NO ,LAYER_NO
,INTR_TYPE ,INTR_TYPE
,LAYER_NAME ,LAYER_NAME
,LAYER_TYPE ,LAYER_TYPE
,ALLOC_METHOD
,END_DATE
,GMT_CREATE ,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAYER_END_DATE ,EXPECT_END_DATE
,LAYER_INTR ,LAYER_INTR
,EFFECT_DATE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_INVEST_STRUCTURE.nextval null
, #{item.layerAmt,jdbcType=BIGINT} , #{item.order,jdbcType=DECIMAL}
, #{item.layerAmt,jdbcType=DECIMAL}
, #{item.grade,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.layerNo,jdbcType=VARCHAR} , #{item.layerNo,jdbcType=VARCHAR}
, #{item.intrType,jdbcType=VARCHAR} , #{item.intrType,jdbcType=VARCHAR}
, #{item.layerName,jdbcType=VARCHAR} , #{item.layerName,jdbcType=VARCHAR}
, #{item.layerType,jdbcType=VARCHAR} , #{item.layerType,jdbcType=VARCHAR}
, #{item.allocMethod,jdbcType=VARCHAR}
, #{item.endDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.effectDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.layerEndDate,jdbcType=DATE} , #{item.expectEndDate,jdbcType=DATE}
, #{item.layerIntr,jdbcType=DECIMAL} , #{item.layerIntr,jdbcType=DECIMAL}
, #{item.effectDate,jdbcType=DATE}
) )
</foreach> </foreach>
</operation> </operation>
<operation name="deleteByPlanNo" remark="根据计划编号删除">
<![CDATA[
DELETE FROM abs_plan_invest_structure
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</operation>
<operation name="selectByPlanNo" multiplicity="many" remark="根据计划编号获取">
SELECT * FROM abs_plan_invest_structure
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
ORDER BY LAYER_TYPE ASC,ID ASC
</operation>
</table> </table>
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
result.setTitleNo(param.getTitleNo()); result.setTitleNo(param.getTitleNo());
//tax 是否计税 //tax 是否计税
result.setTax(param.getTax()); result.setTax(param.getTax());
//sort 排序 //order 排序
result.setSort(param.getSort()); result.setSort(param.getSort());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
//allocNo 分配编号 //allocNo 分配编号
//titleNo 科目编号 //titleNo 科目编号
//tax 是否计税 //tax 是否计税
//sort 排序 //order 排序
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 修改时间 //gmtModified 修改时间
} }
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
//id //id
result.setId(param.getId()); result.setId(param.getId());
//avalAmt 规模
result.setAvalAmt(param.getAvalAmt());
//packNo 资产包编号 //packNo 资产包编号
result.setPackNo(param.getPackNo()); result.setPackNo(param.getPackNo());
//planNo 产品编号 //planNo 产品编号
...@@ -26,10 +24,11 @@ ...@@ -26,10 +24,11 @@
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//packSubmitDate 封包提交日 //packSubmitDate 封包提交日
result.setPackSubmitDate(param.getPackSubmitDate()); result.setPackSubmitDate(param.getPackSubmitDate());
//avalAmt 规模
result.setAvalAmt(param.getAvalAmt());
//id //id
//avalAmt 规模
//packNo 资产包编号 //packNo 资产包编号
//planNo 产品编号 //planNo 产品编号
//status 状态 1.初始化 INIT 2.筛选中 EXEC 3.筛选完成 SCREEN_FIS 4.已封包 PACK 5.已解包 UNPACK 6.已拆包 BREAK 7.已发行 PUBLISH //status 状态 1.初始化 INIT 2.筛选中 EXEC 3.筛选完成 SCREEN_FIS 4.已封包 PACK 5.已解包 UNPACK 6.已拆包 BREAK 7.已发行 PUBLISH
...@@ -41,4 +40,5 @@ ...@@ -41,4 +40,5 @@
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 更新时间 //gmtModified 更新时间
//packSubmitDate 封包提交日 //packSubmitDate 封包提交日
//avalAmt 规模
} }
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
result.setCertNo(param.getCertNo()); result.setCertNo(param.getCertNo());
//extInf 扩展信息 //extInf 扩展信息
result.setExtInf(param.getExtInf()); result.setExtInf(param.getExtInf());
//ownOrg 所属机构(计划) //ownOrg 所属资产池编号
result.setOwnOrg(param.getOwnOrg()); result.setOwnOrg(param.getOwnOrg());
//prodNo 产品码 //prodNo 产品码
result.setProdNo(param.getProdNo()); result.setProdNo(param.getProdNo());
...@@ -108,7 +108,7 @@ ...@@ -108,7 +108,7 @@
//astNo 资产编号 //astNo 资产编号
//certNo //certNo
//extInf 扩展信息 //extInf 扩展信息
//ownOrg 所属机构(计划) //ownOrg 所属资产池编号
//prodNo 产品码 //prodNo 产品码
//riskCl 资产五级分类 //riskCl 资产五级分类
//status NORMAL:正常OVERDUE:逾期CLEARED:结清 //status NORMAL:正常OVERDUE:逾期CLEARED:结清
......
...@@ -10,11 +10,11 @@ ...@@ -10,11 +10,11 @@
result.setBackNo(param.getBackNo()); result.setBackNo(param.getBackNo());
//packNo 资产包编号 //packNo 资产包编号
result.setPackNo(param.getPackNo()); result.setPackNo(param.getPackNo());
//status 状态 归属 IN 赎回 BACK //status 状态,归属 IN,赎回 BACK
result.setStatus(param.getStatus()); result.setStatus(param.getStatus());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//gmtModified 更新时间 //gmtModified 修改时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//repayFinalDate 还款最后归属日 //repayFinalDate 还款最后归属日
result.setRepayFinalDate(param.getRepayFinalDate()); result.setRepayFinalDate(param.getRepayFinalDate());
...@@ -27,9 +27,9 @@ ...@@ -27,9 +27,9 @@
//astNo 资产编号 //astNo 资产编号
//backNo 赎回编号 //backNo 赎回编号
//packNo 资产包编号 //packNo 资产包编号
//status 状态 归属 IN 赎回 BACK //status 状态,归属 IN,赎回 BACK
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 更新时间 //gmtModified 修改时间
//repayFinalDate 还款最后归属日 //repayFinalDate 还款最后归属日
//backRate 赎回定价 //backRate 赎回定价
} }
//id 主键 //id 唯一主键
result.setId(param.getId()); result.setId(param.getId());
//refNo 对应金额类型编号 //refNo 对应资金编号
result.setRefNo(param.getRefNo()); result.setRefNo(param.getRefNo());
//planNo 计划编号 //planNo 计划编号
result.setPlanNo(param.getPlanNo()); result.setPlanNo(param.getPlanNo());
//titleNo 科目编号 //titleNo 科目编号
result.setTitleNo(param.getTitleNo()); result.setTitleNo(param.getTitleNo());
//calcType 计算方式
result.setCalcType(param.getCalcType());
//scaleType 结算基数
result.setScaleType(param.getScaleType());
//titleName 科目名称 //titleName 科目名称
result.setTitleName(param.getTitleName()); result.setTitleName(param.getTitleName());
//titleType 科目类型 //titleType 科目类型(本金,利息,费用)
result.setTitleType(param.getTitleType()); result.setTitleType(param.getTitleType());
//finSerFeeType 金融服务费支付方式 //gmtCreate 创建日期
result.setFinSerFeeType(param.getFinSerFeeType());
//gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//effectDate 起息日 //gmtModified GMT_MODIFIED
result.setEffectDate(param.getEffectDate());
//gmtModified 修改时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//lastPayDate 最近支付日
result.setLastPayDate(param.getLastPayDate());
//lastSettleDate 最近结算日
result.setLastSettleDate(param.getLastSettleDate());
//rate 计算比例,有关联科目时用
result.setRate(param.getRate());
//totalAmt 总金额
result.setTotalAmt(param.getTotalAmt());
//bal 科目余额
result.setBal(param.getBal());
//payAmt 总发生额-付
result.setPayAmt(param.getPayAmt());
//initAmt 初始额度
result.setInitAmt(param.getInitAmt());
//recpAmt 总发生额-收
result.setRecpAmt(param.getRecpAmt());
//entryAmt 入账金额
result.setEntryAmt(param.getEntryAmt());
//payVatax 增值税发生额-付
result.setPayVatax(param.getPayVatax());
//recpVatax 增值税发生额-收
result.setRecpVatax(param.getRecpVatax());
//upperLimit 金额上限
result.setUpperLimit(param.getUpperLimit());
//id 主键 //id 唯一主键
//refNo 对应金额类型编号 //refNo 对应资金编号
//planNo 计划编号 //planNo 计划编号
//titleNo 科目编号 //titleNo 科目编号
//calcType 计算方式
//scaleType 结算基数
//titleName 科目名称 //titleName 科目名称
//titleType 科目类型 //titleType 科目类型(本金,利息,费用)
//finSerFeeType 金融服务费支付方式 //gmtCreate 创建日期
//gmtCreate 创建时间 //gmtModified GMT_MODIFIED
//effectDate 起息日
//gmtModified 修改时间
//lastPayDate 最近支付日
//lastSettleDate 最近结算日
//rate 计算比例,有关联科目时用
//totalAmt 总金额
//bal 科目余额
//payAmt 总发生额-付
//initAmt 初始额度
//recpAmt 总发生额-收
//entryAmt 入账金额
//payVatax 增值税发生额-付
//recpVatax 增值税发生额-收
//upperLimit 金额上限
} }
//id 主键 //id 唯一主键
result.setId(param.getId()); result.setId(param.getId());
//allocAmt 本期分配总额
result.setAllocAmt(param.getAllocAmt());
//planNo 计划编号 //planNo 计划编号
result.setPlanNo(param.getPlanNo()); result.setPlanNo(param.getPlanNo());
//status 分配状态
result.setStatus(param.getStatus());
//allocNo 分配编号 //allocNo 分配编号
result.setAllocNo(param.getAllocNo()); result.setAllocNo(param.getAllocNo());
//planType 计划类型 SPV,PLAN //payDate 本次转付日
result.setPlanType(param.getPlanType());
//approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),
result.setApproveStatus(param.getApproveStatus());
//payDate 兑付日
result.setPayDate(param.getPayDate()); result.setPayDate(param.getPayDate());
//clearDate 结算日 //calcDate 本次计算日
result.setClearDate(param.getClearDate()); result.setCalcDate(param.getCalcDate());
//allocDate 本次分配日
result.setAllocDate(param.getAllocDate());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//gmtModified 修改时间 //reportDate 本次报告日
result.setReportDate(param.getReportDate());
//settleDate 本次结息日
result.setSettleDate(param.getSettleDate());
//gmtModified 更新时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//id 主键 //id 唯一主键
//allocAmt 本期分配总额
//planNo 计划编号 //planNo 计划编号
//status 分配状态
//allocNo 分配编号 //allocNo 分配编号
//planType 计划类型 SPV,PLAN //payDate 本次转付日
//approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"), //calcDate 本次计算日
//payDate 兑付日 //allocDate 本次分配日
//clearDate 结算日
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 修改时间 //reportDate 本次报告日
//settleDate 本次结息日
//gmtModified 更新时间
} }
//id 主键 //id 唯一ID
result.setId(param.getId()); result.setId(param.getId());
//trialAmt 试算金额 //order 排序
result.setTrialAmt(param.getTrialAmt()); result.setSort(param.getSort());
//settleAmt 已结金额
result.setSettleAmt(param.getSettleAmt());
//confirmAmt 确认金额
result.setConfirmAmt(param.getConfirmAmt());
//trialTaxAmt 试算增值税
result.setTrialTaxAmt(param.getTrialTaxAmt());
//confirmTaxAmt 确认增值税
result.setConfirmTaxAmt(param.getConfirmTaxAmt());
//itemNo 事项编号 //itemNo 事项编号
result.setItemNo(param.getItemNo()); result.setItemNo(param.getItemNo());
//planNo 计划编号 //planNo 计划编号
...@@ -20,28 +12,24 @@ ...@@ -20,28 +12,24 @@
result.setAllocNo(param.getAllocNo()); result.setAllocNo(param.getAllocNo());
//titleNo 科目编号 //titleNo 科目编号
result.setTitleNo(param.getTitleNo()); result.setTitleNo(param.getTitleNo());
//tax 是否计税 //allocType 分配类型
result.setTax(param.getTax()); result.setAllocType(param.getAllocType());
//sort 排序 //titleName 科目名称
result.setSort(param.getSort()); result.setTitleName(param.getTitleName());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//gmtModified 修改时间 //gmtModified 更新时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//id 主键 //id 唯一ID
//trialAmt 试算金额 //order 排序
//settleAmt 已结金额
//confirmAmt 确认金额
//trialTaxAmt 试算增值税
//confirmTaxAmt 确认增值税
//itemNo 事项编号 //itemNo 事项编号
//planNo 计划编号 //planNo 计划编号
//allocNo 分配编号 //allocNo 分配编号
//titleNo 科目编号 //titleNo 科目编号
//tax 是否计税 //allocType 分配类型
//sort 排序 //titleName 科目名称
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 修改时间 //gmtModified 更新时间
} }
//id 计划ID //id
result.setId(param.getId()); result.setId(param.getId());
//totalAmt 发行规模 //totalAmt 发行规模
result.setTotalAmt(param.getTotalAmt()); result.setTotalAmt(param.getTotalAmt());
//planNo 计划编号 //allocPeriod 兑付周期
result.setAllocPeriod(param.getAllocPeriod());
//planNo 产品编号
result.setPlanNo(param.getPlanNo()); result.setPlanNo(param.getPlanNo());
//status 计划状态 * PREPARE * CLEARED * SUBSIST * 准备中 * 已清算 * 存续中 //status 产品状态(设计中,已发行,已清算)
result.setStatus(param.getStatus()); result.setStatus(param.getStatus());
//creator 创建人 //planName 产品简称
result.setCreator(param.getCreator());
//payFreq 兑付频率
result.setPayFreq(param.getPayFreq());
//fundType 募集方式 * PUBLIC * PRIVATE * 公募 * 私募.
result.setFundType(param.getFundType());
//modifier 修改人
result.setModifier(param.getModifier());
//planName 计划名
result.setPlanName(param.getPlanName()); result.setPlanName(param.getPlanName());
//planType 计划类型 //gmtCreator 计划创建人
result.setPlanType(param.getPlanType());
//priceType 定价规则类型
result.setPriceType(param.getPriceType());
//gmtCreator 创建人
result.setGmtCreator(param.getGmtCreator()); result.setGmtCreator(param.getGmtCreator());
//gmtModifier 修改人 //tradePlace 交易场所
result.setGmtModifier(param.getGmtModifier()); result.setTradePlace(param.getTradePlace());
//calcIntrType 计息方式 //calcIntrType 计息方式/计息基准
result.setCalcIntrType(param.getCalcIntrType()); result.setCalcIntrType(param.getCalcIntrType());
//approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"), //planFullName 产品全称
result.setApproveStatus(param.getApproveStatus()); result.setPlanFullName(param.getPlanFullName());
//planMgrOrgCode 管理机构 //allocPeriodMethod 兑付周期类型
result.setPlanMgrOrgCode(param.getPlanMgrOrgCode()); result.setAllocPeriodMethod(param.getAllocPeriodMethod());
//sponsorOrgCode 发起机构 //endDate 法定到期日
result.setSponsorOrgCode(param.getSponsorOrgCode());
//passed 是否已通过过
result.setPassed(param.getPassed());
//endDate 计划到期日(信托终止日)计划截止日
result.setEndDate(param.getEndDate()); result.setEndDate(param.getEndDate());
//beginDate 计划设立日(信托设立日) //beginDate 产品成立日
result.setBeginDate(param.getBeginDate()); result.setBeginDate(param.getBeginDate());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//effectDate 计划起息日
result.setEffectDate(param.getEffectDate());
//gmtModified 修改时间 //gmtModified 修改时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//firstPayDate 首次偿付日 首次兑付日 //firstPayDate 首次付日
result.setFirstPayDate(param.getFirstPayDate()); result.setFirstPayDate(param.getFirstPayDate());
//initCalcDate 初始起算日 //firstCalcDate 首次计算日
result.setInitCalcDate(param.getInitCalcDate()); result.setFirstCalcDate(param.getFirstCalcDate());
//firstClearDate 首次结算日 //firstAllocDate 首次分配日
result.setFirstClearDate(param.getFirstClearDate()); result.setFirstAllocDate(param.getFirstAllocDate());
//lastUpdateDate //firstReportDate 首次报告日
result.setLastUpdateDate(param.getLastUpdateDate()); result.setFirstReportDate(param.getFirstReportDate());
//vatRate 增值税率 //firstSettleDate 首次结息日
result.setVatRate(param.getVatRate()); result.setFirstSettleDate(param.getFirstSettleDate());
//finSerFeeRate 金融服务费率
result.setFinSerFeeRate(param.getFinSerFeeRate());
//id 计划ID //id
//totalAmt 发行规模 //totalAmt 发行规模
//planNo 计划编号 //allocPeriod 兑付周期
//status 计划状态 * PREPARE * CLEARED * SUBSIST * 准备中 * 已清算 * 存续中 //planNo 产品编号
//creator 创建人 //status 产品状态(设计中,已发行,已清算)
//payFreq 兑付频率 //planName 产品简称
//fundType 募集方式 * PUBLIC * PRIVATE * 公募 * 私募. //gmtCreator 计划创建人
//modifier 修改人 //tradePlace 交易场所
//planName 计划名 //calcIntrType 计息方式/计息基准
//planType 计划类型 //planFullName 产品全称
//priceType 定价规则类型 //allocPeriodMethod 兑付周期类型
//gmtCreator 创建人 //endDate 法定到期日
//gmtModifier 修改人 //beginDate 产品成立日
//calcIntrType 计息方式
//approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),
//planMgrOrgCode 管理机构
//sponsorOrgCode 发起机构
//passed 是否已通过过
//endDate 计划到期日(信托终止日)计划截止日
//beginDate 计划设立日(信托设立日)
//gmtCreate 创建时间 //gmtCreate 创建时间
//effectDate 计划起息日
//gmtModified 修改时间 //gmtModified 修改时间
//firstPayDate 首次偿付日 首次兑付日 //firstPayDate 首次转付日
//initCalcDate 初始起算日 //firstCalcDate 首次计算日
//firstClearDate 首次结算日 //firstAllocDate 首次分配日
//lastUpdateDate //firstReportDate 首次报告日
//vatRate 增值税率 //firstSettleDate 首次结息日
//finSerFeeRate 金融服务费率
} }
//id //id 唯一主键
result.setId(param.getId()); result.setId(param.getId());
//order
result.setOrder(param.getOrder());
//fixedFeeAmt 固定费用 //fixedFeeAmt 固定费用
result.setFixedFeeAmt(param.getFixedFeeAmt()); result.setFixedFeeAmt(param.getFixedFeeAmt());
//payLimitAmt 支付上限 //payLimitAmt 支付上限
result.setPayLimitAmt(param.getPayLimitAmt()); result.setPayLimitAmt(param.getPayLimitAmt());
//feeNo 费用编号 //feeNo 费用编号
result.setFeeNo(param.getFeeNo()); result.setFeeNo(param.getFeeNo());
//planNo 计划编号 //planNo 产品编号
result.setPlanNo(param.getPlanNo()); result.setPlanNo(param.getPlanNo());
//feeName 费用名称 //feeName 费用名称
result.setFeeName(param.getFeeName()); result.setFeeName(param.getFeeName());
//feeCalcType 计算方式 固定金额("FIXED", "固定金额"), 比例金额("SCALE", "比例金额") //feeCalcType 计费方式
result.setFeeCalcType(param.getFeeCalcType()); result.setFeeCalcType(param.getFeeCalcType());
//feeTimeType 计费时间类型 按期计费("TERM", "按期计费"), 首次结算日("PFCD", "首次结算日"), 计划起息日("PETD", "计划起息日"), 计划到期日("PEDD", "计划到期日") //feeScaleType 费用基准
result.setFeeTimeType(param.getFeeTimeType());
//feeScaleType 费率基准 信托初始规模("START", "信托初始规模"), 信托剩余规模("REMAIN", "信托剩余规模"), 优先级信托初始规模("PRISTART", "优先级信托初始规模"), 优先级信托剩余规模("PRIREMAIN", "优先级信托剩余规模")
result.setFeeScaleType(param.getFeeScaleType()); result.setFeeScaleType(param.getFeeScaleType());
//finSerFeeType 金融服务费支付方式
result.setFinSerFeeType(param.getFinSerFeeType());
//calcByDay 按日计费
result.setCalcByDay(param.getCalcByDay());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//gmtModified 修改时间 //gmtModified 更新时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//feeCalcDefaultDate 默认计费时间
result.setFeeCalcDefaultDate(param.getFeeCalcDefaultDate());
//feeRate 费率 //feeRate 费率
result.setFeeRate(param.getFeeRate()); result.setFeeRate(param.getFeeRate());
//id //id 唯一主键
//order
//fixedFeeAmt 固定费用 //fixedFeeAmt 固定费用
//payLimitAmt 支付上限 //payLimitAmt 支付上限
//feeNo 费用编号 //feeNo 费用编号
//planNo 计划编号 //planNo 产品编号
//feeName 费用名称 //feeName 费用名称
//feeCalcType 计算方式 固定金额("FIXED", "固定金额"), 比例金额("SCALE", "比例金额") //feeCalcType 计费方式
//feeTimeType 计费时间类型 按期计费("TERM", "按期计费"), 首次结算日("PFCD", "首次结算日"), 计划起息日("PETD", "计划起息日"), 计划到期日("PEDD", "计划到期日") //feeScaleType 费用基准
//feeScaleType 费率基准 信托初始规模("START", "信托初始规模"), 信托剩余规模("REMAIN", "信托剩余规模"), 优先级信托初始规模("PRISTART", "优先级信托初始规模"), 优先级信托剩余规模("PRIREMAIN", "优先级信托剩余规模")
//finSerFeeType 金融服务费支付方式
//calcByDay 按日计费
//gmtCreate 创建时间 //gmtCreate 创建时间
//gmtModified 修改时间 //gmtModified 更新时间
//feeCalcDefaultDate 默认计费时间
//feeRate 费率 //feeRate 费率
} }
...@@ -2,40 +2,52 @@ ...@@ -2,40 +2,52 @@
//id //id
result.setId(param.getId()); result.setId(param.getId());
//layerAmt 层级规模 //order 排序
result.setOrder(param.getOrder());
//layerAmt 金额/层级规模
result.setLayerAmt(param.getLayerAmt()); result.setLayerAmt(param.getLayerAmt());
//planNo 计划编号 //grade 评级
result.setGrade(param.getGrade());
//planNo 产品编号
result.setPlanNo(param.getPlanNo()); result.setPlanNo(param.getPlanNo());
//layerNo 编号 //layerNo 层级编号
result.setLayerNo(param.getLayerNo()); result.setLayerNo(param.getLayerNo());
//intrType 利率类型 FLOATING("FLOATING", "浮动利率"), FIXED("FIXED", "固定利率"), NOTICKET("NOTICKET", "无票面利率") //intrType 利率类型
result.setIntrType(param.getIntrType()); result.setIntrType(param.getIntrType());
//layerName 层名称 //layerName 层名称
result.setLayerName(param.getLayerName()); result.setLayerName(param.getLayerName());
//layerType 层级类型 //layerType 分层类型
result.setLayerType(param.getLayerType()); result.setLayerType(param.getLayerType());
//allocMethod 偿付方式
result.setAllocMethod(param.getAllocMethod());
//endDate 到期日
result.setEndDate(param.getEndDate());
//gmtCreate 创建时间 //gmtCreate 创建时间
result.setGmtCreate(param.getGmtCreate()); result.setGmtCreate(param.getGmtCreate());
//effectDate 起息日 //effectDate 起息日
result.setEffectDate(param.getEffectDate()); result.setEffectDate(param.getEffectDate());
//gmtModified 修改时间 //gmtModified 更新时间
result.setGmtModified(param.getGmtModified()); result.setGmtModified(param.getGmtModified());
//layerEndDate 到期日 //expectEndDate 预计到期日
result.setLayerEndDate(param.getLayerEndDate()); result.setExpectEndDate(param.getExpectEndDate());
//layerIntr 层级利率 //layerIntr 利率
result.setLayerIntr(param.getLayerIntr()); result.setLayerIntr(param.getLayerIntr());
//id //id
//layerAmt 层级规模 //order 排序
//planNo 计划编号 //layerAmt 金额/层级规模
//layerNo 编号 //grade 评级
//intrType 利率类型 FLOATING("FLOATING", "浮动利率"), FIXED("FIXED", "固定利率"), NOTICKET("NOTICKET", "无票面利率") //planNo 产品编号
//layerName 层次名称 //layerNo 层级编号
//layerType 层级类型 //intrType 利率类型
//layerName 层级名称
//layerType 分层类型
//allocMethod 偿付方式
//endDate 到期日
//gmtCreate 创建时间 //gmtCreate 创建时间
//effectDate 起息日 //effectDate 起息日
//gmtModified 修改时间 //gmtModified 更新时间
//layerEndDate 到期日 //expectEndDate 预计到期日
//layerIntr 层级利率 //layerIntr 利率
} }
...@@ -100,8 +100,8 @@ public class AbssqrCoreConstants{ ...@@ -100,8 +100,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN_ALLOC_ITEM{ public static class ABS_PLAN_ALLOC_ITEM{
public static final String tableName="ABS_PLAN_ALLOC_ITEM"; public static final String tableName="ABS_PLAN_ALLOC_ITEM";
public static final String Base_SF_Column_List = "sf.ID,sf.TRIAL_AMT,sf.CONFIRM_AMT,sf.TRIAL_TAX_AMT,sf.CONFIRM_TAX_AMT ,sf.ITEM_NO,sf.PLAN_NO,sf.ALLOC_NO,sf.TITLE_NO,sf.TAX,sf.SORT ,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.SETTLE_AMT"; public static final String Base_SF_Column_List = "sf.ID,sf.SORT,sf.ITEM_NO,sf.PLAN_NO,sf.ALLOC_NO ,sf.TITLE_NO,sf.ALLOC_TYPE,sf.TITLE_NAME,sf.GMT_CREATE,sf.GMT_MODIFIED";
public static final String Base_Column_List = "ID,TRIAL_AMT,CONFIRM_AMT,TRIAL_TAX_AMT,CONFIRM_TAX_AMT ,ITEM_NO,PLAN_NO,ALLOC_NO,TITLE_NO,TAX,SORT ,GMT_CREATE,GMT_MODIFIED,SETTLE_AMT"; public static final String Base_Column_List = "ID,SORT,ITEM_NO,PLAN_NO,ALLOC_NO ,TITLE_NO,ALLOC_TYPE,TITLE_NAME,GMT_CREATE,GMT_MODIFIED";
} }
public static class ABS_AST_PRICE_RULE{ public static class ABS_AST_PRICE_RULE{
public static final String tableName="ABS_AST_PRICE_RULE"; public static final String tableName="ABS_AST_PRICE_RULE";
...@@ -115,8 +115,8 @@ public class AbssqrCoreConstants{ ...@@ -115,8 +115,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN_FEE_STRUCTURE{ public static class ABS_PLAN_FEE_STRUCTURE{
public static final String tableName="ABS_PLAN_FEE_STRUCTURE"; public static final String tableName="ABS_PLAN_FEE_STRUCTURE";
public static final String Base_SF_Column_List = "sf.ID,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO,sf.PLAN_NO ,sf.FEE_NAME,sf.FEE_CALC_TYPE,sf.FEE_TIME_TYPE,sf.FEE_SCALE_TYPE,sf.CALC_BY_DAY ,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FEE_RATE ,sf.FIN_SER_FEE_TYPE"; public static final String Base_SF_Column_List = "sf.ID,sf.SORT,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO ,sf.PLAN_NO,sf.FEE_CALC_TYPE,sf.FEE_SCALE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED ,sf.FEE_CALC_DEFAULT_DATE,sf.FEE_RATE";
public static final String Base_Column_List = "ID,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO,PLAN_NO ,FEE_NAME,FEE_CALC_TYPE,FEE_TIME_TYPE,FEE_SCALE_TYPE,CALC_BY_DAY ,GMT_CREATE,GMT_MODIFIED,FEE_RATE ,FIN_SER_FEE_TYPE"; public static final String Base_Column_List = "ID,SORT,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO ,PLAN_NO,FEE_CALC_TYPE,FEE_SCALE_TYPE,GMT_CREATE,GMT_MODIFIED ,FEE_CALC_DEFAULT_DATE,FEE_RATE";
} }
public static class ABS_PLAN_CLEARING_LOG_HIS{ public static class ABS_PLAN_CLEARING_LOG_HIS{
public static final String tableName="ABS_PLAN_CLEARING_LOG_HIS"; public static final String tableName="ABS_PLAN_CLEARING_LOG_HIS";
...@@ -203,8 +203,8 @@ public class AbssqrCoreConstants{ ...@@ -203,8 +203,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN_ACCT_TITLE{ public static class ABS_PLAN_ACCT_TITLE{
public static final String tableName="ABS_PLAN_ACCT_TITLE"; public static final String tableName="ABS_PLAN_ACCT_TITLE";
public static final String Base_SF_Column_List = "sf.ID,sf.BAL,sf.PAY_AMT,sf.RECP_AMT,sf.PAY_VATAX,sf.TOTAL_AMT,sf.ENTRY_AMT,sf.REF_NO ,sf.INIT_AMT,sf.RECP_VATAX,sf.UPPER_LIMIT,sf.PLAN_NO,sf.TITLE_NO ,sf.CALC_TYPE,sf.TITLE_NAME,sf.TITLE_TYPE,sf.SCALE_TYPE,sf.GMT_CREATE ,sf.GMT_MODIFIED,sf.LAST_PAY_DATE,sf.LAST_SETTLE_DATE,sf.RATE ,sf.FIN_SER_FEE_TYPE,sf.EFFECT_DATE"; public static final String Base_SF_Column_List = "sf.ID,sf.REF_NO,sf.PLAN_NO,sf.TITLE_NO,sf.TITLE_NAME ,sf.TITLE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED";
public static final String Base_Column_List = "ID,BAL,PAY_AMT,RECP_AMT,PAY_VATAX,TOTAL_AMT,ENTRY_AMT,REF_NO ,INIT_AMT,RECP_VATAX,UPPER_LIMIT,PLAN_NO,TITLE_NO ,CALC_TYPE,TITLE_NAME,TITLE_TYPE,SCALE_TYPE,GMT_CREATE ,GMT_MODIFIED,LAST_PAY_DATE,LAST_SETTLE_DATE,RATE ,FIN_SER_FEE_TYPE,EFFECT_DATE"; public static final String Base_Column_List = "ID,REF_NO,PLAN_NO,TITLE_NO,TITLE_NAME ,TITLE_TYPE,GMT_CREATE,GMT_MODIFIED";
} }
public static class ABS_AST_SYNC_TASK_CTR{ public static class ABS_AST_SYNC_TASK_CTR{
public static final String tableName="ABS_AST_SYNC_TASK_CTR"; public static final String tableName="ABS_AST_SYNC_TASK_CTR";
...@@ -239,8 +239,8 @@ public class AbssqrCoreConstants{ ...@@ -239,8 +239,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN_INVEST_STRUCTURE{ public static class ABS_PLAN_INVEST_STRUCTURE{
public static final String tableName="ABS_PLAN_INVEST_STRUCTURE"; public static final String tableName="ABS_PLAN_INVEST_STRUCTURE";
public static final String Base_SF_Column_List = "sf.ID,sf.LAYER_AMT,sf.PLAN_NO,sf.LAYER_NO,sf.INTR_TYPE ,sf.LAYER_NAME,sf.LAYER_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.LAYER_END_DATE ,sf.LAYER_INTR,sf.EFFECT_DATE"; public static final String Base_SF_Column_List = "sf.ID,sf.ORDER,sf.LAYER_AMT,sf.GRADE,sf.PLAN_NO ,sf.LAYER_NO,sf.INTR_TYPE,sf.LAYER_NAME,sf.LAYER_TYPE,sf.ALLOC_METHOD ,sf.END_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED,sf.EXPECT_END_DATE ,sf.LAYER_INTR";
public static final String Base_Column_List = "ID,LAYER_AMT,PLAN_NO,LAYER_NO,INTR_TYPE ,LAYER_NAME,LAYER_TYPE,GMT_CREATE,GMT_MODIFIED,LAYER_END_DATE ,LAYER_INTR,EFFECT_DATE"; public static final String Base_Column_List = "ID,ORDER,LAYER_AMT,GRADE,PLAN_NO ,LAYER_NO,INTR_TYPE,LAYER_NAME,LAYER_TYPE,ALLOC_METHOD ,END_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED,EXPECT_END_DATE ,LAYER_INTR";
} }
public static class ABS_PLAN_TASK_LOG{ public static class ABS_PLAN_TASK_LOG{
public static final String tableName="ABS_PLAN_TASK_LOG"; public static final String tableName="ABS_PLAN_TASK_LOG";
...@@ -280,8 +280,8 @@ public class AbssqrCoreConstants{ ...@@ -280,8 +280,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN_ALLOC{ public static class ABS_PLAN_ALLOC{
public static final String tableName="ABS_PLAN_ALLOC"; public static final String tableName="ABS_PLAN_ALLOC";
public static final String Base_SF_Column_List = "sf.ID,sf.ALLOC_NO,sf.PAY_DATE,sf.CLEAR_DATE,sf.GMT_CREATE ,sf.GMT_MODIFIED,sf.ALLOC_AMT,sf.PLAN_NO,sf.STATUS ,sf.APPROVE_STATUS,sf.PLAN_TYPE"; public static final String Base_SF_Column_List = "sf.ID,sf.PLAN_NO,sf.ALLOC_NO,sf.PAY_DATE,sf.CALC_DATE ,sf.ALLOC_DATE,sf.GMT_CREATE,sf.REPORT_DATE,sf.SETTLE_DATE,sf.GMT_MODIFIED";
public static final String Base_Column_List = "ID,ALLOC_NO,PAY_DATE,CLEAR_DATE,GMT_CREATE ,GMT_MODIFIED,ALLOC_AMT,PLAN_NO,STATUS,APPROVE_STATUS ,PLAN_TYPE"; public static final String Base_Column_List = "ID,PLAN_NO,ALLOC_NO,PAY_DATE,CALC_DATE ,ALLOC_DATE,GMT_CREATE,REPORT_DATE,SETTLE_DATE,GMT_MODIFIED";
} }
public static class ABS_LOAN_INSTAL{ public static class ABS_LOAN_INSTAL{
public static final String tableName="ABS_LOAN_INSTAL"; public static final String tableName="ABS_LOAN_INSTAL";
...@@ -295,8 +295,8 @@ public class AbssqrCoreConstants{ ...@@ -295,8 +295,8 @@ public class AbssqrCoreConstants{
} }
public static class ABS_PLAN{ public static class ABS_PLAN{
public static final String tableName="ABS_PLAN"; public static final String tableName="ABS_PLAN";
public static final String Base_SF_Column_List = "sf.ID,sf.LAST_UPDATE_DATE,sf.TOTAL_AMT,sf.PLAN_NO,sf.STATUS ,sf.CREATOR,sf.FUND_TYPE,sf.MODIFIER,sf.PLAN_NAME,sf.APPROVE_STATUS ,sf.PLAN_MGR_ORG_CODE,sf.SPONSOR_ORG_CODE,sf.END_DATE ,sf.BEGIN_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED ,sf.FIRST_PAY_DATE,sf.INIT_CALC_DATE,sf.FIRST_CLEAR_DATE ,sf.PAY_FREQ,sf.CALC_INTR_TYPE,sf.VAT_RATE,sf.GMT_CREATOR,sf.GMT_MODIFIER ,sf.PASSED,sf.PLAN_TYPE,sf.PRICE_TYPE,sf.FIN_SER_FEE_RATE"; public static final String Base_SF_Column_List = "sf.ID,sf.TOTAL_AMT,sf.ALLOC_PERIOD,sf.PLAN_NO,sf.STATUS ,sf.PLAN_NAME,sf.TRADE_PLACE,sf.CALC_INTR_TYPE,sf.PLAN_FULL_NAME,sf.ALLOC_PERIOD_METHOD ,sf.END_DATE,sf.BEGIN_DATE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FIRST_PAY_DATE ,sf.FIRST_CALC_DATE,sf.FIRST_ALLOC_DATE,sf.FIRST_REPORT_DATE,sf.FIRST_SETTLE_DATE";
public static final String Base_Column_List = "ID,LAST_UPDATE_DATE,TOTAL_AMT,PLAN_NO,STATUS ,CREATOR,FUND_TYPE,MODIFIER,PLAN_NAME,APPROVE_STATUS ,PLAN_MGR_ORG_CODE,SPONSOR_ORG_CODE,END_DATE ,BEGIN_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED ,FIRST_PAY_DATE,INIT_CALC_DATE,FIRST_CLEAR_DATE ,PAY_FREQ,CALC_INTR_TYPE,VAT_RATE,GMT_CREATOR,GMT_MODIFIER ,PASSED,PLAN_TYPE,PRICE_TYPE,FIN_SER_FEE_RATE"; public static final String Base_Column_List = "ID,TOTAL_AMT,ALLOC_PERIOD,PLAN_NO,STATUS ,PLAN_NAME,TRADE_PLACE,CALC_INTR_TYPE,PLAN_FULL_NAME,ALLOC_PERIOD_METHOD ,END_DATE,BEGIN_DATE,GMT_CREATE,GMT_MODIFIED,FIRST_PAY_DATE ,FIRST_CALC_DATE,FIRST_ALLOC_DATE,FIRST_REPORT_DATE,FIRST_SETTLE_DATE";
} }
public static class ABS_PRODUCT_RISK_CL{ public static class ABS_PRODUCT_RISK_CL{
public static final String tableName="ABS_PRODUCT_RISK_CL"; public static final String tableName="ABS_PRODUCT_RISK_CL";
......
...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAcctTitleDOMapper; ...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAcctTitleDOMapper;
/** /**
* The Table abs_plan_acct_title. * The Table abs_plan_acct_title.
* 计划结算科目信息(收付实现制) * ABS_PLAN_ACCT_TITLE
*/ */
@Repository @Repository
public class PlanAcctTitleDAO{ public class PlanAcctTitleDAO{
...@@ -36,62 +36,4 @@ public class PlanAcctTitleDAO{ ...@@ -36,62 +36,4 @@ public class PlanAcctTitleDAO{
planAcctTitleDOMapper.insertBatch(list); planAcctTitleDOMapper.insertBatch(list);
return list.size(); return list.size();
} }
/**
* desc:根据唯一约束AbsPlanAcctTitle更新表:abs_plan_acct_title.<br/>
* @param entity entity
* @return int
*/
public int updateAmt(PlanAcctTitleDO entity){
return planAcctTitleDOMapper.updateAmt(entity);
}
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @return List<PlanAcctTitleDO>
*/
public List<PlanAcctTitleDO> getByPlan(String planNo){
return planAcctTitleDOMapper.getByPlan(planNo);
}
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @param listTitleType listTitleType
* @return List<PlanAcctTitleDO>
*/
public List<PlanAcctTitleDO> getByPlanAndTypes(String planNo,List<String> listTitleType){
if(listTitleType!=null && listTitleType.size()>201){throw new RuntimeException("listTitleType 超出201长度限制");}
return planAcctTitleDOMapper.getByPlanAndTypes(planNo, listTitleType);
}
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param list list
* @return List<PlanAcctTitleDO>
*/
public List<PlanAcctTitleDO> getFinFeesByPlan(List<String> list){
if(list!=null && list.size()>201){throw new RuntimeException("list 超出201长度限制");}
return planAcctTitleDOMapper.getFinFeesByPlan(list);
}
/**
* desc:根据唯一约束AbsPlanAcctTitle获取数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @param titleNo titleNo
* @return PlanAcctTitleDO
*/
public PlanAcctTitleDO getByTitleNo(String planNo,String titleNo){
return planAcctTitleDOMapper.getByTitleNo(planNo, titleNo);
}
/**
* desc:根据计划编号删除分配信息.<br/>
* @param planNo planNo
* @return int
*/
public int deleteByPlanNo(String planNo){
return planAcctTitleDOMapper.deleteByPlanNo(planNo);
}
} }
...@@ -5,13 +5,11 @@ import org.springframework.stereotype.Repository; ...@@ -5,13 +5,11 @@ import org.springframework.stereotype.Repository;
import java.util.ArrayList; import java.util.ArrayList;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO;
import java.util.List; import java.util.List;
import java.util.Date;
import java.lang.Long;
import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAllocDOMapper; import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAllocDOMapper;
/** /**
* The Table abs_plan_alloc. * The Table abs_plan_alloc.
* 计划-分配计划 * 分配计划表
*/ */
@Repository @Repository
public class PlanAllocDAO{ public class PlanAllocDAO{
...@@ -39,145 +37,21 @@ public class PlanAllocDAO{ ...@@ -39,145 +37,21 @@ public class PlanAllocDAO{
return list.size(); return list.size();
} }
/** /**
* desc:更新表:abs_plan_alloc.<br/> * desc:根据主键删除数据:abs_plan_alloc.<br/>
* @param entity entity * @param id id
* @return int
*/
public int updateByAllocNo(PlanAllocDO entity){
return planAllocDOMapper.updateByAllocNo(entity);
}
/**
* desc:根据AllocNo删除数据:abs_plan_alloc.<br/>
* @param allocNo allocNo
* @return int * @return int
*/ */
public int deleteByAllocNo(String allocNo){ public int deleteById(Long id){
return planAllocDOMapper.deleteByAllocNo(allocNo); return planAllocDOMapper.deleteById(id);
} }
/** /**
* desc:根据主键获取数据:abs_plan_alloc.<br/> * desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param allocNo allocNo * @param id id
* @return PlanAllocDO * @return PlanAllocDO
*/ */
public PlanAllocDO getByAllocNo(String allocNo){ public PlanAllocDO getById(Long id){
return planAllocDOMapper.getByAllocNo(allocNo); return planAllocDOMapper.getById(id);
}
/**
* desc:更新状态.<br/>
* @param status status
* @param allocNo allocNo
* @param oldStatus oldStatus
* @return int
*/
public int updateStatus(String status,String allocNo,String oldStatus){
return planAllocDOMapper.updateStatus(status, allocNo, oldStatus);
}
/**
* desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
public List<PlanAllocDO> queryByPlanNo(String planNo){
return planAllocDOMapper.queryByPlanNo(planNo);
}
/**
* desc:根据计划编号获取时间段分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param planNo planNo
* @param status status
* @return List<PlanAllocDO>
*/
public List<PlanAllocDO> queryAllocByPlanNo(Date endDate,Date startDate,String planNo,String status){
return planAllocDOMapper.queryAllocByPlanNo(endDate, startDate, planNo, status);
}
/**
* desc:根据兑付日获取查询最近计划:abs_plan_alloc.<br/>
* @param planType planType
* @return PlanAllocDO
*/
public PlanAllocDO queryRecentlyPlans(String planType){
return planAllocDOMapper.queryRecentlyPlans(planType);
}
/**
* desc:查询相同结算日分配计划数量.<br/>
* @param clearDate clearDate
* @param planNo planNo
* @param allocNo allocNo
* @return int
*/
public int querySameClearDate(Date clearDate,String planNo,String allocNo){
return planAllocDOMapper.querySameClearDate(clearDate, planNo, allocNo);
}
/**
* desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param allocNo allocNo
* @return PlanAllocDO
*/
public PlanAllocDO lockByAllocNo(String allocNo){
return planAllocDOMapper.lockByAllocNo(allocNo);
}
/**
* desc:获取所有已审批通过未解绑的兑付计划.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
public List<PlanAllocDO> queryUnMatchedApprovedAlloc(String planNo){
return planAllocDOMapper.queryUnMatchedApprovedAlloc(planNo);
}
/**
* desc:根据计划编号获取时间段分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param planNo planNo
* @param status status
* @param approveStatus approveStatus
* @return Long
*/
public Long queryStatAllocAmtByPlanNoAndPayDate(Date endDate,Date startDate,String planNo,String status,String approveStatus){
return planAllocDOMapper.queryStatAllocAmtByPlanNoAndPayDate(endDate, startDate, planNo, status, approveStatus);
}
/**
* desc:根据计划编号获取累计分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param status status
* @param approveStatus approveStatus
* @param listPlanNos listPlanNos
* @return Long
*/
public Long queryStatTotalAllocAmtByPlanNos(Date endDate,Date startDate,String status,String approveStatus,List<String> listPlanNos){
if(listPlanNos!=null && listPlanNos.size()>201){throw new RuntimeException("listPlanNos 超出201长度限制");}
return planAllocDOMapper.queryStatTotalAllocAmtByPlanNos(endDate, startDate, status, approveStatus, listPlanNos);
}
/**
* desc:根据计划编号删除分配方案.<br/>
* @param planNo planNo
* @return int
*/
public int deleteByPlanNo(String planNo){
return planAllocDOMapper.deleteByPlanNo(planNo);
}
/**
* desc:查询已审批未兑付的分配计划.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
public List<PlanAllocDO> queryApprovedNotPayAlloc(String planNo){
return planAllocDOMapper.queryApprovedNotPayAlloc(planNo);
} }
} }
...@@ -5,17 +5,11 @@ import org.springframework.stereotype.Repository; ...@@ -5,17 +5,11 @@ import org.springframework.stereotype.Repository;
import java.util.ArrayList; import java.util.ArrayList;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO;
import java.util.List; import java.util.List;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanAllocItemResultMap;
import java.util.Map;
import java.util.Set;
import java.util.LinkedHashMap;
import java.util.ArrayList;
import java.util.HashSet;
import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAllocItemDOMapper; import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanAllocItemDOMapper;
/** /**
* The Table abs_plan_alloc_item. * The Table abs_plan_alloc_item.
* 分配事项 * 分配计划事项表
*/ */
@Repository @Repository
public class PlanAllocItemDAO{ public class PlanAllocItemDAO{
...@@ -60,104 +54,4 @@ public class PlanAllocItemDAO{ ...@@ -60,104 +54,4 @@ public class PlanAllocItemDAO{
public PlanAllocItemDO getById(Long id){ public PlanAllocItemDO getById(Long id){
return planAllocItemDOMapper.getById(id); return planAllocItemDOMapper.getById(id);
} }
/**
* desc:根据唯一约束ItemNo更新表:abs_plan_alloc_item.<br/>
* @param entity entity
* @return int
*/
public int updateByItemNo(PlanAllocItemDO entity){
return planAllocItemDOMapper.updateByItemNo(entity);
}
/**
* desc:根据唯一约束ItemNo删除数据:abs_plan_alloc_item.<br/>
* @param itemNo itemNo
* @return int
*/
public int deleteByItemNo(String itemNo){
return planAllocItemDOMapper.deleteByItemNo(itemNo);
}
/**
* desc:根据唯一约束ItemNo获取数据:abs_plan_alloc_item.<br/>
* @param itemNo itemNo
* @return PlanAllocItemDO
*/
public PlanAllocItemDO getByItemNo(String itemNo){
return planAllocItemDOMapper.getByItemNo(itemNo);
}
/**
* desc:根据计划编号获取分配事项.<br/>
* @param planNo planNo
* @return Map<String,List<PlanAllocItemResultMap>>
*/
public List<PlanAllocItemResultMap> getByPlanNoList(String planNo){
return planAllocItemDOMapper.getByPlanNo(planNo);
}
/**
* desc:根据计划编号获取分配事项.<br/>
* @param planNo planNo
* @return Map<String,List<PlanAllocItemResultMap>>
*/
public Map<String,List<PlanAllocItemResultMap>> getByPlanNo(String planNo){
Map<String,List<PlanAllocItemResultMap>> result = new LinkedHashMap();
List<PlanAllocItemResultMap> resultList = planAllocItemDOMapper.getByPlanNo(planNo);
if(resultList!=null && !resultList.isEmpty()){
for(PlanAllocItemResultMap entity:resultList){
List<PlanAllocItemResultMap> vList = result.get(entity.getAllocNo());
if(vList == null){
vList = new ArrayList();
result.put(entity.getAllocNo(),vList);
}
vList.add(entity);
}
}
return result;
}
/**
* desc:根据分配编号获取分配事项.<br/>
* @param allocNo allocNo
* @return Map<String,Long>
*/
public List<PlanAllocItemResultMap> getByAllocNoList(String allocNo){
return planAllocItemDOMapper.getByAllocNo(allocNo);
}
/**
* desc:根据分配编号获取分配事项.<br/>
* @param allocNo allocNo
* @return Map<String,Long>
*/
public Map<String,Long> getByAllocNo(String allocNo){
Map<String,Long> result = new LinkedHashMap();
List<PlanAllocItemResultMap> resultList = planAllocItemDOMapper.getByAllocNo(allocNo);
if(resultList!=null && !resultList.isEmpty()){
for(PlanAllocItemResultMap entity:resultList){
result.put(entity.getTitleNo(),entity.getSettleAmt());
}
}
return result;
}
/**
* desc:根据allocNo删除数据:abs_plan_alloc_item.<br/>
* @param allocNo allocNo
* @return int
*/
public int deleteByAllocNo(String allocNo){
return planAllocItemDOMapper.deleteByAllocNo(allocNo);
}
/**
* desc:根据planNo删除数据.<br/>
* @param planNo planNo
* @return int
*/
public int deleteByPlanNo(String planNo){
return planAllocItemDOMapper.deleteByPlanNo(planNo);
}
} }
...@@ -5,20 +5,11 @@ import org.springframework.stereotype.Repository; ...@@ -5,20 +5,11 @@ import org.springframework.stereotype.Repository;
import java.util.ArrayList; import java.util.ArrayList;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.LinkedHashMap;
import java.util.ArrayList;
import java.util.HashSet;
import com.abssqr.plat.common.dal.mysql.auto.paging.PlanListPage;
import java.lang.Long;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstServiceReport;
import java.util.Date;
import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanDOMapper; import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanDOMapper;
/** /**
* The Table abs_plan. * The Table abs_plan.
* 计划信息 * 产品表
*/ */
@Repository @Repository
public class PlanDAO{ public class PlanDAO{
...@@ -36,192 +27,13 @@ public class PlanDAO{ ...@@ -36,192 +27,13 @@ public class PlanDAO{
return planDOMapper.insert(entity); return planDOMapper.insert(entity);
} }
/** /**
* desc:根据唯一约束PlanNo更新表:abs_plan.<br/> * desc:批量插入表:abs_plan.<br/>
* @param entity entity
* @return int
*/
public int updateByPlanNo(PlanDO entity){
return planDOMapper.updateByPlanNo(entity);
}
/**
* desc:根据唯一约束PlanNo更新表:abs_plan.<br/>
* @param planNo planNo
* @param status status
* @param gmtModifier gmtModifier
* @param approveStatus approveStatus
* @return int
*/
public int updateStatusByPlanNo(String planNo,String status,String gmtModifier,String approveStatus){
return planDOMapper.updateStatusByPlanNo(planNo, status, gmtModifier, approveStatus);
}
/**
* desc:根据唯一约束PlanNo修改状态:abs_plan.<br/>
* @param planNo planNo
* @param passed passed
* @return int
*/
public int updatePassed(String planNo,Boolean passed){
return planDOMapper.updatePassed(planNo, passed);
}
/**
* desc:根据唯一约束PlanNo删除数据:abs_plan.<br/>
* @param planNo planNo
* @return int
*/
public int deleteByPlanNo(String planNo){
return planDOMapper.deleteByPlanNo(planNo);
}
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param planNo planNo
* @return PlanDO
*/
public PlanDO getByPlanNo(String planNo){
return planDOMapper.getByPlanNo(planNo);
}
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param planNo planNo
* @return PlanDO
*/
public PlanDO lockByPlanNo(String planNo){
return planDOMapper.lockByPlanNo(planNo);
}
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param list list * @param list list
* @return Map<String,String>
*/
public List<PlanDO> queryByPlanNoList(List<String> list){
return planDOMapper.queryByPlanNo(list);
}
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param list list
* @return Map<String,String>
*/
public Map<String,String> queryByPlanNo(List<String> list){
if(list!=null && list.size()>201){throw new RuntimeException("list 超出201长度限制");}
Map<String,String> result = new LinkedHashMap();
List<PlanDO> resultList = planDOMapper.queryByPlanNo(list);
if(resultList!=null && !resultList.isEmpty()){
for(PlanDO entity:resultList){
result.put(entity.getPlanNo(),entity.getPlanName());
}
}
return result;
}
/**
* desc:新增判断计划是否存在.<br/>
* @param planNo planNo
* @param planName planName
* @return Integer
*/
public Integer planExist(String planNo,String planName){
return planDOMapper.planExist(planNo, planName);
}
/**
* desc:编辑判断计划是否存在.<br/>
* @param planNo planNo
* @param planName planName
* @return Integer
*/
public Integer getSamePlan(String planNo,String planName){
return planDOMapper.getSamePlan(planNo, planName);
}
/**
* desc:分页查询计划.<br/>
* @param planList planList
* @return PlanListPage
*/
public PlanListPage getPlanList(PlanListPage planList){
int total = planDOMapper.getPlanListCount(planList);
if(total>0){
planList.setDatas(planDOMapper.getPlanListResult(planList));
}else{
planList.setDatas(new ArrayList());
}
planList.setTotal(total);
return planList;
}
/**
* desc:根据状态数组获取计划列表.<br/>
* @param planType planType
* @param planNos planNos
* @param statusList statusList
* @return List<PlanDO>
*/
public List<PlanDO> getPlansByStatusList(String planType,List<String> planNos,List<String> statusList){
if(planNos!=null && planNos.size()>201){throw new RuntimeException("planNos 超出201长度限制");}
if(statusList!=null && statusList.size()>201){throw new RuntimeException("statusList 超出201长度限制");}
return planDOMapper.getPlansByStatusList(planType, planNos, statusList);
}
/**
* desc:根据状态数组获取计划列表.<br/>
* @param status status
* @param planType planType
* @return Long
*/
public Long getAllPlanAmt(String status,String planType){
return planDOMapper.getAllPlanAmt(status, planType);
}
/**
* desc:查询资产服务报告.<br/>
* @param planNo planNo
* @return AstServiceReport
*/
public AstServiceReport getAstServiceReport(String planNo){
return planDOMapper.getAstServiceReport(planNo);
}
/**
* desc:根据服务机构获取存续期受让计划.<br/>
* @param managerOrgCode managerOrgCode
* @return List<PlanDO>
*/
public List<PlanDO> getSpvByManagerOrgCode(String managerOrgCode){
return planDOMapper.getSpvByManagerOrgCode(managerOrgCode);
}
/**
* desc:查询每日任务失败的数量.<br/>
* @param curDate curDate
* @return Long
*/
public Long getFailDailyCount(Date curDate){
return planDOMapper.getFailDailyCount(curDate);
}
/**
* desc:更新定价规则.<br/>
* @param planNo planNo
* @param priceType priceType
* @return int * @return int
*/ */
public int updatePriceType(String planNo,String priceType){ public int insertBatch(List<PlanDO> list){
return planDOMapper.updatePriceType(planNo, priceType); planDOMapper.insertBatch(list);
} return list.size();
/**
* desc:根据类型获取所有的计划.<br/>
* @param planType planType
* @return List<PlanDO>
*/
public List<PlanDO> getAllPlanByType(String planType){
return planDOMapper.getAllPlanByType(planType);
} }
} }
...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanFeeStructureDOMapper; ...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanFeeStructureDOMapper;
/** /**
* The Table abs_plan_fee_structure. * The Table abs_plan_fee_structure.
* 计划费用结构 * ABS_PLAN_FEE_STRUCTURE
*/ */
@Repository @Repository
public class PlanFeeStructureDAO{ public class PlanFeeStructureDAO{
...@@ -18,6 +18,15 @@ public class PlanFeeStructureDAO{ ...@@ -18,6 +18,15 @@ public class PlanFeeStructureDAO{
private PlanFeeStructureDOMapper planFeeStructureDOMapper; private PlanFeeStructureDOMapper planFeeStructureDOMapper;
/** /**
* desc:插入表:abs_plan_fee_structure.<br/>
* @param entity entity
* @return int
*/
public int insert(PlanFeeStructureDO entity){
return planFeeStructureDOMapper.insert(entity);
}
/**
* desc:批量插入表:abs_plan_fee_structure.<br/> * desc:批量插入表:abs_plan_fee_structure.<br/>
* @param list list * @param list list
* @return int * @return int
...@@ -28,21 +37,21 @@ public class PlanFeeStructureDAO{ ...@@ -28,21 +37,21 @@ public class PlanFeeStructureDAO{
return list.size(); return list.size();
} }
/** /**
* desc:根据计划编号删除数据:abs_plan_fee_structure.<br/> * desc:根据主键删除数据:abs_plan_fee_structure.<br/>
* @param planNo planNo * @param id id
* @return int * @return int
*/ */
public int deleteByPlanNo(String planNo){ public int deleteById(Long id){
return planFeeStructureDOMapper.deleteByPlanNo(planNo); return planFeeStructureDOMapper.deleteById(id);
} }
/** /**
* desc:根据计划编号获取数据:abs_plan_fee_structure.<br/> * desc:根据主键获取数据:abs_plan_fee_structure.<br/>
* @param planNo planNo * @param id id
* @return List<PlanFeeStructureDO> * @return PlanFeeStructureDO
*/ */
public List<PlanFeeStructureDO> selectByPlanNo(String planNo){ public PlanFeeStructureDO getById(Long id){
return planFeeStructureDOMapper.selectByPlanNo(planNo); return planFeeStructureDOMapper.getById(id);
} }
} }
...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanInvestStructureDOMapper; ...@@ -9,7 +9,7 @@ import com.abssqr.plat.common.dal.mysql.auto.mapper.PlanInvestStructureDOMapper;
/** /**
* The Table abs_plan_invest_structure. * The Table abs_plan_invest_structure.
* 投资结构 * ABS_PLAN_INVEST_STRUCTURE
*/ */
@Repository @Repository
public class PlanInvestStructureDAO{ public class PlanInvestStructureDAO{
...@@ -18,31 +18,22 @@ public class PlanInvestStructureDAO{ ...@@ -18,31 +18,22 @@ public class PlanInvestStructureDAO{
private PlanInvestStructureDOMapper planInvestStructureDOMapper; private PlanInvestStructureDOMapper planInvestStructureDOMapper;
/** /**
* desc:批量插入表:abs_plan_invest_structure.<br/> * desc:插入表:abs_plan_invest_structure.<br/>
* @param list list * @param entity entity
* @return int * @return int
*/ */
public int insertBatch(List<PlanInvestStructureDO> list){ public int insert(PlanInvestStructureDO entity){
planInvestStructureDOMapper.insertBatch(list); return planInvestStructureDOMapper.insert(entity);
return list.size();
} }
/** /**
* desc:根据计划编号删除.<br/> * desc:批量插入表:abs_plan_invest_structure.<br/>
* @param planNo planNo * @param list list
* @return int * @return int
*/ */
public int deleteByPlanNo(String planNo){ public int insertBatch(List<PlanInvestStructureDO> list){
return planInvestStructureDOMapper.deleteByPlanNo(planNo); planInvestStructureDOMapper.insertBatch(list);
} return list.size();
/**
* desc:根据计划编号获取.<br/>
* @param planNo planNo
* @return List<PlanInvestStructureDO>
*/
public List<PlanInvestStructureDO> selectByPlanNo(String planNo){
return planInvestStructureDOMapper.selectByPlanNo(planNo);
} }
} }
package com.abssqr.plat.common.dal.mysql.auto.dataobject; package com.abssqr.plat.common.dal.mysql.auto.dataobject;
import java.util.Date; import java.util.Date;
import java.math.BigDecimal;
import com.general.system.common.model.Money;
/** /**
* The table 计划结算科目信息(收付实现制) * The table ABS_PLAN_ACCT_TITLE
*/ */
public class PlanAcctTitleDO{ public class PlanAcctTitleDO{
/** /**
* id 主键. * id 唯一主键.
*/ */
private Long id; private Long id;
/** /**
* refNo 对应金额类型编号. * refNo 对应资金编号.
*/ */
private String refNo; private String refNo;
/** /**
...@@ -26,95 +24,31 @@ public class PlanAcctTitleDO{ ...@@ -26,95 +24,31 @@ public class PlanAcctTitleDO{
*/ */
private String titleNo; private String titleNo;
/** /**
* calcType 计算方式.
*/
private String calcType;
/**
* scaleType 结算基数.
*/
private String scaleType;
/**
* titleName 科目名称. * titleName 科目名称.
*/ */
private String titleName; private String titleName;
/** /**
* titleType 科目类型. * titleType 科目类型(本金,利息,费用).
*/ */
private String titleType; private String titleType;
/** /**
* finSerFeeType 金融服务费支付方式. * gmtCreate 创建日期.
*/
private String finSerFeeType;
/**
* gmtCreate 创建时间.
*/ */
private Date gmtCreate; private Date gmtCreate;
/** /**
* effectDate 起息日. * gmtModified GMT_MODIFIED.
*/
private Date effectDate;
/**
* gmtModified 修改时间.
*/ */
private Date gmtModified; private Date gmtModified;
/**
* lastPayDate 最近支付日.
*/
private Date lastPayDate;
/**
* lastSettleDate 最近结算日.
*/
private Date lastSettleDate;
/**
* rate 计算比例,有关联科目时用.
*/
private BigDecimal rate;
/**
* totalAmt 总金额.
*/
private BigDecimal totalAmt;
/**
* bal 科目余额.
*/
private Money bal;
/**
* payAmt 总发生额-付.
*/
private Money payAmt;
/**
* initAmt 初始额度.
*/
private Money initAmt;
/**
* recpAmt 总发生额-收.
*/
private Money recpAmt;
/**
* entryAmt 入账金额.
*/
private Money entryAmt;
/**
* payVatax 增值税发生额-付.
*/
private Money payVatax;
/**
* recpVatax 增值税发生额-收.
*/
private Money recpVatax;
/**
* upperLimit 金额上限.
*/
private Money upperLimit;
/** /**
* Set id 主键. * Set id 唯一主键.
*/ */
public void setId(Long id){ public void setId(Long id){
this.id = id; this.id = id;
} }
/** /**
* Get id 主键. * Get id 唯一主键.
* *
* @return the string * @return the string
*/ */
...@@ -123,14 +57,14 @@ public class PlanAcctTitleDO{ ...@@ -123,14 +57,14 @@ public class PlanAcctTitleDO{
} }
/** /**
* Set refNo 对应金额类型编号. * Set refNo 对应资金编号.
*/ */
public void setRefNo(String refNo){ public void setRefNo(String refNo){
this.refNo = refNo; this.refNo = refNo;
} }
/** /**
* Get refNo 对应金额类型编号. * Get refNo 对应资金编号.
* *
* @return the string * @return the string
*/ */
...@@ -171,38 +105,6 @@ public class PlanAcctTitleDO{ ...@@ -171,38 +105,6 @@ public class PlanAcctTitleDO{
} }
/** /**
* Set calcType 计算方式.
*/
public void setCalcType(String calcType){
this.calcType = calcType;
}
/**
* Get calcType 计算方式.
*
* @return the string
*/
public String getCalcType(){
return calcType;
}
/**
* Set scaleType 结算基数.
*/
public void setScaleType(String scaleType){
this.scaleType = scaleType;
}
/**
* Get scaleType 结算基数.
*
* @return the string
*/
public String getScaleType(){
return scaleType;
}
/**
* Set titleName 科目名称. * Set titleName 科目名称.
*/ */
public void setTitleName(String titleName){ public void setTitleName(String titleName){
...@@ -219,14 +121,14 @@ public class PlanAcctTitleDO{ ...@@ -219,14 +121,14 @@ public class PlanAcctTitleDO{
} }
/** /**
* Set titleType 科目类型. * Set titleType 科目类型(本金,利息,费用).
*/ */
public void setTitleType(String titleType){ public void setTitleType(String titleType){
this.titleType = titleType; this.titleType = titleType;
} }
/** /**
* Get titleType 科目类型. * Get titleType 科目类型(本金,利息,费用).
* *
* @return the string * @return the string
*/ */
...@@ -235,30 +137,14 @@ public class PlanAcctTitleDO{ ...@@ -235,30 +137,14 @@ public class PlanAcctTitleDO{
} }
/** /**
* Set finSerFeeType 金融服务费支付方式. * Set gmtCreate 创建日期.
*/
public void setFinSerFeeType(String finSerFeeType){
this.finSerFeeType = finSerFeeType;
}
/**
* Get finSerFeeType 金融服务费支付方式.
*
* @return the string
*/
public String getFinSerFeeType(){
return finSerFeeType;
}
/**
* Set gmtCreate 创建时间.
*/ */
public void setGmtCreate(Date gmtCreate){ public void setGmtCreate(Date gmtCreate){
this.gmtCreate = gmtCreate; this.gmtCreate = gmtCreate;
} }
/** /**
* Get gmtCreate 创建时间. * Get gmtCreate 创建日期.
* *
* @return the string * @return the string
*/ */
...@@ -267,250 +153,18 @@ public class PlanAcctTitleDO{ ...@@ -267,250 +153,18 @@ public class PlanAcctTitleDO{
} }
/** /**
* Set effectDate 起息日. * Set gmtModified GMT_MODIFIED.
*/
public void setEffectDate(Date effectDate){
this.effectDate = effectDate;
}
/**
* Get effectDate 起息日.
*
* @return the string
*/
public Date getEffectDate(){
return effectDate;
}
/**
* Set gmtModified 修改时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
this.gmtModified = gmtModified; this.gmtModified = gmtModified;
} }
/** /**
* Get gmtModified 修改时间. * Get gmtModified GMT_MODIFIED.
* *
* @return the string * @return the string
*/ */
public Date getGmtModified(){ public Date getGmtModified(){
return gmtModified; return gmtModified;
} }
/**
* Set lastPayDate 最近支付日.
*/
public void setLastPayDate(Date lastPayDate){
this.lastPayDate = lastPayDate;
}
/**
* Get lastPayDate 最近支付日.
*
* @return the string
*/
public Date getLastPayDate(){
return lastPayDate;
}
/**
* Set lastSettleDate 最近结算日.
*/
public void setLastSettleDate(Date lastSettleDate){
this.lastSettleDate = lastSettleDate;
}
/**
* Get lastSettleDate 最近结算日.
*
* @return the string
*/
public Date getLastSettleDate(){
return lastSettleDate;
}
/**
* Set rate 计算比例,有关联科目时用.
*/
public void setRate(BigDecimal rate){
this.rate = rate;
}
/**
* Get rate 计算比例,有关联科目时用.
*
* @return the string
*/
public BigDecimal getRate(){
return rate;
}
/**
* Set totalAmt 总金额.
*/
public void setTotalAmt(BigDecimal totalAmt){
this.totalAmt = totalAmt;
}
/**
* Get totalAmt 总金额.
*
* @return the string
*/
public BigDecimal getTotalAmt(){
return totalAmt;
}
/**
* Set bal 科目余额.
*/
public void setBal(Money bal){
this.bal = bal;
}
/**
* Get bal 科目余额.
*
* @return the string
*/
public Money getBal(){
if(bal==null){
return new Money();
}
return bal;
}
/**
* Set payAmt 总发生额-付.
*/
public void setPayAmt(Money payAmt){
this.payAmt = payAmt;
}
/**
* Get payAmt 总发生额-付.
*
* @return the string
*/
public Money getPayAmt(){
if(payAmt==null){
return new Money();
}
return payAmt;
}
/**
* Set initAmt 初始额度.
*/
public void setInitAmt(Money initAmt){
this.initAmt = initAmt;
}
/**
* Get initAmt 初始额度.
*
* @return the string
*/
public Money getInitAmt(){
if(initAmt==null){
return new Money();
}
return initAmt;
}
/**
* Set recpAmt 总发生额-收.
*/
public void setRecpAmt(Money recpAmt){
this.recpAmt = recpAmt;
}
/**
* Get recpAmt 总发生额-收.
*
* @return the string
*/
public Money getRecpAmt(){
if(recpAmt==null){
return new Money();
}
return recpAmt;
}
/**
* Set entryAmt 入账金额.
*/
public void setEntryAmt(Money entryAmt){
this.entryAmt = entryAmt;
}
/**
* Get entryAmt 入账金额.
*
* @return the string
*/
public Money getEntryAmt(){
if(entryAmt==null){
return new Money();
}
return entryAmt;
}
/**
* Set payVatax 增值税发生额-付.
*/
public void setPayVatax(Money payVatax){
this.payVatax = payVatax;
}
/**
* Get payVatax 增值税发生额-付.
*
* @return the string
*/
public Money getPayVatax(){
if(payVatax==null){
return new Money();
}
return payVatax;
}
/**
* Set recpVatax 增值税发生额-收.
*/
public void setRecpVatax(Money recpVatax){
this.recpVatax = recpVatax;
}
/**
* Get recpVatax 增值税发生额-收.
*
* @return the string
*/
public Money getRecpVatax(){
if(recpVatax==null){
return new Money();
}
return recpVatax;
}
/**
* Set upperLimit 金额上限.
*/
public void setUpperLimit(Money upperLimit){
this.upperLimit = upperLimit;
}
/**
* Get upperLimit 金额上限.
*
* @return the string
*/
public Money getUpperLimit(){
if(upperLimit==null){
return new Money();
}
return upperLimit;
}
} }
...@@ -3,64 +3,60 @@ package com.abssqr.plat.common.dal.mysql.auto.dataobject; ...@@ -3,64 +3,60 @@ package com.abssqr.plat.common.dal.mysql.auto.dataobject;
import java.util.Date; import java.util.Date;
/** /**
* The table 计划-分配计划 * The table 分配计划表
*/ */
public class PlanAllocDO{ public class PlanAllocDO{
/** /**
* id 主键. * id 唯一主键.
*/ */
private Long id; private Long id;
/** /**
* allocAmt 本期分配总额.
*/
private Long allocAmt;
/**
* planNo 计划编号. * planNo 计划编号.
*/ */
private String planNo; private String planNo;
/** /**
* status 分配状态.
*/
private String status;
/**
* allocNo 分配编号. * allocNo 分配编号.
*/ */
private String allocNo; private String allocNo;
/** /**
* planType 计划类型 SPV,PLAN. * payDate 本次转付日.
*/ */
private String planType; private Date payDate;
/**
* approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),.
*/
private String approveStatus;
/** /**
* payDate 兑付日. * calcDate 本次计算日.
*/ */
private Date payDate; private Date calcDate;
/** /**
* clearDate 结算日. * allocDate 本次分配日.
*/ */
private Date clearDate; private Date allocDate;
/** /**
* gmtCreate 创建时间. * gmtCreate 创建时间.
*/ */
private Date gmtCreate; private Date gmtCreate;
/** /**
* gmtModified 修改时间. * reportDate 本次报告日.
*/
private Date reportDate;
/**
* settleDate 本次结息日.
*/
private Date settleDate;
/**
* gmtModified 更新时间.
*/ */
private Date gmtModified; private Date gmtModified;
/** /**
* Set id 主键. * Set id 唯一主键.
*/ */
public void setId(Long id){ public void setId(Long id){
this.id = id; this.id = id;
} }
/** /**
* Get id 主键. * Get id 唯一主键.
* *
* @return the string * @return the string
*/ */
...@@ -69,22 +65,6 @@ public class PlanAllocDO{ ...@@ -69,22 +65,6 @@ public class PlanAllocDO{
} }
/** /**
* Set allocAmt 本期分配总额.
*/
public void setAllocAmt(Long allocAmt){
this.allocAmt = allocAmt;
}
/**
* Get allocAmt 本期分配总额.
*
* @return the string
*/
public Long getAllocAmt(){
return allocAmt;
}
/**
* Set planNo 计划编号. * Set planNo 计划编号.
*/ */
public void setPlanNo(String planNo){ public void setPlanNo(String planNo){
...@@ -101,126 +81,126 @@ public class PlanAllocDO{ ...@@ -101,126 +81,126 @@ public class PlanAllocDO{
} }
/** /**
* Set status 分配状态. * Set allocNo 分配编号.
*/ */
public void setStatus(String status){ public void setAllocNo(String allocNo){
this.status = status; this.allocNo = allocNo;
} }
/** /**
* Get status 分配状态. * Get allocNo 分配编号.
* *
* @return the string * @return the string
*/ */
public String getStatus(){ public String getAllocNo(){
return status; return allocNo;
} }
/** /**
* Set allocNo 分配编号. * Set payDate 本次转付日.
*/ */
public void setAllocNo(String allocNo){ public void setPayDate(Date payDate){
this.allocNo = allocNo; this.payDate = payDate;
} }
/** /**
* Get allocNo 分配编号. * Get payDate 本次转付日.
* *
* @return the string * @return the string
*/ */
public String getAllocNo(){ public Date getPayDate(){
return allocNo; return payDate;
} }
/** /**
* Set planType 计划类型 SPV,PLAN. * Set calcDate 本次计算日.
*/ */
public void setPlanType(String planType){ public void setCalcDate(Date calcDate){
this.planType = planType; this.calcDate = calcDate;
} }
/** /**
* Get planType 计划类型 SPV,PLAN. * Get calcDate 本次计算日.
* *
* @return the string * @return the string
*/ */
public String getPlanType(){ public Date getCalcDate(){
return planType; return calcDate;
} }
/** /**
* Set approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),. * Set allocDate 本次分配日.
*/ */
public void setApproveStatus(String approveStatus){ public void setAllocDate(Date allocDate){
this.approveStatus = approveStatus; this.allocDate = allocDate;
} }
/** /**
* Get approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),. * Get allocDate 本次分配日.
* *
* @return the string * @return the string
*/ */
public String getApproveStatus(){ public Date getAllocDate(){
return approveStatus; return allocDate;
} }
/** /**
* Set payDate 兑付日. * Set gmtCreate 创建时间.
*/ */
public void setPayDate(Date payDate){ public void setGmtCreate(Date gmtCreate){
this.payDate = payDate; this.gmtCreate = gmtCreate;
} }
/** /**
* Get payDate 兑付日. * Get gmtCreate 创建时间.
* *
* @return the string * @return the string
*/ */
public Date getPayDate(){ public Date getGmtCreate(){
return payDate; return gmtCreate;
} }
/** /**
* Set clearDate 结算日. * Set reportDate 本次报告日.
*/ */
public void setClearDate(Date clearDate){ public void setReportDate(Date reportDate){
this.clearDate = clearDate; this.reportDate = reportDate;
} }
/** /**
* Get clearDate 结算日. * Get reportDate 本次报告日.
* *
* @return the string * @return the string
*/ */
public Date getClearDate(){ public Date getReportDate(){
return clearDate; return reportDate;
} }
/** /**
* Set gmtCreate 创建时间. * Set settleDate 本次结息日.
*/ */
public void setGmtCreate(Date gmtCreate){ public void setSettleDate(Date settleDate){
this.gmtCreate = gmtCreate; this.settleDate = settleDate;
} }
/** /**
* Get gmtCreate 创建时间. * Get settleDate 本次结息日.
* *
* @return the string * @return the string
*/ */
public Date getGmtCreate(){ public Date getSettleDate(){
return gmtCreate; return settleDate;
} }
/** /**
* Set gmtModified 修改时间. * Set gmtModified 更新时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
this.gmtModified = gmtModified; this.gmtModified = gmtModified;
} }
/** /**
* Get gmtModified 修改时间. * Get gmtModified 更新时间.
* *
* @return the string * @return the string
*/ */
......
...@@ -3,34 +3,18 @@ package com.abssqr.plat.common.dal.mysql.auto.dataobject; ...@@ -3,34 +3,18 @@ package com.abssqr.plat.common.dal.mysql.auto.dataobject;
import java.util.Date; import java.util.Date;
/** /**
* The table 分配事项 * The table 分配计划事项表
*/ */
public class PlanAllocItemDO{ public class PlanAllocItemDO{
/** /**
* id 主键. * id 唯一ID.
*/ */
private Long id; private Long id;
/** /**
* trialAmt 试算金额. * order 排序.
*/ */
private Long trialAmt; private Long order;
/**
* settleAmt 已结金额.
*/
private Long settleAmt;
/**
* confirmAmt 确认金额.
*/
private Long confirmAmt;
/**
* trialTaxAmt 试算增值税.
*/
private Long trialTaxAmt;
/**
* confirmTaxAmt 确认增值税.
*/
private Long confirmTaxAmt;
/** /**
* itemNo 事项编号. * itemNo 事项编号.
*/ */
...@@ -48,31 +32,31 @@ public class PlanAllocItemDO{ ...@@ -48,31 +32,31 @@ public class PlanAllocItemDO{
*/ */
private String titleNo; private String titleNo;
/** /**
* tax 是否计税. * allocType 分配类型.
*/ */
private Boolean tax; private String allocType;
/** /**
* sort 排序. * titleName 科目名称.
*/ */
private Integer sort; private String titleName;
/** /**
* gmtCreate 创建时间. * gmtCreate 创建时间.
*/ */
private Date gmtCreate; private Date gmtCreate;
/** /**
* gmtModified 修改时间. * gmtModified 更新时间.
*/ */
private Date gmtModified; private Date gmtModified;
/** /**
* Set id 主键. * Set id 唯一ID.
*/ */
public void setId(Long id){ public void setId(Long id){
this.id = id; this.id = id;
} }
/** /**
* Get id 主键. * Get id 唯一ID.
* *
* @return the string * @return the string
*/ */
...@@ -81,83 +65,19 @@ public class PlanAllocItemDO{ ...@@ -81,83 +65,19 @@ public class PlanAllocItemDO{
} }
/** /**
* Set trialAmt 试算金额. * Set order 排序.
*/
public void setTrialAmt(Long trialAmt){
this.trialAmt = trialAmt;
}
/**
* Get trialAmt 试算金额.
*
* @return the string
*/
public Long getTrialAmt(){
return trialAmt;
}
/**
* Set settleAmt 已结金额.
*/
public void setSettleAmt(Long settleAmt){
this.settleAmt = settleAmt;
}
/**
* Get settleAmt 已结金额.
*
* @return the string
*/
public Long getSettleAmt(){
return settleAmt;
}
/**
* Set confirmAmt 确认金额.
*/
public void setConfirmAmt(Long confirmAmt){
this.confirmAmt = confirmAmt;
}
/**
* Get confirmAmt 确认金额.
*
* @return the string
*/
public Long getConfirmAmt(){
return confirmAmt;
}
/**
* Set trialTaxAmt 试算增值税.
*/
public void setTrialTaxAmt(Long trialTaxAmt){
this.trialTaxAmt = trialTaxAmt;
}
/**
* Get trialTaxAmt 试算增值税.
*
* @return the string
*/
public Long getTrialTaxAmt(){
return trialTaxAmt;
}
/**
* Set confirmTaxAmt 确认增值税.
*/ */
public void setConfirmTaxAmt(Long confirmTaxAmt){ public void setOrder(Long order){
this.confirmTaxAmt = confirmTaxAmt; this.order = order;
} }
/** /**
* Get confirmTaxAmt 确认增值税. * Get order 排序.
* *
* @return the string * @return the string
*/ */
public Long getConfirmTaxAmt(){ public Long getOrder(){
return confirmTaxAmt; return order;
} }
/** /**
...@@ -225,35 +145,35 @@ public class PlanAllocItemDO{ ...@@ -225,35 +145,35 @@ public class PlanAllocItemDO{
} }
/** /**
* Set tax 是否计税. * Set allocType 分配类型.
*/ */
public void setTax(Boolean tax){ public void setAllocType(String allocType){
this.tax = tax; this.allocType = allocType;
} }
/** /**
* Get tax 是否计税. * Get allocType 分配类型.
* *
* @return the string * @return the string
*/ */
public Boolean getTax(){ public String getAllocType(){
return tax; return allocType;
} }
/** /**
* Set sort 排序. * Set titleName 科目名称.
*/ */
public void setSort(Integer sort){ public void setTitleName(String titleName){
this.sort = sort; this.titleName = titleName;
} }
/** /**
* Get sort 排序. * Get titleName 科目名称.
* *
* @return the string * @return the string
*/ */
public Integer getSort(){ public String getTitleName(){
return sort; return titleName;
} }
/** /**
...@@ -273,14 +193,14 @@ public class PlanAllocItemDO{ ...@@ -273,14 +193,14 @@ public class PlanAllocItemDO{
} }
/** /**
* Set gmtModified 修改时间. * Set gmtModified 更新时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
this.gmtModified = gmtModified; this.gmtModified = gmtModified;
} }
/** /**
* Get gmtModified 修改时间. * Get gmtModified 更新时间.
* *
* @return the string * @return the string
*/ */
......
package com.abssqr.plat.common.dal.mysql.auto.dataobject; package com.abssqr.plat.common.dal.mysql.auto.dataobject;
import java.util.Date; import java.util.Date;
import java.math.BigDecimal;
/** /**
* The table 计划信息 * The table 产品表
*/ */
public class PlanDO{ public class PlanDO{
/** /**
* id 计划ID. * id .
*/ */
private Long id; private Long id;
/** /**
...@@ -17,75 +16,47 @@ public class PlanDO{ ...@@ -17,75 +16,47 @@ public class PlanDO{
*/ */
private Long totalAmt; private Long totalAmt;
/** /**
* planNo 计划编号. * allocPeriod 兑付周期.
*/ */
private String planNo; private Long allocPeriod;
/**
* status 计划状态 * PREPARE * CLEARED * SUBSIST * 准备中 * 已清算 * 存续中.
*/
private String status;
/**
* creator 创建人.
*/
private String creator;
/**
* payFreq 兑付频率.
*/
private String payFreq;
/** /**
* fundType 募集方式 * PUBLIC * PRIVATE * 公募 * 私募.. * planNo 产品编号.
*/ */
private String fundType; private String planNo;
/** /**
* modifier 修改人. * status 产品状态(设计中,已发行,已清算).
*/ */
private String modifier; private String status;
/** /**
* planName 计划名. * planName 产品简称.
*/ */
private String planName; private String planName;
/** /**
* planType 计划类型. * gmtCreator 计划创建人.
*/
private String planType;
/**
* priceType 定价规则类型.
*/
private String priceType;
/**
* gmtCreator 创建人.
*/ */
private String gmtCreator; private String gmtCreator;
/** /**
* gmtModifier 修改人. * tradePlace 交易场所.
*/ */
private String gmtModifier; private String tradePlace;
/** /**
* calcIntrType 计息方式. * calcIntrType 计息方式/计息基准.
*/ */
private String calcIntrType; private String calcIntrType;
/** /**
* approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),. * planFullName 产品全称.
*/
private String approveStatus;
/**
* planMgrOrgCode 管理机构.
*/ */
private String planMgrOrgCode; private String planFullName;
/** /**
* sponsorOrgCode 发起机构. * allocPeriodMethod 兑付周期类型.
*/ */
private String sponsorOrgCode; private String allocPeriodMethod;
/** /**
* passed 是否已通过过. * endDate 法定到期日.
*/
private Boolean passed;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/ */
private Date endDate; private Date endDate;
/** /**
* beginDate 计划设立日(信托设立日). * beginDate 产品成立日.
*/ */
private Date beginDate; private Date beginDate;
/** /**
...@@ -93,47 +64,39 @@ public class PlanDO{ ...@@ -93,47 +64,39 @@ public class PlanDO{
*/ */
private Date gmtCreate; private Date gmtCreate;
/** /**
* effectDate 计划起息日.
*/
private Date effectDate;
/**
* gmtModified 修改时间. * gmtModified 修改时间.
*/ */
private Date gmtModified; private Date gmtModified;
/** /**
* firstPayDate 首次偿付日 首次兑付日. * firstPayDate 首次付日.
*/ */
private Date firstPayDate; private Date firstPayDate;
/** /**
* initCalcDate 初始起算日. * firstCalcDate 首次计算日.
*/ */
private Date initCalcDate; private Date firstCalcDate;
/** /**
* firstClearDate 首次结算日. * firstAllocDate 首次分配日.
*/ */
private Date firstClearDate; private Date firstAllocDate;
/** /**
* lastUpdateDate . * firstReportDate 首次报告日.
*/ */
private Date lastUpdateDate; private Date firstReportDate;
/** /**
* vatRate 增值税率. * firstSettleDate 首次结息日.
*/ */
private BigDecimal vatRate; private Date firstSettleDate;
/**
* finSerFeeRate 金融服务费率.
*/
private BigDecimal finSerFeeRate;
/** /**
* Set id 计划ID. * Set id .
*/ */
public void setId(Long id){ public void setId(Long id){
this.id = id; this.id = id;
} }
/** /**
* Get id 计划ID. * Get id .
* *
* @return the string * @return the string
*/ */
...@@ -158,110 +121,62 @@ public class PlanDO{ ...@@ -158,110 +121,62 @@ public class PlanDO{
} }
/** /**
* Set planNo 计划编号. * Set allocPeriod 兑付周期.
*/
public void setPlanNo(String planNo){
this.planNo = planNo;
}
/**
* Get planNo 计划编号.
*
* @return the string
*/
public String getPlanNo(){
return planNo;
}
/**
* Set status 计划状态 * PREPARE * CLEARED * SUBSIST * 准备中 * 已清算 * 存续中.
*/
public void setStatus(String status){
this.status = status;
}
/**
* Get status 计划状态 * PREPARE * CLEARED * SUBSIST * 准备中 * 已清算 * 存续中.
*
* @return the string
*/
public String getStatus(){
return status;
}
/**
* Set creator 创建人.
*/
public void setCreator(String creator){
this.creator = creator;
}
/**
* Get creator 创建人.
*
* @return the string
*/
public String getCreator(){
return creator;
}
/**
* Set payFreq 兑付频率.
*/ */
public void setPayFreq(String payFreq){ public void setAllocPeriod(Long allocPeriod){
this.payFreq = payFreq; this.allocPeriod = allocPeriod;
} }
/** /**
* Get payFreq 兑付频率. * Get allocPeriod 兑付周期.
* *
* @return the string * @return the string
*/ */
public String getPayFreq(){ public Long getAllocPeriod(){
return payFreq; return allocPeriod;
} }
/** /**
* Set fundType 募集方式 * PUBLIC * PRIVATE * 公募 * 私募.. * Set planNo 产品编号.
*/ */
public void setFundType(String fundType){ public void setPlanNo(String planNo){
this.fundType = fundType; this.planNo = planNo;
} }
/** /**
* Get fundType 募集方式 * PUBLIC * PRIVATE * 公募 * 私募.. * Get planNo 产品编号.
* *
* @return the string * @return the string
*/ */
public String getFundType(){ public String getPlanNo(){
return fundType; return planNo;
} }
/** /**
* Set modifier 修改人. * Set status 产品状态(设计中,已发行,已清算).
*/ */
public void setModifier(String modifier){ public void setStatus(String status){
this.modifier = modifier; this.status = status;
} }
/** /**
* Get modifier 修改人. * Get status 产品状态(设计中,已发行,已清算).
* *
* @return the string * @return the string
*/ */
public String getModifier(){ public String getStatus(){
return modifier; return status;
} }
/** /**
* Set planName 计划名. * Set planName 产品简称.
*/ */
public void setPlanName(String planName){ public void setPlanName(String planName){
this.planName = planName; this.planName = planName;
} }
/** /**
* Get planName 计划名. * Get planName 产品简称.
* *
* @return the string * @return the string
*/ */
...@@ -270,46 +185,14 @@ public class PlanDO{ ...@@ -270,46 +185,14 @@ public class PlanDO{
} }
/** /**
* Set planType 计划类型. * Set gmtCreator 计划创建人.
*/
public void setPlanType(String planType){
this.planType = planType;
}
/**
* Get planType 计划类型.
*
* @return the string
*/
public String getPlanType(){
return planType;
}
/**
* Set priceType 定价规则类型.
*/
public void setPriceType(String priceType){
this.priceType = priceType;
}
/**
* Get priceType 定价规则类型.
*
* @return the string
*/
public String getPriceType(){
return priceType;
}
/**
* Set gmtCreator 创建人.
*/ */
public void setGmtCreator(String gmtCreator){ public void setGmtCreator(String gmtCreator){
this.gmtCreator = gmtCreator; this.gmtCreator = gmtCreator;
} }
/** /**
* Get gmtCreator 创建人. * Get gmtCreator 计划创建人.
* *
* @return the string * @return the string
*/ */
...@@ -318,30 +201,30 @@ public class PlanDO{ ...@@ -318,30 +201,30 @@ public class PlanDO{
} }
/** /**
* Set gmtModifier 修改人. * Set tradePlace 交易场所.
*/ */
public void setGmtModifier(String gmtModifier){ public void setTradePlace(String tradePlace){
this.gmtModifier = gmtModifier; this.tradePlace = tradePlace;
} }
/** /**
* Get gmtModifier 修改人. * Get tradePlace 交易场所.
* *
* @return the string * @return the string
*/ */
public String getGmtModifier(){ public String getTradePlace(){
return gmtModifier; return tradePlace;
} }
/** /**
* Set calcIntrType 计息方式. * Set calcIntrType 计息方式/计息基准.
*/ */
public void setCalcIntrType(String calcIntrType){ public void setCalcIntrType(String calcIntrType){
this.calcIntrType = calcIntrType; this.calcIntrType = calcIntrType;
} }
/** /**
* Get calcIntrType 计息方式. * Get calcIntrType 计息方式/计息基准.
* *
* @return the string * @return the string
*/ */
...@@ -350,78 +233,46 @@ public class PlanDO{ ...@@ -350,78 +233,46 @@ public class PlanDO{
} }
/** /**
* Set approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),. * Set planFullName 产品全称.
*/
public void setApproveStatus(String approveStatus){
this.approveStatus = approveStatus;
}
/**
* Get approveStatus 审批状态 OUTOFDATE("OUTOFDATE", "已过时"), PASSED("PASSED", "已通过"), FAILED("FAILED", "未通过"), PENDING("PENDING", "审批中"), UNSUBMIT("UNSUBMIT", "未提交"), UNWANTED("UNWANTED", "无审批"),.
*
* @return the string
*/
public String getApproveStatus(){
return approveStatus;
}
/**
* Set planMgrOrgCode 管理机构.
*/
public void setPlanMgrOrgCode(String planMgrOrgCode){
this.planMgrOrgCode = planMgrOrgCode;
}
/**
* Get planMgrOrgCode 管理机构.
*
* @return the string
*/
public String getPlanMgrOrgCode(){
return planMgrOrgCode;
}
/**
* Set sponsorOrgCode 发起机构.
*/ */
public void setSponsorOrgCode(String sponsorOrgCode){ public void setPlanFullName(String planFullName){
this.sponsorOrgCode = sponsorOrgCode; this.planFullName = planFullName;
} }
/** /**
* Get sponsorOrgCode 发起机构. * Get planFullName 产品全称.
* *
* @return the string * @return the string
*/ */
public String getSponsorOrgCode(){ public String getPlanFullName(){
return sponsorOrgCode; return planFullName;
} }
/** /**
* Set passed 是否已通过过. * Set allocPeriodMethod 兑付周期类型.
*/ */
public void setPassed(Boolean passed){ public void setAllocPeriodMethod(String allocPeriodMethod){
this.passed = passed; this.allocPeriodMethod = allocPeriodMethod;
} }
/** /**
* Get passed 是否已通过过. * Get allocPeriodMethod 兑付周期类型.
* *
* @return the string * @return the string
*/ */
public Boolean getPassed(){ public String getAllocPeriodMethod(){
return passed; return allocPeriodMethod;
} }
/** /**
* Set endDate 计划到期日(信托终止日)计划截止日. * Set endDate 法定到期日.
*/ */
public void setEndDate(Date endDate){ public void setEndDate(Date endDate){
this.endDate = endDate; this.endDate = endDate;
} }
/** /**
* Get endDate 计划到期日(信托终止日)计划截止日. * Get endDate 法定到期日.
* *
* @return the string * @return the string
*/ */
...@@ -430,14 +281,14 @@ public class PlanDO{ ...@@ -430,14 +281,14 @@ public class PlanDO{
} }
/** /**
* Set beginDate 计划设立日(信托设立日). * Set beginDate 产品成立日.
*/ */
public void setBeginDate(Date beginDate){ public void setBeginDate(Date beginDate){
this.beginDate = beginDate; this.beginDate = beginDate;
} }
/** /**
* Get beginDate 计划设立日(信托设立日). * Get beginDate 产品成立日.
* *
* @return the string * @return the string
*/ */
...@@ -462,22 +313,6 @@ public class PlanDO{ ...@@ -462,22 +313,6 @@ public class PlanDO{
} }
/** /**
* Set effectDate 计划起息日.
*/
public void setEffectDate(Date effectDate){
this.effectDate = effectDate;
}
/**
* Get effectDate 计划起息日.
*
* @return the string
*/
public Date getEffectDate(){
return effectDate;
}
/**
* Set gmtModified 修改时间. * Set gmtModified 修改时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
...@@ -494,14 +329,14 @@ public class PlanDO{ ...@@ -494,14 +329,14 @@ public class PlanDO{
} }
/** /**
* Set firstPayDate 首次偿付日 首次兑付日. * Set firstPayDate 首次付日.
*/ */
public void setFirstPayDate(Date firstPayDate){ public void setFirstPayDate(Date firstPayDate){
this.firstPayDate = firstPayDate; this.firstPayDate = firstPayDate;
} }
/** /**
* Get firstPayDate 首次偿付日 首次兑付日. * Get firstPayDate 首次付日.
* *
* @return the string * @return the string
*/ */
...@@ -510,82 +345,66 @@ public class PlanDO{ ...@@ -510,82 +345,66 @@ public class PlanDO{
} }
/** /**
* Set initCalcDate 初始起算日. * Set firstCalcDate 首次计算日.
*/
public void setInitCalcDate(Date initCalcDate){
this.initCalcDate = initCalcDate;
}
/**
* Get initCalcDate 初始起算日.
*
* @return the string
*/
public Date getInitCalcDate(){
return initCalcDate;
}
/**
* Set firstClearDate 首次结算日.
*/ */
public void setFirstClearDate(Date firstClearDate){ public void setFirstCalcDate(Date firstCalcDate){
this.firstClearDate = firstClearDate; this.firstCalcDate = firstCalcDate;
} }
/** /**
* Get firstClearDate 首次结算日. * Get firstCalcDate 首次计算日.
* *
* @return the string * @return the string
*/ */
public Date getFirstClearDate(){ public Date getFirstCalcDate(){
return firstClearDate; return firstCalcDate;
} }
/** /**
* Set lastUpdateDate . * Set firstAllocDate 首次分配日.
*/ */
public void setLastUpdateDate(Date lastUpdateDate){ public void setFirstAllocDate(Date firstAllocDate){
this.lastUpdateDate = lastUpdateDate; this.firstAllocDate = firstAllocDate;
} }
/** /**
* Get lastUpdateDate . * Get firstAllocDate 首次分配日.
* *
* @return the string * @return the string
*/ */
public Date getLastUpdateDate(){ public Date getFirstAllocDate(){
return lastUpdateDate; return firstAllocDate;
} }
/** /**
* Set vatRate 增值税率. * Set firstReportDate 首次报告日.
*/ */
public void setVatRate(BigDecimal vatRate){ public void setFirstReportDate(Date firstReportDate){
this.vatRate = vatRate; this.firstReportDate = firstReportDate;
} }
/** /**
* Get vatRate 增值税率. * Get firstReportDate 首次报告日.
* *
* @return the string * @return the string
*/ */
public BigDecimal getVatRate(){ public Date getFirstReportDate(){
return vatRate; return firstReportDate;
} }
/** /**
* Set finSerFeeRate 金融服务费率. * Set firstSettleDate 首次结息日.
*/ */
public void setFinSerFeeRate(BigDecimal finSerFeeRate){ public void setFirstSettleDate(Date firstSettleDate){
this.finSerFeeRate = finSerFeeRate; this.firstSettleDate = firstSettleDate;
} }
/** /**
* Get finSerFeeRate 金融服务费率. * Get firstSettleDate 首次结息日.
* *
* @return the string * @return the string
*/ */
public BigDecimal getFinSerFeeRate(){ public Date getFirstSettleDate(){
return finSerFeeRate; return firstSettleDate;
} }
} }
...@@ -4,15 +4,19 @@ import java.util.Date; ...@@ -4,15 +4,19 @@ import java.util.Date;
import java.math.BigDecimal; import java.math.BigDecimal;
/** /**
* The table 计划费用结构 * The table ABS_PLAN_FEE_STRUCTURE
*/ */
public class PlanFeeStructureDO{ public class PlanFeeStructureDO{
/** /**
* id . * id 唯一主键.
*/ */
private Long id; private Long id;
/** /**
* order .
*/
private Long order;
/**
* fixedFeeAmt 固定费用. * fixedFeeAmt 固定费用.
*/ */
private Long fixedFeeAmt; private Long fixedFeeAmt;
...@@ -25,7 +29,7 @@ public class PlanFeeStructureDO{ ...@@ -25,7 +29,7 @@ public class PlanFeeStructureDO{
*/ */
private String feeNo; private String feeNo;
/** /**
* planNo 计划编号. * planNo 产品编号.
*/ */
private String planNo; private String planNo;
/** /**
...@@ -33,47 +37,39 @@ public class PlanFeeStructureDO{ ...@@ -33,47 +37,39 @@ public class PlanFeeStructureDO{
*/ */
private String feeName; private String feeName;
/** /**
* feeCalcType 计算方式 固定金额("FIXED", "固定金额"), 比例金额("SCALE", "比例金额") . * feeCalcType 计费方式.
*/ */
private String feeCalcType; private String feeCalcType;
/** /**
* feeTimeType 计费时间类型 按期计费("TERM", "按期计费"), 首次结算日("PFCD", "首次结算日"), 计划起息日("PETD", "计划起息日"), 计划到期日("PEDD", "计划到期日") . * feeScaleType 费用基准.
*/
private String feeTimeType;
/**
* feeScaleType 费率基准 信托初始规模("START", "信托初始规模"), 信托剩余规模("REMAIN", "信托剩余规模"), 优先级信托初始规模("PRISTART", "优先级信托初始规模"), 优先级信托剩余规模("PRIREMAIN", "优先级信托剩余规模") .
*/ */
private String feeScaleType; private String feeScaleType;
/** /**
* finSerFeeType 金融服务费支付方式.
*/
private String finSerFeeType;
/**
* calcByDay 按日计费.
*/
private Boolean calcByDay;
/**
* gmtCreate 创建时间. * gmtCreate 创建时间.
*/ */
private Date gmtCreate; private Date gmtCreate;
/** /**
* gmtModified 修改时间. * gmtModified 更新时间.
*/ */
private Date gmtModified; private Date gmtModified;
/** /**
* feeCalcDefaultDate 默认计费时间.
*/
private Date feeCalcDefaultDate;
/**
* feeRate 费率. * feeRate 费率.
*/ */
private BigDecimal feeRate; private BigDecimal feeRate;
/** /**
* Set id . * Set id 唯一主键.
*/ */
public void setId(Long id){ public void setId(Long id){
this.id = id; this.id = id;
} }
/** /**
* Get id . * Get id 唯一主键.
* *
* @return the string * @return the string
*/ */
...@@ -82,6 +78,22 @@ public class PlanFeeStructureDO{ ...@@ -82,6 +78,22 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set order .
*/
public void setOrder(Long order){
this.order = order;
}
/**
* Get order .
*
* @return the string
*/
public Long getOrder(){
return order;
}
/**
* Set fixedFeeAmt 固定费用. * Set fixedFeeAmt 固定费用.
*/ */
public void setFixedFeeAmt(Long fixedFeeAmt){ public void setFixedFeeAmt(Long fixedFeeAmt){
...@@ -130,14 +142,14 @@ public class PlanFeeStructureDO{ ...@@ -130,14 +142,14 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set planNo 计划编号. * Set planNo 产品编号.
*/ */
public void setPlanNo(String planNo){ public void setPlanNo(String planNo){
this.planNo = planNo; this.planNo = planNo;
} }
/** /**
* Get planNo 计划编号. * Get planNo 产品编号.
* *
* @return the string * @return the string
*/ */
...@@ -162,14 +174,14 @@ public class PlanFeeStructureDO{ ...@@ -162,14 +174,14 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set feeCalcType 计算方式 固定金额("FIXED", "固定金额"), 比例金额("SCALE", "比例金额") . * Set feeCalcType 计费方式.
*/ */
public void setFeeCalcType(String feeCalcType){ public void setFeeCalcType(String feeCalcType){
this.feeCalcType = feeCalcType; this.feeCalcType = feeCalcType;
} }
/** /**
* Get feeCalcType 计算方式 固定金额("FIXED", "固定金额"), 比例金额("SCALE", "比例金额") . * Get feeCalcType 计费方式.
* *
* @return the string * @return the string
*/ */
...@@ -178,30 +190,14 @@ public class PlanFeeStructureDO{ ...@@ -178,30 +190,14 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set feeTimeType 计费时间类型 按期计费("TERM", "按期计费"), 首次结算日("PFCD", "首次结算日"), 计划起息日("PETD", "计划起息日"), 计划到期日("PEDD", "计划到期日") . * Set feeScaleType 费用基准.
*/
public void setFeeTimeType(String feeTimeType){
this.feeTimeType = feeTimeType;
}
/**
* Get feeTimeType 计费时间类型 按期计费("TERM", "按期计费"), 首次结算日("PFCD", "首次结算日"), 计划起息日("PETD", "计划起息日"), 计划到期日("PEDD", "计划到期日") .
*
* @return the string
*/
public String getFeeTimeType(){
return feeTimeType;
}
/**
* Set feeScaleType 费率基准 信托初始规模("START", "信托初始规模"), 信托剩余规模("REMAIN", "信托剩余规模"), 优先级信托初始规模("PRISTART", "优先级信托初始规模"), 优先级信托剩余规模("PRIREMAIN", "优先级信托剩余规模") .
*/ */
public void setFeeScaleType(String feeScaleType){ public void setFeeScaleType(String feeScaleType){
this.feeScaleType = feeScaleType; this.feeScaleType = feeScaleType;
} }
/** /**
* Get feeScaleType 费率基准 信托初始规模("START", "信托初始规模"), 信托剩余规模("REMAIN", "信托剩余规模"), 优先级信托初始规模("PRISTART", "优先级信托初始规模"), 优先级信托剩余规模("PRIREMAIN", "优先级信托剩余规模") . * Get feeScaleType 费用基准.
* *
* @return the string * @return the string
*/ */
...@@ -210,38 +206,6 @@ public class PlanFeeStructureDO{ ...@@ -210,38 +206,6 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set finSerFeeType 金融服务费支付方式.
*/
public void setFinSerFeeType(String finSerFeeType){
this.finSerFeeType = finSerFeeType;
}
/**
* Get finSerFeeType 金融服务费支付方式.
*
* @return the string
*/
public String getFinSerFeeType(){
return finSerFeeType;
}
/**
* Set calcByDay 按日计费.
*/
public void setCalcByDay(Boolean calcByDay){
this.calcByDay = calcByDay;
}
/**
* Get calcByDay 按日计费.
*
* @return the string
*/
public Boolean getCalcByDay(){
return calcByDay;
}
/**
* Set gmtCreate 创建时间. * Set gmtCreate 创建时间.
*/ */
public void setGmtCreate(Date gmtCreate){ public void setGmtCreate(Date gmtCreate){
...@@ -258,14 +222,14 @@ public class PlanFeeStructureDO{ ...@@ -258,14 +222,14 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set gmtModified 修改时间. * Set gmtModified 更新时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
this.gmtModified = gmtModified; this.gmtModified = gmtModified;
} }
/** /**
* Get gmtModified 修改时间. * Get gmtModified 更新时间.
* *
* @return the string * @return the string
*/ */
...@@ -274,6 +238,22 @@ public class PlanFeeStructureDO{ ...@@ -274,6 +238,22 @@ public class PlanFeeStructureDO{
} }
/** /**
* Set feeCalcDefaultDate 默认计费时间.
*/
public void setFeeCalcDefaultDate(Date feeCalcDefaultDate){
this.feeCalcDefaultDate = feeCalcDefaultDate;
}
/**
* Get feeCalcDefaultDate 默认计费时间.
*
* @return the string
*/
public Date getFeeCalcDefaultDate(){
return feeCalcDefaultDate;
}
/**
* Set feeRate 费率. * Set feeRate 费率.
*/ */
public void setFeeRate(BigDecimal feeRate){ public void setFeeRate(BigDecimal feeRate){
......
...@@ -4,7 +4,7 @@ import java.util.Date; ...@@ -4,7 +4,7 @@ import java.util.Date;
import java.math.BigDecimal; import java.math.BigDecimal;
/** /**
* The table 投资结构 * The table ABS_PLAN_INVEST_STRUCTURE
*/ */
public class PlanInvestStructureDO{ public class PlanInvestStructureDO{
...@@ -13,30 +13,46 @@ public class PlanInvestStructureDO{ ...@@ -13,30 +13,46 @@ public class PlanInvestStructureDO{
*/ */
private Long id; private Long id;
/** /**
* layerAmt 层级规模. * order 排序.
*/
private Long order;
/**
* layerAmt 金额/层级规模.
*/ */
private Long layerAmt; private Long layerAmt;
/** /**
* planNo 计划编号. * grade 评级.
*/
private String grade;
/**
* planNo 产品编号.
*/ */
private String planNo; private String planNo;
/** /**
* layerNo 编号. * layerNo 层级编号.
*/ */
private String layerNo; private String layerNo;
/** /**
* intrType 利率类型 FLOATING("FLOATING", "浮动利率"), FIXED("FIXED", "固定利率"), NOTICKET("NOTICKET", "无票面利率") . * intrType 利率类型.
*/ */
private String intrType; private String intrType;
/** /**
* layerName 层名称. * layerName 层名称.
*/ */
private String layerName; private String layerName;
/** /**
* layerType 层级类型. * layerType 分层类型.
*/ */
private String layerType; private String layerType;
/** /**
* allocMethod 偿付方式.
*/
private String allocMethod;
/**
* endDate 到期日.
*/
private Date endDate;
/**
* gmtCreate 创建时间. * gmtCreate 创建时间.
*/ */
private Date gmtCreate; private Date gmtCreate;
...@@ -45,15 +61,15 @@ public class PlanInvestStructureDO{ ...@@ -45,15 +61,15 @@ public class PlanInvestStructureDO{
*/ */
private Date effectDate; private Date effectDate;
/** /**
* gmtModified 修改时间. * gmtModified 更新时间.
*/ */
private Date gmtModified; private Date gmtModified;
/** /**
* layerEndDate 到期日. * expectEndDate 预计到期日.
*/ */
private Date layerEndDate; private Date expectEndDate;
/** /**
* layerIntr 层级利率. * layerIntr 利率.
*/ */
private BigDecimal layerIntr; private BigDecimal layerIntr;
...@@ -74,14 +90,30 @@ public class PlanInvestStructureDO{ ...@@ -74,14 +90,30 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set layerAmt 层级规模. * Set order 排序.
*/
public void setOrder(Long order){
this.order = order;
}
/**
* Get order 排序.
*
* @return the string
*/
public Long getOrder(){
return order;
}
/**
* Set layerAmt 金额/层级规模.
*/ */
public void setLayerAmt(Long layerAmt){ public void setLayerAmt(Long layerAmt){
this.layerAmt = layerAmt; this.layerAmt = layerAmt;
} }
/** /**
* Get layerAmt 层级规模. * Get layerAmt 金额/层级规模.
* *
* @return the string * @return the string
*/ */
...@@ -90,14 +122,30 @@ public class PlanInvestStructureDO{ ...@@ -90,14 +122,30 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set planNo 计划编号. * Set grade 评级.
*/
public void setGrade(String grade){
this.grade = grade;
}
/**
* Get grade 评级.
*
* @return the string
*/
public String getGrade(){
return grade;
}
/**
* Set planNo 产品编号.
*/ */
public void setPlanNo(String planNo){ public void setPlanNo(String planNo){
this.planNo = planNo; this.planNo = planNo;
} }
/** /**
* Get planNo 计划编号. * Get planNo 产品编号.
* *
* @return the string * @return the string
*/ */
...@@ -106,14 +154,14 @@ public class PlanInvestStructureDO{ ...@@ -106,14 +154,14 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set layerNo 编号. * Set layerNo 层级编号.
*/ */
public void setLayerNo(String layerNo){ public void setLayerNo(String layerNo){
this.layerNo = layerNo; this.layerNo = layerNo;
} }
/** /**
* Get layerNo 编号. * Get layerNo 层级编号.
* *
* @return the string * @return the string
*/ */
...@@ -122,14 +170,14 @@ public class PlanInvestStructureDO{ ...@@ -122,14 +170,14 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set intrType 利率类型 FLOATING("FLOATING", "浮动利率"), FIXED("FIXED", "固定利率"), NOTICKET("NOTICKET", "无票面利率") . * Set intrType 利率类型.
*/ */
public void setIntrType(String intrType){ public void setIntrType(String intrType){
this.intrType = intrType; this.intrType = intrType;
} }
/** /**
* Get intrType 利率类型 FLOATING("FLOATING", "浮动利率"), FIXED("FIXED", "固定利率"), NOTICKET("NOTICKET", "无票面利率") . * Get intrType 利率类型.
* *
* @return the string * @return the string
*/ */
...@@ -138,14 +186,14 @@ public class PlanInvestStructureDO{ ...@@ -138,14 +186,14 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set layerName 层名称. * Set layerName 层名称.
*/ */
public void setLayerName(String layerName){ public void setLayerName(String layerName){
this.layerName = layerName; this.layerName = layerName;
} }
/** /**
* Get layerName 层名称. * Get layerName 层名称.
* *
* @return the string * @return the string
*/ */
...@@ -154,14 +202,14 @@ public class PlanInvestStructureDO{ ...@@ -154,14 +202,14 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set layerType 层级类型. * Set layerType 分层类型.
*/ */
public void setLayerType(String layerType){ public void setLayerType(String layerType){
this.layerType = layerType; this.layerType = layerType;
} }
/** /**
* Get layerType 层级类型. * Get layerType 分层类型.
* *
* @return the string * @return the string
*/ */
...@@ -170,6 +218,38 @@ public class PlanInvestStructureDO{ ...@@ -170,6 +218,38 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set allocMethod 偿付方式.
*/
public void setAllocMethod(String allocMethod){
this.allocMethod = allocMethod;
}
/**
* Get allocMethod 偿付方式.
*
* @return the string
*/
public String getAllocMethod(){
return allocMethod;
}
/**
* Set endDate 到期日.
*/
public void setEndDate(Date endDate){
this.endDate = endDate;
}
/**
* Get endDate 到期日.
*
* @return the string
*/
public Date getEndDate(){
return endDate;
}
/**
* Set gmtCreate 创建时间. * Set gmtCreate 创建时间.
*/ */
public void setGmtCreate(Date gmtCreate){ public void setGmtCreate(Date gmtCreate){
...@@ -202,14 +282,14 @@ public class PlanInvestStructureDO{ ...@@ -202,14 +282,14 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set gmtModified 修改时间. * Set gmtModified 更新时间.
*/ */
public void setGmtModified(Date gmtModified){ public void setGmtModified(Date gmtModified){
this.gmtModified = gmtModified; this.gmtModified = gmtModified;
} }
/** /**
* Get gmtModified 修改时间. * Get gmtModified 更新时间.
* *
* @return the string * @return the string
*/ */
...@@ -218,30 +298,30 @@ public class PlanInvestStructureDO{ ...@@ -218,30 +298,30 @@ public class PlanInvestStructureDO{
} }
/** /**
* Set layerEndDate 到期日. * Set expectEndDate 预计到期日.
*/ */
public void setLayerEndDate(Date layerEndDate){ public void setExpectEndDate(Date expectEndDate){
this.layerEndDate = layerEndDate; this.expectEndDate = expectEndDate;
} }
/** /**
* Get layerEndDate 到期日. * Get expectEndDate 预计到期日.
* *
* @return the string * @return the string
*/ */
public Date getLayerEndDate(){ public Date getExpectEndDate(){
return layerEndDate; return expectEndDate;
} }
/** /**
* Set layerIntr 层级利率. * Set layerIntr 利率.
*/ */
public void setLayerIntr(BigDecimal layerIntr){ public void setLayerIntr(BigDecimal layerIntr){
this.layerIntr = layerIntr; this.layerIntr = layerIntr;
} }
/** /**
* Get layerIntr 层级利率. * Get layerIntr 利率.
* *
* @return the string * @return the string
*/ */
......
...@@ -7,7 +7,7 @@ import org.apache.ibatis.annotations.Param; ...@@ -7,7 +7,7 @@ import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan_acct_title. * The Table abs_plan_acct_title.
* 计划结算科目信息(收付实现制) * ABS_PLAN_ACCT_TITLE
*/ */
public interface PlanAcctTitleDOMapper{ public interface PlanAcctTitleDOMapper{
...@@ -23,42 +23,4 @@ public interface PlanAcctTitleDOMapper{ ...@@ -23,42 +23,4 @@ public interface PlanAcctTitleDOMapper{
* @return int * @return int
*/ */
int insertBatch(List<PlanAcctTitleDO> list); int insertBatch(List<PlanAcctTitleDO> list);
/**
* desc:根据唯一约束AbsPlanAcctTitle更新表:abs_plan_acct_title.<br/>
* @param entity entity
* @return int
*/
int updateAmt(PlanAcctTitleDO entity);
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @return List<PlanAcctTitleDO>
*/
List<PlanAcctTitleDO> getByPlan(@Param("planNo")String planNo);
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @param listTitleType listTitleType
* @return List<PlanAcctTitleDO>
*/
List<PlanAcctTitleDO> getByPlanAndTypes(@Param("planNo")String planNo,@Param("listTitleType")List<String> listTitleType);
/**
* desc:根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title.<br/>
* @param list list
* @return List<PlanAcctTitleDO>
*/
List<PlanAcctTitleDO> getFinFeesByPlan(List<String> list);
/**
* desc:根据唯一约束AbsPlanAcctTitle获取数据:abs_plan_acct_title.<br/>
* @param planNo planNo
* @param titleNo titleNo
* @return PlanAcctTitleDO
*/
PlanAcctTitleDO getByTitleNo(@Param("planNo")String planNo,@Param("titleNo")String titleNo);
/**
* desc:根据计划编号删除分配信息.<br/>
* @param planNo planNo
* @return int
*/
int deleteByPlanNo(@Param("planNo")String planNo);
} }
...@@ -2,14 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper; ...@@ -2,14 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO;
import java.util.List; import java.util.List;
import java.util.Date;
import java.lang.Long;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan_alloc. * The Table abs_plan_alloc.
* 计划-分配计划 * 分配计划表
*/ */
public interface PlanAllocDOMapper{ public interface PlanAllocDOMapper{
...@@ -26,102 +24,15 @@ public interface PlanAllocDOMapper{ ...@@ -26,102 +24,15 @@ public interface PlanAllocDOMapper{
*/ */
int insertBatch(List<PlanAllocDO> list); int insertBatch(List<PlanAllocDO> list);
/** /**
* desc:更新表:abs_plan_alloc.<br/> * desc:根据主键删除数据:abs_plan_alloc.<br/>
* @param entity entity * @param id id
* @return int * @return int
*/ */
int updateByAllocNo(PlanAllocDO entity); int deleteById(@Param("id")Long id);
/**
* desc:根据AllocNo删除数据:abs_plan_alloc.<br/>
* @param allocNo allocNo
* @return int
*/
int deleteByAllocNo(@Param("allocNo")String allocNo);
/** /**
* desc:根据主键获取数据:abs_plan_alloc.<br/> * desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param allocNo allocNo * @param id id
* @return PlanAllocDO * @return PlanAllocDO
*/ */
PlanAllocDO getByAllocNo(@Param("allocNo")String allocNo); PlanAllocDO getById(@Param("id")Long id);
/**
* desc:更新状态.<br/>
* @param status status
* @param allocNo allocNo
* @param oldStatus oldStatus
* @return int
*/
int updateStatus(@Param("status")String status,@Param("allocNo")String allocNo,@Param("oldStatus")String oldStatus);
/**
* desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
List<PlanAllocDO> queryByPlanNo(@Param("planNo")String planNo);
/**
* desc:根据计划编号获取时间段分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param planNo planNo
* @param status status
* @return List<PlanAllocDO>
*/
List<PlanAllocDO> queryAllocByPlanNo(@Param("endDate")Date endDate,@Param("startDate")Date startDate,@Param("planNo")String planNo,@Param("status")String status);
/**
* desc:根据兑付日获取查询最近计划:abs_plan_alloc.<br/>
* @param planType planType
* @return PlanAllocDO
*/
PlanAllocDO queryRecentlyPlans(@Param("planType")String planType);
/**
* desc:查询相同结算日分配计划数量.<br/>
* @param clearDate clearDate
* @param planNo planNo
* @param allocNo allocNo
* @return int
*/
int querySameClearDate(@Param("clearDate")Date clearDate,@Param("planNo")String planNo,@Param("allocNo")String allocNo);
/**
* desc:根据主键获取数据:abs_plan_alloc.<br/>
* @param allocNo allocNo
* @return PlanAllocDO
*/
PlanAllocDO lockByAllocNo(@Param("allocNo")String allocNo);
/**
* desc:获取所有已审批通过未解绑的兑付计划.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
List<PlanAllocDO> queryUnMatchedApprovedAlloc(@Param("planNo")String planNo);
/**
* desc:根据计划编号获取时间段分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param planNo planNo
* @param status status
* @param approveStatus approveStatus
* @return Long
*/
Long queryStatAllocAmtByPlanNoAndPayDate(@Param("endDate")Date endDate,@Param("startDate")Date startDate,@Param("planNo")String planNo,@Param("status")String status,@Param("approveStatus")String approveStatus);
/**
* desc:根据计划编号获取累计分配金额.<br/>
* @param endDate endDate
* @param startDate startDate
* @param status status
* @param approveStatus approveStatus
* @param listPlanNos listPlanNos
* @return Long
*/
Long queryStatTotalAllocAmtByPlanNos(@Param("endDate")Date endDate,@Param("startDate")Date startDate,@Param("status")String status,@Param("approveStatus")String approveStatus,@Param("listPlanNos")List<String> listPlanNos);
/**
* desc:根据计划编号删除分配方案.<br/>
* @param planNo planNo
* @return int
*/
int deleteByPlanNo(@Param("planNo")String planNo);
/**
* desc:查询已审批未兑付的分配计划.<br/>
* @param planNo planNo
* @return List<PlanAllocDO>
*/
List<PlanAllocDO> queryApprovedNotPayAlloc(@Param("planNo")String planNo);
} }
...@@ -2,14 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper; ...@@ -2,14 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO;
import java.util.List; import java.util.List;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanAllocItemResultMap;
import java.util.Map;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan_alloc_item. * The Table abs_plan_alloc_item.
* 分配事项 * 分配计划事项表
*/ */
public interface PlanAllocItemDOMapper{ public interface PlanAllocItemDOMapper{
...@@ -37,46 +35,4 @@ public interface PlanAllocItemDOMapper{ ...@@ -37,46 +35,4 @@ public interface PlanAllocItemDOMapper{
* @return PlanAllocItemDO * @return PlanAllocItemDO
*/ */
PlanAllocItemDO getById(@Param("id")Long id); PlanAllocItemDO getById(@Param("id")Long id);
/**
* desc:根据唯一约束ItemNo更新表:abs_plan_alloc_item.<br/>
* @param entity entity
* @return int
*/
int updateByItemNo(PlanAllocItemDO entity);
/**
* desc:根据唯一约束ItemNo删除数据:abs_plan_alloc_item.<br/>
* @param itemNo itemNo
* @return int
*/
int deleteByItemNo(@Param("itemNo")String itemNo);
/**
* desc:根据唯一约束ItemNo获取数据:abs_plan_alloc_item.<br/>
* @param itemNo itemNo
* @return PlanAllocItemDO
*/
PlanAllocItemDO getByItemNo(@Param("itemNo")String itemNo);
/**
* desc:根据计划编号获取分配事项.<br/>
* @param planNo planNo
* @return List<PlanAllocItemResultMap>
*/
List<PlanAllocItemResultMap> getByPlanNo(@Param("planNo")String planNo);
/**
* desc:根据分配编号获取分配事项.<br/>
* @param allocNo allocNo
* @return List<PlanAllocItemResultMap>
*/
List<PlanAllocItemResultMap> getByAllocNo(@Param("allocNo")String allocNo);
/**
* desc:根据allocNo删除数据:abs_plan_alloc_item.<br/>
* @param allocNo allocNo
* @return int
*/
int deleteByAllocNo(@Param("allocNo")String allocNo);
/**
* desc:根据planNo删除数据.<br/>
* @param planNo planNo
* @return int
*/
int deleteByPlanNo(@Param("planNo")String planNo);
} }
...@@ -2,18 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper; ...@@ -2,18 +2,12 @@ package com.abssqr.plat.common.dal.mysql.auto.mapper;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO;
import java.util.List; import java.util.List;
import java.util.Map;
import com.abssqr.plat.common.dal.mysql.auto.paging.PlanListPage;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanListResultMap;
import java.lang.Long;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstServiceReport;
import java.util.Date;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan. * The Table abs_plan.
* 计划信息 * 产品表
*/ */
public interface PlanDOMapper{ public interface PlanDOMapper{
...@@ -24,121 +18,9 @@ public interface PlanDOMapper{ ...@@ -24,121 +18,9 @@ public interface PlanDOMapper{
*/ */
int insert(PlanDO entity); int insert(PlanDO entity);
/** /**
* desc:根据唯一约束PlanNo更新表:abs_plan.<br/> * desc:批量插入表:abs_plan.<br/>
* @param entity entity
* @return int
*/
int updateByPlanNo(PlanDO entity);
/**
* desc:根据唯一约束PlanNo更新表:abs_plan.<br/>
* @param planNo planNo
* @param status status
* @param gmtModifier gmtModifier
* @param approveStatus approveStatus
* @return int
*/
int updateStatusByPlanNo(@Param("planNo")String planNo,@Param("status")String status,@Param("gmtModifier")String gmtModifier,@Param("approveStatus")String approveStatus);
/**
* desc:根据唯一约束PlanNo修改状态:abs_plan.<br/>
* @param planNo planNo
* @param passed passed
* @return int
*/
int updatePassed(@Param("planNo")String planNo,@Param("passed")Boolean passed);
/**
* desc:根据唯一约束PlanNo删除数据:abs_plan.<br/>
* @param planNo planNo
* @return int
*/
int deleteByPlanNo(@Param("planNo")String planNo);
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param planNo planNo
* @return PlanDO
*/
PlanDO getByPlanNo(@Param("planNo")String planNo);
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param planNo planNo
* @return PlanDO
*/
PlanDO lockByPlanNo(@Param("planNo")String planNo);
/**
* desc:根据唯一约束PlanNo获取数据:abs_plan.<br/>
* @param list list * @param list list
* @return List<PlanDO>
*/
List<PlanDO> queryByPlanNo(List<String> list);
/**
* desc:新增判断计划是否存在.<br/>
* @param planNo planNo
* @param planName planName
* @return Integer
*/
Integer planExist(@Param("planNo")String planNo,@Param("planName")String planName);
/**
* desc:编辑判断计划是否存在.<br/>
* @param planNo planNo
* @param planName planName
* @return Integer
*/
Integer getSamePlan(@Param("planNo")String planNo,@Param("planName")String planName);
/**
* desc:分页查询计划.<br/>
* @param planList planList
* @return int
*/
int getPlanListCount(PlanListPage planList);
/**
* desc:分页查询计划.<br/>
* @param planList planList
* @return List<PlanListResultMap>
*/
List<PlanListResultMap> getPlanListResult(PlanListPage planList);
/**
* desc:根据状态数组获取计划列表.<br/>
* @param planType planType
* @param planNos planNos
* @param statusList statusList
* @return List<PlanDO>
*/
List<PlanDO> getPlansByStatusList(@Param("planType")String planType,@Param("planNos")List<String> planNos,@Param("statusList")List<String> statusList);
/**
* desc:根据状态数组获取计划列表.<br/>
* @param status status
* @param planType planType
* @return Long
*/
Long getAllPlanAmt(@Param("status")String status,@Param("planType")String planType);
/**
* desc:查询资产服务报告.<br/>
* @param planNo planNo
* @return AstServiceReport
*/
AstServiceReport getAstServiceReport(@Param("planNo")String planNo);
/**
* desc:根据服务机构获取存续期受让计划.<br/>
* @param managerOrgCode managerOrgCode
* @return List<PlanDO>
*/
List<PlanDO> getSpvByManagerOrgCode(@Param("managerOrgCode")String managerOrgCode);
/**
* desc:查询每日任务失败的数量.<br/>
* @param curDate curDate
* @return Long
*/
Long getFailDailyCount(@Param("curDate")Date curDate);
/**
* desc:更新定价规则.<br/>
* @param planNo planNo
* @param priceType priceType
* @return int * @return int
*/ */
int updatePriceType(@Param("planNo")String planNo,@Param("priceType")String priceType); int insertBatch(List<PlanDO> list);
/**
* desc:根据类型获取所有的计划.<br/>
* @param planType planType
* @return List<PlanDO>
*/
List<PlanDO> getAllPlanByType(@Param("planType")String planType);
} }
...@@ -7,26 +7,32 @@ import org.apache.ibatis.annotations.Param; ...@@ -7,26 +7,32 @@ import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan_fee_structure. * The Table abs_plan_fee_structure.
* 计划费用结构 * ABS_PLAN_FEE_STRUCTURE
*/ */
public interface PlanFeeStructureDOMapper{ public interface PlanFeeStructureDOMapper{
/** /**
* desc:插入表:abs_plan_fee_structure.<br/>
* @param entity entity
* @return int
*/
int insert(PlanFeeStructureDO entity);
/**
* desc:批量插入表:abs_plan_fee_structure.<br/> * desc:批量插入表:abs_plan_fee_structure.<br/>
* @param list list * @param list list
* @return int * @return int
*/ */
int insertBatch(List<PlanFeeStructureDO> list); int insertBatch(List<PlanFeeStructureDO> list);
/** /**
* desc:根据计划编号删除数据:abs_plan_fee_structure.<br/> * desc:根据主键删除数据:abs_plan_fee_structure.<br/>
* @param planNo planNo * @param id id
* @return int * @return int
*/ */
int deleteByPlanNo(@Param("planNo")String planNo); int deleteById(@Param("id")Long id);
/** /**
* desc:根据计划编号获取数据:abs_plan_fee_structure.<br/> * desc:根据主键获取数据:abs_plan_fee_structure.<br/>
* @param planNo planNo * @param id id
* @return List<PlanFeeStructureDO> * @return PlanFeeStructureDO
*/ */
List<PlanFeeStructureDO> selectByPlanNo(@Param("planNo")String planNo); PlanFeeStructureDO getById(@Param("id")Long id);
} }
...@@ -7,26 +7,20 @@ import org.apache.ibatis.annotations.Param; ...@@ -7,26 +7,20 @@ import org.apache.ibatis.annotations.Param;
/** /**
* 由于需要对分页支持,请直接使用对应的DAO类 * 由于需要对分页支持,请直接使用对应的DAO类
* The Table abs_plan_invest_structure. * The Table abs_plan_invest_structure.
* 投资结构 * ABS_PLAN_INVEST_STRUCTURE
*/ */
public interface PlanInvestStructureDOMapper{ public interface PlanInvestStructureDOMapper{
/** /**
* desc:批量插入表:abs_plan_invest_structure.<br/> * desc:插入表:abs_plan_invest_structure.<br/>
* @param list list * @param entity entity
* @return int * @return int
*/ */
int insertBatch(List<PlanInvestStructureDO> list); int insert(PlanInvestStructureDO entity);
/** /**
* desc:根据计划编号删除.<br/> * desc:批量插入表:abs_plan_invest_structure.<br/>
* @param planNo planNo * @param list list
* @return int * @return int
*/ */
int deleteByPlanNo(@Param("planNo")String planNo); int insertBatch(List<PlanInvestStructureDO> list);
/**
* desc:根据计划编号获取.<br/>
* @param planNo planNo
* @return List<PlanInvestStructureDO>
*/
List<PlanInvestStructureDO> selectByPlanNo(@Param("planNo")String planNo);
} }
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 AstPoolLoanPage 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.dal.mysql.auto.paging;
import com.abssqr.plat.common.dal.mysql.auto.paging.BasePage;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.LoanDO;
/**
* The table ABS_LOAN 信贷资产
*/
public class PackAstPage extends BasePage<LoanDO>{
/**
* packNo .
*/
private String packNo;
/**
* Set packNo .
*/
public void setPackNo(String packNo){
this.packNo = packNo;
}
/**
* Get packNo .
*
* @return the string
*/
public String getPackNo(){
return packNo;
}
}
...@@ -7,42 +7,20 @@ ...@@ -7,42 +7,20 @@
<result column="REF_NO" property="refNo" jdbcType="VARCHAR" javaType="String"/> <result column="REF_NO" property="refNo" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="TITLE_NO" property="titleNo" jdbcType="VARCHAR" javaType="String"/> <result column="TITLE_NO" property="titleNo" jdbcType="VARCHAR" javaType="String"/>
<result column="CALC_TYPE" property="calcType" jdbcType="VARCHAR" javaType="String"/>
<result column="SCALE_TYPE" property="scaleType" jdbcType="VARCHAR" javaType="String"/>
<result column="TITLE_NAME" property="titleName" jdbcType="VARCHAR" javaType="String"/> <result column="TITLE_NAME" property="titleName" jdbcType="VARCHAR" javaType="String"/>
<result column="TITLE_TYPE" property="titleType" jdbcType="VARCHAR" javaType="String"/> <result column="TITLE_TYPE" property="titleType" jdbcType="VARCHAR" javaType="String"/>
<result column="FIN_SER_FEE_TYPE" property="finSerFeeType" jdbcType="VARCHAR" javaType="String"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="EFFECT_DATE" property="effectDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
<result column="LAST_PAY_DATE" property="lastPayDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="LAST_SETTLE_DATE" property="lastSettleDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="RATE" property="rate" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/>
<result column="TOTAL_AMT" property="totalAmt" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/>
<result column="BAL" property="bal" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="PAY_AMT" property="payAmt" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="INIT_AMT" property="initAmt" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="RECP_AMT" property="recpAmt" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="ENTRY_AMT" property="entryAmt" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="PAY_VATAX" property="payVatax" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="RECP_VATAX" property="recpVatax" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
<result column="UPPER_LIMIT" property="upperLimit" jdbcType="DECIMAL" javaType="com.general.system.common.model.Money"/>
</resultMap> </resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.BAL,sf.PAY_AMT,sf.RECP_AMT,sf.PAY_VATAX,sf.TOTAL_AMT,sf.ENTRY_AMT,sf.REF_NO sf.ID,sf.REF_NO,sf.PLAN_NO,sf.TITLE_NO,sf.TITLE_NAME
,sf.INIT_AMT,sf.RECP_VATAX,sf.UPPER_LIMIT,sf.PLAN_NO,sf.TITLE_NO ,sf.TITLE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED
,sf.CALC_TYPE,sf.TITLE_NAME,sf.TITLE_TYPE,sf.SCALE_TYPE,sf.GMT_CREATE
,sf.GMT_MODIFIED,sf.LAST_PAY_DATE,sf.LAST_SETTLE_DATE,sf.RATE
,sf.FIN_SER_FEE_TYPE,sf.EFFECT_DATE
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,BAL,PAY_AMT,RECP_AMT,PAY_VATAX,TOTAL_AMT,ENTRY_AMT,REF_NO ID,REF_NO,PLAN_NO,TITLE_NO,TITLE_NAME
,INIT_AMT,RECP_VATAX,UPPER_LIMIT,PLAN_NO,TITLE_NO ,TITLE_TYPE,GMT_CREATE,GMT_MODIFIED
,CALC_TYPE,TITLE_NAME,TITLE_TYPE,SCALE_TYPE,GMT_CREATE
,GMT_MODIFIED,LAST_PAY_DATE,LAST_SETTLE_DATE,RATE
,FIN_SER_FEE_TYPE,EFFECT_DATE
</sql> </sql>
...@@ -51,54 +29,22 @@ ...@@ -51,54 +29,22 @@
<![CDATA[ <![CDATA[
INSERT INTO abs_plan_acct_title( INSERT INTO abs_plan_acct_title(
ID ID
,BAL
,PAY_AMT
,RECP_AMT
,PAY_VATAX
,TOTAL_AMT
,ENTRY_AMT
,REF_NO ,REF_NO
,INIT_AMT
,RECP_VATAX
,UPPER_LIMIT
,PLAN_NO ,PLAN_NO
,TITLE_NO ,TITLE_NO
,CALC_TYPE
,TITLE_NAME ,TITLE_NAME
,TITLE_TYPE ,TITLE_TYPE
,SCALE_TYPE
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAST_PAY_DATE
,LAST_SETTLE_DATE
,RATE
,FIN_SER_FEE_TYPE
,EFFECT_DATE
)VALUES( )VALUES(
SEQ_ABS_PLAN_ACCT_TITLE.nextval SEQ_ABS_PLAN_ACCT_TITLE.nextval
, #{bal,jdbcType=BIGINT}
, #{payAmt,jdbcType=BIGINT}
, #{recpAmt,jdbcType=BIGINT}
, #{payVatax,jdbcType=BIGINT}
, #{totalAmt,jdbcType=DECIMAL}
, #{entryAmt,jdbcType=BIGINT}
, #{refNo,jdbcType=VARCHAR} , #{refNo,jdbcType=VARCHAR}
, #{initAmt,jdbcType=BIGINT}
, #{recpVatax,jdbcType=BIGINT}
, #{upperLimit,jdbcType=BIGINT}
, #{planNo,jdbcType=VARCHAR} , #{planNo,jdbcType=VARCHAR}
, #{titleNo,jdbcType=VARCHAR} , #{titleNo,jdbcType=VARCHAR}
, #{calcType,jdbcType=VARCHAR}
, #{titleName,jdbcType=VARCHAR} , #{titleName,jdbcType=VARCHAR}
, #{titleType,jdbcType=VARCHAR} , #{titleType,jdbcType=VARCHAR}
, #{scaleType,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{lastPayDate,jdbcType=TIMESTAMP}
, #{lastSettleDate,jdbcType=TIMESTAMP}
, #{rate,jdbcType=DECIMAL}
, #{finSerFeeType,jdbcType=VARCHAR}
, #{effectDate,jdbcType=DATE}
) )
]]> ]]>
</insert> </insert>
...@@ -109,126 +55,25 @@ ...@@ -109,126 +55,25 @@
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_acct_title( INSERT INTO abs_plan_acct_title(
ID ID
,BAL
,PAY_AMT
,RECP_AMT
,PAY_VATAX
,TOTAL_AMT
,ENTRY_AMT
,REF_NO ,REF_NO
,INIT_AMT
,RECP_VATAX
,UPPER_LIMIT
,PLAN_NO ,PLAN_NO
,TITLE_NO ,TITLE_NO
,CALC_TYPE
,TITLE_NAME ,TITLE_NAME
,TITLE_TYPE ,TITLE_TYPE
,SCALE_TYPE
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAST_PAY_DATE
,LAST_SETTLE_DATE
,RATE
,FIN_SER_FEE_TYPE
,EFFECT_DATE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_ACCT_TITLE.nextval null
, #{item.bal,jdbcType=BIGINT}
, #{item.payAmt,jdbcType=BIGINT}
, #{item.recpAmt,jdbcType=BIGINT}
, #{item.payVatax,jdbcType=BIGINT}
, #{item.totalAmt,jdbcType=DECIMAL}
, #{item.entryAmt,jdbcType=BIGINT}
, #{item.refNo,jdbcType=VARCHAR} , #{item.refNo,jdbcType=VARCHAR}
, #{item.initAmt,jdbcType=BIGINT}
, #{item.recpVatax,jdbcType=BIGINT}
, #{item.upperLimit,jdbcType=BIGINT}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.titleNo,jdbcType=VARCHAR} , #{item.titleNo,jdbcType=VARCHAR}
, #{item.calcType,jdbcType=VARCHAR}
, #{item.titleName,jdbcType=VARCHAR} , #{item.titleName,jdbcType=VARCHAR}
, #{item.titleType,jdbcType=VARCHAR} , #{item.titleType,jdbcType=VARCHAR}
, #{item.scaleType,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{item.lastPayDate,jdbcType=TIMESTAMP}
, #{item.lastSettleDate,jdbcType=TIMESTAMP}
, #{item.rate,jdbcType=DECIMAL}
, #{item.finSerFeeType,jdbcType=VARCHAR}
, #{item.effectDate,jdbcType=DATE}
) )
</foreach> </foreach>
;end; ;end;
</insert> </insert>
<!--根据唯一约束AbsPlanAcctTitle更新表:abs_plan_acct_title mydalgen自动生成,请勿修改-->
<update id="updateAmt" >
UPDATE /*MS-ABS-PLAN-ACCT-TITLE-UPDATEAMT*/ abs_plan_acct_title
SET
BAL = #{bal,jdbcType=BIGINT}
,PAY_AMT = #{payAmt,jdbcType=BIGINT}
,RECP_AMT = #{recpAmt,jdbcType=BIGINT}
,PAY_VATAX = #{payVatax,jdbcType=BIGINT}
,RECP_VATAX = #{recpVatax,jdbcType=BIGINT}
,UPPER_LIMIT = #{upperLimit,jdbcType=BIGINT}
,SCALE_TYPE = #{scaleType,jdbcType=BIGINT}
,TOTAL_AMT = #{totalAmt,jdbcType=DECIMAL}
,ENTRY_AMT = #{entryAmt,jdbcType=BIGINT}
,GMT_MODIFIED = sysdate
,LAST_PAY_DATE = #{lastPayDate,jdbcType=TIMESTAMP}
,LAST_SETTLE_DATE = #{lastSettleDate,jdbcType=TIMESTAMP}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_NO = #{titleNo,jdbcType=VARCHAR}
</update>
<!--根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title mydalgen自动生成,请勿修改-->
<select id="getByPlan" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ACCT-TITLE-GETBYPLAN*/ <include refid="Base_Column_List" />
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</select>
<!--根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title mydalgen自动生成,请勿修改-->
<select id="getByPlanAndTypes" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ACCT-TITLE-GETBYPLANANDTYPES*/ <include refid="Base_Column_List" />
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_TYPE in
<foreach collection="listTitleType" item="titleType" separator="," open="(" close=")">
#{titleType,jdbcType=VARCHAR}
</foreach>
</select>
<!--根据唯一约束AbsPlanAcctTitle删除数据:abs_plan_acct_title mydalgen自动生成,请勿修改-->
<select id="getFinFeesByPlan" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ACCT-TITLE-GETFINFEESBYPLAN*/ <include refid="Base_Column_List" />
FROM abs_plan_acct_title
WHERE
CALC_TYPE= 'FCT005'
AND PLAN_NO in
<foreach collection="list" item="planNo" separator="," open="(" close=")">
#{planNo,jdbcType=VARCHAR}
</foreach>
</select>
<!--根据唯一约束AbsPlanAcctTitle获取数据:abs_plan_acct_title mydalgen自动生成,请勿修改-->
<select id="getByTitleNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ACCT-TITLE-GETBYTITLENO*/ <include refid="Base_Column_List" />
FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND TITLE_NO = #{titleNo,jdbcType=VARCHAR}
</select>
<!--根据计划编号删除分配信息 mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" >
DELETE /*MS-ABS-PLAN-ACCT-TITLE-DELETEBYPLANNO*/ FROM abs_plan_acct_title
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</delete>
</mapper> </mapper>
...@@ -4,58 +4,53 @@ ...@@ -4,58 +4,53 @@
<!-- 自动生成,请修改 ABS_PLAN_ALLOC.xml --> <!-- 自动生成,请修改 ABS_PLAN_ALLOC.xml -->
<resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO"> <resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO">
<id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/> <id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/>
<result column="ALLOC_AMT" property="allocAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="STATUS" property="status" jdbcType="VARCHAR" javaType="String"/>
<result column="ALLOC_NO" property="allocNo" jdbcType="VARCHAR" javaType="String"/> <result column="ALLOC_NO" property="allocNo" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_TYPE" property="planType" jdbcType="VARCHAR" javaType="String"/>
<result column="APPROVE_STATUS" property="approveStatus" jdbcType="VARCHAR" javaType="String"/>
<result column="PAY_DATE" property="payDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="PAY_DATE" property="payDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="CLEAR_DATE" property="clearDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="CALC_DATE" property="calcDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="ALLOC_DATE" property="allocDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="REPORT_DATE" property="reportDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="SETTLE_DATE" property="settleDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
</resultMap> </resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.ALLOC_NO,sf.PAY_DATE,sf.CLEAR_DATE,sf.GMT_CREATE sf.ID,sf.PLAN_NO,sf.ALLOC_NO,sf.PAY_DATE,sf.CALC_DATE
,sf.GMT_MODIFIED,sf.ALLOC_AMT,sf.PLAN_NO,sf.STATUS ,sf.ALLOC_DATE,sf.GMT_CREATE,sf.REPORT_DATE,sf.SETTLE_DATE,sf.GMT_MODIFIED
,sf.APPROVE_STATUS,sf.PLAN_TYPE
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,ALLOC_NO,PAY_DATE,CLEAR_DATE,GMT_CREATE ID,PLAN_NO,ALLOC_NO,PAY_DATE,CALC_DATE
,GMT_MODIFIED,ALLOC_AMT,PLAN_NO,STATUS,APPROVE_STATUS ,ALLOC_DATE,GMT_CREATE,REPORT_DATE,SETTLE_DATE,GMT_MODIFIED
,PLAN_TYPE
</sql> </sql>
<!--插入表:abs_plan_alloc mydalgen自动生成,请勿修改--> <!--插入表:abs_plan_alloc mydalgen自动生成,请勿修改-->
<insert id="insert" useGeneratedKeys="true" > <insert id="insert" >
<![CDATA[ <![CDATA[
INSERT INTO abs_plan_alloc( INSERT INTO abs_plan_alloc(
ID ID
,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,PAY_DATE ,PAY_DATE
,CLEAR_DATE ,CALC_DATE
,ALLOC_DATE
,GMT_CREATE ,GMT_CREATE
,REPORT_DATE
,SETTLE_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,ALLOC_AMT
,PLAN_NO
,STATUS
,APPROVE_STATUS
,PLAN_TYPE
)VALUES( )VALUES(
SEQ_ABS_PLAN_ALLOC.nextval SEQ_ABS_PLAN_ALLOC.nextval
, #{planNo,jdbcType=VARCHAR}
, #{allocNo,jdbcType=VARCHAR} , #{allocNo,jdbcType=VARCHAR}
, #{payDate,jdbcType=DATE} , #{payDate,jdbcType=DATE}
, #{clearDate,jdbcType=DATE} , #{calcDate,jdbcType=DATE}
, #{allocDate,jdbcType=DATE}
, sysdate , sysdate
, #{reportDate,jdbcType=DATE}
, #{settleDate,jdbcType=DATE}
, sysdate , sysdate
, #{allocAmt,jdbcType=BIGINT}
, #{planNo,jdbcType=VARCHAR}
, #{status,jdbcType=VARCHAR}
, #{approveStatus,jdbcType=VARCHAR}
, #{planType,jdbcType=VARCHAR}
) )
]]> ]]>
</insert> </insert>
...@@ -66,220 +61,48 @@ ...@@ -66,220 +61,48 @@
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_alloc( INSERT INTO abs_plan_alloc(
ID ID
,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,PAY_DATE ,PAY_DATE
,CLEAR_DATE ,CALC_DATE
,ALLOC_DATE
,GMT_CREATE ,GMT_CREATE
,REPORT_DATE
,SETTLE_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,ALLOC_AMT
,PLAN_NO
,STATUS
,APPROVE_STATUS
,PLAN_TYPE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_ALLOC.nextval null
, #{item.planNo,jdbcType=VARCHAR}
, #{item.allocNo,jdbcType=VARCHAR} , #{item.allocNo,jdbcType=VARCHAR}
, #{item.payDate,jdbcType=DATE} , #{item.payDate,jdbcType=DATE}
, #{item.clearDate,jdbcType=DATE} , #{item.calcDate,jdbcType=DATE}
, #{item.allocDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.reportDate,jdbcType=DATE}
, #{item.settleDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.allocAmt,jdbcType=BIGINT}
, #{item.planNo,jdbcType=VARCHAR}
, #{item.status,jdbcType=VARCHAR}
, #{item.approveStatus,jdbcType=VARCHAR}
, #{item.planType,jdbcType=VARCHAR}
) )
</foreach> </foreach>
;end; ;end;
</insert> </insert>
<!--更新表:abs_plan_alloc mydalgen自动生成,请勿修改--> <!--根据主键删除数据:abs_plan_alloc mydalgen自动生成,请勿修改-->
<update id="updateByAllocNo" > <delete id="deleteById" >
<![CDATA[
UPDATE /*MS-ABS-PLAN-ALLOC-UPDATEBYALLOCNO*/ abs_plan_alloc
SET
PAY_DATE = #{payDate,jdbcType=DATE}
,CLEAR_DATE = #{clearDate,jdbcType=DATE}
,GMT_MODIFIED = sysdate
,ALLOC_AMT = #{allocAmt,jdbcType=BIGINT}
,STATUS = #{status,jdbcType=VARCHAR}
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
]]>
</update>
<!--根据AllocNo删除数据:abs_plan_alloc mydalgen自动生成,请勿修改-->
<delete id="deleteByAllocNo" >
<![CDATA[ <![CDATA[
DELETE /*MS-ABS-PLAN-ALLOC-DELETEBYALLOCNO*/ FROM abs_plan_alloc DELETE /*MS-ABS-PLAN-ALLOC-DELETEBYID*/ FROM abs_plan_alloc
WHERE WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
</delete> </delete>
<!--根据主键获取数据:abs_plan_alloc mydalgen自动生成,请勿修改--> <!--根据主键获取数据:abs_plan_alloc mydalgen自动生成,请勿修改-->
<select id="getByAllocNo" resultMap="BaseResultMap" > <select id="getById" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-GETBYALLOCNO*/ <include refid="Base_Column_List" /> SELECT /*MS-ABS-PLAN-ALLOC-GETBYID*/ <include refid="Base_Column_List" />
FROM abs_plan_alloc
WHERE
<![CDATA[
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
]]>
</select>
<!--更新状态 mydalgen自动生成,请勿修改-->
<update id="updateStatus" >
<![CDATA[
UPDATE /*MS-ABS-PLAN-ALLOC-UPDATESTATUS*/ abs_plan_alloc
SET
GMT_MODIFIED = sysdate
,STATUS = #{status,jdbcType=VARCHAR}
WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
and
STATUS = #{oldStatus,jdbcType=VARCHAR}
]]>
</update>
<!--根据主键获取数据:abs_plan_alloc mydalgen自动生成,请勿修改-->
<select id="queryByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYBYPLANNO*/ <include refid="Base_Column_List" />
FROM abs_plan_alloc FROM abs_plan_alloc
WHERE WHERE
<![CDATA[ <![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]>
ORDER BY CLEAR_DATE
</select>
<!--根据计划编号获取时间段分配金额 mydalgen自动生成,请勿修改-->
<select id="queryAllocByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYALLOCBYPLANNO*/ <include refid="Base_Column_List" />
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
</select>
<!--根据兑付日获取查询最近计划:abs_plan_alloc mydalgen自动生成,请勿修改-->
<select id="queryRecentlyPlans" resultMap="BaseResultMap" >
select /*MS-ABS-PLAN-ALLOC-QUERYRECENTLYPLANS*/ <include refid="Base_Column_List" /> from(
SELECT
<include refid="Base_SF_Column_List" />
FROM
ABS_PLAN_ALLOC sf
WHERE
<![CDATA[
PAY_DATE >= SYSDATE
AND
PLAN_TYPE = #{planType,jdbcType=VARCHAR}
ORDER BY
PAY_DATE
]]>
) tab where ROWNUM = 1
</select>
<!--查询相同结算日分配计划数量 mydalgen自动生成,请勿修改-->
<select id="querySameClearDate" resultType="int" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYSAMECLEARDATE*/ count(*) cnt
FROM abs_plan_alloc
WHERE
CLEAR_DATE = #{clearDate,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
AND
ALLOC_NO != #{allocNo,jdbcType=VARCHAR}
</select>
<!--根据主键获取数据:abs_plan_alloc mydalgen自动生成,请勿修改-->
<select id="lockByAllocNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-LOCKBYALLOCNO*/ <include refid="Base_Column_List" />
FROM abs_plan_alloc
WHERE
<![CDATA[
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
FOR UPDATE
]]>
</select>
<!--获取所有已审批通过未解绑的兑付计划 mydalgen自动生成,请勿修改-->
<select id="queryUnMatchedApprovedAlloc" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYUNMATCHEDAPPROVEDALLOC*/ <include refid="Base_Column_List" />
FROM ABS_PLAN_ALLOC
WHERE
APPROVE_STATUS='PASSED'
AND PLAN_NO=#{planNo,jdbcType=VARCHAR}
AND ALLOC_NO NOT IN(
SELECT /*MS-ABS-PLAN-ALLOC-QUERYUNMATCHEDAPPROVEDALLOC*/ BIZ_NO
FROM ABS_COMMON_TASK
WHERE
TASK_TYPE='CAPTITALASSERT_UNMATCH'
)
</select>
<!--根据计划编号获取时间段分配金额 mydalgen自动生成,请勿修改-->
<select id="queryStatAllocAmtByPlanNoAndPayDate" resultType="java.lang.Long" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYSTATALLOCAMTBYPLANNOANDPAYDATE*/ SUM(ALLOC_AMT) ALLOC_AMT
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
AND
PLAN_NO = #{planNo,jdbcType=VARCHAR}
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
GROUP BY PLAN_NO
</select>
<!--根据计划编号获取累计分配金额 mydalgen自动生成,请勿修改-->
<select id="queryStatTotalAllocAmtByPlanNos" resultType="java.lang.Long" >
SELECT /*MS-ABS-PLAN-ALLOC-QUERYSTATTOTALALLOCAMTBYPLANNOS*/ SUM(ALLOC_AMT) ALLOC_AMT
FROM ABS_PLAN_ALLOC
WHERE
STATUS = #{status,jdbcType=VARCHAR}
AND
APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
<if test="listPlanNos != null and listPlanNos.size() &gt; 0">
AND PLAN_NO IN
<foreach collection="listPlanNos" item="onePlanNo" separator="," open="(" close=")">
#{onePlanNo, jdbcType=VARCHAR}
</foreach>
</if>
<if test="startDate!=null and endDate!=null">
AND
PAY_DATE BETWEEN #{startDate,jdbcType=DATE} AND #{endDate,jdbcType=DATE}
</if>
GROUP BY PLAN_NO
</select>
<!--根据计划编号删除分配方案 mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" >
DELETE /*MS-ABS-PLAN-ALLOC-DELETEBYPLANNO*/ FROM abs_plan_alloc
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</delete>
<!--查询已审批未兑付的分配计划 mydalgen自动生成,请勿修改-->
<select id="queryApprovedNotPayAlloc" resultMap="BaseResultMap" >
SELECT
<include refid="Base_Column_List" />
FROM
ABS_PLAN_ALLOC
WHERE
<![CDATA[
APPROVE_STATUS='PASSED'
AND PLAN_NO=#{planNo,jdbcType=VARCHAR}
AND STATUS <> 'ASSIGNED'
]]> ]]>
</select> </select>
</mapper> </mapper>
...@@ -4,72 +4,53 @@ ...@@ -4,72 +4,53 @@
<!-- 自动生成,请修改 ABS_PLAN_ALLOC_ITEM.xml --> <!-- 自动生成,请修改 ABS_PLAN_ALLOC_ITEM.xml -->
<resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO"> <resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO">
<id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/> <id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/>
<result column="TRIAL_AMT" property="trialAmt" jdbcType="DECIMAL" javaType="Long"/> <result column="SORT" property="order" jdbcType="DECIMAL" javaType="Long"/>
<result column="SETTLE_AMT" property="settleAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="CONFIRM_AMT" property="confirmAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="TRIAL_TAX_AMT" property="trialTaxAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="CONFIRM_TAX_AMT" property="confirmTaxAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="ITEM_NO" property="itemNo" jdbcType="VARCHAR" javaType="String"/> <result column="ITEM_NO" property="itemNo" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="ALLOC_NO" property="allocNo" jdbcType="VARCHAR" javaType="String"/> <result column="ALLOC_NO" property="allocNo" jdbcType="VARCHAR" javaType="String"/>
<result column="TITLE_NO" property="titleNo" jdbcType="VARCHAR" javaType="String"/> <result column="TITLE_NO" property="titleNo" jdbcType="VARCHAR" javaType="String"/>
<result column="TAX" property="tax" jdbcType="CHAR" javaType="Boolean"/> <result column="ALLOC_TYPE" property="allocType" jdbcType="VARCHAR" javaType="String"/>
<result column="SORT" property="sort" jdbcType="DECIMAL" javaType="Integer"/> <result column="TITLE_NAME" property="titleName" jdbcType="VARCHAR" javaType="String"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
</resultMap> </resultMap>
<resultMap id="PlanAllocItemResultMap" type="com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanAllocItemResultMap" extends="BaseResultMap">
<result column="title_name" property="titleName" javaType="String"/>
<result column="title_type" property="titleType" javaType="String"/>
<result column="pay_trial" property="payTrial" javaType="Boolean"/>
</resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.TRIAL_AMT,sf.CONFIRM_AMT,sf.TRIAL_TAX_AMT,sf.CONFIRM_TAX_AMT sf.ID,sf.SORT,sf.ITEM_NO,sf.PLAN_NO,sf.ALLOC_NO
,sf.ITEM_NO,sf.PLAN_NO,sf.ALLOC_NO,sf.TITLE_NO,sf.TAX,sf.SORT ,sf.TITLE_NO,sf.ALLOC_TYPE,sf.TITLE_NAME,sf.GMT_CREATE,sf.GMT_MODIFIED
,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.SETTLE_AMT
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,TRIAL_AMT,CONFIRM_AMT,TRIAL_TAX_AMT,CONFIRM_TAX_AMT ID,SORT,ITEM_NO,PLAN_NO,ALLOC_NO
,ITEM_NO,PLAN_NO,ALLOC_NO,TITLE_NO,TAX,SORT ,TITLE_NO,ALLOC_TYPE,TITLE_NAME,GMT_CREATE,GMT_MODIFIED
,GMT_CREATE,GMT_MODIFIED,SETTLE_AMT
</sql> </sql>
<!--插入表:abs_plan_alloc_item mydalgen自动生成,请勿修改--> <!--插入表:abs_plan_alloc_item mydalgen自动生成,请勿修改-->
<insert id="insert" useGeneratedKeys="true" > <insert id="insert" >
<![CDATA[ <![CDATA[
INSERT INTO abs_plan_alloc_item( INSERT INTO abs_plan_alloc_item(
ID ID
,TRIAL_AMT ,"ORDER"
,CONFIRM_AMT
,TRIAL_TAX_AMT
,CONFIRM_TAX_AMT
,ITEM_NO ,ITEM_NO
,PLAN_NO ,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,TITLE_NO ,TITLE_NO
,TAX ,ALLOC_TYPE
,SORT ,TITLE_NAME
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,SETTLE_AMT
)VALUES( )VALUES(
SEQ_ABS_PLAN_ALLOC_ITEM.nextval SEQ_ABS_PLAN_ALLOC_ITEM.nextval
, #{trialAmt,jdbcType=BIGINT} , #{order,jdbcType=DECIMAL}
, #{confirmAmt,jdbcType=BIGINT}
, #{trialTaxAmt,jdbcType=BIGINT}
, #{confirmTaxAmt,jdbcType=BIGINT}
, #{itemNo,jdbcType=VARCHAR} , #{itemNo,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR} , #{planNo,jdbcType=VARCHAR}
, #{allocNo,jdbcType=VARCHAR} , #{allocNo,jdbcType=VARCHAR}
, #{titleNo,jdbcType=VARCHAR} , #{titleNo,jdbcType=VARCHAR}
, #{tax,jdbcType=CHAR} , #{allocType,jdbcType=VARCHAR}
, #{sort,jdbcType=INTEGER} , #{titleName,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{settleAmt,jdbcType=BIGINT}
) )
]]> ]]>
</insert> </insert>
...@@ -80,35 +61,27 @@ ...@@ -80,35 +61,27 @@
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_alloc_item( INSERT INTO abs_plan_alloc_item(
ID ID
,TRIAL_AMT ,"ORDER"
,CONFIRM_AMT
,TRIAL_TAX_AMT
,CONFIRM_TAX_AMT
,ITEM_NO ,ITEM_NO
,PLAN_NO ,PLAN_NO
,ALLOC_NO ,ALLOC_NO
,TITLE_NO ,TITLE_NO
,TAX ,ALLOC_TYPE
,SORT ,TITLE_NAME
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,SETTLE_AMT
)VALUES )VALUES
( (
SEQ_ABS_PLAN_ALLOC_ITEM.nextval null
, #{item.trialAmt,jdbcType=BIGINT} , #{item.order,jdbcType=DECIMAL}
, #{item.confirmAmt,jdbcType=BIGINT}
, #{item.trialTaxAmt,jdbcType=BIGINT}
, #{item.confirmTaxAmt,jdbcType=BIGINT}
, #{item.itemNo,jdbcType=VARCHAR} , #{item.itemNo,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.allocNo,jdbcType=VARCHAR} , #{item.allocNo,jdbcType=VARCHAR}
, #{item.titleNo,jdbcType=VARCHAR} , #{item.titleNo,jdbcType=VARCHAR}
, #{item.tax,jdbcType=CHAR} , #{item.allocType,jdbcType=VARCHAR}
, #{item.sort,jdbcType=INTEGER} , #{item.titleName,jdbcType=VARCHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{item.settleAmt,jdbcType=BIGINT}
) )
</foreach> </foreach>
;end; ;end;
...@@ -119,7 +92,7 @@ ...@@ -119,7 +92,7 @@
<![CDATA[ <![CDATA[
DELETE /*MS-ABS-PLAN-ALLOC-ITEM-DELETEBYID*/ FROM abs_plan_alloc_item DELETE /*MS-ABS-PLAN-ALLOC-ITEM-DELETEBYID*/ FROM abs_plan_alloc_item
WHERE WHERE
ID = #{id,jdbcType=BIGINT} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
</delete> </delete>
...@@ -129,89 +102,7 @@ ...@@ -129,89 +102,7 @@
FROM abs_plan_alloc_item FROM abs_plan_alloc_item
WHERE WHERE
<![CDATA[ <![CDATA[
ID = #{id,jdbcType=BIGINT} ID = #{id,jdbcType=DECIMAL}
]]>
</select>
<!--根据唯一约束ItemNo更新表:abs_plan_alloc_item mydalgen自动生成,请勿修改-->
<update id="updateByItemNo" >
<![CDATA[
UPDATE /*MS-ABS-PLAN-ALLOC-ITEM-UPDATEBYITEMNO*/ abs_plan_alloc_item
SET
TRIAL_AMT = #{trialAmt,jdbcType=BIGINT}
,CONFIRM_AMT = #{confirmAmt,jdbcType=BIGINT}
,TRIAL_TAX_AMT = #{trialTaxAmt,jdbcType=BIGINT}
,CONFIRM_TAX_AMT = #{confirmTaxAmt,jdbcType=BIGINT}
,PLAN_NO = #{planNo,jdbcType=VARCHAR}
,ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
,TITLE_NO = #{titleNo,jdbcType=VARCHAR}
,TAX = #{tax,jdbcType=CHAR}
,SORT = #{sort,jdbcType=CHAR}
,SETTLE_AMT = #{settleAmt,jdbcType=BIGINT}
,GMT_MODIFIED = sysdate
WHERE
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]>
</update>
<!--根据唯一约束ItemNo删除数据:abs_plan_alloc_item mydalgen自动生成,请勿修改-->
<delete id="deleteByItemNo" >
<![CDATA[
DELETE /*MS-ABS-PLAN-ALLOC-ITEM-DELETEBYITEMNO*/ FROM abs_plan_alloc_item
WHERE
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]>
</delete>
<!--根据唯一约束ItemNo获取数据:abs_plan_alloc_item mydalgen自动生成,请勿修改-->
<select id="getByItemNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-ITEM-GETBYITEMNO*/ <include refid="Base_Column_List" />
FROM abs_plan_alloc_item
WHERE
<![CDATA[
ITEM_NO = #{itemNo,jdbcType=VARCHAR}
]]> ]]>
</select> </select>
<!--根据计划编号获取分配事项 mydalgen自动生成,请勿修改-->
<select id="getByPlanNo" resultMap="PlanAllocItemResultMap" >
select /*MS-ABS-PLAN-ALLOC-ITEM-GETBYPLANNO*/ <include refid="Base_SF_Column_List" />,t.title_name,t.TITLE_TYPE,
decode(FIN_SER_FEE_TYPE,'WITHHOLD','0','1') as pay_trial
from
abs_plan_alloc_item sf
left join abs_plan_acct_title t
ON sf.title_no = t.title_no
where
sf.PLAN_NO = #{planNo,jdbcType=VARCHAR}
order by sf.ALLOC_NO asc,sf.SORT asc
</select>
<!--根据分配编号获取分配事项 mydalgen自动生成,请勿修改-->
<select id="getByAllocNo" resultMap="PlanAllocItemResultMap" >
SELECT /*MS-ABS-PLAN-ALLOC-ITEM-GETBYALLOCNO*/ <include refid="Base_SF_Column_List" />,t.TITLE_NAME,t.TITLE_TYPE,
decode(FIN_SER_FEE_TYPE,'WITHHOLD',0,1) as pay_trial
FROM
ABS_PLAN_ALLOC_ITEM sf
left join abs_plan_acct_title t
ON sf.title_no = t.title_no
WHERE
sf.ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
ORDER BY sf.SORT asc
</select>
<!--根据allocNo删除数据:abs_plan_alloc_item mydalgen自动生成,请勿修改-->
<delete id="deleteByAllocNo" >
<![CDATA[
DELETE /*MS-ABS-PLAN-ALLOC-ITEM-DELETEBYALLOCNO*/ FROM abs_plan_alloc_item
WHERE
ALLOC_NO = #{allocNo,jdbcType=VARCHAR}
]]>
</delete>
<!--根据planNo删除数据 mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" >
DELETE /*MS-ABS-PLAN-ALLOC-ITEM-DELETEBYPLANNO*/ FROM abs_plan_alloc_item
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</delete>
</mapper> </mapper>
...@@ -5,430 +5,135 @@ ...@@ -5,430 +5,135 @@
<resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO"> <resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO">
<id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/> <id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/>
<result column="TOTAL_AMT" property="totalAmt" jdbcType="DECIMAL" javaType="Long"/> <result column="TOTAL_AMT" property="totalAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="ALLOC_PERIOD" property="allocPeriod" jdbcType="DECIMAL" javaType="Long"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="STATUS" property="status" jdbcType="VARCHAR" javaType="String"/> <result column="STATUS" property="status" jdbcType="VARCHAR" javaType="String"/>
<result column="CREATOR" property="creator" jdbcType="VARCHAR" javaType="String"/>
<result column="PAY_FREQ" property="payFreq" jdbcType="VARCHAR" javaType="String"/>
<result column="FUND_TYPE" property="fundType" jdbcType="VARCHAR" javaType="String"/>
<result column="MODIFIER" property="modifier" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_NAME" property="planName" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NAME" property="planName" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_TYPE" property="planType" jdbcType="VARCHAR" javaType="String"/>
<result column="PRICE_TYPE" property="priceType" jdbcType="VARCHAR" javaType="String"/>
<result column="GMT_CREATOR" property="gmtCreator" jdbcType="VARCHAR" javaType="String"/> <result column="GMT_CREATOR" property="gmtCreator" jdbcType="VARCHAR" javaType="String"/>
<result column="GMT_MODIFIER" property="gmtModifier" jdbcType="VARCHAR" javaType="String"/> <result column="TRADE_PLACE" property="tradePlace" jdbcType="VARCHAR" javaType="String"/>
<result column="CALC_INTR_TYPE" property="calcIntrType" jdbcType="VARCHAR" javaType="String"/> <result column="CALC_INTR_TYPE" property="calcIntrType" jdbcType="VARCHAR" javaType="String"/>
<result column="APPROVE_STATUS" property="approveStatus" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_FULL_NAME" property="planFullName" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_MGR_ORG_CODE" property="planMgrOrgCode" jdbcType="VARCHAR" javaType="String"/> <result column="ALLOC_PERIOD_METHOD" property="allocPeriodMethod" jdbcType="VARCHAR" javaType="String"/>
<result column="SPONSOR_ORG_CODE" property="sponsorOrgCode" jdbcType="VARCHAR" javaType="String"/>
<result column="PASSED" property="passed" jdbcType="CHAR" javaType="Boolean"/>
<result column="END_DATE" property="endDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="END_DATE" property="endDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="BEGIN_DATE" property="beginDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="BEGIN_DATE" property="beginDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="EFFECT_DATE" property="effectDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
<result column="FIRST_PAY_DATE" property="firstPayDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="FIRST_PAY_DATE" property="firstPayDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="INIT_CALC_DATE" property="initCalcDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="FIRST_CALC_DATE" property="firstCalcDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="FIRST_CLEAR_DATE" property="firstClearDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="FIRST_ALLOC_DATE" property="firstAllocDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="LAST_UPDATE_DATE" property="lastUpdateDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="FIRST_REPORT_DATE" property="firstReportDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="VAT_RATE" property="vatRate" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/> <result column="FIRST_SETTLE_DATE" property="firstSettleDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="FIN_SER_FEE_RATE" property="finSerFeeRate" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/>
</resultMap> </resultMap>
<resultMap id="PlanListResultMap" type="com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanListResultMap" extends="BaseResultMap">
<result column="STOP_PAY_DATE" property="stopPayDate" javaType="java.util.Date"/>
</resultMap>
<resultMap id="AstServiceReportMap" type="com.abssqr.plat.common.dal.mysql.auto.resultmap.AstServiceReport" >
<result column="BEGIN_DATE" property="beginDate" javaType="Date"/>
<result column="LEGAL_END_DATE" property="legalEndDate" javaType="Date"/>
<result column="IS_RECYCLE_ACQUISITION" property="isRecycleAcquisition" javaType="Boolean"/>
<result column="TOTAL_AMOUNT" property="totalAmount" javaType="java.math.BigDecimal"/>
</resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.LAST_UPDATE_DATE,sf.TOTAL_AMT,sf.PLAN_NO,sf.STATUS sf.ID,sf.TOTAL_AMT,sf.ALLOC_PERIOD,sf.PLAN_NO,sf.STATUS
,sf.CREATOR,sf.FUND_TYPE,sf.MODIFIER,sf.PLAN_NAME,sf.APPROVE_STATUS ,sf.PLAN_NAME,sf.TRADE_PLACE,sf.CALC_INTR_TYPE,sf.PLAN_FULL_NAME,sf.ALLOC_PERIOD_METHOD
,sf.PLAN_MGR_ORG_CODE,sf.SPONSOR_ORG_CODE,sf.END_DATE ,sf.END_DATE,sf.BEGIN_DATE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FIRST_PAY_DATE
,sf.BEGIN_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED ,sf.FIRST_CALC_DATE,sf.FIRST_ALLOC_DATE,sf.FIRST_REPORT_DATE,sf.FIRST_SETTLE_DATE
,sf.FIRST_PAY_DATE,sf.INIT_CALC_DATE,sf.FIRST_CLEAR_DATE
,sf.PAY_FREQ,sf.CALC_INTR_TYPE,sf.VAT_RATE,sf.GMT_CREATOR,sf.GMT_MODIFIER
,sf.PASSED,sf.PLAN_TYPE,sf.PRICE_TYPE,sf.FIN_SER_FEE_RATE
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,LAST_UPDATE_DATE,TOTAL_AMT,PLAN_NO,STATUS ID,TOTAL_AMT,ALLOC_PERIOD,PLAN_NO,STATUS
,CREATOR,FUND_TYPE,MODIFIER,PLAN_NAME,APPROVE_STATUS ,PLAN_NAME,TRADE_PLACE,CALC_INTR_TYPE,PLAN_FULL_NAME,ALLOC_PERIOD_METHOD
,PLAN_MGR_ORG_CODE,SPONSOR_ORG_CODE,END_DATE ,END_DATE,BEGIN_DATE,GMT_CREATE,GMT_MODIFIED,FIRST_PAY_DATE
,BEGIN_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED ,FIRST_CALC_DATE,FIRST_ALLOC_DATE,FIRST_REPORT_DATE,FIRST_SETTLE_DATE
,FIRST_PAY_DATE,INIT_CALC_DATE,FIRST_CLEAR_DATE
,PAY_FREQ,CALC_INTR_TYPE,VAT_RATE,GMT_CREATOR,GMT_MODIFIER
,PASSED,PLAN_TYPE,PRICE_TYPE,FIN_SER_FEE_RATE
</sql> </sql>
<!--插入表:abs_plan mydalgen自动生成,请勿修改--> <!--插入表:abs_plan mydalgen自动生成,请勿修改-->
<insert id="insert" > <insert id="insert" >
<![CDATA[ <![CDATA[
INSERT INTO ABS_PLAN( INSERT INTO abs_plan(
ID ID
,LAST_UPDATE_DATE
,TOTAL_AMT ,TOTAL_AMT
,ALLOC_PERIOD
,PLAN_NO ,PLAN_NO
,STATUS ,STATUS
,CREATOR
,FUND_TYPE
,MODIFIER
,PLAN_NAME ,PLAN_NAME
,APPROVE_STATUS ,TRADE_PLACE
,PLAN_MGR_ORG_CODE ,CALC_INTR_TYPE
,SPONSOR_ORG_CODE ,PLAN_FULL_NAME
,ALLOC_PERIOD_METHOD
,END_DATE ,END_DATE
,BEGIN_DATE ,BEGIN_DATE
,GMT_CREATE ,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,FIRST_PAY_DATE ,FIRST_PAY_DATE
,INIT_CALC_DATE ,FIRST_CALC_DATE
,FIRST_CLEAR_DATE ,FIRST_ALLOC_DATE
,PAY_FREQ ,FIRST_REPORT_DATE
,CALC_INTR_TYPE ,FIRST_SETTLE_DATE
,VAT_RATE
,GMT_CREATOR
,GMT_MODIFIER
,PASSED
,PLAN_TYPE
,PRICE_TYPE
,FIN_SER_FEE_RATE
)VALUES( )VALUES(
SEQ_ABS_PLAN.nextval SEQ_ABS_PLAN.nextval
, #{lastUpdateDate,jdbcType=DATE} , #{totalAmt,jdbcType=DECIMAL}
, #{totalAmt,jdbcType=BIGINT} , #{allocPeriod,jdbcType=DECIMAL}
, #{planNo,jdbcType=VARCHAR} , #{planNo,jdbcType=VARCHAR}
, #{status,jdbcType=VARCHAR} , #{status,jdbcType=VARCHAR}
, #{creator,jdbcType=VARCHAR}
, #{fundType,jdbcType=VARCHAR}
, #{modifier,jdbcType=VARCHAR}
, #{planName,jdbcType=VARCHAR} , #{planName,jdbcType=VARCHAR}
, #{approveStatus,jdbcType=VARCHAR} , #{tradePlace,jdbcType=VARCHAR}
, #{planMgrOrgCode,jdbcType=VARCHAR} , #{calcIntrType,jdbcType=VARCHAR}
, #{sponsorOrgCode,jdbcType=VARCHAR} , #{planFullName,jdbcType=VARCHAR}
, #{allocPeriodMethod,jdbcType=VARCHAR}
, #{endDate,jdbcType=DATE} , #{endDate,jdbcType=DATE}
, #{beginDate,jdbcType=DATE} , #{beginDate,jdbcType=DATE}
, sysdate , sysdate
, #{effectDate,jdbcType=DATE}
, sysdate , sysdate
, #{firstPayDate,jdbcType=DATE} , #{firstPayDate,jdbcType=DATE}
, #{initCalcDate,jdbcType=DATE} , #{firstCalcDate,jdbcType=DATE}
, #{firstClearDate,jdbcType=DATE} , #{firstAllocDate,jdbcType=DATE}
, #{payFreq,jdbcType=VARCHAR} , #{firstReportDate,jdbcType=DATE}
, #{calcIntrType,jdbcType=VARCHAR} , #{firstSettleDate,jdbcType=DATE}
, #{vatRate,jdbcType=DECIMAL}
, #{gmtCreator,jdbcType=VARCHAR}
, #{gmtModifier,jdbcType=VARCHAR}
, #{passed,jdbcType=CHAR}
, #{planType,jdbcType=VARCHAR}
, #{priceType,jdbcType=VARCHAR}
, #{finSerFeeRate,jdbcType=DECIMAL}
) )
]]> ]]>
</insert> </insert>
<!--根据唯一约束PlanNo更新表:abs_plan mydalgen自动生成,请勿修改--> <!--批量插入表:abs_plan mydalgen自动生成,请勿修改-->
<update id="updateByPlanNo" > <insert id="insertBatch" >
<![CDATA[ begin
UPDATE /*MS-ABS-PLAN-UPDATEBYPLANNO*/ abs_plan <foreach collection="list" item="item" separator=";">
SET INSERT INTO abs_plan(
TOTAL_AMT = #{totalAmt,jdbcType=BIGINT} ID
,FUND_TYPE = #{fundType,jdbcType=VARCHAR} ,TOTAL_AMT
,MODIFIER = #{modifier,jdbcType=VARCHAR} ,ALLOC_PERIOD
,PLAN_NAME = #{planName,jdbcType=VARCHAR} ,PLAN_NO
,PLAN_MGR_ORG_CODE = #{planMgrOrgCode,jdbcType=VARCHAR} ,STATUS
,SPONSOR_ORG_CODE = #{sponsorOrgCode,jdbcType=VARCHAR} ,PLAN_NAME
,END_DATE = #{endDate,jdbcType=DATE} ,TRADE_PLACE
,BEGIN_DATE = #{beginDate,jdbcType=DATE} ,CALC_INTR_TYPE
,EFFECT_DATE = #{effectDate,jdbcType=DATE} ,PLAN_FULL_NAME
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR} ,ALLOC_PERIOD_METHOD
,STATUS = #{status,jdbcType=VARCHAR} ,END_DATE
,GMT_MODIFIED = sysdate ,BEGIN_DATE
,FIRST_PAY_DATE = #{firstPayDate,jdbcType=DATE} ,GMT_CREATE
,INIT_CALC_DATE = #{initCalcDate,jdbcType=DATE} ,GMT_MODIFIED
,FIRST_CLEAR_DATE = #{firstClearDate,jdbcType=DATE} ,FIRST_PAY_DATE
,PAY_FREQ = #{payFreq,jdbcType=VARCHAR} ,FIRST_CALC_DATE
,CALC_INTR_TYPE = #{calcIntrType,jdbcType=VARCHAR} ,FIRST_ALLOC_DATE
,VAT_RATE = #{vatRate,jdbcType=DECIMAL} ,FIRST_REPORT_DATE
,LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=DATE} ,FIRST_SETTLE_DATE
,GMT_MODIFIER = #{gmtModifier,jdbcType=VARCHAR} )VALUES
,PASSED = #{passed,jdbcType=CHAR}
,PRICE_TYPE = #{priceType,jdbcType=CHAR}
,FIN_SER_FEE_RATE = #{finSerFeeRate,jdbcType=DECIMAL}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</update>
<!--根据唯一约束PlanNo更新表:abs_plan mydalgen自动生成,请勿修改-->
<update id="updateStatusByPlanNo" >
UPDATE /*MS-ABS-PLAN-UPDATESTATUSBYPLANNO*/ abs_plan
SET
GMT_MODIFIED = sysdate
<if test="approveStatus!=null and approveStatus != ''">
,APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR}
</if>
<if test="gmtModifier!=null and gmtModifier != ''">
,GMT_MODIFIER = #{gmtModifier,jdbcType=VARCHAR}
</if>
<if test="status!=null and status != ''">
,STATUS = #{status,jdbcType=VARCHAR}
</if>
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
</update>
<!--根据唯一约束PlanNo修改状态:abs_plan mydalgen自动生成,请勿修改-->
<update id="updatePassed" >
<![CDATA[
UPDATE /*MS-ABS-PLAN-UPDATEPASSED*/ abs_plan
SET
PASSED = #{passed,jdbcType=CHAR}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</update>
<!--根据唯一约束PlanNo删除数据:abs_plan mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" >
<![CDATA[
DELETE /*MS-ABS-PLAN-DELETEBYPLANNO*/ FROM abs_plan
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</delete>
<!--根据唯一约束PlanNo获取数据:abs_plan mydalgen自动生成,请勿修改-->
<select id="getByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-GETBYPLANNO*/ <include refid="Base_Column_List" />
FROM abs_plan
WHERE
<![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</select>
<!--根据唯一约束PlanNo获取数据:abs_plan mydalgen自动生成,请勿修改-->
<select id="lockByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-LOCKBYPLANNO*/ <include refid="Base_Column_List" />
FROM abs_plan
WHERE
<![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR}
FOR UPDATE NOWAIT
]]>
</select>
<!--根据唯一约束PlanNo获取数据:abs_plan mydalgen自动生成,请勿修改-->
<select id="queryByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-QUERYBYPLANNO*/ <include refid="Base_Column_List" />
FROM abs_plan
WHERE
PLAN_NO
IN
<foreach collection="list" item="planNo" open="(" close=")" separator=",">
#{planNo,jdbcType=VARCHAR}
</foreach>
</select>
<!--新增判断计划是否存在 mydalgen自动生成,请勿修改-->
<select id="planExist" resultType="Integer" >
select /*MS-ABS-PLAN-PLANEXIST*/ count(*)
FROM abs_plan
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
OR
PLAN_NAME = #{planName,jdbcType=VARCHAR}
</select>
<!--编辑判断计划是否存在 mydalgen自动生成,请勿修改-->
<select id="getSamePlan" resultType="Integer" >
select /*MS-ABS-PLAN-GETSAMEPLAN*/ count(*)
FROM abs_plan
WHERE
PLAN_NO != #{planNo,jdbcType=VARCHAR}
AND
PLAN_NAME = #{planName,jdbcType=VARCHAR}
</select>
<!--分页查询计划 pageCount mydalgen自动生成,请勿修改-->
<select id="getPlanListCount" resultType="int" >
SELECT
COUNT(*) AS total
FROM
ABS_PLAN sf
left join ABS_ORGANIZATION_ENTITY oe
on sf.plan_no = oe.ENTITY_CODE
WHERE
(
sf.PASSED = #{passed,jdbcType=CHAR}
<if test="userCode!=null and userCode != ''">
OR
sf.GMT_CREATOR = #{userCode,jdbcType=VARCHAR}
OR
sf.GMT_MODIFIER = #{userCode,jdbcType=VARCHAR}
</if>
)
<if test="planType!=null and planType != ''">
AND sf.PLAN_TYPE = #{planType,jdbcType=VARCHAR}
</if>
<if test="planNo!=null and planNo != ''">
AND sf.PLAN_NO = #{planNo,jdbcType=VARCHAR}
</if>
<if test="planName!=null and planName != ''">
AND sf.PLAN_NAME LIKE CONCAT(CONCAT('%',#{planName,jdbcType=VARCHAR}),'%')
</if>
<if test="planStatus!=null and planStatus != ''">
AND sf.STATUS = #{planStatus,jdbcType=CHAR}
</if>
<if test="list != null and list.size() &gt; 0">
AND sf.STATUS IN
<foreach collection="list" item="status" index="index" open="(" close=")" separator=",">
#{status,jdbcType=VARCHAR}
</foreach>
</if>
</select>
<!--分页查询计划 pageResult mydalgen自动生成,请勿修改-->
<select id="getPlanListResult" resultMap="PlanListResultMap" >
select
*
from(
select
tt.*,ROWNUM AS rowno
from(
SELECT
<include refid="Base_SF_Column_List" />,oe.STOP_PAY_DATE
FROM
ABS_PLAN sf
left join ABS_ORGANIZATION_ENTITY oe
on sf.plan_no = oe.ENTITY_CODE
WHERE
( (
sf.PASSED = #{passed,jdbcType=CHAR} null
<if test="userCode!=null and userCode != ''"> , #{item.totalAmt,jdbcType=DECIMAL}
OR , #{item.allocPeriod,jdbcType=DECIMAL}
sf.GMT_CREATOR = #{userCode,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
OR , #{item.status,jdbcType=VARCHAR}
sf.GMT_MODIFIER = #{userCode,jdbcType=VARCHAR} , #{item.planName,jdbcType=VARCHAR}
</if> , #{item.tradePlace,jdbcType=VARCHAR}
, #{item.calcIntrType,jdbcType=VARCHAR}
, #{item.planFullName,jdbcType=VARCHAR}
, #{item.allocPeriodMethod,jdbcType=VARCHAR}
, #{item.endDate,jdbcType=DATE}
, #{item.beginDate,jdbcType=DATE}
, sysdate
, sysdate
, #{item.firstPayDate,jdbcType=DATE}
, #{item.firstCalcDate,jdbcType=DATE}
, #{item.firstAllocDate,jdbcType=DATE}
, #{item.firstReportDate,jdbcType=DATE}
, #{item.firstSettleDate,jdbcType=DATE}
) )
<if test="planType!=null and planType != ''">
AND sf.PLAN_TYPE = #{planType,jdbcType=VARCHAR}
</if>
<if test="planNo!=null and planNo != ''">
AND sf.PLAN_NO = #{planNo,jdbcType=VARCHAR}
</if>
<if test="planName!=null and planName != ''">
AND sf.PLAN_NAME LIKE CONCAT(CONCAT('%',#{planName,jdbcType=VARCHAR}),'%')
</if>
<if test="planStatus!=null and planStatus != ''">
AND sf.STATUS = #{planStatus,jdbcType=CHAR}
</if>
<if test="list != null and list.size() &gt; 0">
AND sf.STATUS IN
<foreach collection="list" item="status" index="index" open="(" close=")" separator=",">
#{status,jdbcType=VARCHAR}
</foreach>
</if>
ORDER BY BEGIN_DATE DESC , ID ASC
) tt where ROWNUM &lt;= #{endRow}
) table_alias
where table_alias.rowno &gt; #{startRow}
</select>
<!--根据状态数组获取计划列表 mydalgen自动生成,请勿修改-->
<select id="getPlansByStatusList" resultMap="BaseResultMap" >
SELECT
<include refid="Base_Column_List" />
FROM
ABS_PLAN
WHERE
STATUS IN
<foreach collection="statusList" item="status" open="(" close=")" separator=",">
#{status,jdbcType=VARCHAR}
</foreach>
<if test="planType!=null and planType != ''">
AND PLAN_TYPE = #{planType,jdbcType=VARCHAR}
</if>
<if test="planNos != null and planNos.size() &gt; 0">
AND PLAN_NO IN
<foreach collection="planNos" item="planNo" separator="," open="(" close=")">
#{planNo,jdbcType=VARCHAR}
</foreach> </foreach>
</if> ;end;
ORDER BY PLAN_TYPE,BEGIN_DATE </insert>
</select>
<!--根据状态数组获取计划列表 mydalgen自动生成,请勿修改-->
<select id="getAllPlanAmt" resultType="java.lang.Long" >
SELECT
SUM(TOTAL_AMT)
FROM
ABS_PLAN
WHERE
PLAN_TYPE = #{planType,jdbcType=VARCHAR}
AND STATUS = #{status,jdbcType=VARCHAR}
</select>
<!--查询资产服务报告 mydalgen自动生成,请勿修改-->
<select id="getAstServiceReport" resultMap="AstServiceReportMap" >
SELECT
PLAN.TOTAL_AMOUNT,PLAN.LEGAL_END_DATE,TRANSFER.IS_RECYCLE_ACQUISITION,PLAN.BEGIN_DATE
FROM
ABS_PLAN PLAN
LEFT JOIN
ABS_TRANSFER_RULE TRANSFER
ON PLAN.TRANSFER_RULE_NO=TRANSFER.TRANSFER_RULE_NO
WHERE
PLAN.PLAN_NO= #{planNo,jdbcType=VARCHAR}
</select>
<!--根据服务机构获取存续期受让计划 mydalgen自动生成,请勿修改-->
<select id="getSpvByManagerOrgCode" resultMap="BaseResultMap" >
SELECT
<include refid="Base_SF_Column_List" />
FROM ABS_PLAN sf
JOIN ABS_ORGANIZATION_ENTITY aon
ON sf.plan_no = aon.ENTITY_CODE
WHERE
aon.MANAGER_ORG_CODE=#{managerOrgCode,jdbcType=VARCHAR}
</select>
<!--查询每日任务失败的数量 mydalgen自动生成,请勿修改-->
<select id="getFailDailyCount" resultType="java.lang.Long" >
SELECT
COUNT(*)
FROM
ABS_PLAN
WHERE
ABS_PLAN.LAST_UPDATE_DATE != #{curDate,jdbcType=DATE}
AND ABS_PLAN.STATUS IN ('PREPARING','ONGOING')
</select>
<!--更新定价规则 mydalgen自动生成,请勿修改-->
<update id="updatePriceType" >
<![CDATA[
UPDATE /*MS-ABS-PLAN-UPDATEPRICETYPE*/ abs_plan
SET
PRICE_TYPE = #{priceType,jdbcType=CHAR}
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</update>
<!--根据类型获取所有的计划 mydalgen自动生成,请勿修改-->
<select id="getAllPlanByType" resultMap="BaseResultMap" >
SELECT
<include refid="Base_Column_List" />
FROM
ABS_PLAN
WHERE
PLAN_TYPE=#{planType,jdbcType=VARCHAR}
AND STATUS = 'ONGOING'
</select>
</mapper> </mapper>
...@@ -4,93 +4,118 @@ ...@@ -4,93 +4,118 @@
<!-- 自动生成,请修改 ABS_PLAN_FEE_STRUCTURE.xml --> <!-- 自动生成,请修改 ABS_PLAN_FEE_STRUCTURE.xml -->
<resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanFeeStructureDO"> <resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanFeeStructureDO">
<id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/> <id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/>
<result column="ORDER" property="order" jdbcType="DECIMAL" javaType="Long"/>
<result column="FIXED_FEE_AMT" property="fixedFeeAmt" jdbcType="DECIMAL" javaType="Long"/> <result column="FIXED_FEE_AMT" property="fixedFeeAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="PAY_LIMIT_AMT" property="payLimitAmt" jdbcType="DECIMAL" javaType="Long"/> <result column="PAY_LIMIT_AMT" property="payLimitAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="FEE_NO" property="feeNo" jdbcType="VARCHAR" javaType="String"/> <result column="FEE_NO" property="feeNo" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="FEE_NAME" property="feeName" jdbcType="VARCHAR" javaType="String"/> <result column="FEE_NAME" property="feeName" jdbcType="VARCHAR" javaType="String"/>
<result column="FEE_CALC_TYPE" property="feeCalcType" jdbcType="VARCHAR" javaType="String"/> <result column="FEE_CALC_TYPE" property="feeCalcType" jdbcType="VARCHAR" javaType="String"/>
<result column="FEE_TIME_TYPE" property="feeTimeType" jdbcType="VARCHAR" javaType="String"/>
<result column="FEE_SCALE_TYPE" property="feeScaleType" jdbcType="VARCHAR" javaType="String"/> <result column="FEE_SCALE_TYPE" property="feeScaleType" jdbcType="VARCHAR" javaType="String"/>
<result column="FIN_SER_FEE_TYPE" property="finSerFeeType" jdbcType="VARCHAR" javaType="String"/>
<result column="CALC_BY_DAY" property="calcByDay" jdbcType="CHAR" javaType="Boolean"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
<result column="FEE_CALC_DEFAULT_DATE" property="feeCalcDefaultDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="FEE_RATE" property="feeRate" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/> <result column="FEE_RATE" property="feeRate" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/>
</resultMap> </resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO,sf.PLAN_NO sf.ID,sf.SORT,sf.FIXED_FEE_AMT,sf.PAY_LIMIT_AMT,sf.FEE_NO
,sf.FEE_NAME,sf.FEE_CALC_TYPE,sf.FEE_TIME_TYPE,sf.FEE_SCALE_TYPE,sf.CALC_BY_DAY ,sf.PLAN_NO,sf.FEE_CALC_TYPE,sf.FEE_SCALE_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED
,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.FEE_RATE ,sf.FEE_CALC_DEFAULT_DATE,sf.FEE_RATE
,sf.FIN_SER_FEE_TYPE
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO,PLAN_NO ID,SORT,FIXED_FEE_AMT,PAY_LIMIT_AMT,FEE_NO
,FEE_NAME,FEE_CALC_TYPE,FEE_TIME_TYPE,FEE_SCALE_TYPE,CALC_BY_DAY ,PLAN_NO,FEE_CALC_TYPE,FEE_SCALE_TYPE,GMT_CREATE,GMT_MODIFIED
,GMT_CREATE,GMT_MODIFIED,FEE_RATE ,FEE_CALC_DEFAULT_DATE,FEE_RATE
,FIN_SER_FEE_TYPE
</sql> </sql>
<!--插入表:abs_plan_fee_structure mydalgen自动生成,请勿修改-->
<insert id="insert" >
<![CDATA[
INSERT INTO abs_plan_fee_structure(
ID
,SORT
,FIXED_FEE_AMT
,PAY_LIMIT_AMT
,FEE_NO
,PLAN_NO
,FEE_CALC_TYPE
,FEE_SCALE_TYPE
,GMT_CREATE
,GMT_MODIFIED
,FEE_CALC_DEFAULT_DATE
,FEE_RATE
)VALUES(
SEQ_ABS_PLAN_FEE_STRUCTURE.nextval
, #{order,jdbcType=DECIMAL}
, #{fixedFeeAmt,jdbcType=DECIMAL}
, #{payLimitAmt,jdbcType=DECIMAL}
, #{feeNo,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR}
, #{feeCalcType,jdbcType=VARCHAR}
, #{feeScaleType,jdbcType=VARCHAR}
, sysdate
, sysdate
, #{feeCalcDefaultDate,jdbcType=DATE}
, #{feeRate,jdbcType=DECIMAL}
)
]]>
</insert>
<!--批量插入表:abs_plan_fee_structure mydalgen自动生成,请勿修改--> <!--批量插入表:abs_plan_fee_structure mydalgen自动生成,请勿修改-->
<insert id="insertBatch" > <insert id="insertBatch" >
begin begin
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO ABS_PLAN_FEE_STRUCTURE( INSERT INTO abs_plan_fee_structure(
ID ID
,SORT
,FIXED_FEE_AMT ,FIXED_FEE_AMT
,PAY_LIMIT_AMT ,PAY_LIMIT_AMT
,FEE_NO ,FEE_NO
,PLAN_NO ,PLAN_NO
,FEE_NAME
,FEE_CALC_TYPE ,FEE_CALC_TYPE
,FEE_TIME_TYPE
,FEE_SCALE_TYPE ,FEE_SCALE_TYPE
,CALC_BY_DAY
,GMT_CREATE ,GMT_CREATE
,GMT_MODIFIED ,GMT_MODIFIED
,FEE_CALC_DEFAULT_DATE
,FEE_RATE ,FEE_RATE
,FIN_SER_FEE_TYPE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_FEE_STRUCTURE.nextval null
, #{item.fixedFeeAmt,jdbcType=BIGINT} , #{item.order,jdbcType=DECIMAL}
, #{item.payLimitAmt,jdbcType=BIGINT} , #{item.fixedFeeAmt,jdbcType=DECIMAL}
, #{item.payLimitAmt,jdbcType=DECIMAL}
, #{item.feeNo,jdbcType=VARCHAR} , #{item.feeNo,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.feeName,jdbcType=VARCHAR}
, #{item.feeCalcType,jdbcType=VARCHAR} , #{item.feeCalcType,jdbcType=VARCHAR}
, #{item.feeTimeType,jdbcType=VARCHAR}
, #{item.feeScaleType,jdbcType=VARCHAR} , #{item.feeScaleType,jdbcType=VARCHAR}
, #{item.calcByDay,jdbcType=CHAR}
, sysdate , sysdate
, sysdate , sysdate
, #{item.feeCalcDefaultDate,jdbcType=DATE}
, #{item.feeRate,jdbcType=DECIMAL} , #{item.feeRate,jdbcType=DECIMAL}
, #{item.finSerFeeType,jdbcType=VARCHAR}
) )
</foreach> </foreach>
;end; ;end;
</insert> </insert>
<!--根据计划编号删除数据:abs_plan_fee_structure mydalgen自动生成,请勿修改--> <!--根据主键删除数据:abs_plan_fee_structure mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" > <delete id="deleteById" >
<![CDATA[ <![CDATA[
DELETE /*MS-ABS-PLAN-FEE-STRUCTURE-DELETEBYPLANNO*/ FROM abs_plan_fee_structure DELETE /*MS-ABS-PLAN-FEE-STRUCTURE-DELETEBYID*/ FROM abs_plan_fee_structure
WHERE WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
</delete> </delete>
<!--根据计划编号获取数据:abs_plan_fee_structure mydalgen自动生成,请勿修改--> <!--根据主键获取数据:abs_plan_fee_structure mydalgen自动生成,请勿修改-->
<select id="selectByPlanNo" resultMap="BaseResultMap" > <select id="getById" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-FEE-STRUCTURE-SELECTBYPLANNO*/ <include refid="Base_Column_List" /> SELECT /*MS-ABS-PLAN-FEE-STRUCTURE-GETBYID*/ <include refid="Base_Column_List" />
FROM abs_plan_fee_structure FROM abs_plan_fee_structure
WHERE WHERE
<![CDATA[ <![CDATA[
PLAN_NO = #{planNo,jdbcType=VARCHAR} ID = #{id,jdbcType=DECIMAL}
]]> ]]>
ORDER BY ID ASC
</select> </select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.abssqr.plat.common.dal.mysql.auto.mapper.PlanFeeStrucureDOMapper">
<!-- 自动生成,请修改 ABS_PLAN_FEE_STRUCURE.xml -->
<sql id="Base_SF_Column_List">
</sql>
<sql id="Base_Column_List">
</sql>
<!--插入表:abs_plan_fee_strucure mydalgen自动生成,请勿修改-->
<insert id="insert" >
<![CDATA[
INSERT INTO abs_plan_fee_strucure(
)VALUES(
)
]]>
</insert>
<!--批量插入表:abs_plan_fee_strucure mydalgen自动生成,请勿修改-->
<insert id="insertBatch" >
begin
<foreach collection="list" item="item" separator=";">
INSERT INTO abs_plan_fee_strucure(
)VALUES
(
)
</foreach>
;end;
</insert>
</mapper>
...@@ -4,82 +4,120 @@ ...@@ -4,82 +4,120 @@
<!-- 自动生成,请修改 ABS_PLAN_INVEST_STRUCTURE.xml --> <!-- 自动生成,请修改 ABS_PLAN_INVEST_STRUCTURE.xml -->
<resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanInvestStructureDO"> <resultMap id="BaseResultMap" type="com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanInvestStructureDO">
<id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/> <id column="ID" property="id" jdbcType="DECIMAL" javaType="Long"/>
<result column="ORDER" property="order" jdbcType="DECIMAL" javaType="Long"/>
<result column="LAYER_AMT" property="layerAmt" jdbcType="DECIMAL" javaType="Long"/> <result column="LAYER_AMT" property="layerAmt" jdbcType="DECIMAL" javaType="Long"/>
<result column="GRADE" property="grade" jdbcType="VARCHAR" javaType="String"/>
<result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/> <result column="PLAN_NO" property="planNo" jdbcType="VARCHAR" javaType="String"/>
<result column="LAYER_NO" property="layerNo" jdbcType="VARCHAR" javaType="String"/> <result column="LAYER_NO" property="layerNo" jdbcType="VARCHAR" javaType="String"/>
<result column="INTR_TYPE" property="intrType" jdbcType="VARCHAR" javaType="String"/> <result column="INTR_TYPE" property="intrType" jdbcType="VARCHAR" javaType="String"/>
<result column="LAYER_NAME" property="layerName" jdbcType="VARCHAR" javaType="String"/> <result column="LAYER_NAME" property="layerName" jdbcType="VARCHAR" javaType="String"/>
<result column="LAYER_TYPE" property="layerType" jdbcType="VARCHAR" javaType="String"/> <result column="LAYER_TYPE" property="layerType" jdbcType="VARCHAR" javaType="String"/>
<result column="ALLOC_METHOD" property="allocMethod" jdbcType="VARCHAR" javaType="String"/>
<result column="END_DATE" property="endDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_CREATE" property="gmtCreate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="EFFECT_DATE" property="effectDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="EFFECT_DATE" property="effectDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/> <result column="GMT_MODIFIED" property="gmtModified" jdbcType="DATE" javaType="java.util.Date"/>
<result column="LAYER_END_DATE" property="layerEndDate" jdbcType="DATE" javaType="java.util.Date"/> <result column="EXPECT_END_DATE" property="expectEndDate" jdbcType="DATE" javaType="java.util.Date"/>
<result column="LAYER_INTR" property="layerIntr" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/> <result column="LAYER_INTR" property="layerIntr" jdbcType="DECIMAL" javaType="java.math.BigDecimal"/>
</resultMap> </resultMap>
<sql id="Base_SF_Column_List"> <sql id="Base_SF_Column_List">
sf.ID,sf.LAYER_AMT,sf.PLAN_NO,sf.LAYER_NO,sf.INTR_TYPE sf.ID,sf.ORDER,sf.LAYER_AMT,sf.GRADE,sf.PLAN_NO
,sf.LAYER_NAME,sf.LAYER_TYPE,sf.GMT_CREATE,sf.GMT_MODIFIED,sf.LAYER_END_DATE ,sf.LAYER_NO,sf.INTR_TYPE,sf.LAYER_NAME,sf.LAYER_TYPE,sf.ALLOC_METHOD
,sf.LAYER_INTR,sf.EFFECT_DATE ,sf.END_DATE,sf.GMT_CREATE,sf.EFFECT_DATE,sf.GMT_MODIFIED,sf.EXPECT_END_DATE
,sf.LAYER_INTR
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
ID,LAYER_AMT,PLAN_NO,LAYER_NO,INTR_TYPE ID,ORDER,LAYER_AMT,GRADE,PLAN_NO
,LAYER_NAME,LAYER_TYPE,GMT_CREATE,GMT_MODIFIED,LAYER_END_DATE ,LAYER_NO,INTR_TYPE,LAYER_NAME,LAYER_TYPE,ALLOC_METHOD
,LAYER_INTR,EFFECT_DATE ,END_DATE,GMT_CREATE,EFFECT_DATE,GMT_MODIFIED,EXPECT_END_DATE
,LAYER_INTR
</sql> </sql>
<!--插入表:abs_plan_invest_structure mydalgen自动生成,请勿修改-->
<insert id="insert" >
<![CDATA[
INSERT INTO abs_plan_invest_structure(
ID
,ORDER
,LAYER_AMT
,GRADE
,PLAN_NO
,LAYER_NO
,INTR_TYPE
,LAYER_NAME
,LAYER_TYPE
,ALLOC_METHOD
,END_DATE
,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED
,EXPECT_END_DATE
,LAYER_INTR
)VALUES(
SEQ_ABS_PLAN_INVEST_STRUCTURE.nextval
, #{order,jdbcType=DECIMAL}
, #{layerAmt,jdbcType=DECIMAL}
, #{grade,jdbcType=VARCHAR}
, #{planNo,jdbcType=VARCHAR}
, #{layerNo,jdbcType=VARCHAR}
, #{intrType,jdbcType=VARCHAR}
, #{layerName,jdbcType=VARCHAR}
, #{layerType,jdbcType=VARCHAR}
, #{allocMethod,jdbcType=VARCHAR}
, #{endDate,jdbcType=DATE}
, sysdate
, #{effectDate,jdbcType=DATE}
, sysdate
, #{expectEndDate,jdbcType=DATE}
, #{layerIntr,jdbcType=DECIMAL}
)
]]>
</insert>
<!--批量插入表:abs_plan_invest_structure mydalgen自动生成,请勿修改--> <!--批量插入表:abs_plan_invest_structure mydalgen自动生成,请勿修改-->
<insert id="insertBatch" > <insert id="insertBatch" >
begin begin
<foreach collection="list" item="item" separator=";"> <foreach collection="list" item="item" separator=";">
INSERT INTO ABS_PLAN_INVEST_STRUCTURE( INSERT INTO abs_plan_invest_structure(
ID ID
,ORDER
,LAYER_AMT ,LAYER_AMT
,GRADE
,PLAN_NO ,PLAN_NO
,LAYER_NO ,LAYER_NO
,INTR_TYPE ,INTR_TYPE
,LAYER_NAME ,LAYER_NAME
,LAYER_TYPE ,LAYER_TYPE
,ALLOC_METHOD
,END_DATE
,GMT_CREATE ,GMT_CREATE
,EFFECT_DATE
,GMT_MODIFIED ,GMT_MODIFIED
,LAYER_END_DATE ,EXPECT_END_DATE
,LAYER_INTR ,LAYER_INTR
,EFFECT_DATE
)VALUES )VALUES
( (
SEQ_ABS_PLAN_INVEST_STRUCTURE.nextval null
, #{item.layerAmt,jdbcType=BIGINT} , #{item.order,jdbcType=DECIMAL}
, #{item.layerAmt,jdbcType=DECIMAL}
, #{item.grade,jdbcType=VARCHAR}
, #{item.planNo,jdbcType=VARCHAR} , #{item.planNo,jdbcType=VARCHAR}
, #{item.layerNo,jdbcType=VARCHAR} , #{item.layerNo,jdbcType=VARCHAR}
, #{item.intrType,jdbcType=VARCHAR} , #{item.intrType,jdbcType=VARCHAR}
, #{item.layerName,jdbcType=VARCHAR} , #{item.layerName,jdbcType=VARCHAR}
, #{item.layerType,jdbcType=VARCHAR} , #{item.layerType,jdbcType=VARCHAR}
, #{item.allocMethod,jdbcType=VARCHAR}
, #{item.endDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.effectDate,jdbcType=DATE}
, sysdate , sysdate
, #{item.layerEndDate,jdbcType=DATE} , #{item.expectEndDate,jdbcType=DATE}
, #{item.layerIntr,jdbcType=DECIMAL} , #{item.layerIntr,jdbcType=DECIMAL}
, #{item.effectDate,jdbcType=DATE}
) )
</foreach> </foreach>
;end; ;end;
</insert> </insert>
<!--根据计划编号删除 mydalgen自动生成,请勿修改-->
<delete id="deleteByPlanNo" >
<![CDATA[
DELETE /*MS-ABS-PLAN-INVEST-STRUCTURE-DELETEBYPLANNO*/ FROM abs_plan_invest_structure
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
]]>
</delete>
<!--根据计划编号获取 mydalgen自动生成,请勿修改-->
<select id="selectByPlanNo" resultMap="BaseResultMap" >
SELECT /*MS-ABS-PLAN-INVEST-STRUCTURE-SELECTBYPLANNO*/ <include refid="Base_Column_List" /> FROM abs_plan_invest_structure
WHERE
PLAN_NO = #{planNo,jdbcType=VARCHAR}
ORDER BY LAYER_TYPE ASC,ID ASC
</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 AllocMethodEnum implements IEnum{
IBC("IBC","先息后本"),
PT("PT","过手型");
private static final Map<String, AllocMethodEnum> codeMap = new HashMap<String, AllocMethodEnum>();
static {
for (AllocMethodEnum item : AllocMethodEnum.values()) {
codeMap.put(item.getCode(), item);
}
}
private String code;
private String desc;
AllocMethodEnum(String code, String desc) {
this.code = code;
this.desc = desc;
}
public static AllocMethodEnum getByCode(String code) {
return codeMap.get(code);
}
@Override
public String getCode() {
return code;
}
@Override
public String getDesc() {
return desc;
}
}
...@@ -11,16 +11,16 @@ import java.util.Map; ...@@ -11,16 +11,16 @@ import java.util.Map;
/** /**
* @author bangis.wangdf * @author bangis.wangdf
* @version com.abssqr.plat.common.facade.enums: LayerTypeEnu.java, v 0.1 2019-05-29 13:09 bangis.wangdf Exp $ * @version com.abssqr.plat.common.facade.enums: LayerTypeEnum.java, v 0.1 2019-05-29 13:09 bangis.wangdf Exp $
*/ */
public enum LayerTypeEnu implements IEnum { public enum LayerTypeEnum implements IEnum {
PRIOR("LT01", "优先",1), PRIOR("LT01", "优先",1),
SECND("LT02", "劣后",2),; SECND("LT02", "劣后",2),;
private static final Map<String, LayerTypeEnu> codeMap = new HashMap<String, LayerTypeEnu>(); private static final Map<String, LayerTypeEnum> codeMap = new HashMap<String, LayerTypeEnum>();
static { static {
for (LayerTypeEnu item : LayerTypeEnu.values()) { for (LayerTypeEnum item : LayerTypeEnum.values()) {
codeMap.put(item.getCode(), item); codeMap.put(item.getCode(), item);
} }
} }
...@@ -29,13 +29,13 @@ public enum LayerTypeEnu implements IEnum { ...@@ -29,13 +29,13 @@ public enum LayerTypeEnu implements IEnum {
private String desc; private String desc;
private int order; private int order;
LayerTypeEnu(String code, String desc,int order ) { LayerTypeEnum(String code, String desc, int order ) {
this.code = code; this.code = code;
this.desc = desc; this.desc = desc;
this.order = order; this.order = order;
} }
public static LayerTypeEnu getByCode(String code) { public static LayerTypeEnum getByCode(String code) {
return codeMap.get(code); return codeMap.get(code);
} }
......
...@@ -17,9 +17,9 @@ import java.util.Map; ...@@ -17,9 +17,9 @@ import java.util.Map;
* @version com.abssqr.common.model.enums: PlanStatusEnum.java, v 0.1 2018-01-15 下午3:13 yaphet Exp $ * @version com.abssqr.common.model.enums: PlanStatusEnum.java, v 0.1 2018-01-15 下午3:13 yaphet Exp $
*/ */
public enum PlanStatusEnum implements IEnum { public enum PlanStatusEnum implements IEnum {
DRAFT("DRAFT","暂存"),
PREPARING("PREPARING", "准备中"), PREPARING("PREPARING", "设计中"),
ONGOING("ONGOING", "存续中"), ONGOING("ONGOING", "已发行"),
COMPLETED("COMPLETED", "已清算"); COMPLETED("COMPLETED", "已清算");
private static final Map<String, PlanStatusEnum> codeMap = new HashMap<String, PlanStatusEnum>(); private static final Map<String, PlanStatusEnum> codeMap = new HashMap<String, PlanStatusEnum>();
......
...@@ -2,136 +2,134 @@ package com.abssqr.plat.common.facade.model.plan; ...@@ -2,136 +2,134 @@ package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum; import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum; import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeTimeTypeEnum;
import com.abssqr.plat.common.facade.enums.FinSerFeeTypeEnum;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/** /**
* @author bangis.wangdf * @author bangis.wangdf
* @description 费用结构 * @description 费用结构
*/ */
public class FeeStructure extends BaseEntity { public class FeeStructure extends BaseEntity {
/** /**
* 费用编号 * order .
*/
private String feeNo;
/**
* 费用名称
*/ */
private String feeName; private Long order;
/** /**
* 计费时间 * fixedFeeAmt 固定费用.
*/ */
private FeeTimeTypeEnum feeTimeType; private Long fixedFeeAmt;
/** /**
* 计算方式 : 固定金额 比例金额 * payLimitAmt 支付上限.
*/ */
private CalcTypeEnum feeCalcType; private Long payLimitAmt;
/** /**
* 固定费用 * feeNo 费用编号.
*/ */
private Money fixedFeeAmt = new Money(0); private String feeNo;
/** /**
* 费率基准 * planNo 产品编号.
*/ */
private FeeScaleTypeEnum feeScaleType; private String planNo;
/** /**
* 金融服务费支付方式 * feeCalcType 计费方式.
*/ */
private FinSerFeeTypeEnum finSerFeeType; private CalcTypeEnum feeCalcType;
/** /**
* 费率 * feeScaleType 费用基准.
*/ */
private BigDecimal feeRate = BigDecimal.ZERO; private FeeScaleTypeEnum feeScaleType;
/** /**
* 按日计费 * feeCalcDefaultDate 默认计费时间.
*/ */
private Boolean calcByDay; private Date feeCalcDefaultDate;
/** /**
* 支付上限 * feeRate 费率.
*/ */
private Money payLimitAmt = new Money(0); private BigDecimal feeRate;
public String getFeeNo() { private String feeName;
return feeNo;
public Long getOrder() {
return order;
} }
public void setFeeNo(String feeNo) { public void setOrder(Long order) {
this.feeNo = feeNo; this.order = order;
} }
public String getFeeName() { public Long getFixedFeeAmt() {
return feeName; return fixedFeeAmt;
} }
public void setFeeName(String feeName) { public void setFixedFeeAmt(Long fixedFeeAmt) {
this.feeName = feeName; this.fixedFeeAmt = fixedFeeAmt;
} }
public FeeTimeTypeEnum getFeeTimeType() { public Long getPayLimitAmt() {
return feeTimeType; return payLimitAmt;
} }
public void setFeeTimeType(FeeTimeTypeEnum feeTimeType) { public void setPayLimitAmt(Long payLimitAmt) {
this.feeTimeType = feeTimeType; this.payLimitAmt = payLimitAmt;
} }
public CalcTypeEnum getFeeCalcType() { public String getFeeNo() {
return feeCalcType; return feeNo;
} }
public void setFeeCalcType(CalcTypeEnum feeCalcType) { public void setFeeNo(String feeNo) {
this.feeCalcType = feeCalcType; this.feeNo = feeNo;
} }
public Money getFixedFeeAmt() { public String getPlanNo() {
return fixedFeeAmt; return planNo;
} }
public void setFixedFeeAmt(Money fixedFeeAmt) { public void setPlanNo(String planNo) {
this.fixedFeeAmt = fixedFeeAmt; this.planNo = planNo;
} }
public FeeScaleTypeEnum getFeeScaleType() { public CalcTypeEnum getFeeCalcType() {
return feeScaleType; return feeCalcType;
} }
public void setFeeScaleType(FeeScaleTypeEnum feeScaleType) { public void setFeeCalcType(CalcTypeEnum feeCalcType) {
this.feeScaleType = feeScaleType; this.feeCalcType = feeCalcType;
} }
public BigDecimal getFeeRate() { public FeeScaleTypeEnum getFeeScaleType() {
return feeRate; return feeScaleType;
} }
public void setFeeRate(BigDecimal feeRate) { public void setFeeScaleType(FeeScaleTypeEnum feeScaleType) {
this.feeRate = feeRate; this.feeScaleType = feeScaleType;
} }
public Boolean getCalcByDay() { public Date getFeeCalcDefaultDate() {
return calcByDay; return feeCalcDefaultDate;
} }
public void setCalcByDay(Boolean calcByDay) { public void setFeeCalcDefaultDate(Date feeCalcDefaultDate) {
this.calcByDay = calcByDay; this.feeCalcDefaultDate = feeCalcDefaultDate;
} }
public Money getPayLimitAmt() { public BigDecimal getFeeRate() {
return payLimitAmt; return feeRate;
} }
public void setPayLimitAmt(Money payLimitAmt) { public void setFeeRate(BigDecimal feeRate) {
this.payLimitAmt = payLimitAmt; this.feeRate = feeRate;
} }
public FinSerFeeTypeEnum getFinSerFeeType() { public String getFeeName() {
return finSerFeeType; return feeName;
} }
public void setFinSerFeeType(FinSerFeeTypeEnum finSerFeeType) { public void setFeeName(String feeName) {
this.finSerFeeType = finSerFeeType; this.feeName = feeName;
} }
} }
package com.abssqr.plat.common.facade.model.plan; package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.enums.AllocMethodEnum;
import com.abssqr.plat.common.facade.enums.IntrTypeEnum; import com.abssqr.plat.common.facade.enums.IntrTypeEnum;
import com.abssqr.plat.common.facade.enums.LayerTypeEnu; import com.abssqr.plat.common.facade.enums.LayerTypeEnum;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
...@@ -14,75 +14,101 @@ import java.util.Date; ...@@ -14,75 +14,101 @@ import java.util.Date;
* @author bangis.wangdf * @author bangis.wangdf
*/ */
public class InvestStructure extends BaseEntity { public class InvestStructure extends BaseEntity {
/** /**
* 层次名称. * order 排序.
*/ */
private String layerNo; private Long order;
/** /**
* 层次名称. * layerAmt 金额/层级规模.
*/ */
private String layerName; private Long layerAmt;
/**
* grade 评级.
*/
private String grade;
/** /**
* 层级类型 * planNo 产品编号.
*/ */
private LayerTypeEnu layerType; private String planNo;
/** /**
* 层级规模 * layerNo 层级编号.
*/ */
private Money layerAmt = new Money(0);; private String layerNo;
/** /**
* 利率类型 * intrType 利率类型.
*/ */
private IntrTypeEnum intrType; private IntrTypeEnum intrType;
/** /**
* 层级利率 * layerName 层级名称.
*/ */
private BigDecimal layerIntr; private String layerName;
/** /**
* 到期日 * layerType 分层类型.
*/ */
private Date layerEndDate; private LayerTypeEnum layerType;
/**
* allocMethod 偿付方式.
*/
private AllocMethodEnum allocMethod;
/**
* endDate 到期日.
*/
private Date endDate;
/** /**
* 起息日 * effectDate 起息日.
*/ */
private Date effectDate; private Date effectDate;
/** /**
* 是否为追加 * expectEndDate 预计到期日.
*/ */
private Boolean append = false; private Date expectEndDate;
/**
* layerIntr 利率.
*/
private BigDecimal layerIntr;
public String getLayerNo() {
return layerNo; public Long getOrder() {
return order;
} }
public void setLayerNo(String layerNo) { public void setOrder(Long order) {
this.layerNo = layerNo; this.order = order;
} }
public String getLayerName() { public Long getLayerAmt() {
return layerName; return layerAmt;
} }
public void setLayerName(String layerName) { public void setLayerAmt(Long layerAmt) {
this.layerName = layerName; this.layerAmt = layerAmt;
} }
public LayerTypeEnu getLayerType() { public String getGrade() {
return layerType; return grade;
} }
public void setLayerType(LayerTypeEnu layerType) { public void setGrade(String grade) {
this.layerType = layerType; this.grade = grade;
} }
public Money getLayerAmt() { public String getPlanNo() {
return layerAmt; return planNo;
} }
public void setLayerAmt(Money layerAmt) { public void setPlanNo(String planNo) {
this.layerAmt = layerAmt; this.planNo = planNo;
}
public String getLayerNo() {
return layerNo;
}
public void setLayerNo(String layerNo) {
this.layerNo = layerNo;
} }
public IntrTypeEnum getIntrType() { public IntrTypeEnum getIntrType() {
...@@ -93,22 +119,37 @@ public class InvestStructure extends BaseEntity { ...@@ -93,22 +119,37 @@ public class InvestStructure extends BaseEntity {
this.intrType = intrType; this.intrType = intrType;
} }
public BigDecimal getLayerIntr() { public String getLayerName() {
return layerIntr; return layerName;
} }
public void setLayerIntr(BigDecimal layerIntr) { public void setLayerName(String layerName) {
this.layerIntr = layerIntr; this.layerName = layerName;
} }
public Date getLayerEndDate() { public LayerTypeEnum getLayerType() {
return layerEndDate; return layerType;
} }
public void setLayerEndDate(Date layerEndDate) { public void setLayerType(LayerTypeEnum layerType) {
this.layerEndDate = layerEndDate; this.layerType = layerType;
} }
public AllocMethodEnum getAllocMethod() {
return allocMethod;
}
public void setAllocMethod(AllocMethodEnum allocMethod) {
this.allocMethod = allocMethod;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public Date getEffectDate() { public Date getEffectDate() {
return effectDate; return effectDate;
...@@ -118,11 +159,19 @@ public class InvestStructure extends BaseEntity { ...@@ -118,11 +159,19 @@ public class InvestStructure extends BaseEntity {
this.effectDate = effectDate; this.effectDate = effectDate;
} }
public Boolean getAppend() { public Date getExpectEndDate() {
return append; return expectEndDate;
} }
public void setAppend(Boolean append) { public void setExpectEndDate(Date expectEndDate) {
this.append = append; this.expectEndDate = expectEndDate;
}
public BigDecimal getLayerIntr() {
return layerIntr;
}
public void setLayerIntr(BigDecimal layerIntr) {
this.layerIntr = layerIntr;
} }
} }
...@@ -18,19 +18,29 @@ import java.util.List; ...@@ -18,19 +18,29 @@ import java.util.List;
public class Plan extends PlanBase { public class Plan extends PlanBase {
/** /**
* 转让规则 * 费用结构
*/ */
private PlanTransferRule planTransferRule; private List<FeeStructure> feeStructure;
/**
* 投资结构
*/
private List<InvestStructure> investStructure;
public PlanTransferRule getPlanTransferRule() {
return planTransferRule;
}
public void setPlanTransferRule(PlanTransferRule planTransferRule) { public List<FeeStructure> getFeeStructure() {
this.planTransferRule = planTransferRule; return feeStructure;
} }
public void setFeeStructure(List<FeeStructure> feeStructure) {
this.feeStructure = feeStructure;
}
public List<InvestStructure> getInvestStructure() {
return investStructure;
}
public void setInvestStructure(List<InvestStructure> investStructure) {
this.investStructure = investStructure;
}
} }
...@@ -4,19 +4,10 @@ ...@@ -4,19 +4,10 @@
*/ */
package com.abssqr.plat.common.facade.model.plan; package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.constants.AbssqrConstants;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import com.abssqr.plat.common.facade.enums.FinSerFeeTypeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum; import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
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.util.DateTimeUtil;
import com.general.system.common.util.MoneyUtil;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* 计划结算科目(收付实现) * 计划结算科目(收付实现)
...@@ -29,151 +20,36 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable ...@@ -29,151 +20,36 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable
private static final long serialVersionUID = -824828356824592734L; private static final long serialVersionUID = -824828356824592734L;
/** /**
* 计划编号 * refNo 对应资金编号.
*/ */
private String planNo; private String refNo;
/** /**
* 科目编号 * planNo 计划编号.
*/ */
private String titleNo; private String planNo;
/** /**
* 对应金额类型编号 * titleNo 科目编号.
*/ */
private String refNo; private String titleNo;
/** /**
* 科目名称 * titleName 科目名称.
*/ */
private String titleName; private String titleName;
/** /**
* 科目类型 * titleType 科目类型(本金,利息,费用).
*/ */
private TitleTypeEnum titleType; private TitleTypeEnum titleType;
/**
* 科目余额
*/
private Money bal = new Money(0);
/**
* 总发生额-收
*/
private Money recpAmt = new Money(0);
/**
* 总发生额-付
*/
private Money payAmt = new Money(0);
/**
* 增值税发生额-收
*/
private Money recpVATax = new Money(0);
/**
* 增值税发生额-付
*/
private Money payVATax = new Money(0);
/**
* 最近结算日
*/
private Date lastSettleDate;
/**
* 最近支付日
*/
private Date lastPayDate;
/**
* 计费基数
*/
private FeeScaleTypeEnum scaleType;
/**
* 金融服务费支付方式
*/
private FinSerFeeTypeEnum finSerFeeType;
/**
* 初始额度
*/
private Money initAmt = new Money(0);
/**
* 计算比例,有关联科目时用
*/
private BigDecimal rate = BigDecimal.ZERO;
/**
* 计算方式
*/
private CalcTypeEnum calcType;
/**
* 金额上限
*/
private Money upperLimit = new Money(0);
/**
* 入账金额
*/
private Money entryAmt = new Money(0);
/**
* 总金额
*/
private BigDecimal totalAmt = BigDecimal.ZERO;
/**
* 起息日
*/
private Date effectDate;
@Override public static long getSerialVersionUID() {
public PlanAcctTitle clone() { return serialVersionUID;
PlanAcctTitle newInstance = new PlanAcctTitle();
newInstance.setPlanNo(this.getPlanNo());
newInstance.setTitleNo(this.getTitleNo());
newInstance.setRefNo(this.getRefNo());
newInstance.setTitleName(this.getTitleName());
newInstance.setTitleType(this.getTitleType());
newInstance.setBal(this.getBal().clone());
newInstance.setRecpAmt(this.getRecpAmt().clone());
newInstance.setPayAmt(this.getPayAmt().clone());
newInstance.setRecpVATax(this.getRecpVATax().clone());
newInstance.setPayVATax(this.getPayVATax().clone());
newInstance.setLastSettleDate(DateTimeUtil.getStandardDate(this.getLastSettleDate()));
newInstance.setLastPayDate(DateTimeUtil.getStandardDate(this.getLastPayDate()));
newInstance.setScaleType(this.getScaleType());
newInstance.setInitAmt(this.getInitAmt().clone());
newInstance.setRate(this.getRate().add(BigDecimal.ZERO));
newInstance.setCalcType(this.getCalcType());
newInstance.setUpperLimit(this.getUpperLimit().clone());
newInstance.setEntryAmt(this.getEntryAmt().clone());
newInstance.setTotalAmt(this.getTotalAmt().add(BigDecimal.ZERO));
newInstance.setFinSerFeeType(this.getFinSerFeeType());
newInstance.setEffectDate(this.getEffectDate());
return newInstance;
} }
public Money entry(BigDecimal addTotle) { public String getRefNo() {
BigDecimal newTotal = addTotle.add(this.totalAmt); return refNo;
Money newEntryAmt = new Money(newTotal, AbssqrConstants.DECIMAL_ROUNDING_MODE);
Money thisEntryAmt = newEntryAmt.subtract(this.entryAmt);
Money newRecpAmt = thisEntryAmt.add(this.recpAmt);
if (this.upperLimit.isGreaterThanZero()) {
newRecpAmt = MoneyUtil.min(newRecpAmt, this.upperLimit);
}
Money thisRecpAmt = newRecpAmt.subtract(this.recpAmt);
if (thisRecpAmt.isGreaterThanZero()) {
this.bal.addTo(thisRecpAmt);
} else {
thisRecpAmt = new Money(0);
}
this.recpAmt = newRecpAmt;
this.entryAmt = newEntryAmt;
this.totalAmt = newTotal;
return thisRecpAmt;
}
public Money pay(Money amt) {
// Money realAmt = MoneyUtil.min(amt, bal);
this.bal = this.bal.subtract(amt);
this.payAmt = this.payAmt.add(amt);
return amt;
} }
public Money payVTax(Money amt) { public void setRefNo(String refNo) {
this.recpVATax = this.recpVATax.add(amt); this.refNo = refNo;
this.payVATax = this.payVATax.add(amt);
return amt;
} }
public String getPlanNo() { public String getPlanNo() {
...@@ -192,14 +68,6 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable ...@@ -192,14 +68,6 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable
this.titleNo = titleNo; this.titleNo = titleNo;
} }
public String getRefNo() {
return refNo;
}
public void setRefNo(String refNo) {
this.refNo = refNo;
}
public String getTitleName() { public String getTitleName() {
return titleName; return titleName;
} }
...@@ -215,132 +83,4 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable ...@@ -215,132 +83,4 @@ public class PlanAcctTitle extends BaseEntity implements Serializable, Cloneable
public void setTitleType(TitleTypeEnum titleType) { public void setTitleType(TitleTypeEnum titleType) {
this.titleType = titleType; this.titleType = titleType;
} }
public Money getBal() {
return bal;
}
public void setBal(Money bal) {
this.bal = bal;
}
public Money getRecpAmt() {
return recpAmt;
}
public void setRecpAmt(Money recpAmt) {
this.recpAmt = recpAmt;
}
public Money getPayAmt() {
return payAmt;
}
public void setPayAmt(Money payAmt) {
this.payAmt = payAmt;
}
public Money getRecpVATax() {
return recpVATax;
}
public void setRecpVATax(Money recpVATax) {
this.recpVATax = recpVATax;
}
public Money getPayVATax() {
return payVATax;
}
public void setPayVATax(Money payVATax) {
this.payVATax = payVATax;
}
public Date getLastSettleDate() {
return lastSettleDate;
}
public void setLastSettleDate(Date lastSettleDate) {
this.lastSettleDate = lastSettleDate;
}
public Date getLastPayDate() {
return lastPayDate;
}
public void setLastPayDate(Date lastPayDate) {
this.lastPayDate = lastPayDate;
}
public FeeScaleTypeEnum getScaleType() {
return scaleType;
}
public void setScaleType(FeeScaleTypeEnum scaleType) {
this.scaleType = scaleType;
}
public Money getInitAmt() {
return initAmt;
}
public void setInitAmt(Money initAmt) {
this.initAmt = initAmt;
}
public BigDecimal getRate() {
return rate;
}
public void setRate(BigDecimal rate) {
this.rate = rate;
}
public CalcTypeEnum getCalcType() {
return calcType;
}
public void setCalcType(CalcTypeEnum calcType) {
this.calcType = calcType;
}
public Money getUpperLimit() {
return upperLimit;
}
public void setUpperLimit(Money upperLimit) {
this.upperLimit = upperLimit;
}
public Money getEntryAmt() {
return entryAmt;
}
public void setEntryAmt(Money entryAmt) {
this.entryAmt = entryAmt;
}
public BigDecimal getTotalAmt() {
return totalAmt;
}
public void setTotalAmt(BigDecimal totalAmt) {
this.totalAmt = totalAmt;
}
public FinSerFeeTypeEnum getFinSerFeeType() {
return finSerFeeType;
}
public void setFinSerFeeType(FinSerFeeTypeEnum finSerFeeType) {
this.finSerFeeType = finSerFeeType;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
} }
\ No newline at end of file
...@@ -4,18 +4,11 @@ ...@@ -4,18 +4,11 @@
*/ */
package com.abssqr.plat.common.facade.model.plan; package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.enums.PlanTypeEnum; import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeTimeTypeEnum;
import com.abssqr.plat.common.facade.enums.PlanAllocStatusEnum;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* 分配计划 * 分配计划
...@@ -24,13 +17,9 @@ import java.util.List; ...@@ -24,13 +17,9 @@ import java.util.List;
* @version com.abssqr.plat.common.model.domain.plan: PlanAlloc.java, v 0.1 2019-06-03 16:05 bangis.wangdf Exp $ * @version com.abssqr.plat.common.model.domain.plan: PlanAlloc.java, v 0.1 2019-06-03 16:05 bangis.wangdf Exp $
*/ */
public class PlanAlloc extends BaseEntity implements Serializable { public class PlanAlloc extends BaseEntity implements Serializable {
private static final long serialVersionUID = 2724871818218559013L;
/**
* 计划类型
*/
private PlanTypeEnum planType;
/** /**
* 计划编号 * planNo 计划编号.
*/ */
private String planNo; private String planNo;
/** /**
...@@ -38,125 +27,33 @@ public class PlanAlloc extends BaseEntity implements Serializable { ...@@ -38,125 +27,33 @@ public class PlanAlloc extends BaseEntity implements Serializable {
*/ */
private String allocNo; private String allocNo;
/** /**
* clearDate 结算日. * payDate 本次转付日.
*/
private Date clearDate;
/**
* payDate 兑付日.
*/ */
private Date payDate; private Date payDate;
/** /**
* 分配状态 * calcDate 本次计算日.
*/
private PlanAllocStatusEnum status;
/**
* allocAmt 本期分配总额.
*/ */
private Money allocAmt = new Money(0); private Date calcDate;
/** /**
* planApproveStatus 审批状态 * allocDate 本次分配日.
* OUTOFDATE
* PASSED
* FAILED
* PENDING
* 已过时
* 已通过
* 已失败
* 审批中.
*/ */
private ApproveStatusEnum approveStatus; private Date allocDate;
/**
* 分配事项
*/
private List<PlanAllocItem> planAllocItemList = Lists.newArrayList();
/**
* 分配日期类型
*/
private FeeTimeTypeEnum timeType;
/** /**
* 分配金额 获取分配事项合计金额 * reportDate 本次报告日.
* 注:若 cfrmAmt 不为0,用cfrmAmt,否则用 trialAmt
*
* @return 累计需要冻结金额
*/ */
public Money calcTotalTrialAmt() { private Date reportDate;
Money total = new Money();
for (PlanAllocItem item : planAllocItemList) {
if(item.getPayTrial()) {
// 累加 试算金额 或 确认金额
total.addTo(approveStatus == ApproveStatusEnum.PASSED
|| item.getConfirmAmt().isGreaterThanZero() ? item.getConfirmAmt() : item.getTrialAmt());
}
// 累加 试算增值税 或 确认增值税
total.addTo(approveStatus == ApproveStatusEnum.PASSED
|| item.getConfirmTaxAmt().isGreaterThanZero() ? item.getConfirmTaxAmt() : item.getTrialTaxAmt());
}
return total;
}
/**
* 分配确认金额
*
* @param items
* @return
*/
public static Money calcPayAmt(List<PlanAllocItem> items) {
Money total = new Money();
for (PlanAllocItem item : items) {
Money amt = item.getConfirmAmt();
item.getSettleAmt().addTo(amt);
// 累加 确认金额
total.addTo(amt);
}
return total;
}
/** /**
* 分配确认费用 * settleDate 本次结息日.
*
* @param items
* @return
*/ */
public static Money calcPayVTaxAmt(List<PlanAllocItem> items) { private Date settleDate;
Money total = new Money();
for (PlanAllocItem item : items) {
Money tax = item.getConfirmTaxAmt();
item.getSettleAmt().addTo(tax);
// 累加 确认增值税
total.addTo(tax);
}
return total;
}
/** public String getPlanNo() {
* 获取确认分配金额 return planNo;
*
* @return
*/
public Money getTotalConfirmAllocAmt() {
Money total = new Money();
for (PlanAllocItem item : planAllocItemList) {
// 累加 确认金额
if (item.getPayTrial()) {
total.addTo(item.getConfirmAmt());
}
// 累加 确认增值税
total.addTo(item.getConfirmTaxAmt());
}
return total;
}
public void sortOrders() {
if (CollectionUtils.isNotEmpty(this.getPlanAllocItemList())) {
for (int i = 0; i < this.getPlanAllocItemList().size(); i++) {
this.getPlanAllocItemList().get(i).setOrder(i + 1);
}
}
} }
public void addPlanAllocItem(PlanAllocItem planAllocItem) { public void setPlanNo(String planNo) {
planAllocItemList.add(planAllocItem); this.planNo = planNo;
} }
public String getAllocNo() { public String getAllocNo() {
...@@ -167,14 +64,6 @@ public class PlanAlloc extends BaseEntity implements Serializable { ...@@ -167,14 +64,6 @@ public class PlanAlloc extends BaseEntity implements Serializable {
this.allocNo = allocNo; this.allocNo = allocNo;
} }
public Date getClearDate() {
return clearDate;
}
public void setClearDate(Date clearDate) {
this.clearDate = clearDate;
}
public Date getPayDate() { public Date getPayDate() {
return payDate; return payDate;
} }
...@@ -183,59 +72,36 @@ public class PlanAlloc extends BaseEntity implements Serializable { ...@@ -183,59 +72,36 @@ public class PlanAlloc extends BaseEntity implements Serializable {
this.payDate = payDate; this.payDate = payDate;
} }
public Money getAllocAmt() { public Date getCalcDate() {
return allocAmt; return calcDate;
}
public void setAllocAmt(Money allocAmt) {
this.allocAmt = allocAmt;
}
public List<PlanAllocItem> getPlanAllocItemList() {
return planAllocItemList;
}
public void setPlanAllocItemList(List<PlanAllocItem> planAllocItemList) {
this.planAllocItemList = planAllocItemList;
}
public String getPlanNo() {
return planNo;
} }
public void setPlanNo(String planNo) { public void setCalcDate(Date calcDate) {
this.planNo = planNo; this.calcDate = calcDate;
} }
public PlanAllocStatusEnum getStatus() { public Date getAllocDate() {
return status; return allocDate;
} }
public void setStatus(PlanAllocStatusEnum status) { public void setAllocDate(Date allocDate) {
this.status = status; this.allocDate = allocDate;
} }
public ApproveStatusEnum getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(ApproveStatusEnum approveStatus) {
this.approveStatus = approveStatus;
}
public FeeTimeTypeEnum getTimeType() { public Date getReportDate() {
return timeType; return reportDate;
} }
public void setTimeType(FeeTimeTypeEnum timeType) { public void setReportDate(Date reportDate) {
this.timeType = timeType; this.reportDate = reportDate;
} }
public PlanTypeEnum getPlanType() { public Date getSettleDate() {
return planType; return settleDate;
} }
public void setPlanType(PlanTypeEnum planType) { public void setSettleDate(Date settleDate) {
this.planType = planType; this.settleDate = settleDate;
} }
} }
...@@ -6,7 +6,6 @@ package com.abssqr.plat.common.facade.model.plan; ...@@ -6,7 +6,6 @@ package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.enums.AllocTypeEmun; import com.abssqr.plat.common.facade.enums.AllocTypeEmun;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import java.io.Serializable; import java.io.Serializable;
...@@ -17,130 +16,42 @@ import java.io.Serializable; ...@@ -17,130 +16,42 @@ import java.io.Serializable;
public class PlanAllocItem extends BaseEntity implements Serializable { public class PlanAllocItem extends BaseEntity implements Serializable {
private static final long serialVersionUID = 7862812748199802217L; private static final long serialVersionUID = 7862812748199802217L;
/** /**
* 事项编号 * sort 排序.
*/ */
private String itemNo; private int order;
/**
* 分配顺序
*/
private Integer order;
/**
* 科目编号
*/
private String titleNo;
/**
* 科目名称
*/
private String titleName;
/**
* 分配类型
*/
private AllocTypeEmun allocType;
/**
* 分配类型
*/
private int layerOrder;
/**
* 是否计税
*/
private Boolean tax;
/**
* 试算金额
*/
private Money trialAmt = Money.createWithCent(0L);
/**
* 支付试算金额与确认金额
*/
private Boolean payTrial = true;
/** /**
* 试算增值税 * itemNo 事项编号.
*/ */
private Money trialTaxAmt = Money.createWithCent(0L); private String itemNo;
/** /**
* 已结金额 * planNo 计划编号.
*/ */
private Money settleAmt = Money.createWithCent(0L); private String planNo;
/** /**
* 确认金额 * allocNo 分配编号.
*/ */
private Money confirmAmt = Money.createWithCent(0L); private String allocNo;
/** /**
* 确认增值税 * titleNo 科目编号.
*/ */
private Money confirmTaxAmt = Money.createWithCent(0L); private String titleNo;
/** /**
* 当期应付 * allocType 分配类型.
*/ */
private Money currPay = new Money(); private AllocTypeEmun allocType;
/** /**
* relNo * titleName 科目名称.
*/ */
private String relNo; private String titleName;
public Integer getOrder() { public int getOrder() {
return order; return order;
} }
public void setOrder(Integer order) { public void setOrder(int order) {
this.order = order; this.order = order;
} }
public Boolean getTax() {
return tax;
}
public void setTax(Boolean tax) {
this.tax = tax;
}
public Money getTrialAmt() {
return trialAmt;
}
public void setTrialAmt(Money trialAmt) {
this.trialAmt = trialAmt;
}
public Money getTrialTaxAmt() {
return trialTaxAmt;
}
public void setTrialTaxAmt(Money trialTaxAmt) {
this.trialTaxAmt = trialTaxAmt;
}
public Money getConfirmAmt() {
return confirmAmt;
}
public void setConfirmAmt(Money confirmAmt) {
this.confirmAmt = confirmAmt;
}
public Money getConfirmTaxAmt() {
return confirmTaxAmt;
}
public void setConfirmTaxAmt(Money confirmTaxAmt) {
this.confirmTaxAmt = confirmTaxAmt;
}
public String getTitleNo() {
return titleNo;
}
public void setTitleNo(String titleNo) {
this.titleNo = titleNo;
}
public String getTitleName() {
return titleName;
}
public void setTitleName(String titleName) {
this.titleName = titleName;
}
public String getItemNo() { public String getItemNo() {
return itemNo; return itemNo;
} }
...@@ -149,36 +60,28 @@ public class PlanAllocItem extends BaseEntity implements Serializable { ...@@ -149,36 +60,28 @@ public class PlanAllocItem extends BaseEntity implements Serializable {
this.itemNo = itemNo; this.itemNo = itemNo;
} }
public Money getSettleAmt() { public String getPlanNo() {
return settleAmt; return planNo;
}
public void setSettleAmt(Money settleAmt) {
this.settleAmt = settleAmt;
}
public Money getCurrPay() {
return currPay;
} }
public void setCurrPay(Money currPay) { public void setPlanNo(String planNo) {
this.currPay = currPay; this.planNo = planNo;
} }
public String getRelNo() { public String getAllocNo() {
return relNo; return allocNo;
} }
public void setRelNo(String relNo) { public void setAllocNo(String allocNo) {
this.relNo = relNo; this.allocNo = allocNo;
} }
public int getLayerOrder() { public String getTitleNo() {
return layerOrder; return titleNo;
} }
public void setLayerOrder(int layerOrder) { public void setTitleNo(String titleNo) {
this.layerOrder = layerOrder; this.titleNo = titleNo;
} }
public AllocTypeEmun getAllocType() { public AllocTypeEmun getAllocType() {
...@@ -189,26 +92,11 @@ public class PlanAllocItem extends BaseEntity implements Serializable { ...@@ -189,26 +92,11 @@ public class PlanAllocItem extends BaseEntity implements Serializable {
this.allocType = allocType; this.allocType = allocType;
} }
public Boolean getPayTrial() { public String getTitleName() {
return payTrial; return titleName;
}
public void setPayTrial(Boolean payTrial) {
this.payTrial = payTrial;
} }
/** public void setTitleName(String titleName) {
* 获取需要支付的金额 this.titleName = titleName;
* @return
*/
public Money getPayWithOutTaxAmt(){
if(payTrial==true){
if(confirmAmt!=null&&confirmAmt.isGreaterThanZero()){
return confirmAmt;
}
return this.trialAmt;
}else {
return Money.createWithCent(0L);
}
} }
} }
...@@ -5,15 +5,8 @@ ...@@ -5,15 +5,8 @@
package com.abssqr.plat.common.facade.model.plan; package com.abssqr.plat.common.facade.model.plan;
import com.abssqr.plat.common.facade.enums.*; import com.abssqr.plat.common.facade.enums.*;
import com.abssqr.plat.common.facade.model.account.Account;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* 计划 * 计划
* *
...@@ -22,257 +15,93 @@ import java.util.List; ...@@ -22,257 +15,93 @@ import java.util.List;
*/ */
public class PlanBase extends BaseEntity { public class PlanBase extends BaseEntity {
/** /**
* 计划类型 * totalAmt 发行规模.
*/
private PlanTypeEnum planType;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* planName 计划名称.
*/
private String planName;
/**
* totalAmount 总投入资本 发行总规模.
*/
private Money totalAmt;
/**
* beginDate 计划设立日(信托设立日).
*/
private Date beginDate;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/
private Date endDate;
/**
* 募集方式
* PUBLIC
* PRIVATE
* 公募
* 私募.
*/ */
private FundTypeEnum fundType; private Long totalAmt;
/** /**
* sponsorOrgCode 发起机构-都是不带账号. * allocPeriod 兑付周期.
*/ */
private String sponsorOrgCode; private Long allocPeriod;
/** /**
* managerOrgCode 计划代理机构 管理机构-都是不带账号. 改名字 planMgrOrgCode * planNo 产品编号.
*/ */
private String planMgrOrgCode; private String planNo;
/**
* sponsorOrgName 发起机构名称
*/
private String sponsorOrgName;
/**
* managerOrgCode 计划代理机构 管理机构-都是不带账号. 改名字 planMgrOrgCode
*/
private String planMgrOrgName;
/**
* initDate 初始起算日.
*/
private Date initCalcDate;
/**
* effectDate 计划起息日.
*/
private Date effectDate;
/**
* firstPayDay 首次结算日.
*/
private Date firstClearDate;
/**
* firstPayDay 首次偿付日 首次兑付日.
*/
private Date firstPayDate;
/** /**
* 计划状态 * status 产品状态(设计中,已发行,已清算).
* PREPARE
* CLEARED
* SUBSIST
* 准备中
* 已清算
* 存续中.
*/ */
private PlanStatusEnum status; private PlanStatusEnum status;
/** /**
* planApproveStatus 计划审批状态 * planName 产品简称.
* OUTOFDATE
* PASSED
* FAILED
* PENDING
* 已过时
* 已通过
* 已失败
* 审批中.
*/ */
private ApproveStatusEnum approveStatus; private String planName;
/** /**
*兑付频率 * tradePlace 交易场所.
* M
* Q
* 半年
* Y
* Month
* Season
* HalfYear
* Year
*/ */
private PlanPayFreqEnum payFreq; private String tradePlace;
/** /**
*计息方式 * calcIntrType 计息方式/计息基准.
* ACT/360
* ACT/365
*/ */
private CalcIntrTypeEnum calcIntrType; private CalcIntrTypeEnum calcIntrType;
/** /**
*增值税率 * planFullName 产品全称.
*/ */
private BigDecimal vatRate; private String planFullName;
/** /**
* 最近更新日期 * allocPeriodMethod 兑付周期类型.
*/ */
private Date lastUpdateDate; private PeriodTypeEnum allocPeriodMethod;
/** /**
* gmtCreator 创建人. * endDate 法定到期日.
*/ */
private String gmtCreator; private Date endDate;
/**
* gmtModifier 修改人.
*/
private String gmtModifier;
/** /**
* passed 曾经通过过 * beginDate 产品成立日.
*/ */
private Boolean passed; private Date beginDate;
/** /**
* 账户信息 * firstPayDate 首次转付日.
*/ */
private List<Account> accounts; private Date firstPayDate;
/**
* 投资结构
*/
private List<InvestStructure> investStructureList;
/** /**
* 费用结构 费用清单 * firstCalcDate 首次计算日.
*/ */
private List<FeeStructure> feeStructureList; private Date firstCalcDate;
/** /**
* 定价规则类型 * firstAllocDate 首次分配日.
*/ */
private PriceTypeEnum priceType; private Date firstAllocDate;
/** /**
* 资产定价规则 * firstReportDate 首次报告日.
*/ */
private List<PlanAstPriceRule> planAstPriceRuleList; private Date firstReportDate;
/** /**
* 金融服务费率 * firstSettleDate 首次结息日.
*/ */
private BigDecimal finSerFeeRate; private Date firstSettleDate;
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) { public Long getTotalAmt() {
this.planNo = planNo;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public Money getTotalAmt() {
return totalAmt; return totalAmt;
} }
public void setTotalAmt(Money totalAmt) { public void setTotalAmt(Long totalAmt) {
this.totalAmt = totalAmt; this.totalAmt = totalAmt;
} }
public Date getBeginDate() { public Long getAllocPeriod() {
return beginDate; return allocPeriod;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public FundTypeEnum getFundType() {
return fundType;
} }
public void setFundType(FundTypeEnum fundType) { public void setAllocPeriod(Long allocPeriod) {
this.fundType = fundType; this.allocPeriod = allocPeriod;
} }
public String getSponsorOrgCode() { public String getPlanNo() {
return sponsorOrgCode; return planNo;
}
public void setSponsorOrgCode(String sponsorOrgCode) {
this.sponsorOrgCode = sponsorOrgCode;
}
public String getPlanMgrOrgCode() {
return planMgrOrgCode;
}
public void setPlanMgrOrgCode(String planMgrOrgCode) {
this.planMgrOrgCode = planMgrOrgCode;
}
public Date getInitCalcDate() {
return initCalcDate;
}
public void setInitCalcDate(Date initCalcDate) {
this.initCalcDate = initCalcDate;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
public Date getFirstClearDate() {
return firstClearDate;
}
public void setFirstClearDate(Date firstClearDate) {
this.firstClearDate = firstClearDate;
}
public Date getFirstPayDate() {
return firstPayDate;
} }
public void setFirstPayDate(Date firstPayDate) { public void setPlanNo(String planNo) {
this.firstPayDate = firstPayDate; this.planNo = planNo;
} }
public PlanStatusEnum getStatus() { public PlanStatusEnum getStatus() {
...@@ -283,127 +112,99 @@ public class PlanBase extends BaseEntity { ...@@ -283,127 +112,99 @@ public class PlanBase extends BaseEntity {
this.status = status; this.status = status;
} }
public ApproveStatusEnum getApproveStatus() { public String getPlanName() {
return approveStatus; return planName;
}
public void setApproveStatus(ApproveStatusEnum approveStatus) {
this.approveStatus = approveStatus;
}
public BigDecimal getVatRate() { return vatRate; }
public void setVatRate(BigDecimal vatRate) { this.vatRate = vatRate; }
public PlanPayFreqEnum getPayFreq() { return payFreq; }
public void setPayFreq(PlanPayFreqEnum payFreq) { this.payFreq = payFreq; }
public CalcIntrTypeEnum getCalcIntrType() { return calcIntrType; }
public void setCalcIntrType(CalcIntrTypeEnum calcIntrType) { this.calcIntrType = calcIntrType; }
public Date getLastUpdateDate() {
return lastUpdateDate;
}
public void setLastUpdateDate(Date lastUpdateDate) {
this.lastUpdateDate = lastUpdateDate;
}
public String getGmtCreator() {
return gmtCreator;
} }
public void setGmtCreator(String gmtCreator) { public void setPlanName(String planName) {
this.gmtCreator = gmtCreator; this.planName = planName;
} }
public String getGmtModifier() { public String getTradePlace() {
return gmtModifier; return tradePlace;
} }
public void setGmtModifier(String gmtModifier) { public void setTradePlace(String tradePlace) {
this.gmtModifier = gmtModifier; this.tradePlace = tradePlace;
} }
public String getSponsorOrgName() { public CalcIntrTypeEnum getCalcIntrType() {
return sponsorOrgName; return calcIntrType;
} }
public void setSponsorOrgName(String sponsorOrgName) { public void setCalcIntrType(CalcIntrTypeEnum calcIntrType) {
this.sponsorOrgName = sponsorOrgName; this.calcIntrType = calcIntrType;
} }
public String getPlanMgrOrgName() { public String getPlanFullName() {
return planMgrOrgName; return planFullName;
} }
public void setPlanMgrOrgName(String planMgrOrgName) { public void setPlanFullName(String planFullName) {
this.planMgrOrgName = planMgrOrgName; this.planFullName = planFullName;
} }
public Boolean isPassed() { public PeriodTypeEnum getAllocPeriodMethod() {
return passed; return allocPeriodMethod;
} }
public void setPassed(Boolean passed) { public void setAllocPeriodMethod(PeriodTypeEnum allocPeriodMethod) {
this.passed = passed; this.allocPeriodMethod = allocPeriodMethod;
} }
public PlanTypeEnum getPlanType() { public Date getEndDate() {
return planType; return endDate;
} }
public void setPlanType(PlanTypeEnum planType) { public void setEndDate(Date endDate) {
this.planType = planType; this.endDate = endDate;
} }
public List<Account> getAccounts() { public Date getBeginDate() {
return accounts; return beginDate;
} }
public void setAccounts(List<Account> accounts) { public void setBeginDate(Date beginDate) {
this.accounts = accounts; this.beginDate = beginDate;
} }
public List<InvestStructure> getInvestStructureList() { public Date getFirstPayDate() {
return investStructureList; return firstPayDate;
} }
public void setInvestStructureList(List<InvestStructure> investStructureList) { public void setFirstPayDate(Date firstPayDate) {
this.investStructureList = investStructureList; this.firstPayDate = firstPayDate;
} }
public List<FeeStructure> getFeeStructureList() { public Date getFirstCalcDate() {
return feeStructureList; return firstCalcDate;
} }
public void setFeeStructureList(List<FeeStructure> feeStructureList) { public void setFirstCalcDate(Date firstCalcDate) {
this.feeStructureList = feeStructureList; this.firstCalcDate = firstCalcDate;
} }
public PriceTypeEnum getPriceType() { public Date getFirstAllocDate() {
return priceType; return firstAllocDate;
} }
public void setPriceType(PriceTypeEnum priceType) { public void setFirstAllocDate(Date firstAllocDate) {
this.priceType = priceType; this.firstAllocDate = firstAllocDate;
} }
public List<PlanAstPriceRule> getPlanAstPriceRuleList() { public Date getFirstReportDate() {
return planAstPriceRuleList; return firstReportDate;
} }
public void setPlanAstPriceRuleList(List<PlanAstPriceRule> planAstPriceRuleList) { public void setFirstReportDate(Date firstReportDate) {
this.planAstPriceRuleList = planAstPriceRuleList; this.firstReportDate = firstReportDate;
} }
public BigDecimal getFinSerFeeRate() { public Date getFirstSettleDate() {
return finSerFeeRate; return firstSettleDate;
} }
public void setFinSerFeeRate(BigDecimal finSerFeeRate) { public void setFirstSettleDate(Date firstSettleDate) {
this.finSerFeeRate = finSerFeeRate; this.firstSettleDate = firstSettleDate;
} }
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.param.org;
import com.abssqr.plat.common.facade.enums.YNEnum;
import com.abssqr.plat.common.facade.param.plan.PlanOprParam;
import com.abssqr.plat.common.facade.validation.VldCollection;
import com.abssqr.plat.common.facade.validation.VldEnums;
import java.util.Date;
import java.util.List;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.param.org: OrgEntityOprParam.java, v 0.1 2019-06-22 15:04 bangis.wangdf Exp $
*/
public class OrgEntityOprParam extends PlanOprParam {
private static final long serialVersionUID = 1725678973545464447L;
/**
* 关联产品列表
*/
@VldCollection(message = "关联产品不能超过10个", maxSize = 10, nullable = true)
private List<String> prodCodes;
/**
* 是否回收转付标记
*/
@VldEnums(message = "是否回收转付标记有误", enumClass = YNEnum.class)
private String needAlloc;
/**
* 放款终止日
*/
private Date stopPayDate;
public void setEntityCode(String entityCode) {
this.setPlanNo(entityCode);
}
public void setEntityName(String entityName) {
this.setPlanName(entityName);
}
public List<String> getProdCodes() {
return prodCodes;
}
public void setProdCodes(List<String> prodCodes) {
this.prodCodes = prodCodes;
}
public String getNeedAlloc() {
return needAlloc;
}
public void setNeedAlloc(String needAlloc) {
this.needAlloc = needAlloc;
}
public Date getStopPayDate() {
return stopPayDate;
}
public void setStopPayDate(Date stopPayDate) {
this.stopPayDate = stopPayDate;
}
}
package com.abssqr.plat.common.facade.param.plan;
import com.abssqr.plat.common.facade.base.BaseOprParam;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.param.plan.sub.FeeStructureParam;
import com.abssqr.plat.common.facade.param.plan.sub.InvestStructureParam;
import java.util.Date;
import java.util.List;
public class PlanEditOprParam extends BaseOprParam {
/**
* 计划编号
*/
private String planNo;
/**
* totalAmt 发行规模.
*/
private Long totalAmt;
/**
* allocPeriod 兑付周期.
*/
private Long allocPeriod;
/**
* planName 产品简称.
*/
private String planName;
/**
* tradePlace 交易场所.
*/
private String tradePlace;
/**
* calcIntrType 计息方式/计息基准.
*/
private String calcIntrType;
/**
* planFullName 产品全称.
*/
private String planFullName;
/**
* allocPeriodMethod 兑付周期类型.
*/
private String allocPeriodMethod;
/**
* endDate 法定到期日.
*/
private Date endDate;
/**
* beginDate 产品成立日.
*/
private Date beginDate;
/**
* firstPayDate 首次转付日.
*/
private Date firstPayDate;
/**
* firstCalcDate 首次计算日.
*/
private Date firstCalcDate;
/**
* firstAllocDate 首次分配日.
*/
private Date firstAllocDate;
/**
* firstReportDate 首次报告日.
*/
private Date firstReportDate;
/**
* firstSettleDate 首次结息日.
*/
private Date firstSettleDate;
//是否是暂存
private boolean draft;
private boolean add;
//费用结构
private List<FeeStructureParam> feeStructureParam;
//投资结构
private List<InvestStructureParam> investStructureParam;
public Long getTotalAmt() {
return totalAmt;
}
public void setTotalAmt(Long totalAmt) {
this.totalAmt = totalAmt;
}
public Long getAllocPeriod() {
return allocPeriod;
}
public void setAllocPeriod(Long allocPeriod) {
this.allocPeriod = allocPeriod;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public String getTradePlace() {
return tradePlace;
}
public void setTradePlace(String tradePlace) {
this.tradePlace = tradePlace;
}
public String getCalcIntrType() {
return calcIntrType;
}
public void setCalcIntrType(String calcIntrType) {
this.calcIntrType = calcIntrType;
}
public String getPlanFullName() {
return planFullName;
}
public void setPlanFullName(String planFullName) {
this.planFullName = planFullName;
}
public String getAllocPeriodMethod() {
return allocPeriodMethod;
}
public void setAllocPeriodMethod(String allocPeriodMethod) {
this.allocPeriodMethod = allocPeriodMethod;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getFirstPayDate() {
return firstPayDate;
}
public void setFirstPayDate(Date firstPayDate) {
this.firstPayDate = firstPayDate;
}
public Date getFirstCalcDate() {
return firstCalcDate;
}
public void setFirstCalcDate(Date firstCalcDate) {
this.firstCalcDate = firstCalcDate;
}
public Date getFirstAllocDate() {
return firstAllocDate;
}
public void setFirstAllocDate(Date firstAllocDate) {
this.firstAllocDate = firstAllocDate;
}
public Date getFirstReportDate() {
return firstReportDate;
}
public void setFirstReportDate(Date firstReportDate) {
this.firstReportDate = firstReportDate;
}
public Date getFirstSettleDate() {
return firstSettleDate;
}
public void setFirstSettleDate(Date firstSettleDate) {
this.firstSettleDate = firstSettleDate;
}
public List<FeeStructureParam> getFeeStructureParam() {
return feeStructureParam;
}
public void setFeeStructureParam(List<FeeStructureParam> feeStructureParam) {
this.feeStructureParam = feeStructureParam;
}
public List<InvestStructureParam> getInvestStructureParam() {
return investStructureParam;
}
public void setInvestStructureParam(List<InvestStructureParam> investStructureParam) {
this.investStructureParam = investStructureParam;
}
public boolean isDraft() {
return draft;
}
public void setDraft(boolean draft) {
this.draft = draft;
}
public boolean isAdd() {
return add;
}
public void setAdd(boolean add) {
this.add = add;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
@Override
public EventCodeEnum getEventCode() {
return EventCodeEnum.ADMIN_EDIT;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.param.plan;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.abssqr.plat.common.facade.base.BaseOprParam;
import com.abssqr.plat.common.facade.enums.*;
import com.abssqr.plat.common.facade.param.acct.AccountParam;
import com.abssqr.plat.common.facade.param.plan.sub.FeeStructureParam;
import com.abssqr.plat.common.facade.param.plan.sub.InvestStructureParam;
import com.abssqr.plat.common.facade.param.plan.sub.PlanAstPriceRuleParam;
import com.abssqr.plat.common.facade.param.plan.sub.PlanTransferRuleParam;
import com.abssqr.plat.common.facade.validation.*;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.param.plan: PlanOprParam.java, v 0.1 2019-05-28 15:24 bangis.wangdf Exp $
*/
public class PlanOprParam extends BaseOprParam {
private static final long serialVersionUID = -2195239669227550002L;
/**
* 实体类型(SPV)
*/
@VldEnums(enumClass = PlanTypeEnum.class)
private String planType = PlanTypeEnum.PLAN.getCode();
/**
* planNo 计划编号.
*/
@VldString(message = "计划编号不能为空")
private String planNo;
/**
* planName 计划名称.
*/
@VldString(message = "计划名称不能为空")
private String planName;
/**
* totalAmount 总投入资本 发行总规模.
*/
private String totalAmt = "0";
/**
* beginDate 计划设立日(信托设立日).
*/
private Date beginDate;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/
private Date endDate;
/**
* 募集方式
* PUBLIC
* PRIVATE
* 公募
* 私募.
*/
@VldEnums(enumClass = FundTypeEnum.class)
private String fundType;
/**
* sponsorOrgCode 发起机构.
*/
private String sponsorOrgCode;
/**
* managerOrgCode 代理机构 管理机构.
*/
@VldString(message = "管理机构不能为空")
private String planMgrOrgCode;
/**
* initDate 初始起算日.
*/
private Date initCalcDate;
/**
* effectDate 计划起息日.
*/
private Date effectDate;
/**
* firstPayDay 首次结算日.
*/
private Date firstClearDate;
/**
* firstPayDay 首次偿付日 首次兑付日.
*/
private Date firstPayDate;
/**
* 兑付频率
* M
* Q
* 半年
* Y
* Month
* Season
* HalfYear
* Year
*/
@VldEnums(enumClass = PlanPayFreqEnum.class)
private String payFreq;
/**
* 计息方式
* ACT/360
* ACT/365
*/
@VldEnums(enumClass = CalcIntrTypeEnum.class)
private String calcIntrType;
/**
* 增值税率
*/
private BigDecimal vatRate;
/**
* 是否新增 true为新增 Flase为修改
*/
@VldNotNull
private Boolean isAdd;
/**
* 转让规则
*/
private PlanTransferRuleParam transferRule;
/**
* 账户信息
*/
@VldNotNull
private List<AccountParam> accounts;
/**
* 投资结构
*/
@VldCollection(nullable = true)
private List<InvestStructureParam> investStructureList;
/**
* 费用结构 费用清单
*/
@VldCollection(nullable = true)
private List<FeeStructureParam> feeStructureList;
/**
* 定价规则类型
*/
private String priceType;
/**
* 资产定价规则
*/
private List<PlanAstPriceRuleParam> planAstPriceRuleList;
/**
* 是否是暂存
*/
private Boolean draft = false;
/**
* 金融服务费率
*/
@VldBigDecimal(message = "金融服务费率不能为空")
private BigDecimal finSerFeeRate;
@Override
public EventCodeEnum getEventCode() {
return EventCodeEnum.ADMIN_EDIT;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public String getTotalAmt() {
return totalAmt;
}
public void setTotalAmt(String totalAmt) {
this.totalAmt = totalAmt;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public String getFundType() {
return fundType;
}
public void setFundType(String fundType) {
this.fundType = fundType;
}
public String getSponsorOrgCode() {
return sponsorOrgCode;
}
public void setSponsorOrgCode(String sponsorOrgCode) {
this.sponsorOrgCode = sponsorOrgCode;
}
public String getPlanMgrOrgCode() {
return planMgrOrgCode;
}
public void setPlanMgrOrgCode(String planMgrOrgCode) {
this.planMgrOrgCode = planMgrOrgCode;
}
public Date getInitCalcDate() {
return initCalcDate;
}
public void setInitCalcDate(Date initCalcDate) {
this.initCalcDate = initCalcDate;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
public Date getFirstClearDate() {
return firstClearDate;
}
public void setFirstClearDate(Date firstClearDate) {
this.firstClearDate = firstClearDate;
}
public Date getFirstPayDate() {
return firstPayDate;
}
public void setFirstPayDate(Date firstPayDate) {
this.firstPayDate = firstPayDate;
}
public PlanTransferRuleParam getTransferRule() {
return transferRule;
}
public void setTransferRule(PlanTransferRuleParam transferRule) {
this.transferRule = transferRule;
}
public List<AccountParam> getAccounts() {
return accounts;
}
public void setAccounts(List<AccountParam> accounts) {
this.accounts = accounts;
}
public List<InvestStructureParam> getInvestStructureList() {
return investStructureList;
}
public void setInvestStructureList(List<InvestStructureParam> investStructureList) {
this.investStructureList = investStructureList;
}
public List<FeeStructureParam> getFeeStructureList() {
return feeStructureList;
}
public void setFeeStructureList(List<FeeStructureParam> feeStructureList) {
this.feeStructureList = feeStructureList;
}
public String getPayFreq() {
return payFreq;
}
public void setPayFreq(String payFreq) {
this.payFreq = payFreq;
}
public String getCalcIntrType() {
return calcIntrType;
}
public void setCalcIntrType(String calcIntrType) {
this.calcIntrType = calcIntrType;
}
public BigDecimal getVatRate() {
return vatRate;
}
public void setVatRate(BigDecimal vatRate) {
this.vatRate = vatRate;
}
public Boolean getAdd() {
return isAdd;
}
public void setAdd(Boolean add) {
isAdd = add;
}
public String getPlanType() {
return planType;
}
public void setPlanType(String planType) {
this.planType = planType;
}
public String getPriceType() {
return priceType;
}
public void setPriceType(String priceType) {
this.priceType = priceType;
}
public List<PlanAstPriceRuleParam> getPlanAstPriceRuleList() {
return planAstPriceRuleList;
}
public void setPlanAstPriceRuleList(List<PlanAstPriceRuleParam> planAstPriceRuleList) {
this.planAstPriceRuleList = planAstPriceRuleList;
}
public Boolean getDraft() {
return draft;
}
public void setDraft(Boolean draft) {
this.draft = draft;
}
public BigDecimal getFinSerFeeRate() {
return finSerFeeRate;
}
public void setFinSerFeeRate(BigDecimal finSerFeeRate) {
this.finSerFeeRate = finSerFeeRate;
}
}
\ No newline at end of file
...@@ -13,6 +13,7 @@ import com.general.system.common.model.BaseEntity; ...@@ -13,6 +13,7 @@ import com.general.system.common.model.BaseEntity;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/** /**
* 费用结构 * 费用结构
...@@ -23,72 +24,63 @@ import java.math.BigDecimal; ...@@ -23,72 +24,63 @@ import java.math.BigDecimal;
public class FeeStructureParam extends BaseEntity implements Serializable { public class FeeStructureParam extends BaseEntity implements Serializable {
private static final long serialVersionUID = -8054344184679429967L; private static final long serialVersionUID = -8054344184679429967L;
/** /**
* 费用编号 * order .
*/ */
private String feeNo; private Long order;
/** /**
* 费用名称 * fixedFeeAmt 固定费用.
*/ */
private String feeName; private Long fixedFeeAmt;
/** /**
* 计费时间类型 * payLimitAmt 支付上限.
*/ */
@VldEnums(enumClass = FeeTimeTypeEnum.class) private Long payLimitAmt;
private String feeTimeType;
/** /**
* 计算方式 : 固定金额 比例金额 年化费率 * feeCalcType 计费方式.
*/ */
@VldEnums(enumClass = CalcTypeEnum.class)
private String feeCalcType; private String feeCalcType;
/** /**
* 固定费用 * feeScaleType 费用基准.
*/ */
private String fixedFeeAmt;
/**
* 费率基准
*/
@VldEnums(enumClass = FeeScaleTypeEnum.class,nullable = true)
private String feeScaleType; private String feeScaleType;
/** /**
* 费率 * feeCalcDefaultDate 默认计费时间.
*/
private BigDecimal feeRate;
/**
* 按日计费
*/ */
private boolean calcByDay; private Date feeCalcDefaultDate;
/** /**
* 支付上限 * feeRate 费率.
*/ */
private String payLimitAmt; private String feeRate;
/** /**
* 金融服务费支付方式 * 费用名称
*/ */
@VldEnums(enumClass = FinSerFeeTypeEnum.class,nullable = true) private String feeName;
private String finSerFeeType;
public String getFeeNo() { public Long getOrder() {
return feeNo; return order;
} }
public void setFeeNo(String feeNo) { public void setOrder(Long order) {
this.feeNo = feeNo; this.order = order;
} }
public String getFeeName() { public Long getFixedFeeAmt() {
return feeName; return fixedFeeAmt;
} }
public void setFeeName(String feeName) { public void setFixedFeeAmt(Long fixedFeeAmt) {
this.feeName = feeName; this.fixedFeeAmt = fixedFeeAmt;
} }
public String getFeeTimeType() { public Long getPayLimitAmt() {
return feeTimeType; return payLimitAmt;
} }
public void setFeeTimeType(String feeTimeType) { public void setPayLimitAmt(Long payLimitAmt) {
this.feeTimeType = feeTimeType; this.payLimitAmt = payLimitAmt;
} }
public String getFeeCalcType() { public String getFeeCalcType() {
...@@ -99,14 +91,6 @@ public class FeeStructureParam extends BaseEntity implements Serializable { ...@@ -99,14 +91,6 @@ public class FeeStructureParam extends BaseEntity implements Serializable {
this.feeCalcType = feeCalcType; this.feeCalcType = feeCalcType;
} }
public String getFixedFeeAmt() {
return fixedFeeAmt;
}
public void setFixedFeeAmt(String fixedFeeAmt) {
this.fixedFeeAmt = fixedFeeAmt;
}
public String getFeeScaleType() { public String getFeeScaleType() {
return feeScaleType; return feeScaleType;
} }
...@@ -115,35 +99,27 @@ public class FeeStructureParam extends BaseEntity implements Serializable { ...@@ -115,35 +99,27 @@ public class FeeStructureParam extends BaseEntity implements Serializable {
this.feeScaleType = feeScaleType; this.feeScaleType = feeScaleType;
} }
public BigDecimal getFeeRate() { public Date getFeeCalcDefaultDate() {
return feeRate; return feeCalcDefaultDate;
} }
public void setFeeRate(BigDecimal feeRate) { public void setFeeCalcDefaultDate(Date feeCalcDefaultDate) {
this.feeRate = feeRate; this.feeCalcDefaultDate = feeCalcDefaultDate;
} }
public boolean isCalcByDay() { public String getFeeRate() {
return calcByDay; return feeRate;
}
public void setCalcByDay(boolean calcByDay) {
this.calcByDay = calcByDay;
}
public String getPayLimitAmt() {
return payLimitAmt;
} }
public void setPayLimitAmt(String payLimitAmt) { public void setFeeRate(String feeRate) {
this.payLimitAmt = payLimitAmt; this.feeRate = feeRate;
} }
public String getFinSerFeeType() { public String getFeeName() {
return finSerFeeType; return feeName;
} }
public void setFinSerFeeType(String finSerFeeType) { public void setFeeName(String feeName) {
this.finSerFeeType = finSerFeeType; this.feeName = feeName;
} }
} }
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
package com.abssqr.plat.common.facade.param.plan.sub; package com.abssqr.plat.common.facade.param.plan.sub;
import com.abssqr.plat.common.facade.enums.IntrTypeEnum; import com.abssqr.plat.common.facade.enums.IntrTypeEnum;
import com.abssqr.plat.common.facade.enums.LayerTypeEnu; import com.abssqr.plat.common.facade.enums.LayerTypeEnum;
import com.abssqr.plat.common.facade.validation.VldDate; import com.abssqr.plat.common.facade.validation.VldDate;
import com.abssqr.plat.common.facade.validation.VldEnums; import com.abssqr.plat.common.facade.validation.VldEnums;
import com.general.system.common.model.BaseEntity; import com.general.system.common.model.BaseEntity;
...@@ -23,79 +23,79 @@ import java.util.Date; ...@@ -23,79 +23,79 @@ import java.util.Date;
public class InvestStructureParam extends BaseEntity implements Serializable { public class InvestStructureParam extends BaseEntity implements Serializable {
private static final long serialVersionUID = 8524145157995591525L; private static final long serialVersionUID = 8524145157995591525L;
/** /**
* 层次编号. * order 排序.
*/ */
private String layerNo; private Long order;
/** /**
* 层次名称. * layerAmt 金额/层级规模.
*/ */
private String layerName; private Long layerAmt;
/** /**
* 层级类型 * grade 评级.
*/ */
@VldEnums(enumClass = LayerTypeEnu.class) private String grade;
private String layerType;
/** /**
* 层级规模 * intrType 利率类型.
*/ */
private String layerAmt = "0"; private String intrType;
/** /**
* 利率类型 * layerName 层级名称.
*/ */
@VldEnums(enumClass = IntrTypeEnum.class) private String layerName;
private String intrType="FIXED";
/** /**
* 层级利率 * layerType 分层类型.
*/ */
private BigDecimal layerIntr=BigDecimal.ZERO; private String layerType;
/** /**
* 到期日 * allocMethod 偿付方式.
*/ */
private Date layerEndDate; private String allocMethod;
/**
* endDate 到期日.
*/
private Date endDate;
/** /**
* 起息日 * effectDate 起息日.
*/ */
@VldDate(message = "起息日不能为空")
private Date effectDate; private Date effectDate;
/** /**
* 是否为追加 * expectEndDate 预计到期日.
*/ */
private Boolean append = false; private Date expectEndDate;
/**
* layerIntr 利率.
*/
private BigDecimal layerIntr;
public String getLayerNo() {
return layerNo;
}
public void setLayerNo(String layerNo) {
this.layerNo = layerNo;
}
public String getLayerName() { public Long getOrder() {
return layerName; return order;
} }
public void setLayerName(String layerName) { public void setOrder(Long order) {
this.layerName = layerName; this.order = order;
} }
public String getLayerType() { public Long getLayerAmt() {
return layerType; return layerAmt;
} }
public void setLayerType(String layerType) { public void setLayerAmt(Long layerAmt) {
this.layerType = layerType; this.layerAmt = layerAmt;
} }
public String getLayerAmt() { public String getGrade() {
return layerAmt; return grade;
} }
public void setLayerAmt(String layerAmt) { public void setGrade(String grade) {
this.layerAmt = layerAmt; this.grade = grade;
} }
public String getIntrType() { public String getIntrType() {
return intrType; return intrType;
} }
...@@ -104,30 +104,36 @@ public class InvestStructureParam extends BaseEntity implements Serializable { ...@@ -104,30 +104,36 @@ public class InvestStructureParam extends BaseEntity implements Serializable {
this.intrType = intrType; this.intrType = intrType;
} }
public BigDecimal getLayerIntr() { public String getLayerName() {
return layerIntr; return layerName;
} }
public void setLayerIntr(BigDecimal layerIntr) { public void setLayerName(String layerName) {
this.layerIntr = layerIntr; this.layerName = layerName;
} }
public Date getLayerEndDate() { public String getLayerType() {
return layerEndDate; return layerType;
} }
public void setLayerEndDate(Date layerEndDate) { public void setLayerType(String layerType) {
this.layerEndDate = layerEndDate; this.layerType = layerType;
} }
public String getAllocMethod() {
return allocMethod;
}
public void setAllocMethod(String allocMethod) {
this.allocMethod = allocMethod;
}
public Boolean getAppend() { public Date getEndDate() {
return append; return endDate;
} }
public void setAppend(Boolean append) { public void setEndDate(Date endDate) {
this.append = append; this.endDate = endDate;
} }
public Date getEffectDate() { public Date getEffectDate() {
...@@ -137,4 +143,20 @@ public class InvestStructureParam extends BaseEntity implements Serializable { ...@@ -137,4 +143,20 @@ public class InvestStructureParam extends BaseEntity implements Serializable {
public void setEffectDate(Date effectDate) { public void setEffectDate(Date effectDate) {
this.effectDate = effectDate; this.effectDate = effectDate;
} }
public Date getExpectEndDate() {
return expectEndDate;
}
public void setExpectEndDate(Date expectEndDate) {
this.expectEndDate = expectEndDate;
}
public BigDecimal getLayerIntr() {
return layerIntr;
}
public void setLayerIntr(BigDecimal layerIntr) {
this.layerIntr = layerIntr;
}
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.param.plan.sub;
import com.general.system.common.model.BaseEntity;
import java.math.BigDecimal;
/**
*
* @author xiachenxiang
* @version com.abssqr.plat.common.facade.param.plan.sub: PlanAstPriceRuleParam.java, v 0.1 2019-11-07 2:32 PM xiachenxiang Exp $
*/
public class PlanAstPriceRuleParam extends BaseEntity {
/**
* termNo 期次.
*/
private Long termNo;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* intrDiscountRate 利息折价率.
*/
private BigDecimal intrDiscountRate;
public Long getTermNo() {
return termNo;
}
public void setTermNo(Long termNo) {
this.termNo = termNo;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public BigDecimal getIntrDiscountRate() {
return intrDiscountRate;
}
public void setIntrDiscountRate(BigDecimal intrDiscountRate) {
this.intrDiscountRate = intrDiscountRate;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.param.plan.sub;
import com.abssqr.plat.common.facade.enums.TrCycleEnum;
import com.abssqr.plat.common.facade.validation.VldEnums;
import com.abssqr.plat.common.facade.validation.VldNotNull;
import com.general.system.common.model.BaseEntity;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.param.plan.sub: PlanTransferRuleParam.java, v 0.1 2019-05-30 15:03 bangis.wangdf Exp $
*/
public class PlanTransferRuleParam extends BaseEntity implements Serializable {
private static final long serialVersionUID = -6841079424133986667L;
/**
* transferNo 转让规则.
*/
private String transferNo;
/**
* resAmt 预留金额.
*/
@VldNotNull
private String resAmt;
/**
* trCycle 转让周期
* D D
* W W
* M M
* Q Q
* Y Y.
*/
@VldEnums(enumClass = TrCycleEnum.class)
private String trCycle;
/**
* cycle 是否循环注水.
*/
private Boolean cycle = true;
/**
* slice 是否切片.
*/
private Boolean slice = false;
/**
* stopTrDate 停止转让日 持续购买终止日.
*/
@VldNotNull
private Date stopTrDate;
/**
* startTrDate 开始转让日 持续购买开始日.
*/
@VldNotNull
private Date startTrDate;
/**
* 筛选规则
*/
private List<String> screeningRules;
public String getTransferNo() {
return transferNo;
}
public void setTransferNo(String transferNo) {
this.transferNo = transferNo;
}
public String getResAmt() {
return resAmt;
}
public void setResAmt(String resAmt) {
this.resAmt = resAmt;
}
public String getTrCycle() {
return trCycle;
}
public void setTrCycle(String trCycle) {
this.trCycle = trCycle;
}
public Boolean getCycle() {
return cycle;
}
public void setCycle(Boolean cycle) {
this.cycle = cycle;
}
public Boolean getSlice() {
return slice;
}
public void setSlice(Boolean slice) {
this.slice = slice;
}
public Date getStopTrDate() {
return stopTrDate;
}
public void setStopTrDate(Date stopTrDate) {
this.stopTrDate = stopTrDate;
}
public Date getStartTrDate() {
return startTrDate;
}
public void setStartTrDate(Date startTrDate) {
this.startTrDate = startTrDate;
}
public List<String> getScreeningRules() {
return screeningRules;
}
public void setScreeningRules(List<String> screeningRules) {
this.screeningRules = screeningRules;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
/**
*
* @author hanfei
* @version $Id: AllocRiskDetail.java, v 0.1 2019-07-07 12:25 AM hanfei Exp $
*/
public class AllocRiskDetail {
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.abssqr.plat.common.facade.model.account.Account;
import com.abssqr.plat.common.facade.result.account.AccountVO;
import com.general.system.common.model.Money;
/**
*
* @author hanfei
* @version $Id: PlanAllocPayInfoVO.java, v 0.1 2019-06-26 11:26 AM hanfei Exp $
*/
public class PlanAllocPayInfoVO {
/**
* planNo 计划编号.
*/
private String planNo;
/**
* planName 计划名称.
*/
private String planName;
/**
* payAmt 支付金额.
*/
private Money payAmt;
/**
* 源账户信息
*/
private AccountVO sourceAcct;
/**
* 目标账户信息
*/
private AccountVO targetAcct;
public AccountVO installAccount(Account account) {
AccountVO vo = new AccountVO();
vo.setActNo(account.getActNo());
vo.setActName(account.getActName());
return vo;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public Money getPayAmt() {
return payAmt;
}
public void setPayAmt(Money payAmt) {
this.payAmt = payAmt;
}
public AccountVO getSourceAcct() {
return sourceAcct;
}
public void setSourceAcct(AccountVO sourceAcct) {
this.sourceAcct = sourceAcct;
}
public AccountVO getTargetAcct() {
return targetAcct;
}
public void setTargetAcct(AccountVO targetAcct) {
this.targetAcct = targetAcct;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.abssqr.plat.common.facade.constants.AbssqrConstants;
import com.abssqr.plat.common.facade.enums.FundTypeEnum;
import com.abssqr.plat.common.facade.enums.PlanAllocStatusEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAlloc;
import com.abssqr.plat.common.facade.model.plan.PlanAllocItem;
import com.abssqr.plat.common.facade.model.plan.PlanAst;
import com.abssqr.plat.common.facade.model.plan.PlanBase;
import com.abssqr.plat.common.facade.result.ApproveBaseEntity;
import com.general.system.common.model.Money;
import java.util.Date;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAllocVO.java, v 0.1 2019-06-26 11:26 AM hanfei Exp $
*/
public class PlanAllocVO extends ApproveBaseEntity {
private static final long serialVersionUID = 6904901111954362632L;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* planName 计划名称.
*/
private String planName;
/**
* totalAmount 总投入资本 发行总规模.
*/
private Money totalAmt;
/**
* beginDate 计划设立日(信托设立日).
*/
private Date beginDate;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/
private Date endDate;
/**
* 募集方式
* PUBLIC
* PRIVATE
* 公募
* 私募.
*/
private FundTypeEnum fundType;
/**
* initDate 初始起算日.
*/
private Date initCalcDate;
/**
* effectDate 计划起息日.
*/
private Date effectDate;
/**
* firstPayDay 首次结算日.
*/
private Date firstClearDate;
/**
* firstPayDay 首次偿付日 首次兑付日.
*/
private Date firstPayDate;
/**
* allocNo 分配编号.
*/
private String allocNo;
/**
* clearDate 结算日.
*/
private Date clearDate;
/**
* payDate 兑付日.
*/
private Date payDate;
/**
* 分配状态
*/
private PlanAllocStatusEnum status;
/**
* allocAmt 本期分配总额.
*/
private Money allocAmt = new Money();
/**
* 累计转让规模 水位中获取
*/
private Money accAmt = new Money();
/**
* 剩余累计规模
*/
private Money remainAmt = new Money();
/**
* 当前可用余额 水位中获取
*/
private Money balAmt = new Money();
/**
* approveStatus 审批状态
* OUTOFDATE("OUTOFDATE", "已过时"),
* PASSED("PASSED", "已通过"),
* FAILED("FAILED", "未通过"),
* PENDING("PENDING", "审批中"),
* UNSUBMIT("UNSUBMIT", "未提交"),
* UNWANTED("UNWANTED", "无审批"),.
*/
private String approveStatus;
/**
* 分配事项
*/
private List<PlanAllocItem> planAllocItemList;
/**
* 是否有提交按钮. Y 有提交, N 无提交
*/
private String submit = AbssqrConstants.NO_FLAG;
/**
* 是否有 试算 按钮. Y 有, N 无
*/
private String calc = AbssqrConstants.NO_FLAG;
/**
* 是否可支付 按钮. Y 有, N 无
*/
private String pay = AbssqrConstants.NO_FLAG;
/**
* 是否为第一期
*/
private boolean first;
public void convert(PlanBase plan, PlanAst planAst , PlanAlloc alloc) {
this.setBalAmt(planAst.containClearAbleBal());
this.setAccAmt(planAst.getAccGrant());
this.setPlanNo(plan.getPlanNo());
this.setPlanName(plan.getPlanName());
this.setTotalAmt(plan.getTotalAmt());
this.setBeginDate(plan.getBeginDate());
this.setEndDate(plan.getEndDate());
this.setFundType(plan.getFundType());
this.setInitCalcDate(plan.getInitCalcDate());
this.setEffectDate(plan.getEffectDate());
this.setFirstClearDate(plan.getFirstClearDate());
this.setFirstPayDate(plan.getFirstPayDate());
this.setAllocNo(alloc.getAllocNo());
this.setClearDate(alloc.getClearDate());
this.setPayDate(alloc.getPayDate());
this.setStatus(alloc.getStatus());
this.setAllocAmt(alloc.getAllocAmt());
this.setPlanAllocItemList(alloc.getPlanAllocItemList());
if (alloc.getApproveStatus()!=null){
this.setApproveStatus(alloc.getApproveStatus().getCode());
}
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public Money getTotalAmt() {
return totalAmt;
}
public void setTotalAmt(Money totalAmt) {
this.totalAmt = totalAmt;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public FundTypeEnum getFundType() {
return fundType;
}
public void setFundType(FundTypeEnum fundType) {
this.fundType = fundType;
}
public Date getInitCalcDate() {
return initCalcDate;
}
public void setInitCalcDate(Date initCalcDate) {
this.initCalcDate = initCalcDate;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
public Date getFirstClearDate() {
return firstClearDate;
}
public void setFirstClearDate(Date firstClearDate) {
this.firstClearDate = firstClearDate;
}
public Date getFirstPayDate() {
return firstPayDate;
}
public void setFirstPayDate(Date firstPayDate) {
this.firstPayDate = firstPayDate;
}
public String getAllocNo() {
return allocNo;
}
public void setAllocNo(String allocNo) {
this.allocNo = allocNo;
}
public Date getClearDate() {
return clearDate;
}
public void setClearDate(Date clearDate) {
this.clearDate = clearDate;
}
public Date getPayDate() {
return payDate;
}
public void setPayDate(Date payDate) {
this.payDate = payDate;
}
public PlanAllocStatusEnum getStatus() {
return status;
}
public void setStatus(PlanAllocStatusEnum status) {
this.status = status;
}
public Money getAllocAmt() {
return allocAmt;
}
public void setAllocAmt(Money allocAmt) {
this.allocAmt = allocAmt;
}
public Money getAccAmt() {
return accAmt;
}
public void setAccAmt(Money accAmt) {
this.accAmt = accAmt;
}
public Money getRemainAmt() {
return remainAmt;
}
public void setRemainAmt(Money remainAmt) {
this.remainAmt = remainAmt;
}
public Money getBalAmt() {
return balAmt;
}
public void setBalAmt(Money balAmt) {
this.balAmt = balAmt;
}
public String getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(String approveStatus) {
this.approveStatus = approveStatus;
}
public List<PlanAllocItem> getPlanAllocItemList() {
return planAllocItemList;
}
public void setPlanAllocItemList(List<PlanAllocItem> planAllocItemList) {
this.planAllocItemList = planAllocItemList;
}
public String getSubmit() {
return submit;
}
public void setSubmit(String submit) {
this.submit = submit;
}
public String getCalc() {
return calc;
}
public void setCalc(String calc) {
this.calc = calc;
}
public String getPay() {
return pay;
}
public void setPay(String pay) {
this.pay = pay;
}
public boolean isFirst() {
return first;
}
public void setFirst(boolean first) {
this.first = first;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.abssqr.plat.common.facade.model.plan.PlanAstPriceRule;
import com.general.system.common.model.BaseEntity;
import java.util.List;
/**
*
* @author xiachenxiang
* @version com.abssqr.plat.common.facade.result.plan: PlanAstRuleVo.java, v 0.1 2019-11-07 5:37 PM xiachenxiang Exp $
*/
public class PlanAstPriceRuleVo extends BaseEntity {
/**
* 计划编号
*/
private String planNo;
/**
* 计划名称
*/
private String planName;
/**
* 定价类型
*/
private String priceType;
/**
* 定价规则列表
*/
private List<PlanAstPriceRule> planAstPriceRuleList;
/**
* 是否有审批中的定价
*/
private Boolean pending = false;
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getPriceType() {
return priceType;
}
public void setPriceType(String priceType) {
this.priceType = priceType;
}
public List<PlanAstPriceRule> getPlanAstPriceRuleList() {
return planAstPriceRuleList;
}
public Boolean getPending() {
return pending;
}
public void setPending(Boolean pending) {
this.pending = pending;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public void setPlanAstPriceRuleList(List<PlanAstPriceRule> planAstPriceRuleList) {
this.planAstPriceRuleList = planAstPriceRuleList;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2020 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.general.system.common.model.BaseEntity;
/**
* 投资结构
* @author xiachenxiang
* @version com.abssqr.plat.common.facade.result.plan: InvestStructureVO.java, v 0.1 2020-02-06 1:37 PM xiachenxiang Exp $
*/
public class PlanInvestStructureVO extends BaseEntity {
/**
* 编号
*/
private String layerNo;
/**
* 层次名称
*/
private String layerName;
public String getLayerNo() {
return layerNo;
}
public void setLayerNo(String layerNo) {
this.layerNo = layerNo;
}
public String getLayerName() {
return layerName;
}
public void setLayerName(String layerName) {
this.layerName = layerName;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.abssqr.plat.common.facade.enums.PlanStatusEnum;
import com.abssqr.plat.common.facade.result.ApproveBaseEntity;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.Money;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.result.plan: PlanListVO.java, v 0.1 2019-05-30 13:22 bangis.wangdf Exp $
*/
public class PlanListVO extends ApproveBaseEntity {
private static final long serialVersionUID = 26790026882080595L;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* planName 计划名称.
*/
private String planName;
/**
* totalAmount 总投入资本 发行总规模.
*/
private Money totalAmt;
/**
* beginDate 计划设立日(信托设立日)计划开始日,计划成立日.
*/
private Date beginDate;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/
private Date endDate;
/**
* 放款终止日
*/
private Date stopPayDate;
/**
* status 计划状态
* PREPARE
* CLEARED
* SUBSIST
* 准备中
* 已清算
* 存续中.
*/
private PlanStatusEnum status;
/**
* planApproveStatus 计划审批状态
* OUTOFDATE
* PASSED
* FAILED
* PENDING
* 已过时
* 已通过
* 已失败
* 审批中.
*/
private ApproveStatusEnum approveStatus;
/**
* asrCurrentAmt 资产当前规模
*/
private Money astCurrentAmt;
/**
* astCurrentBal 资产当前余额
*/
private Money astCurrentBal;
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getEntityCode() {
return this.planNo;
}
public String getPlanName() {
return planName;
}
public String getEntityName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public Money getTotalAmt() {
return totalAmt;
}
public void setTotalAmt(Money totalAmt) {
this.totalAmt = totalAmt;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public PlanStatusEnum getStatus() {
return status;
}
public void setStatus(PlanStatusEnum status) {
this.status = status;
}
public ApproveStatusEnum getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(ApproveStatusEnum approveStatus) {
this.approveStatus = approveStatus;
}
public Money getAstCurrentAmt() {
return astCurrentAmt;
}
public void setAstCurrentAmt(Money astCurrentAmt) {
this.astCurrentAmt = astCurrentAmt;
}
public Money getAstCurrentBal() {
return astCurrentBal;
}
public void setAstCurrentBal(Money astCurrentBal) {
this.astCurrentBal = astCurrentBal;
}
public Date getStopPayDate() {
return stopPayDate;
}
public void setStopPayDate(Date stopPayDate) {
this.stopPayDate = stopPayDate;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan; package com.abssqr.plat.common.facade.result.plan;
import com.abssqr.plat.common.facade.enums.CalcIntrTypeEnum; import com.abssqr.plat.common.facade.enums.CalcIntrTypeEnum;
import com.abssqr.plat.common.facade.enums.FundTypeEnum; import com.abssqr.plat.common.facade.enums.PeriodTypeEnum;
import com.abssqr.plat.common.facade.enums.PlanPayFreqEnum;
import com.abssqr.plat.common.facade.enums.PlanStatusEnum; import com.abssqr.plat.common.facade.enums.PlanStatusEnum;
import com.abssqr.plat.common.facade.enums.PlanTypeEnum; import com.abssqr.plat.common.facade.result.plan.sub.FeeStructureVO;
import com.abssqr.plat.common.facade.enums.YNEnum; import com.abssqr.plat.common.facade.result.plan.sub.InvestStructureVO;
import com.abssqr.plat.common.facade.model.account.Account;
import com.abssqr.plat.common.facade.model.plan.FeeStructure;
import com.abssqr.plat.common.facade.model.plan.InvestStructure;
import com.abssqr.plat.common.facade.model.plan.PlanTransferRule;
import com.abssqr.plat.common.facade.model.prod.LoanProduct;
import com.abssqr.plat.common.facade.result.ApproveBaseEntity;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.Money;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
/** public class PlanVO {
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.result.plan: PlanListVO.java, v 0.1 2019-05-30 13:22 bangis.wangdf Exp $
*/
public class PlanVO extends ApproveBaseEntity {
//计划类型
private PlanTypeEnum planType;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* planName 计划名称.
*/
private String planName;
/**
* totalAmount 总投入资本 发行总规模.
*/
private Money totalAmt;
/**
* beginDate 计划设立日(信托设立日).
*/
private Date beginDate;
/**
* endDate 计划到期日(信托终止日)计划截止日.
*/
private Date endDate;
/**
* 募集方式
* PUBLIC
* PRIVATE
* 公募
* 私募.
*/
private FundTypeEnum fundType;
/** /**
* sponsorOrgCode 发起机构-都是不带账号. * totalAmt 发行规模.
*/ */
private String sponsorOrgCode; private Long totalAmt;
/** /**
* managerOrgCode 计划代理机构 管理机构-都是不带账号. 改名字 planMgrOrgCode * allocPeriod 兑付周期.
*/ */
private String planMgrOrgCode; private Long allocPeriod;
/** /**
* sponsorOrgCode 发起机构-都是不带账号. * planNo 产品编号.
*/ */
private String sponsorOrgName; private String planNo;
/**
* managerOrgCode 计划代理机构 管理机构-都是不带账号. 改名字 planMgrOrgCode
*/
private String planMgrOrgName;
/**
* initDate 初始起算日.
*/
private Date initCalcDate;
/**
* effectDate 计划起息日.
*/
private Date effectDate;
/**
* firstPayDay 首次结算日.
*/
private Date firstClearDate;
/**
* firstPayDay 首次偿付日 首次兑付日.
*/
private Date firstPayDate;
/** /**
* 计划状态 * status 产品状态(设计中,已发行,已清算).
* PREPARE
* CLEARED
* SUBSIST
* 准备中
* 已清算
* 存续中.
*/ */
private PlanStatusEnum status; private PlanStatusEnum status;
/** /**
* planApproveStatus 计划审批状态 * planName 产品简称.
* OUTOFDATE
* PASSED
* FAILED
* PENDING
* 已过时
* 已通过
* 已失败
* 审批中.
*/ */
private ApproveStatusEnum approveStatus; private String planName;
/** /**
* 兑付频率 * tradePlace 交易场所.
* M
* Q
* 半年
* Y
* Month
* Season
* HalfYear
* Year
*/ */
private PlanPayFreqEnum payFreq; private String tradePlace;
/** /**
* 计息方式 * calcIntrType 计息方式/计息基准.
* ACT/360
* ACT/365
*/ */
private CalcIntrTypeEnum calcIntrType; private CalcIntrTypeEnum calcIntrType;
/** /**
* 增值税率 * planFullName 产品全称.
*/ */
private BigDecimal vatRate; private String planFullName;
/** /**
* 最近更新日期 * allocPeriodMethod 兑付周期类型.
*/ */
private Date lastUpdateDate; private PeriodTypeEnum allocPeriodMethod;
/** /**
* gmtCreator 创建人. * endDate 法定到期日.
*/ */
private String gmtCreator; private Date endDate;
/** /**
* gmtModifier 修改人. * beginDate 产品成立日.
*/ */
private String gmtModifier; private Date beginDate;
/** /**
* passed 曾经通过过 * firstPayDate 首次转付日.
*/ */
private Boolean passed; private Date firstPayDate;
/** /**
* 账户信息 * firstCalcDate 首次计算日.
*/ */
private List<Account> accounts; private Date firstCalcDate;
/** /**
* 投资结构 * firstAllocDate 首次分配日.
*/ */
private List<InvestStructure> investStructureList; private Date firstAllocDate;
/** /**
* 费用结构 费用清单 * firstReportDate 首次报告日.
*/ */
private List<FeeStructure> feeStructureList; private Date firstReportDate;
/** /**
* 金融服务费率 * firstSettleDate 首次结息日.
*/ */
private BigDecimal finSerFeeRate; private Date firstSettleDate;
public PlanTypeEnum getPlanType() { private FeeStructureVO feeStructureVO;
return planType;
}
public void setPlanType(PlanTypeEnum planType) { private InvestStructureVO investStructureVO;
this.planType = planType;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) { public Long getTotalAmt() {
this.planNo = planNo;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public Money getTotalAmt() {
return totalAmt; return totalAmt;
} }
public void setTotalAmt(Money totalAmt) { public void setTotalAmt(Long totalAmt) {
this.totalAmt = totalAmt; this.totalAmt = totalAmt;
} }
public Date getBeginDate() { public Long getAllocPeriod() {
return beginDate; return allocPeriod;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public FundTypeEnum getFundType() {
return fundType;
}
public void setFundType(FundTypeEnum fundType) {
this.fundType = fundType;
}
public String getSponsorOrgCode() {
return sponsorOrgCode;
} }
public void setSponsorOrgCode(String sponsorOrgCode) { public void setAllocPeriod(Long allocPeriod) {
this.sponsorOrgCode = sponsorOrgCode; this.allocPeriod = allocPeriod;
} }
public String getPlanMgrOrgCode() { public String getPlanNo() {
return planMgrOrgCode; return planNo;
}
public void setPlanMgrOrgCode(String planMgrOrgCode) {
this.planMgrOrgCode = planMgrOrgCode;
}
public String getSponsorOrgName() {
return sponsorOrgName;
}
public void setSponsorOrgName(String sponsorOrgName) {
this.sponsorOrgName = sponsorOrgName;
}
public String getPlanMgrOrgName() {
return planMgrOrgName;
}
public void setPlanMgrOrgName(String planMgrOrgName) {
this.planMgrOrgName = planMgrOrgName;
}
public Date getInitCalcDate() {
return initCalcDate;
}
public void setInitCalcDate(Date initCalcDate) {
this.initCalcDate = initCalcDate;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
public Date getFirstClearDate() {
return firstClearDate;
}
public void setFirstClearDate(Date firstClearDate) {
this.firstClearDate = firstClearDate;
}
public Date getFirstPayDate() {
return firstPayDate;
} }
public void setFirstPayDate(Date firstPayDate) { public void setPlanNo(String planNo) {
this.firstPayDate = firstPayDate; this.planNo = planNo;
} }
public PlanStatusEnum getStatus() { public PlanStatusEnum getStatus() {
...@@ -296,20 +111,20 @@ public class PlanVO extends ApproveBaseEntity { ...@@ -296,20 +111,20 @@ public class PlanVO extends ApproveBaseEntity {
this.status = status; this.status = status;
} }
public ApproveStatusEnum getApproveStatus() { public String getPlanName() {
return approveStatus; return planName;
} }
public void setApproveStatus(ApproveStatusEnum approveStatus) { public void setPlanName(String planName) {
this.approveStatus = approveStatus; this.planName = planName;
} }
public PlanPayFreqEnum getPayFreq() { public String getTradePlace() {
return payFreq; return tradePlace;
} }
public void setPayFreq(PlanPayFreqEnum payFreq) { public void setTradePlace(String tradePlace) {
this.payFreq = payFreq; this.tradePlace = tradePlace;
} }
public CalcIntrTypeEnum getCalcIntrType() { public CalcIntrTypeEnum getCalcIntrType() {
...@@ -320,147 +135,91 @@ public class PlanVO extends ApproveBaseEntity { ...@@ -320,147 +135,91 @@ public class PlanVO extends ApproveBaseEntity {
this.calcIntrType = calcIntrType; this.calcIntrType = calcIntrType;
} }
public BigDecimal getVatRate() { public String getPlanFullName() {
return vatRate; return planFullName;
}
public void setVatRate(BigDecimal vatRate) {
this.vatRate = vatRate;
} }
public Date getLastUpdateDate() { public void setPlanFullName(String planFullName) {
return lastUpdateDate; this.planFullName = planFullName;
} }
public void setLastUpdateDate(Date lastUpdateDate) { public PeriodTypeEnum getAllocPeriodMethod() {
this.lastUpdateDate = lastUpdateDate; return allocPeriodMethod;
} }
public String getGmtCreator() { public void setAllocPeriodMethod(PeriodTypeEnum allocPeriodMethod) {
return gmtCreator; this.allocPeriodMethod = allocPeriodMethod;
} }
public void setGmtCreator(String gmtCreator) { public Date getEndDate() {
this.gmtCreator = gmtCreator; return endDate;
}
public String getGmtModifier() {
return gmtModifier;
}
public void setGmtModifier(String gmtModifier) {
this.gmtModifier = gmtModifier;
}
public Boolean getPassed() {
return passed;
}
public void setPassed(Boolean passed) {
this.passed = passed;
}
public List<Account> getAccounts() {
return accounts;
}
public void setAccounts(List<Account> accounts) {
this.accounts = accounts;
} }
public List<InvestStructure> getInvestStructureList() { public void setEndDate(Date endDate) {
return investStructureList; this.endDate = endDate;
} }
public void setInvestStructureList( public Date getBeginDate() {
List<InvestStructure> investStructureList) { return beginDate;
this.investStructureList = investStructureList;
} }
public List<FeeStructure> getFeeStructureList() { public void setBeginDate(Date beginDate) {
return feeStructureList; this.beginDate = beginDate;
} }
public void setFeeStructureList(List<FeeStructure> feeStructureList) { public Date getFirstPayDate() {
this.feeStructureList = feeStructureList; return firstPayDate;
} }
public BigDecimal getFinSerFeeRate() { public void setFirstPayDate(Date firstPayDate) {
return finSerFeeRate; this.firstPayDate = firstPayDate;
} }
public void setFinSerFeeRate(BigDecimal finSerFeeRate) { public Date getFirstCalcDate() {
this.finSerFeeRate = finSerFeeRate; return firstCalcDate;
} }
//=========计划 SPV======start
/**
* 是否回收转付
*/
private YNEnum needAlloc = YNEnum.N;
/**
* 放款终止日
*/
private Date stopPayDate;
/**
* managerOrgCode 服务机构.
*/
private String managerOrgCode;
/**
* 产品
*/
private List<LoanProduct> products;
public YNEnum getNeedAlloc() { public void setFirstCalcDate(Date firstCalcDate) {
return needAlloc; this.firstCalcDate = firstCalcDate;
} }
public void setNeedAlloc(YNEnum needAlloc) { public Date getFirstAllocDate() {
this.needAlloc = needAlloc; return firstAllocDate;
} }
public Date getStopPayDate() { public void setFirstAllocDate(Date firstAllocDate) {
return stopPayDate; this.firstAllocDate = firstAllocDate;
} }
public void setStopPayDate(Date stopPayDate) { public Date getFirstReportDate() {
this.stopPayDate = stopPayDate; return firstReportDate;
} }
public String getManagerOrgCode() { public void setFirstReportDate(Date firstReportDate) {
return managerOrgCode; this.firstReportDate = firstReportDate;
} }
public void setManagerOrgCode(String managerOrgCode) { public Date getFirstSettleDate() {
this.managerOrgCode = managerOrgCode; return firstSettleDate;
} }
public List<LoanProduct> getProducts() { public void setFirstSettleDate(Date firstSettleDate) {
return products; this.firstSettleDate = firstSettleDate;
} }
public void setProducts(List<LoanProduct> products) { public FeeStructureVO getFeeStructureVO() {
this.products = products; return feeStructureVO;
} }
public List<Account> getAccountList() { public void setFeeStructureVO(FeeStructureVO feeStructureVO) {
return getAccounts(); this.feeStructureVO = feeStructureVO;
} }
//=========计划 SPV======end public InvestStructureVO getInvestStructureVO() {
return investStructureVO;
//=========计划 PLAN======start
/**
* 转让规则
*/
private PlanTransferRule planTransferRule;
public PlanTransferRule getPlanTransferRule() {
return planTransferRule;
} }
public void setPlanTransferRule(PlanTransferRule planTransferRule) { public void setInvestStructureVO(InvestStructureVO investStructureVO) {
this.planTransferRule = planTransferRule; this.investStructureVO = investStructureVO;
} }
//=========计划 PLAN======end
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.facade.result.plan;
import com.general.system.common.model.BaseEntity;
import java.io.Serializable;
/**
*
* @author bangis.wangdf
* @version com.abssqr.plat.common.facade.result.plan: TitleNameVO.java, v 0.1 2019-06-04 14:40 bangis.wangdf Exp $
*/
public class TitleNameVO extends BaseEntity implements Serializable {
private static final long serialVersionUID = -6250073564409347656L;
/**
* titleNo 科目编号.
*/
private String titleNo;
/**
* titleNo 科目编号.
*/
private String titleName;
public String getTitleNo() {
return titleNo;
}
public void setTitleNo(String titleNo) {
this.titleNo = titleNo;
}
public String getTitleName() {
return titleName;
}
public void setTitleName(String titleName) {
this.titleName = titleName;
}
}
package com.abssqr.plat.common.facade.result.plan.sub;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import java.math.BigDecimal;
import java.util.Date;
public class FeeStructureVO {
/**
* order .
*/
private Long order;
/**
* fixedFeeAmt 固定费用.
*/
private Long fixedFeeAmt;
/**
* payLimitAmt 支付上限.
*/
private Long payLimitAmt;
/**
* feeNo 费用编号.
*/
private String feeNo;
/**
* planNo 产品编号.
*/
private String planNo;
/**
* feeCalcType 计费方式.
*/
private CalcTypeEnum feeCalcType;
/**
* feeScaleType 费用基准.
*/
private FeeScaleTypeEnum feeScaleType;
/**
* feeCalcDefaultDate 默认计费时间.
*/
private Date feeCalcDefaultDate;
/**
* feeRate 费率.
*/
private String feeRate;
public Long getOrder() {
return order;
}
public void setOrder(Long order) {
this.order = order;
}
public Long getFixedFeeAmt() {
return fixedFeeAmt;
}
public void setFixedFeeAmt(Long fixedFeeAmt) {
this.fixedFeeAmt = fixedFeeAmt;
}
public Long getPayLimitAmt() {
return payLimitAmt;
}
public void setPayLimitAmt(Long payLimitAmt) {
this.payLimitAmt = payLimitAmt;
}
public String getFeeNo() {
return feeNo;
}
public void setFeeNo(String feeNo) {
this.feeNo = feeNo;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public CalcTypeEnum getFeeCalcType() {
return feeCalcType;
}
public void setFeeCalcType(CalcTypeEnum feeCalcType) {
this.feeCalcType = feeCalcType;
}
public FeeScaleTypeEnum getFeeScaleType() {
return feeScaleType;
}
public void setFeeScaleType(FeeScaleTypeEnum feeScaleType) {
this.feeScaleType = feeScaleType;
}
public Date getFeeCalcDefaultDate() {
return feeCalcDefaultDate;
}
public void setFeeCalcDefaultDate(Date feeCalcDefaultDate) {
this.feeCalcDefaultDate = feeCalcDefaultDate;
}
public String getFeeRate() {
return feeRate;
}
public void setFeeRate(String feeRate) {
this.feeRate = feeRate;
}
}
package com.abssqr.plat.common.facade.result.plan.sub;
import com.abssqr.plat.common.facade.enums.AllocMethodEnum;
import com.abssqr.plat.common.facade.enums.IntrTypeEnum;
import com.abssqr.plat.common.facade.enums.LayerTypeEnum;
import com.abssqr.plat.common.facade.enums.RepayMethodEnum;
import java.math.BigDecimal;
import java.util.Date;
public class InvestStructureVO {
/**
* order 排序.
*/
private Long order;
/**
* layerAmt 金额/层级规模.
*/
private Long layerAmt;
/**
* grade 评级.
*/
private String grade;
/**
* planNo 产品编号.
*/
private String planNo;
/**
* layerNo 层级编号.
*/
private String layerNo;
/**
* intrType 利率类型.
*/
private IntrTypeEnum intrType;
/**
* layerName 层级名称.
*/
private String layerName;
/**
* layerType 分层类型.
*/
private LayerTypeEnum layerType;
/**
* payMethod 偿付方式.
*/
private AllocMethodEnum payMethod;
/**
* endDate 到期日.
*/
private Date endDate;
/**
* effectDate 起息日.
*/
private Date effectDate;
/**
* expectEndDate 预计到期日.
*/
private Date expectEndDate;
/**
* layerIntr 利率.
*/
private String layerIntr;
public Long getOrder() {
return order;
}
public void setOrder(Long order) {
this.order = order;
}
public Long getLayerAmt() {
return layerAmt;
}
public void setLayerAmt(Long layerAmt) {
this.layerAmt = layerAmt;
}
public String getGrade() {
return grade;
}
public void setGrade(String grade) {
this.grade = grade;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getLayerNo() {
return layerNo;
}
public void setLayerNo(String layerNo) {
this.layerNo = layerNo;
}
public IntrTypeEnum getIntrType() {
return intrType;
}
public void setIntrType(IntrTypeEnum intrType) {
this.intrType = intrType;
}
public String getLayerName() {
return layerName;
}
public void setLayerName(String layerName) {
this.layerName = layerName;
}
public LayerTypeEnum getLayerType() {
return layerType;
}
public void setLayerType(LayerTypeEnum layerType) {
this.layerType = layerType;
}
public AllocMethodEnum getPayMethod() {
return payMethod;
}
public void setPayMethod(AllocMethodEnum payMethod) {
this.payMethod = payMethod;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public Date getEffectDate() {
return effectDate;
}
public void setEffectDate(Date effectDate) {
this.effectDate = effectDate;
}
public Date getExpectEndDate() {
return expectEndDate;
}
public void setExpectEndDate(Date expectEndDate) {
this.expectEndDate = expectEndDate;
}
public String getLayerIntr() {
return layerIntr;
}
public void setLayerIntr(String layerIntr) {
this.layerIntr = layerIntr;
}
}
...@@ -9,13 +9,36 @@ import com.abssqr.plat.common.facade.result.astPool.AstPoolVO; ...@@ -9,13 +9,36 @@ import com.abssqr.plat.common.facade.result.astPool.AstPoolVO;
import java.util.List; import java.util.List;
/**
* 资产池服务
*/
public interface AstPoolService { public interface AstPoolService {
/**
* 新增资产池
* @param astPoolOprParam
* @return
*/
int add(AstPoolOprParam astPoolOprParam); int add(AstPoolOprParam astPoolOprParam);
/**
* 分页查询资产池
* @param astPoolPageQryParam
* @return
*/
BasePage<AstPoolVO> page(AstPoolPageQryParam astPoolPageQryParam); BasePage<AstPoolVO> page(AstPoolPageQryParam astPoolPageQryParam);
/**
* 插叙资产池详情
* @param astPoolNo
* @return
*/
AstPoolVO get(String astPoolNo); AstPoolVO get(String astPoolNo);
/**
* 查询资产列表
* @param astPageQryParam
* @return
*/
BasePage<AstPoolLoanVO> astList(AstPageQryParam astPageQryParam); BasePage<AstPoolLoanVO> astList(AstPageQryParam astPageQryParam);
} }
...@@ -8,5 +8,10 @@ import javax.servlet.http.HttpServletResponse; ...@@ -8,5 +8,10 @@ import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream; import java.io.OutputStream;
public interface AstService { public interface AstService {
/**
* 下载资产包下的资产列表
* @param astDownLoadParam
* @param response
*/
void downLoadAstFile(AstDownLoadParam astDownLoadParam, HttpServletResponse response); void downLoadAstFile(AstDownLoadParam astDownLoadParam, HttpServletResponse response);
} }
/**
* abssqr.comInc.
* Copyright(c)2019-2019AllRightsReserved.
*/
package com.abssqr.plat.common.model.convertor; package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanFeeStructureDO;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum; import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum; import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeTimeTypeEnum;
import com.abssqr.plat.common.facade.enums.FinSerFeeTypeEnum;
import com.abssqr.plat.common.facade.model.plan.FeeStructure; import com.abssqr.plat.common.facade.model.plan.FeeStructure;
import com.abssqr.plat.common.facade.param.plan.sub.FeeStructureParam; import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.facade.utils.CalcUtil; import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.Money;
import org.apache.commons.collections.CollectionUtils;
import java.util.ArrayList; import java.math.BigDecimal;
import java.util.List;
/**
*
* @author yangcheng
* @version FeeStructureConvert.java, v0.12019-08-2716:52 yangchengExp$
*/
public class FeeStructureConvert { public class FeeStructureConvert {
public static FeeStructure convert2Entity(PlanFeeStructureDO var){
/** FeeStructure feeStructure=new FeeStructure();
* 费用模型转换 feeStructure.setFeeCalcDefaultDate(var.getFeeCalcDefaultDate());
* @param list feeStructure.setPlanNo(var.getPlanNo());
* @return feeStructure.setPayLimitAmt(var.getPayLimitAmt());
*/ feeStructure.setOrder(var.getOrder());
public static List<FeeStructure> convert2FeeStructureList(List<FeeStructureParam> list) { feeStructure.setFixedFeeAmt(var.getFixedFeeAmt());
List<FeeStructure> feeStructureList = new ArrayList(); feeStructure.setFeeScaleType(FeeScaleTypeEnum.getByCode(var.getFeeScaleType()));
if (CollectionUtils.isEmpty(list)) { feeStructure.setFeeRate(var.getFeeRate());
return feeStructureList; feeStructure.setFeeNo(SequenceUtil.genId(IdTypeEnum.FEE));
} feeStructure.setFeeCalcType(CalcTypeEnum.getByCode(var.getFeeCalcType()));
for (FeeStructureParam feeStructureParam : list) { feeStructure.setFeeName(var.getFeeName());
FeeStructure feeStructure = new FeeStructure(); return feeStructure;
//fixedFeeAmt 固定费用
if (feeStructureParam.getFixedFeeAmt() != null) {
feeStructure.setFixedFeeAmt(new Money(feeStructureParam.getFixedFeeAmt()).multiply(10000));
}
//payLimitAmt 支付上限
if (feeStructureParam.getPayLimitAmt() != null) {
feeStructure.setPayLimitAmt(new Money(feeStructureParam.getPayLimitAmt()).multiply(10000));
}
//feeNo 费用编号
feeStructure.setFeeNo(feeStructureParam.getFeeNo());
//feeName 费用名称
feeStructure.setFeeName(feeStructureParam.getFeeName());
//feeCalcType 计算方式
feeStructure.setFeeCalcType(CalcTypeEnum.getByCode(feeStructureParam.getFeeCalcType()));
//feeTimeType 计费时间类型
feeStructure.setFeeTimeType(FeeTimeTypeEnum.getByCode(feeStructureParam.getFeeTimeType()));
//feeScaleType 费率基准
feeStructure.setFeeScaleType(FeeScaleTypeEnum.getByCode(feeStructureParam.getFeeScaleType()));
//calcByDay 按日计费
feeStructure.setCalcByDay(feeStructureParam.isCalcByDay());
//feeRate 费率
feeStructure.setFeeRate(CalcUtil.calcRealRate(feeStructureParam.getFeeRate()));
feeStructure.setFinSerFeeType(FinSerFeeTypeEnum.getByCode(feeStructureParam.getFinSerFeeType()));
feeStructureList.add(feeStructure);
} }
return feeStructureList; public static PlanFeeStructureDO convert2DO(FeeStructure var){
PlanFeeStructureDO result=new PlanFeeStructureDO();
result.setFeeCalcDefaultDate(var.getFeeCalcDefaultDate());
result.setPlanNo(var.getPlanNo());
result.setPayLimitAmt(var.getPayLimitAmt());
result.setOrder(var.getOrder());
result.setFixedFeeAmt(var.getFixedFeeAmt());
result.setFeeScaleType(var.getFeeScaleType().getCode());
result.setFeeRate(var.getFeeRate());
result.setFeeNo(SequenceUtil.genId(IdTypeEnum.FEE));
result.setFeeCalcType(var.getFeeCalcType().getCode());
result.setFeeName(var.getFeeName());
return result;
} }
} }
/**
* abssqr.comInc.
* Copyright(c)2019-2019AllRightsReserved.
*/
package com.abssqr.plat.common.model.convertor; package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanInvestStructureDO;
import com.abssqr.plat.common.facade.enums.AllocMethodEnum;
import com.abssqr.plat.common.facade.enums.IntrTypeEnum; import com.abssqr.plat.common.facade.enums.IntrTypeEnum;
import com.abssqr.plat.common.facade.enums.LayerTypeEnu; import com.abssqr.plat.common.facade.enums.LayerTypeEnum;
import com.abssqr.plat.common.facade.model.plan.InvestStructure; import com.abssqr.plat.common.facade.model.plan.InvestStructure;
import com.abssqr.plat.common.facade.param.plan.sub.InvestStructureParam;
import com.abssqr.plat.common.facade.utils.CalcUtil;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.Money;
import com.general.system.tool.util.ToolUtil;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
/**
*投资结构转换器
*
* @author yangcheng
* @version InvestStructureConvert.java, v0.12019-08-2716:50 yangchengExp$
*/
public class InvestStructureConvert { public class InvestStructureConvert {
public InvestStructure convert2Entity(PlanInvestStructureDO var){
InvestStructure investStructure=new InvestStructure();
investStructure.setEffectDate(var.getEffectDate());
investStructure.setEndDate(var.getEndDate());
investStructure.setExpectEndDate(var.getExpectEndDate());
investStructure.setGrade(var.getGrade());
investStructure.setIntrType(IntrTypeEnum.getByCode(var.getIntrType()));
investStructure.setPlanNo(var.getPlanNo());
investStructure.setAllocMethod(AllocMethodEnum.getByCode(var.getAllocMethod()));
investStructure.setOrder(var.getOrder());
investStructure.setLayerType(LayerTypeEnum.getByCode(var.getLayerType()));
investStructure.setLayerNo(var.getLayerNo());
investStructure.setLayerName(var.getLayerName());
investStructure.setLayerIntr(var.getLayerIntr());
investStructure.setLayerAmt(var.getLayerAmt());
return investStructure;
/**
* 投资结构模型转换
* @param param
* @return
*/
public static List<InvestStructure> convert2InvestStructureList(List<InvestStructureParam> param) {
List<InvestStructure> investStructureList = new ArrayList();
if (CollectionUtils.isEmpty(param)) {
return investStructureList;
}
for (InvestStructureParam nvestStructureParam : param) {
InvestStructure result = new InvestStructure();
//layerAmt 层级规模
result.setLayerAmt(new Money(nvestStructureParam.getLayerAmt()).multiply(10000));
//layerNo 编号
result.setLayerNo(nvestStructureParam.getLayerNo());
if (StringUtils.isBlank(result.getLayerNo())) {
result.setLayerNo(SequenceUtil.genId(IdTypeEnum.INVESTSTRUCTURE));
}
//intrType 利率类型
if (ToolUtil.isEmpty(nvestStructureParam.getLayerIntr()) ||
BigDecimal.ZERO.compareTo(nvestStructureParam.getLayerIntr()) == 0) {
nvestStructureParam.setIntrType(IntrTypeEnum.NOTICKET.getCode());
}
result.setIntrType(IntrTypeEnum.getByCode(nvestStructureParam.getIntrType()));
//layerName 层次名称
result.setLayerName(nvestStructureParam.getLayerName());
//layerType 层级类型
result.setLayerType(LayerTypeEnu.getByCode(nvestStructureParam.getLayerType()));
//layerEndDate 到期日
result.setLayerEndDate(nvestStructureParam.getLayerEndDate());
//layerIntr 层级利率
result.setLayerIntr(CalcUtil.calcRealRate(nvestStructureParam.getLayerIntr()));
// 起息日
result.setEffectDate(nvestStructureParam.getEffectDate());
result.setAppend(nvestStructureParam.getAppend());
investStructureList.add(result);
} }
return investStructureList;
public PlanInvestStructureDO convert2DO(InvestStructure var){
PlanInvestStructureDO result=new PlanInvestStructureDO();
result.setEffectDate(var.getEffectDate());
result.setEndDate(var.getEndDate());
result.setExpectEndDate(var.getExpectEndDate());
result.setGrade(var.getGrade());
result.setIntrType(var.getIntrType().getCode());
result.setPlanNo(var.getPlanNo());
result.setAllocMethod(var.getAllocMethod().getCode());
result.setOrder(var.getOrder());
result.setLayerType(var.getLayerType().getCode());
result.setLayerNo(var.getLayerNo());
result.setLayerName(var.getLayerName());
result.setLayerIntr(var.getLayerIntr());
result.setLayerAmt(var.getLayerAmt());
return result;
} }
} }
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAcctTitleDO;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
public class PlanAcctTitleConvert {
public PlanAcctTitle convert2Entity(PlanAcctTitleDO var){
PlanAcctTitle result=new PlanAcctTitle();
result.setPlanNo(var.getPlanNo());
result.setRefNo(var.getRefNo());
result.setTitleName(var.getTitleName());
result.setTitleNo(var.getTitleNo());
result.setTitleType(TitleTypeEnum.getByCode(var.getTitleType()));
return result;
}
public static PlanAcctTitleDO convert2DO(PlanAcctTitle var){
PlanAcctTitleDO result=new PlanAcctTitleDO();
result.setPlanNo(var.getPlanNo());
result.setRefNo(var.getRefNo());
result.setTitleName(var.getTitleName());
result.setTitleNo(var.getTitleNo());
result.setTitleType(var.getTitleType().getCode());
return result;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAcctTitleDO;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import com.abssqr.plat.common.facade.enums.FinSerFeeTypeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.convertor: PlanAcctTitleConvertor.java, v 0.1 2019-05-28 15:11 zhenxuan.luo Exp $
*/
public class PlanAcctTitleConvertor {
public static PlanAcctTitle convert2Domain(PlanAcctTitleDO var) {
if (var == null) {
return null;
}
PlanAcctTitle res = new PlanAcctTitle();
res.setPlanNo(var.getPlanNo());
res.setTitleNo(var.getTitleNo());
res.setTitleName(var.getTitleName());
res.setRefNo(var.getRefNo());
res.setTitleType(TitleTypeEnum.getByCode(var.getTitleType()));
res.setBal(var.getBal());
res.setRecpAmt(var.getRecpAmt());
res.setPayAmt(var.getPayAmt());
res.setRecpVATax(var.getRecpVatax());
res.setPayVATax(var.getPayVatax());
res.setLastSettleDate(var.getLastSettleDate());
res.setLastPayDate(var.getLastPayDate());
res.setScaleType(FeeScaleTypeEnum.getByCode(var.getScaleType()));
res.setInitAmt(var.getInitAmt());
res.setRate(var.getRate());
res.setCalcType(CalcTypeEnum.getByCode(var.getCalcType()));
res.setUpperLimit(var.getUpperLimit());
res.setEntryAmt(var.getEntryAmt());
res.setTotalAmt(var.getTotalAmt());
res.setFinSerFeeType(FinSerFeeTypeEnum.getByCode(var.getFinSerFeeType()));
res.setEffectDate(var.getEffectDate());
return res;
}
public static PlanAcctTitleDO convert2DO(PlanAcctTitle var) {
if (var == null) {
return null;
}
PlanAcctTitleDO res = new PlanAcctTitleDO();
res.setScaleType((var.getScaleType() == null)?"":var.getScaleType().getCode());
res.setPlanNo(var.getPlanNo());
res.setTitleNo(var.getTitleNo());
res.setCalcType(var.getCalcType().getCode());
res.setTitleName(var.getTitleName());
res.setRefNo(var.getRefNo());
res.setTitleType(var.getTitleType().getCode());
res.setInitAmt(var.getInitAmt());
res.setLastPayDate(var.getLastPayDate());
res.setLastSettleDate(var.getLastSettleDate());
res.setRate(var.getRate());
res.setBal(var.getBal());
res.setPayAmt(var.getPayAmt());
res.setRecpAmt(var.getRecpAmt());
res.setPayVatax(var.getPayVATax());
res.setRecpVatax(var.getRecpVATax());
res.setUpperLimit(var.getUpperLimit());
res.setEntryAmt(var.getEntryAmt());
res.setTotalAmt(var.getTotalAmt());
if(var.getFinSerFeeType()!=null) {
res.setFinSerFeeType(var.getFinSerFeeType().getCode());
}
res.setEffectDate(var.getEffectDate());
return res;
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import cn.hutool.core.collection.CollectionUtil;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAcctTitleLogDO;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanAcctTitleLog;
import java.util.List;
import java.util.stream.Collectors;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.convertor: PlanAcctTitleConvertor.java, v 0.1 2019-05-28 15:11 zhenxuan.luo Exp $
*/
public class PlanAcctTitleLogConvertor {
public static List<PlanAcctTitleLog> convert2Domains(List<PlanAcctTitleLogDO> dos) {
if (CollectionUtil.isEmpty(dos)) {
return CollectionUtil.newArrayList();
}
return dos.stream().map(one -> convert2Domain(one)).collect(Collectors.toList());
}
public static PlanAcctTitleLog convert2Domain(PlanAcctTitleLogDO var) {
if (var == null) {
return null;
}
PlanAcctTitleLog res = new PlanAcctTitleLog();
res.setRefNo(var.getRefNo());
res.setPlanNo(var.getPlanNo());
res.setTitleNo(var.getTitleNo());
res.setTitleName(var.getTitleName());
res.setTitleType(TitleTypeEnum.getByCode(var.getTitleType()));
// res.setCalcType(CalcTypeEnum.getByCode(var.getCalcType()));
res.setBfBal(var.getBfBal());
res.setAcctAmt(var.getAcctAmt());
res.setAfBal(var.getAfBal());
res.setvTaxAmt(var.getVtaxAmt());
res.setBizNo(var.getBizNo());
res.setSeqNo(var.getSeqNo());
res.setAccountDate(var.getAccountDate());
res.setEventCode(EventCodeEnum.getByCode(var.getAcctEvent()));
return res;
}
public static PlanAcctTitleLogDO convert2DO(PlanAcctTitleLog var) {
if (var == null) {
return null;
}
PlanAcctTitleLogDO res = new PlanAcctTitleLogDO();
res.setRefNo(var.getRefNo());
res.setPlanNo(var.getPlanNo());
res.setTitleNo(var.getTitleNo());
res.setTitleName(var.getTitleName());
res.setTitleType(var.getTitleType().getCode());
// res.setCalcType(var.getCalcType() != null ? var.getCalcType().getCode() : null);
res.setBfBal(var.getBfBal());
res.setAcctAmt(var.getAcctAmt());
res.setAfBal(var.getAfBal());
res.setVtaxAmt(var.getvTaxAmt());
res.setBizNo(var.getBizNo());
res.setSeqNo(var.getSeqNo());
res.setAccountDate(var.getAccountDate());
res.setAcctEvent(var.getEventCode().getCode());
return res;
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor; package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanAllocItemResultMap;
import com.abssqr.plat.common.facade.enums.PlanAllocStatusEnum;
import com.abssqr.plat.common.facade.enums.PlanTypeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
import com.abssqr.plat.common.facade.model.plan.PlanAlloc; import com.abssqr.plat.common.facade.model.plan.PlanAlloc;
import com.abssqr.plat.common.facade.model.plan.PlanAllocItem;
import com.abssqr.plat.common.facade.param.plan.alloc.PlanAllocEditParam;
import com.abssqr.plat.common.facade.param.plan.alloc.sub.PlanAllocItemParam;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.Money;
import com.general.system.common.util.VarChecker;
import com.general.system.tool.util.ToolUtil;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.convertor: PlanAllocConvert.java, v 0.1 2019-06-03 18:27 bangis.wangdf Exp $
*/
public class PlanAllocConvert { public class PlanAllocConvert {
public static List<PlanAlloc> convertDomains(List<PlanAllocDO> planAllocDOS) { public static PlanAlloc convert2Entity(PlanAllocDO var){
if (CollectionUtils.isEmpty(planAllocDOS)) { PlanAlloc result=new PlanAlloc();
return null; result.setPlanNo(var.getPlanNo());
} result.setAllocDate(var.getAllocDate());
return planAllocDOS.stream().map(planAllocDO -> convertDomain(planAllocDO)).collect(Collectors.toList()); result.setAllocNo(var.getAllocNo());
} result.setCalcDate(var.getCalcDate());
result.setPayDate(var.getPayDate());
public static PlanAlloc convertDomain(PlanAllocDO param) { result.setReportDate(var.getReportDate());
if (param==null){ result.setSettleDate(var.getSettleDate());
return null;
}
PlanAlloc result = new PlanAlloc();
//allocAmt 本期分配总额
result.setAllocAmt(Money.createWithCentNull(param.getAllocAmt()));
//planNo 计划编号
result.setPlanNo(param.getPlanNo());
//allocNo 分配编号
result.setAllocNo(param.getAllocNo());
//payDate 兑付日
result.setPayDate(param.getPayDate());
//clearDate 结算日
result.setClearDate(param.getClearDate());
PlanTypeEnum entityTypeEnum = StringUtils.isNotBlank(param.getPlanType())? PlanTypeEnum.getByCode(param.getPlanType()): PlanTypeEnum.PLAN;
result.setPlanType(entityTypeEnum);
//ApproveStatus 审批状态
result.setApproveStatus(ApproveStatusEnum.getEnum(param.getApproveStatus()));
//分配状态
result.setStatus(PlanAllocStatusEnum.getByCode(param.getStatus()));
return result;
}
public static PlanAllocItem convertItemDomain(PlanAllocItemResultMap param) {
PlanAllocItem result = new PlanAllocItem();
//trialAmt 试算金额
// result.setTrialAmt(Money.createWithCentNull(param.getTrialAmt()));
//confirmAmt 确认金额
result.setConfirmAmt(Money.createWithCentNull(param.getConfirmAmt()));
//trialTaxAmt 试算增值税
// result.setTrialTaxAmt(Money.createWithCentNull(param.getTrialTaxAmt()));
//confirmTaxAmt 确认增值税
result.setConfirmTaxAmt(Money.createWithCentNull(param.getConfirmTaxAmt()));
//itemNo 事项编号
result.setItemNo(param.getItemNo());
VarChecker.checkNotEmpty(param.getTitleType(),"[{0}]科目未初始化",param.getPlanNo());
TitleTypeEnum titleTypeEnum = TitleTypeEnum.getByCode(param.getTitleType());
result.setAllocType(titleTypeEnum.getAllocType());
//titleNo 科目编号
result.setTitleNo(param.getTitleNo());
result.setTitleName(param.getTitleName());
//tax 是否计税
result.setTax(param.getTax());
//是否支付
result.setPayTrial(param.getPayTrial());
//sort 排序
result.setOrder(param.getSort());
result.setSettleAmt(Money.createWithCent(param.getSettleAmt()));
return result;
}
public static List<PlanAllocDO> convertDos(List<PlanAlloc> allocs) {
List<PlanAllocDO> result = Lists.newArrayList();
allocs.forEach(alloc -> {
result.add(convert2Do(alloc));
});
return result;
}
public static PlanAllocDO convert2Do(PlanAlloc param) {
PlanAllocDO result = new PlanAllocDO();
//allocAmt 本期分配总额
if (param.getAllocAmt() != null) {
result.setAllocAmt(param.getAllocAmt().getCent());
}
//planNo 计划编号
result.setPlanNo(param.getPlanNo());
//allocNo 分配编号
result.setAllocNo(param.getAllocNo());
//payDate 兑付日
result.setPayDate(param.getPayDate());
if(param.getPlanType()!=null) {
result.setPlanType(param.getPlanType().getCode());
}
//clearDate 结算日
result.setClearDate(param.getClearDate());
if (param.getStatus() != null){
// 分配状态
result.setStatus(param.getStatus().getCode());
}
if (param.getApproveStatus() != null) {
//批量插入后默认审批状态
result.setApproveStatus(param.getApproveStatus().getCode());
}
return result;
}
public static List<PlanAllocItemDO> convertItemDos(List<PlanAlloc> allocs) {
List<PlanAllocItemDO> result = Lists.newArrayList();
for (PlanAlloc alloc : allocs) {
for (PlanAllocItem allocItem : alloc.getPlanAllocItemList()) {
result.add(convertItemDo(allocItem, alloc.getPlanNo(), alloc.getAllocNo()));
}
}
return result; return result;
} }
public static PlanAllocItemDO convertItemDo(PlanAllocItem param, String planNo, String allocNo) { public static PlanAllocDO convert2DO(PlanAlloc var){
PlanAllocItemDO result = new PlanAllocItemDO(); PlanAllocDO result=new PlanAllocDO();
//trialAmt 试算金额 result.setPlanNo(var.getPlanNo());
// result.setTrialAmt(param.getTrialAmt().getCent()); result.setAllocDate(var.getAllocDate());
//confirmAmt 确认金额 result.setAllocNo(var.getAllocNo());
result.setConfirmAmt(param.getConfirmAmt().getCent()); result.setCalcDate(var.getCalcDate());
//trialTaxAmt 试算增值税 result.setPayDate(var.getPayDate());
// result.setTrialTaxAmt(param.getTrialTaxAmt().getCent()); result.setReportDate(var.getReportDate());
//confirmTaxAmt 确认增值税 result.setSettleDate(var.getSettleDate());
result.setConfirmTaxAmt(param.getConfirmTaxAmt().getCent());
//itemNo 事项编号
result.setItemNo(param.getItemNo());
//planNo 计划编号
result.setPlanNo(planNo);
//allocNo 分配编号
result.setAllocNo(allocNo);
//titleNo 科目编号
result.setTitleNo(param.getTitleNo());
//tax 是否计税
result.setTax(param.getTax());
//sort 排序
result.setSort(param.getOrder());
result.setSettleAmt(param.getSettleAmt().getCent());
return result; return result;
} }
public static List<PlanAllocItemDO> convertItemDomain2Dos(String planNo, String allocNo,
List<PlanAllocItem> planAllocItemList,
Map<String, Long> titleSettleAmtMap) {
return planAllocItemList.stream().map(param->convertItemParam2Do(param,planNo,allocNo,titleSettleAmtMap)).collect(Collectors.toList());
}
private static PlanAllocItemDO convertItemParam2Do(PlanAllocItem param, String planNo, String allocNo,Map<String, Long> titleSettleAmtMap) {
PlanAllocItemDO result = new PlanAllocItemDO();
//trialAmt 试算金额
// result.setTrialAmt(param.getTrialAmt().getCent());
//confirmAmt 确认金额
result.setConfirmAmt(param.getConfirmAmt().getCent());
//trialTaxAmt 试算增值税
// result.setTrialTaxAmt(param.getTrialTaxAmt().getCent());
//confirmTaxAmt 确认增值税
result.setConfirmTaxAmt(param.getConfirmTaxAmt().getCent());
//itemNo 事项编号
result.setItemNo(param.getItemNo());
//planNo 计划编号
result.setPlanNo(planNo);
//allocNo 分配编号
result.setAllocNo(allocNo);
//titleNo 科目编号
result.setTitleNo(param.getTitleNo());
//tax 是否计税
result.setTax(param.getTax());
//sort 排序
result.setSort(param.getOrder());
result.setSettleAmt(titleSettleAmtMap.get(param.getTitleNo()));
return result;
}
public static PlanAlloc convertParam2Domain(PlanAlloc alloc, PlanAllocEditParam param, List<PlanAcctTitle> planAcctTitles) {
alloc.setPlanNo(param.getPlanNo());
alloc.setAllocNo(param.getAllocNo());
alloc.setStatus(PlanAllocStatusEnum.UNASSIGNE);
if(param.getClearDate()!=null) {
alloc.setClearDate(param.getClearDate());
}
if(param.getPayDate()!=null) {
alloc.setPayDate(param.getPayDate());
}
if(param.getAllocAmt()!=null) {
alloc.setAllocAmt(param.getAllocAmt());
}
Map<String , PlanAcctTitle> titleMap = planAcctTitles.stream().collect(Collectors.toMap(
PlanAcctTitle::getTitleNo, item -> item));
alloc.setPlanAllocItemList(convertItem2Domain(param.getPlanAllocItemParamList(), titleMap));
return alloc;
}
public static List<PlanAllocItem> convertItem2Domain(List<PlanAllocItemParam> params, Map<String , PlanAcctTitle> titleMap) {
if (ToolUtil.isEmpty(params)){
return null;
}
List<PlanAllocItem> items = new ArrayList<>(params.size());
for (PlanAllocItemParam param : params){
PlanAcctTitle title = titleMap.get(param.getTitleNo());
PlanAllocItem item = new PlanAllocItem();
if (StringUtils.isBlank(param.getItemNo())){
item.setItemNo(SequenceUtil.genId(IdTypeEnum.ALLOCITM));
}else{
item.setItemNo(param.getItemNo());
}
item.setOrder(param.getOrder());
item.setTitleNo(param.getTitleNo());
if (title !=null){
item.setTitleName(title.getTitleName());
item.setAllocType(title.getTitleType().getAllocType());
}
item.setTax(param.getTax());
// item.setTrialAmt(new Money(param.getTrialAmt()));
// item.setTrialTaxAmt(new Money(param.getTrialTaxAmt()));
item.setSettleAmt(new Money(param.getConfirmAmt()));
item.setConfirmAmt(new Money(param.getConfirmAmt()));
item.setConfirmTaxAmt(new Money(param.getConfirmTaxAmt()));
items.add(item);
}
return items;
}
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocFrozenDO;
import com.abssqr.plat.common.model.domain.plan.PlanAllocFrozen;
import com.general.system.common.model.Money;
import com.general.system.tool.util.ToolUtil;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAllocFrozenConvert.java, v 0.1 2019-07-06 6:47 PM hanfei Exp $
*/
public class PlanAllocFrozenConvert {
public static PlanAllocFrozenDO convert2DO(PlanAllocFrozen param) {
if (param == null) {
return null;
}
PlanAllocFrozenDO frozenDO = new PlanAllocFrozenDO();
frozenDO.setFrozenCash(param.getFrozenCash().getCent());
frozenDO.setLastFrozenCash(param.getLastFrozenCash().getCent());
frozenDO.setPlanNo(param.getPlanNo());
frozenDO.setAllocNo(param.getAllocNo());
frozenDO.setLastUpdateDate(param.getLastUpdateDate());
return frozenDO;
}
public static PlanAllocFrozen convert2Domain(PlanAllocFrozenDO param) {
if (param == null) {
return null;
}
PlanAllocFrozen frozen = new PlanAllocFrozen();
frozen.setFrozenCash(Money.createWithCent(param.getFrozenCash()));
frozen.setLastFrozenCash(Money.createWithCent(param.getLastFrozenCash()));
frozen.setPlanNo(param.getPlanNo());
frozen.setAllocNo(param.getAllocNo());
frozen.setLastUpdateDate(param.getLastUpdateDate());
return frozen;
}
public static List<PlanAllocFrozenDO> convert2DOs(List<PlanAllocFrozen> list) {
if (ToolUtil.isEmpty(list)){
return null;
}
List<PlanAllocFrozenDO> dos = new ArrayList<>();
list.forEach(one -> dos.add(convert2DO(one)) );
return dos;
}
public static List<PlanAllocFrozen> convert2Domains(List<PlanAllocFrozenDO> list) {
if (ToolUtil.isEmpty(list)){
return null;
}
List<PlanAllocFrozen> dos = new ArrayList<>();
list.forEach(one -> dos.add(convert2Domain(one)) );
return dos;
}
}
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO;
import com.abssqr.plat.common.facade.enums.AllocTypeEmun;
import com.abssqr.plat.common.facade.model.plan.PlanAllocItem;
public class PlanAllocItemConvert {
public static PlanAllocItem convert2Entity(PlanAllocItemDO var){
PlanAllocItem result=new PlanAllocItem();
result.setAllocNo(var.getAllocNo());
result.setItemNo(var.getItemNo());
result.setPlanNo(var.getPlanNo());
result.setOrder(var.getOrder().intValue());
result.setTitleNo(var.getTitleNo());
result.setAllocType(AllocTypeEmun.getByCode(var.getAllocType()));
result.setTitleName(var.getTitleName());
return result;
}
public static PlanAllocItemDO convert2DO(PlanAllocItem var){
PlanAllocItemDO result=new PlanAllocItemDO();
result.setAllocNo(var.getAllocNo());
result.setItemNo(var.getItemNo());
result.setPlanNo(var.getPlanNo());
result.setOrder(new Long(var.getOrder()));
result.setTitleNo(var.getTitleNo());
result.setAllocType(var.getAllocType().getCode());
result.setTitleName(var.getTitleName());
return result;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAstLogDO;
import com.abssqr.plat.common.model.domain.plan.PlanAstLog;
import com.general.system.tool.util.ToolUtil;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAstLogConvert.java, v 0.1 2018-01-05 下午2:56 hanfei Exp $
*/
public class PlanAstLogConvert {
public static PlanAstLogDO convert2DO(PlanAstLog obj) {
if (obj == null) {
return null;
}
PlanAstLogDO instance = new PlanAstLogDO();
instance.setExtInf(obj.getExtInf());
instance.setPlanNo(obj.getPlanNo());
instance.setTransBizNo(obj.getTransBizNo());
/**
* 交易对象类型
*/
instance.setTraderType(obj.getTraderType().getCode());
instance.setTransCode(obj.getTransCode().getCode());
instance.setChangeType(obj.getChangeType().getCode());
instance.setAccountDate(obj.getAccountDate());
instance.setCash(obj.getCash());
instance.setBankBal(obj.getBankBal());
instance.setCashAmt(obj.getCashAmt());
instance.setAccGrant(obj.getAccGrant());
instance.setLastCash(obj.getLastCash());
instance.setPayClear(obj.getPayClear());
instance.setPayOnWay(obj.getPayOnWay());
instance.setRepoClear(obj.getRepoClear());
instance.setRepoOnWay(obj.getRepoOnWay());
instance.setFrozenCash(obj.getFrozenCash());
instance.setAccGrantAmt(obj.getAccGrantAmt());
instance.setLastBankBal(obj.getLastBankBal());
instance.setLastAccGrant(obj.getLastAccGrant());
instance.setLastPayClear(obj.getLastPayClear());
instance.setLastPayOnWay(obj.getLastPayOnWay());
instance.setFrozenCashAmt(obj.getFrozenCashAmt());
instance.setLastRepoClear(obj.getLastRepoClear());
instance.setLastRepoOnWay(obj.getLastRepoOnWay());
instance.setLastFrozenCash(obj.getLastFrozenCash());
instance.setHappenAmt(obj.getHappenAmt());
instance.setCheckCash(obj.getCheckCash());
instance.setLastCheckCash(obj.getLastCheckCash());
return instance;
}
public static List<PlanAstLogDO> convert2DOs(List<PlanAstLog> logs) {
if (ToolUtil.isEmpty(logs)) {
return null;
}
List<PlanAstLogDO> entity = new ArrayList<>(logs.size());
for (PlanAstLog log : logs) {
PlanAstLogDO one = convert2DO(log);
if (one == null) {
continue;
}
entity.add(one);
}
return entity;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAstStatTaskDO;
import com.abssqr.plat.common.facade.enums.OrgAstStatStatusEnum;
import com.abssqr.plat.common.model.domain.plan.PlanAstStatTask;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import java.util.List;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.convertor: PlanAstStatTaskConvert.java, v 0.1 2019-06-12 01:58 zhenxuan.luo Exp $
*/
public class PlanAstStatTaskConvert {
public static List<PlanAstStatTask> convert2Domains(List<PlanAstStatTaskDO> entitys) {
if (CollectionUtils.isEmpty(entitys)) {
return null;
}
List<PlanAstStatTask> dtos = Lists.newArrayListWithCapacity(entitys.size());
for (PlanAstStatTaskDO astDO : entitys) {
dtos.add(convert2Domain(astDO));
}
return dtos;
}
public static PlanAstStatTask convert2Domain(PlanAstStatTaskDO obj) {
if (obj == null) {
return null;
}
PlanAstStatTask instance = new PlanAstStatTask();
instance.setPlanNo(obj.getPlanNo());
instance.setAccountDate(obj.getAccountDate());
instance.setLastExecTms(obj.getLastExecTms());
instance.setMinId(obj.getMinId());
instance.setMaxId(obj.getMaxId());
instance.setCnt(obj.getCnt());
instance.setLastExecTime(obj.getLastExecTime());
instance.setNextExecTime(obj.getNextExecTime());
instance.setLastHost(obj.getLastHost());
instance.setExecTimes(obj.getExecTimes());
instance.setStatus(OrgAstStatStatusEnum.getByCode(obj.getStatus()));
return instance;
}
public static PlanAstStatTaskDO convert2DO(PlanAstStatTask obj) {
if (obj == null) {
return null;
}
PlanAstStatTaskDO instance = new PlanAstStatTaskDO();
instance.setPlanNo(obj.getPlanNo());
instance.setAccountDate(obj.getAccountDate());
instance.setLastExecTms(obj.getLastExecTms());
instance.setMinId(obj.getMinId());
instance.setMaxId(obj.getMaxId());
instance.setCnt(obj.getCnt());
instance.setLastExecTime(obj.getLastExecTime());
instance.setNextExecTime(obj.getNextExecTime());
instance.setLastHost(obj.getLastHost());
instance.setExecTimes(obj.getExecTimes());
instance.setStatus(obj.getStatus().getCode());
return instance;
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor; package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO; import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO;
import com.abssqr.plat.common.facade.enums.*; import com.abssqr.plat.common.facade.enums.CalcIntrTypeEnum;
import com.abssqr.plat.common.facade.model.org.OrganizationEntity; import com.abssqr.plat.common.facade.enums.PeriodTypeEnum;
import com.abssqr.plat.common.facade.enums.PlanStatusEnum;
import com.abssqr.plat.common.facade.model.plan.Plan; import com.abssqr.plat.common.facade.model.plan.Plan;
import com.abssqr.plat.common.facade.model.plan.PlanBase;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.Money;
import com.general.system.common.util.DateTimeUtil;
import com.general.system.common.util.VarChecker;
import java.util.Optional;
/**
* @author bangis.wangdf
* @version $Id: PlanParamConvert.java, v 0.1 2018-01-20 上午2:56 hanfei Exp $
*/
public class PlanConvert { public class PlanConvert {
public static <T extends PlanBase> T convert2Domain(PlanDO param) { public static Plan convertDO2Plan(PlanDO var){
VarChecker.checkNotNull(param, "不存在该计划[{0}]", param); Plan plan=new Plan();
T result = null; plan.setAllocPeriod(var.getAllocPeriod());
if (PlanTypeEnum.getByCode(param.getPlanType()) == PlanTypeEnum.SPV) { plan.setAllocPeriodMethod(PeriodTypeEnum.getByCode(var.getAllocPeriodMethod()));
result = (T)new OrganizationEntity(); plan.setBeginDate(var.getBeginDate());
} else { plan.setCalcIntrType(CalcIntrTypeEnum.getByCode(var.getCalcIntrType()));
result = (T)new Plan(); plan.setEndDate(var.getEndDate());
} plan.setFirstAllocDate(var.getFirstAllocDate());
//totalAmt 发行规模 plan.setFirstCalcDate(var.getFirstCalcDate());
result.setTotalAmt(Money.createWithCent(param.getTotalAmt())); plan.setFirstPayDate(var.getFirstPayDate());
//planNo 计划编号 plan.setFirstReportDate(var.getFirstReportDate());
result.setPlanNo(param.getPlanNo()); plan.setFirstSettleDate(var.getFirstSettleDate());
//status 计划状态 plan.setPlanFullName(var.getPlanFullName());
result.setStatus(PlanStatusEnum.getByCode(param.getStatus())); plan.setTotalAmt(var.getTotalAmt());
//fundType 募集方式 plan.setPlanName(var.getPlanName());
result.setFundType(FundTypeEnum.getByCode(param.getFundType())); plan.setPlanNo(var.getPlanNo());
//planName 计划名 plan.setStatus(PlanStatusEnum.getByCode(var.getStatus()));
result.setPlanName(param.getPlanName()); plan.setTradePlace(var.getTradePlace());
//approveStatus 审批状态
result.setApproveStatus(ApproveStatusEnum.getEnum(param.getApproveStatus()));
//managerOrgCode 管理机构
result.setPlanMgrOrgCode(param.getPlanMgrOrgCode());
//sponsorOrgCode 发起机构
result.setSponsorOrgCode(param.getSponsorOrgCode());
//endDate 计划到期日(信托终止日)计划截止日
result.setEndDate(param.getEndDate());
//beginDate 计划设立日(信托设立日)
result.setBeginDate(DateTimeUtil.getStandardDate(param.getBeginDate()));
//effectDate 计划起息日
result.setEffectDate(param.getEffectDate());
//firstPayDate 首次偿付日 首次兑付日
result.setFirstPayDate(param.getFirstPayDate());
//initCalcDate 初始起算日
result.setInitCalcDate(param.getInitCalcDate());
//firstClearDate 首次结算日
result.setFirstClearDate(param.getFirstClearDate());
//payFrequency 兑付频率
result.setPayFreq(PlanPayFreqEnum.getByCode(param.getPayFreq()));
//countCalcType 计息方式
result.setCalcIntrType(CalcIntrTypeEnum.getByCode(param.getCalcIntrType()));
//vatRate 增指税率
result.setVatRate(param.getVatRate());
result.setLastUpdateDate(param.getLastUpdateDate());
//GmtCreator 创建者
result.setGmtCreator(param.getGmtCreator());
//GmtModifier 修改人 DO转DOMAIN可能为空
if (param.getGmtModifier() != null) {
result.setGmtModifier(param.getGmtModifier());
}
//Passed 是否已经通过过
if (param.getPassed() != null) {
result.setPassed(param.getPassed());
}
//计划类型
result.setPlanType(PlanTypeEnum.getByCode(param.getPlanType()));
// 定价规则类型
result.setPriceType(PriceTypeEnum.getByCode(param.getPriceType()));
// 金融服务费率
result.setFinSerFeeRate(param.getFinSerFeeRate());
return result;
}
public static PlanDO convert2Do(PlanBase param) { return plan;
PlanDO result = new PlanDO();
VarChecker.checkNotNull(param);
//totalAmt 发行规模
if (param.getTotalAmt() == null) {
param.setTotalAmt(new Money("0"));
}
result.setTotalAmt(param.getTotalAmt().getCent());
//planNo 计划编号
result.setPlanNo(param.getPlanNo());
//status 计划状态
if (param.getStatus() == null) {
param.setStatus(PlanStatusEnum.PREPARING);
}
result.setStatus(param.getStatus().getCode());
//fundType 募集方式
if (param.getFundType() != null) {
result.setFundType(param.getFundType().getCode());
} }
//planName 计划名
result.setPlanName(param.getPlanName()); public static PlanDO convert2DO(Plan var){
//approveStatus 审批状态
if (param.getApproveStatus() != null) { PlanDO planDO=new PlanDO();
result.setApproveStatus(param.getApproveStatus().getCode()); planDO.setAllocPeriod(var.getAllocPeriod());
} planDO.setAllocPeriodMethod(var.getAllocPeriodMethod().getCode());
//managerOrgCode 管理机构 planDO.setBeginDate(var.getBeginDate());
result.setPlanMgrOrgCode(param.getPlanMgrOrgCode()); planDO.setCalcIntrType(var.getCalcIntrType().getCode());
//sponsorOrgCode 发起机构 planDO.setEndDate(var.getEndDate());
result.setSponsorOrgCode(param.getSponsorOrgCode()); planDO.setFirstAllocDate(var.getFirstAllocDate());
//endDate 计划到期日(信托终止日)计划截止日 planDO.setFirstCalcDate(var.getFirstCalcDate());
result.setEndDate(param.getEndDate()); planDO.setFirstPayDate(var.getFirstPayDate());
//beginDate 计划设立日(信托设立日) planDO.setFirstReportDate(var.getFirstReportDate());
result.setBeginDate(param.getBeginDate()); planDO.setFirstSettleDate(var.getFirstSettleDate());
//effectDate 计划起息日 planDO.setPlanFullName(var.getPlanFullName());
result.setEffectDate(param.getEffectDate()); planDO.setTotalAmt(var.getTotalAmt());
//firstPayDate 首次偿付日 首次兑付日 planDO.setPlanName(var.getPlanName());
result.setFirstPayDate(param.getFirstPayDate()); planDO.setPlanNo(var.getPlanNo());
//initCalcDate 初始起算日 planDO.setStatus(var.getStatus().getCode());
result.setInitCalcDate(param.getInitCalcDate()); planDO.setTradePlace(var.getTradePlace());
//firstClearDate 首次结算日 return planDO;
result.setFirstClearDate(param.getFirstClearDate());
//payFrequency 兑付频率
result.setPayFreq(Optional.ofNullable(param.getPayFreq()).map(PlanPayFreqEnum::getCode).orElse(null));
//countCalcType 计息方式
result.setCalcIntrType(Optional.ofNullable(param.getCalcIntrType()).map(CalcIntrTypeEnum::getCode).orElse(null));
//vatRate 增指税率
result.setVatRate(param.getVatRate());
result.setLastUpdateDate(param.getLastUpdateDate());
//GmtCreator 创建人
if (param.getGmtCreator() != null) {
result.setGmtCreator(param.getGmtCreator());
}
//GmtModifier 修改人
if (param.getGmtModifier() != null) {
result.setGmtModifier(param.getGmtModifier());
}
//Passed 是否已经通过过
if (param.isPassed() != null) {
result.setPassed(param.isPassed());
}
//计划类型
result.setPlanType(Optional.ofNullable(param.getPlanType()).map(PlanTypeEnum::getCode).orElse(null));
// 定价规则类型
result.setPriceType(Optional.ofNullable(param.getPriceType()).map(PriceTypeEnum::getCode).orElse(null));
// 金融服务费率
result.setFinSerFeeRate(param.getFinSerFeeRate());
return result;
} }
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanFeeStructureDO;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeScaleTypeEnum;
import com.abssqr.plat.common.facade.enums.FeeTimeTypeEnum;
import com.abssqr.plat.common.facade.enums.FinSerFeeTypeEnum;
import com.abssqr.plat.common.facade.model.plan.FeeStructure;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.Money;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import java.util.List;
/**
*
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.convertor: PlanFeeStructureConvert.java, v 0.1 2019-05-31 21:35 bangis.wangdf Exp $
*/
public class PlanFeeStructureConvert {
public static List<FeeStructure> convert2FeeStructureDomainList(List<PlanFeeStructureDO> feeStructureDOS) {
List<FeeStructure> result = Lists.newArrayList();
if (CollectionUtils.isNotEmpty(feeStructureDOS)) {
feeStructureDOS.forEach(planFeeStructureDO -> {
result.add(convert2FeeStructureDomain(planFeeStructureDO));
});
}
return result;
}
private static FeeStructure convert2FeeStructureDomain(PlanFeeStructureDO param) {
if (param == null){
return null;
}
FeeStructure result = new FeeStructure();
//fixedFeeAmt 固定费用
result.setFixedFeeAmt(Money.createWithCentNull(param.getFixedFeeAmt()));
//payLimitAmt 支付上限
result.setPayLimitAmt(Money.createWithCentNull(param.getPayLimitAmt()));
//feeNo 费用编号
result.setFeeNo(param.getFeeNo());
//feeName 费用名称
result.setFeeName(param.getFeeName());
//feeCalcType 计算方式
result.setFeeCalcType(CalcTypeEnum.getByCode(param.getFeeCalcType()));
//feeTimeType 计费时间类型
result.setFeeTimeType(FeeTimeTypeEnum.getByCode(param.getFeeTimeType()));
//feeScaleType 费率基准
result.setFeeScaleType(FeeScaleTypeEnum.getByCode(param.getFeeScaleType()));
//calcByDay 按日计费
result.setCalcByDay(param.getCalcByDay());
//feeRate 费率
result.setFeeRate(param.getFeeRate());
result.setFinSerFeeType(FinSerFeeTypeEnum.getByCode(param.getFinSerFeeType()));
return result;
}
public static List<PlanFeeStructureDO> convert2Dos(String planNo,
List<FeeStructure> feeStructureList) {
if (CollectionUtils.isEmpty(feeStructureList)) {
return null;
}
List<PlanFeeStructureDO> result = Lists.newArrayList();
feeStructureList.forEach(param -> {
result.add(convert2Do(planNo, param));
});
return result;
}
private static PlanFeeStructureDO convert2Do(String planNo, FeeStructure param) {
PlanFeeStructureDO result = new PlanFeeStructureDO();
//fixedFeeAmt 固定费用
if(param.getFixedFeeAmt()!=null) {
result.setFixedFeeAmt(param.getFixedFeeAmt().getCent());
}
//payLimitAmt 支付上限
if(param.getPayLimitAmt()!=null) {
result.setPayLimitAmt(param.getPayLimitAmt().getCent());
}
if (StringUtils.isBlank(param.getFeeNo())) {
param.setFeeNo(SequenceUtil.genId(IdTypeEnum.FEE));
}
//feeNo 费用编号
result.setFeeNo(param.getFeeNo());
//planNo 计划编号
result.setPlanNo(planNo);
//feeName 费用名称
result.setFeeName(param.getFeeName());
//feeCalcType 计算方式
if(param.getFeeCalcType()!=null) {
result.setFeeCalcType(param.getFeeCalcType().getCode());
}
//feeTimeType 计费时间类型
if(param.getFeeTimeType()!=null) {
result.setFeeTimeType(param.getFeeTimeType().getCode());
}
//feeScaleType 费率基准
if(param.getFeeScaleType()!=null) {
result.setFeeScaleType(param.getFeeScaleType().getCode());
}
//calcByDay 按日计费
result.setCalcByDay(param.getCalcByDay());
//feeRate 费率
result.setFeeRate(param.getFeeRate());
if(param.getFinSerFeeType()!=null) {
result.setFinSerFeeType(param.getFinSerFeeType().getCode());
}
return result;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanInvestStructureDO;
import com.abssqr.plat.common.facade.enums.IntrTypeEnum;
import com.abssqr.plat.common.facade.enums.LayerTypeEnu;
import com.abssqr.plat.common.facade.model.plan.InvestStructure;
import com.abssqr.plat.common.facade.result.plan.PlanInvestStructureVO;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.Money;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
import java.util.List;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.convertor: PlanInvestStructureConvert.java, v 0.1 2019-05-31 21:29 bangis.wangdf Exp $
*/
public class PlanInvestStructureConvert {
public static List<InvestStructure> convert2InvestStructureDomainList(
List<PlanInvestStructureDO> investStructureDOS) {
List<InvestStructure> result = Lists.newArrayList();
if (CollectionUtils.isNotEmpty(investStructureDOS)) {
investStructureDOS.forEach(planInvestStructureDO -> {
result.add(convert2InvestStructureDomain(planInvestStructureDO));
});
}
return result;
}
public static InvestStructure convert2InvestStructureDomain(PlanInvestStructureDO param) {
if (param == null) {
return null;
}
InvestStructure result = new InvestStructure();
//layerAmt 层级规模
result.setLayerAmt(Money.createWithCent(param.getLayerAmt()));
//layerNo 编号
result.setLayerNo(param.getLayerNo());
//intrType 利率类型
result.setIntrType(IntrTypeEnum.getByCode(param.getIntrType()));
//layerName 层次名称
result.setLayerName(param.getLayerName());
//layerType 层级类型
result.setLayerType(LayerTypeEnu.getByCode(param.getLayerType()));
//layerEndDate 到期日
result.setLayerEndDate(param.getLayerEndDate());
//layerIntr 层级利率
result.setLayerIntr(param.getLayerIntr());
// 起息日
result.setEffectDate(param.getEffectDate());
return result;
}
private static PlanInvestStructureDO convert2Do(String planNo, InvestStructure param) {
PlanInvestStructureDO result = new PlanInvestStructureDO();
//layerAmt 层级规模
result.setLayerAmt(param.getLayerAmt().getCent());
//planNo 计划编号
result.setPlanNo(planNo);
//layerNo 编号
result.setLayerNo(param.getLayerNo());
if (StringUtils.isBlank(result.getLayerNo())) {
result.setLayerNo(SequenceUtil.genId(IdTypeEnum.INVESTSTRUCTURE));
}
//intrType 利率类型
if (param.getLayerIntr() == null) {
param.setLayerIntr(BigDecimal.ZERO);
}
if (BigDecimal.ZERO.compareTo(param.getLayerIntr()) == 0) {
param.setIntrType(IntrTypeEnum.NOTICKET);
}
result.setIntrType(param.getIntrType().getCode());
//layerName 层次名称
result.setLayerName(param.getLayerName());
//layerType 层级类型
result.setLayerType(param.getLayerType().getCode());
//layerEndDate 到期日
result.setLayerEndDate(param.getLayerEndDate());
//layerIntr 层级利率
result.setLayerIntr(param.getLayerIntr());
// 起息日
result.setEffectDate(param.getEffectDate());
return result;
}
public static List<PlanInvestStructureDO> convert2Dos(String planNo, List<InvestStructure> investStructures) {
if (CollectionUtils.isEmpty(investStructures)) {
return null;
}
List<PlanInvestStructureDO> result = Lists.newArrayList();
investStructures.forEach(param -> {
result.add(convert2Do(planNo, param));
});
return result;
}
public static PlanInvestStructureVO convert2Vo(InvestStructure param) {
if (null == param) {
return null;
}
PlanInvestStructureVO result = new PlanInvestStructureVO();
result.setLayerNo(param.getLayerNo());
result.setLayerName(param.getLayerName());
return result;
}
public static List<PlanInvestStructureVO> convert2VoList(List<InvestStructure> param) {
List<PlanInvestStructureVO> result = Lists.newArrayList();
param.forEach(item->{
result.add(convert2Vo(item));
});
return result;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.convertor;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanTaskLogDO;
import com.abssqr.plat.common.facade.enums.PlanTaskTypeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanTaskLog;
/**
*
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.convertor: PlanTaskLogConvert.java, v 0.1 2019-09-23 11:38 bangis.wangdf Exp $
*/
public class PlanTaskLogConvert {
public static PlanTaskLog do2Model(PlanTaskLogDO taskLogDO) {
if(taskLogDO!=null){
PlanTaskLog result = new PlanTaskLog();
result.setExecDate(taskLogDO.getExecDate());
result.setPlanNo(taskLogDO.getPlanNo());
result.setTaskType(PlanTaskTypeEnum.getByCode(taskLogDO.getTaskType()));
return result;
}
return null;
} public static PlanTaskLogDO model2Do(PlanTaskLog taskLog) {
if(taskLog!=null){
PlanTaskLogDO result = new PlanTaskLogDO();
result.setExecDate(taskLog.getExecDate());
result.setPlanNo(taskLog.getPlanNo());
result.setTaskType(taskLog.getTaskType().getCode());
return result;
}
return null;
}
}
package com.abssqr.plat.common.model.convertor.web;
import com.abssqr.plat.common.facade.enums.*;
import com.abssqr.plat.common.facade.model.plan.FeeStructure;
import com.abssqr.plat.common.facade.model.plan.InvestStructure;
import com.abssqr.plat.common.facade.model.plan.Plan;
import com.abssqr.plat.common.facade.param.plan.PlanEditOprParam;
import com.abssqr.plat.common.facade.param.plan.sub.FeeStructureParam;
import com.abssqr.plat.common.facade.param.plan.sub.InvestStructureParam;
import com.abssqr.plat.common.model.enums.IdTypeEnum;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import org.apache.commons.collections.CollectionUtils;
import java.math.BigDecimal;
public class PlanWebConvert {
public static Plan convertPlanParam(PlanEditOprParam planEditOprParam){
Plan plan=new Plan();
//分配周期
plan.setAllocPeriod(planEditOprParam.getAllocPeriod());
plan.setAllocPeriodMethod(PeriodTypeEnum.getByCode(planEditOprParam.getAllocPeriodMethod()));
plan.setBeginDate(planEditOprParam.getBeginDate());
plan.setCalcIntrType(CalcIntrTypeEnum.getByCode(planEditOprParam.getCalcIntrType()));
plan.setEndDate(planEditOprParam.getEndDate());
plan.setFirstAllocDate(planEditOprParam.getFirstAllocDate());
plan.setFirstCalcDate(planEditOprParam.getFirstCalcDate());
plan.setFirstPayDate(planEditOprParam.getFirstPayDate());
plan.setFirstReportDate(planEditOprParam.getFirstReportDate());
plan.setFirstSettleDate(planEditOprParam.getFirstSettleDate());
plan.setPlanFullName(planEditOprParam.getPlanFullName());
plan.setTotalAmt(planEditOprParam.getTotalAmt());
plan.setPlanName(planEditOprParam.getPlanName());
plan.setPlanNo(planEditOprParam.getPlanNo());
plan.setTradePlace(planEditOprParam.getTradePlace());
if(CollectionUtils.isNotEmpty(planEditOprParam.getInvestStructureParam())) {
for (InvestStructureParam investStructure : planEditOprParam.getInvestStructureParam()) {
plan.getInvestStructure().add(convertInvestStructureParam(plan.getPlanNo(),investStructure));
}
}
if(CollectionUtils.isNotEmpty(planEditOprParam.getFeeStructureParam())){
for(FeeStructureParam feeStructureParam:planEditOprParam.getFeeStructureParam()){
plan.getFeeStructure().add(convertFeeStructure(plan.getPlanNo(),feeStructureParam));
}
}
return plan;
}
private static InvestStructure convertInvestStructureParam(String planNo,InvestStructureParam investStructureParam){
InvestStructure investStructure=new InvestStructure();
investStructure.setEffectDate(investStructureParam.getEffectDate());
investStructure.setEndDate(investStructureParam.getEndDate());
investStructure.setExpectEndDate(investStructureParam.getExpectEndDate());
investStructure.setGrade(investStructureParam.getGrade());
investStructure.setIntrType(IntrTypeEnum.getByCode(investStructureParam.getIntrType()));
investStructure.setPlanNo(planNo);
investStructure.setAllocMethod(AllocMethodEnum.getByCode(investStructureParam.getAllocMethod()));
investStructure.setOrder(investStructureParam.getOrder());
investStructure.setLayerType(LayerTypeEnum.getByCode(investStructureParam.getLayerType()));
investStructure.setLayerNo(SequenceUtil.genId(IdTypeEnum.INVESTSTRUCTURE));
investStructure.setLayerName(investStructureParam.getLayerName());
investStructure.setLayerIntr(investStructureParam.getLayerIntr());
investStructure.setLayerAmt(investStructureParam.getLayerAmt());
return investStructure;
}
private static FeeStructure convertFeeStructure(String planNo,FeeStructureParam feeStructureParam){
FeeStructure feeStructure=new FeeStructure();
feeStructure.setFeeCalcDefaultDate(feeStructureParam.getFeeCalcDefaultDate());
feeStructure.setPlanNo(planNo);
feeStructure.setPayLimitAmt(feeStructureParam.getPayLimitAmt());
feeStructure.setOrder(feeStructureParam.getOrder());
feeStructure.setFixedFeeAmt(feeStructureParam.getFixedFeeAmt());
feeStructure.setFeeScaleType(FeeScaleTypeEnum.getByCode(feeStructureParam.getFeeScaleType()));
feeStructure.setFeeRate(new BigDecimal(feeStructureParam.getFeeRate()));
feeStructure.setFeeNo(SequenceUtil.genId(IdTypeEnum.FEE));
feeStructure.setFeeCalcType(CalcTypeEnum.getByCode(feeStructureParam.getFeeCalcType()));
feeStructure.setFeeName(feeStructureParam.getFeeName());
return feeStructure;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import java.util.Date;
/**
* 科目流水
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.domain.plan: PlanAcctTitleLog.java, v 0.1 2019-06-30 01:05 zhenxuan.luo Exp $
*/
public class PlanAcctTitleLog extends BaseEntity {
/**
* 计划编号
*/
private String planNo;
/**
* 科目编号
*/
private String titleNo;
/**
* 对应金额类型编号
*/
private String refNo;
/**
* 科目名称
*/
private String titleName;
/**
* 科目类型
*/
private TitleTypeEnum titleType;
/**
* 操作前科目余额
*/
private Money bfBal = new Money();
/**
* 发生额
*/
private Money acctAmt = new Money();
/**
* 操作后科目余额
*/
private Money afBal = new Money();
/**
* 增值税发生额
*/
private Money vTaxAmt = new Money();
/**
*
*/
private String bizNo;
/**
*
*/
private String seqNo;
/**
* 会计日
*/
private Date accountDate;
/**
* 发生事件码
*/
private EventCodeEnum eventCode;
public String getRefNo() {
return refNo;
}
public void setRefNo(String refNo) {
this.refNo = refNo;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getTitleNo() {
return titleNo;
}
public void setTitleNo(String titleNo) {
this.titleNo = titleNo;
}
public TitleTypeEnum getTitleType() {
return titleType;
}
public void setTitleType(TitleTypeEnum titleType) {
this.titleType = titleType;
}
public Money getBfBal() {
return bfBal;
}
public void setBfBal(Money bfBal) {
this.bfBal = bfBal;
}
public Money getAcctAmt() {
return acctAmt;
}
public void setAcctAmt(Money acctAmt) {
this.acctAmt = acctAmt;
}
public Money getAfBal() {
return afBal;
}
public void setAfBal(Money afBal) {
this.afBal = afBal;
}
public Money getvTaxAmt() {
return vTaxAmt;
}
public void setvTaxAmt(Money vTaxAmt) {
this.vTaxAmt = vTaxAmt;
}
public String getBizNo() {
return bizNo;
}
public void setBizNo(String bizNo) {
this.bizNo = bizNo;
}
public String getSeqNo() {
return seqNo;
}
public void setSeqNo(String seqNo) {
this.seqNo = seqNo;
}
public Date getAccountDate() {
return accountDate;
}
public void setAccountDate(Date accountDate) {
this.accountDate = accountDate;
}
public EventCodeEnum getEventCode() {
return eventCode;
}
public void setEventCode(EventCodeEnum eventCode) {
this.eventCode = eventCode;
}
public String getTitleName() {
return titleName;
}
public void setTitleName(String titleName) {
this.titleName = titleName;
}
// public CalcTypeEnum getCalcType() {
// return calcType;
// }
//
// public void setCalcType(CalcTypeEnum calcType) {
// this.calcType = calcType;
// }
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2017 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import com.abssqr.plat.common.facade.enums.CommonErrorCodeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
import com.abssqr.plat.common.model.domain.loanTrans.ITransDtl;
import com.abssqr.plat.common.model.domain.loanTrans.TransInfoTemplate;
import com.abssqr.plat.common.model.exception.AbssqrBizException;
import com.abssqr.plat.common.model.seq.SequenceUtil;
import com.general.system.common.model.Money;
import com.general.system.common.util.MessageUtil;
import java.math.BigDecimal;
import java.util.Date;
/**
* 资产变更明细
*
* @author guozhenhua
* @version com.abssqr.plat.common.model.domain.loanTrans: LoanTransDetail.java, v 0.1 2017-12-12 下午8:20 guozhenhua Exp $
*/
public class PlanAcctTitleTransDetail implements ITransDtl {
/**
* 贷款资产
*/
private PlanAcctTitle planAcctTitle;
private PlanAcctTitleLog activeLog;
private boolean isUpdate = false;
private boolean isAdd = false;
private boolean isSub = false;
private PlanAcctTitleTransDetail() {
}
/**
* 构建科目交易流水
*
* @param planAcctTitle
* @param transInfo
* @return
*/
public static PlanAcctTitleTransDetail createTxnDtl(PlanAcctTitle planAcctTitle, TransInfoTemplate transInfo, boolean isReal) {
// 1. 构造资产交易明细
PlanAcctTitleTransDetail transDetail = new PlanAcctTitleTransDetail();
transDetail.planAcctTitle = planAcctTitle;
PlanAcctTitleLog planAcctTitleLog = new PlanAcctTitleLog();
planAcctTitleLog.setRefNo(planAcctTitle.getRefNo());
planAcctTitleLog.setPlanNo(planAcctTitle.getPlanNo());
planAcctTitleLog.setTitleNo(planAcctTitle.getTitleNo());
planAcctTitleLog.setTitleName(planAcctTitle.getTitleName());
planAcctTitleLog.setTitleType(planAcctTitle.getTitleType());
// planAcctTitleLog.setCalcType(planAcctTitle.getCalcType());
planAcctTitleLog.setBfBal(planAcctTitle.getBal().clone());
planAcctTitleLog.setBizNo(transInfo.getBizNo());
// 避免在模拟计息时,也去数据库拿Sequence
if (isReal) {
planAcctTitleLog.setSeqNo(SequenceUtil.genSeqNo(transInfo.getEventCode().getSceneCode()));
}
planAcctTitleLog.setAccountDate(transInfo.getAccountDate());
planAcctTitleLog.setEventCode(transInfo.getEventCode());
transDetail.activeLog = planAcctTitleLog;
return transDetail;
}
@Override
public void processBeforeUpdate() {
// 将交易后信息填入交易流水
activeLog.setAfBal(planAcctTitle.getBal().clone());
}
public void rcepAmt(Money amt, Money taxAmt) {
if (isSub) {
throw new AbssqrBizException(MessageUtil.formatMsg("科目[{0}]已经在进行减操作,无法进行加操作", this.planAcctTitle),
CommonErrorCodeEnum.INVALID_INTERNAL_MODEL);
}
isUpdate = true;
isAdd = true;
planAcctTitle.setRecpAmt(amt.add(planAcctTitle.getRecpAmt()));
planAcctTitle.setRecpVATax(taxAmt.add(planAcctTitle.getRecpVATax()));
planAcctTitle.setBal(planAcctTitle.getBal().add(amt));
activeLog.setAcctAmt(activeLog.getAcctAmt().add(amt));
activeLog.setvTaxAmt(activeLog.getvTaxAmt().add(taxAmt));
}
public void payAmt(Money amt, Money taxAmt) {
if (isAdd) {
throw new AbssqrBizException(MessageUtil.formatMsg("科目[{0}]已经在进行加操作,无法进行减操作", this.planAcctTitle),
CommonErrorCodeEnum.INVALID_INTERNAL_MODEL);
}
isUpdate = true;
isSub = true;
planAcctTitle.pay(amt);
planAcctTitle.payVTax(taxAmt);
activeLog.setAcctAmt(activeLog.getAcctAmt().add(amt));
activeLog.setvTaxAmt(activeLog.getvTaxAmt().add(taxAmt));
}
public void entry(BigDecimal addTotleAmt) {
isAdd = true;
isUpdate = true;
Money transAmt = planAcctTitle.entry(addTotleAmt);
activeLog.setAcctAmt(activeLog.getAcctAmt().add(transAmt));
}
public void setSettleDate(Date settleDate) {
activeLog.setAccountDate(settleDate);
planAcctTitle.setLastSettleDate(settleDate);
}
public boolean isUpdate() {
return isUpdate;
}
public PlanAcctTitle getPlanAcctTitle() {
return planAcctTitle;
}
public PlanAcctTitleLog getActiveLog() {
return activeLog;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import com.abssqr.plat.common.facade.model.plan.PlanAlloc;
import com.general.system.common.model.Money;
import java.util.Date;
/**
*
* @author hanfei
* @version $Id: PlanAllocFrozen.java, v 0.1 2019-07-06 6:46 PM hanfei Exp $
*/
public class PlanAllocFrozen {
/**
* frozenCash 当前冻结资金余额.
*/
private Money frozenCash = new Money();
/**
* lastFrozenCash 变更前冻结资金.
*/
private Money lastFrozenCash = new Money();
/**
* planNo 计划编号.
*/
private String planNo;
/**
* allocNo 分配计划编号.
*/
private String allocNo;
/**
* lastUpdateDate 最近变更会计日.
*/
private Date lastUpdateDate;
public static PlanAllocFrozen createNewFrozen(Date curDate, PlanAlloc alloc) {
PlanAllocFrozen allocFrozen = new PlanAllocFrozen();
allocFrozen.setPlanNo(alloc.getPlanNo());
allocFrozen.setAllocNo(alloc.getAllocNo());
allocFrozen.setLastUpdateDate(curDate);
return allocFrozen;
}
public Money getFrozenCash() {
return frozenCash;
}
public void setFrozenCash(Money frozenCash) {
this.frozenCash = frozenCash;
}
public Money getLastFrozenCash() {
return lastFrozenCash;
}
public void setLastFrozenCash(Money lastFrozenCash) {
this.lastFrozenCash = lastFrozenCash;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public String getAllocNo() {
return allocNo;
}
public void setAllocNo(String allocNo) {
this.allocNo = allocNo;
}
public Date getLastUpdateDate() {
return lastUpdateDate;
}
public void setLastUpdateDate(Date lastUpdateDate) {
this.lastUpdateDate = lastUpdateDate;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import com.abssqr.plat.common.facade.enums.AstFlowTypeEnum;
import com.abssqr.plat.common.facade.enums.StageChangeTypeEnum;
import com.abssqr.plat.common.facade.enums.TransCodeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAst;
import com.abssqr.plat.common.model.enums.TraderTypeEnum;
import com.abssqr.plat.common.model.exception.AbssqrInvalidParamException;
import com.abssqr.plat.common.model.utils.PlanAstChangeCheckerUtil;
import com.general.system.common.model.BaseEntity;
import com.general.system.common.model.Money;
import com.general.system.common.util.DateTimeUtil;
import java.util.Date;
/**
* @author hanfei
* @version $Id: PlanAstLog.java, v 0.1 2018-01-05 下午2:54 hanfei Exp $
*/
public class PlanAstLog extends BaseEntity {
/**
* id ID.
*/
private Long id;
/**
* planNo 计划编号.
*/
private String planNo;
/**
* transBizNo 关联业务编号
*/
private String transBizNo;
/**
* 交易对象类型
*/
private TraderTypeEnum traderType;
/**
* transCode 交易场景码.
*/
private TransCodeEnum transCode;
/**
* changeType 水位变更类型. {@link StageChangeTypeEnum}
*/
private StageChangeTypeEnum changeType;
/**
* setlDt 会记日.
*/
private Date accountDate;
/**
* 发生额,不区分发生类型
*/
private Money happenAmt = new Money();
/**
* stage 水位变更发生金额.
*/
private Money cashAmt = new Money();
/**
* stage 当前水位.
*/
private Money cash = new Money();
/**
* lastStage 变更前水位.
*/
private Money lastCash = new Money();
/**
* frozenStage 当前冻结水位.
*/
private Money frozenCash = new Money();
/**
* frozenStage 冻结水位变更发生金额.
*/
private Money frozenCashAmt = new Money();
/**
* lastFrozenStage 变更前冻结水位.
*/
private Money lastFrozenCash = new Money();
/**
* 累计投放
*/
private Money accGrant = new Money();
/**
* 累计投放
*/
private Money accGrantAmt = new Money();
/**
* 变更前累计投放
*/
private Money lastAccGrant = new Money();
/**
* 当前流出在途金额
*/
private Money payOnWay = new Money();
/**
* 变更前流出在途金额
*/
private Money lastPayOnWay = new Money();
/**
* 当前流入在途金额
*/
private Money repoOnWay = new Money();
/**
* 变更前流入在途金额
*/
private Money lastRepoOnWay = new Money();
/**
* 支付待结算金额
*/
private Money payClear = new Money();
/**
* 还款待结算金额
*/
private Money repoClear = new Money();
/**
* 变更前支付待结算金额
*/
private Money lastPayClear = new Money();
/**
* 变更前还款待结算金额
*/
private Money lastRepoClear = new Money();
/**
* 校验水位金额
*/
private Money checkCash = new Money();
/**
* 校验水位金额
*/
private Money lastCheckCash = new Money();
/**
* 当前银行账户余额
*/
private Money bankBal = new Money();
/**
* 变更前银行账户余额
*/
private Money lastBankBal = new Money();
/**
* extInf 扩展字段.
*/
private String extInf;
public static PlanAstLog buildAstLog(Date accountDate, PlanAst planAst, String transBizNo, TraderTypeEnum traderType,
TransCodeEnum transCode, StageChangeTypeEnum changeType) {
PlanAstLog planAstLog = new PlanAstLog();
planAstLog.setPlanNo(planAst.getPlanNo());
planAstLog.setTransBizNo(transBizNo);
planAstLog.setTraderType(traderType);
planAstLog.setTransCode(transCode);
planAstLog.setChangeType(changeType);
planAstLog.setAccountDate(DateTimeUtil.getStandardDate(accountDate));
planAstLog.setCash(planAst.getCash().clone());
planAstLog.setLastCash(planAst.getCash().clone());
planAstLog.setFrozenCash(planAst.getFrozenCash().clone());
planAstLog.setLastFrozenCash(planAst.getFrozenCash().clone());
planAstLog.setAccGrant(planAst.getAccGrant().clone());
planAstLog.setLastAccGrant(planAst.getAccGrant().clone());
// 在途金额
planAstLog.setPayOnWay(planAst.getPayOnWay().clone());
planAstLog.setRepoOnWay(planAst.getRepoOnWay().clone());
planAstLog.setLastPayOnWay(planAst.getPayOnWay().clone());
planAstLog.setLastRepoOnWay(planAst.getRepoOnWay().clone());
// 待结算金额
planAstLog.setPayClear(planAst.getPayClear().clone());
planAstLog.setRepoClear(planAst.getRepoClear().clone());
planAstLog.setLastPayClear(planAst.getPayClear().clone());
planAstLog.setLastRepoClear(planAst.getRepoClear().clone());
// 水位校验金额
planAstLog.setCheckCash(planAst.getCheckCash().clone());
planAstLog.setLastCheckCash(planAst.getCheckCash().clone());
// 银行余额
planAstLog.setBankBal(planAst.getBankBal().clone());
planAstLog.setLastBankBal(planAst.getLastBankBal().clone());
return planAstLog;
}
/**
* 变更水位金额变化
* @param planAst 需要变更的水位
* @param happenAmt 实际发生额
* @param extInf
*/
public void changeStageAndLog(PlanAst planAst, AstFlowTypeEnum flowType, Money happenAmt, Money clearToWayAmt, String extInf) {
if (happenAmt == null) {
throw new AbssqrInvalidParamException("当前发生金额不能为空");
}
// 不区分类型记录发生额
this.setHappenAmt(happenAmt);
switch (changeType) {
case ON_WAY:
// 流入流出金额在途记录
this.changeOnWay(planAst, flowType, happenAmt, 1);
// 扣减清算对应的 待结算金额
this.changeClear(planAst, flowType, clearToWayAmt, -1);
break;
case SUB:
// 扣减资金余额
this.changeCash(planAst, happenAmt, -1);
// 扣减流出在途金额
this.changeOnWay(planAst, flowType, happenAmt, -1);
break;
case ADD:
// 增加资金余额
this.changeCash(planAst, happenAmt, 1);
// 使用原在途金额 扣减流入在途金额
this.changeOnWay(planAst, flowType, happenAmt, -1);
break;
// 清算流水 转结算单
case CLEAR:
// 待结算金额变更 增加
this.changeClear(planAst, flowType, happenAmt, 1);
break;
default:
// 无变化
}
this.setExtInf(extInf);
/**
* 校验金额相等
*/
PlanAstChangeCheckerUtil.me().checkEqualFund(planAst, this);
}
/**
* 水位金额变化
*/
private void changeCash(PlanAst planAst, Money happenAmt, int sign) {
if (happenAmt.isZero()){
return;
}
planAst.getCash().addTo(happenAmt.multiply(sign));
this.setCashAmt(happenAmt.clone());
this.setCash(planAst.getCash().clone());
// 判断是否是资产流入 累计转让金额变化
if (this.getTransCode().getAstFlow() == AstFlowTypeEnum.FLOW_IN) {
planAst.getAccGrant().addTo(happenAmt);
this.setAccGrantAmt(happenAmt.clone());
this.setAccGrant(planAst.getAccGrant().clone());
}
}
/**
* 在途流入流出金额变化
*/
private void changeOnWay(PlanAst planAst, AstFlowTypeEnum flowType, Money happenAmt, int sign) {
if (happenAmt.isZero()){
return;
}
// // 排除资本调整 其他场景下不会有在途情况 所以 不需要排除
// if (this.getTransCode() == TransCodeEnum.CAP_INVEST
// || this.getTransCode() == TransCodeEnum.CAP_ADJ_ADD
// || this.getTransCode() == TransCodeEnum.CAP_ADJ_SUB) {
// return;
// }
switch (flowType) {
case FLOW_IN:
planAst.getRepoOnWay().addTo(happenAmt.multiply(sign));
this.setRepoOnWay(planAst.getRepoOnWay().clone());
break;
case FLOW_OUT:
planAst.getPayOnWay().addTo(happenAmt.multiply(sign));
this.setPayOnWay(planAst.getPayOnWay().clone());
break;
default:
// 无变化
}
}
/**
* 流入流出待结算金额变化
* @param planAst
* @param happenAmt
* @param sign
*/
private void changeClear(PlanAst planAst, AstFlowTypeEnum flowType, Money happenAmt, int sign) {
// 判断 分配兑付 资金调整 跳过待结算金额处理
if (this.getTransCode() == TransCodeEnum.ALLOC
|| this.getTransCode() == TransCodeEnum.CAP_INVEST
|| this.getTransCode() == TransCodeEnum.CAP_ADJ_ADD
|| this.getTransCode() == TransCodeEnum.CAP_ADJ_SUB) {
return;
}
if (happenAmt.isZero()){
return;
}
switch (flowType) {
case FLOW_IN:
planAst.getRepoClear().addTo(happenAmt.multiply(sign));
this.setRepoClear(planAst.getRepoClear().clone());
if (sign == 1) {
// 发生资金流入待结算+时 通过校验水位先增加水位金额
planAst.getCheckCash().addTo(happenAmt.clone());
}
break;
case FLOW_OUT:
planAst.getPayClear().addTo(happenAmt.multiply(sign));
this.setPayClear(planAst.getPayClear().clone());
if (sign == 1){
// 发生资金流出待结算+时 通过校验水位先减少水位金额
planAst.getCheckCash().subtractFrom(happenAmt.clone());
}
break;
default:
// 无变化
}
this.setCheckCash(planAst.getCheckCash().clone());
}
/**
* 银行余额变化
* @param planAst
* @param happenAmt
*/
public void bankSyncChangeStageAndLog(PlanAst planAst, Money happenAmt, Money bankBal, String extInf) {
// 设置银行余额
planAst.setLastBankBal(planAst.getBankBal().clone());
planAst.setBankBal(bankBal);
if (happenAmt.isZero()){
return;
}
switch (this.getTransCode().getFundFlow()) {
case FLOW_IN:
planAst.getCash().addTo(happenAmt.clone());
planAst.getCheckCash().addTo(happenAmt.clone());
break;
case FLOW_OUT:
planAst.getCash().subtractFrom(happenAmt.clone());
planAst.getCheckCash().subtractFrom(happenAmt.clone());
break;
default:
// 无变化
}
this.setCashAmt(happenAmt.clone());
this.setCash(planAst.getCash().clone());
this.setExtInf(extInf);
// 不区分类型记录发生额
this.setHappenAmt(happenAmt);
this.setBankBal(bankBal);
this.setCheckCash(planAst.getCheckCash().clone());
}
/**
* 冻结水位金额变化 冻结金额减少时 在途金额增加
* @param planAst 水位
* @param unFrozeAmt 解冻金额
* @param happenAmt 实际发生支付金额
* @param extInf 备注信息
*/
public void changeFrozenCash(PlanAst planAst, Money unFrozeAmt, Money happenAmt, String extInf) {
if (unFrozeAmt.isZero()){
return;
}
int sign;
switch (changeType) {
case FROZEN:
// 冻结水位增加 金额
sign = 1;
break;
case UNFROZEN:
// 分配 释放冻结 使用起初冻结的金额
sign = -1;
// 解冻金额时 通过实际发生支付金额扣减校验水位金额
planAst.getCheckCash().subtractFrom(happenAmt.clone());
this.setCheckCash(planAst.getCheckCash().clone());
break;
default:
return;
}
planAst.getFrozenCash().addTo(unFrozeAmt.multiply(sign));
this.setFrozenCashAmt(unFrozeAmt.clone());
this.setFrozenCash(planAst.getFrozenCash().clone());
this.setExtInf(extInf);
// 不区分类型记录发生额
this.setHappenAmt(unFrozeAmt);
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public TransCodeEnum getTransCode() {
return transCode;
}
public void setTransCode(TransCodeEnum transCode) {
this.transCode = transCode;
}
public StageChangeTypeEnum getChangeType() {
return changeType;
}
public void setChangeType(StageChangeTypeEnum changeType) {
this.changeType = changeType;
}
public Date getAccountDate() {
return accountDate;
}
public void setAccountDate(Date accountDate) {
this.accountDate = accountDate;
}
public Money getCash() {
return cash;
}
public void setCash(Money cash) {
this.cash = cash;
}
public Money getLastCash() {
return lastCash;
}
public void setLastCash(Money lastCash) {
this.lastCash = lastCash;
}
public Money getFrozenCash() {
return frozenCash;
}
public void setFrozenCash(Money frozenCash) {
this.frozenCash = frozenCash;
}
public Money getLastFrozenCash() {
return lastFrozenCash;
}
public void setLastFrozenCash(Money lastFrozenCash) {
this.lastFrozenCash = lastFrozenCash;
}
public Money getAccGrant() {
return accGrant;
}
public void setAccGrant(Money accGrant) {
this.accGrant = accGrant;
}
public Money getLastAccGrant() {
return lastAccGrant;
}
public void setLastAccGrant(Money lastAccGrant) {
this.lastAccGrant = lastAccGrant;
}
public String getExtInf() {
return extInf;
}
public void setExtInf(String extInf) {
this.extInf = extInf;
}
public Money getCashAmt() {
return cashAmt;
}
public void setCashAmt(Money cashAmt) {
this.cashAmt = cashAmt;
}
public Money getFrozenCashAmt() {
return frozenCashAmt;
}
public void setFrozenCashAmt(Money frozenCashAmt) {
this.frozenCashAmt = frozenCashAmt;
}
public Money getAccGrantAmt() {
return accGrantAmt;
}
public void setAccGrantAmt(Money accGrantAmt) {
this.accGrantAmt = accGrantAmt;
}
public Money getPayOnWay() {
return payOnWay;
}
public void setPayOnWay(Money payOnWay) {
this.payOnWay = payOnWay;
}
public Money getRepoOnWay() {
return repoOnWay;
}
public void setRepoOnWay(Money repoOnWay) {
this.repoOnWay = repoOnWay;
}
public Money getLastRepoOnWay() {
return lastRepoOnWay;
}
public void setLastRepoOnWay(Money lastRepoOnWay) {
this.lastRepoOnWay = lastRepoOnWay;
}
public Money getLastPayOnWay() {
return lastPayOnWay;
}
public void setLastPayOnWay(Money lastPayOnWay) {
this.lastPayOnWay = lastPayOnWay;
}
public Money getPayClear() {
return payClear;
}
public void setPayClear(Money payClear) {
this.payClear = payClear;
}
public Money getRepoClear() {
return repoClear;
}
public void setRepoClear(Money repoClear) {
this.repoClear = repoClear;
}
public Money getLastPayClear() {
return lastPayClear;
}
public void setLastPayClear(Money lastPayClear) {
this.lastPayClear = lastPayClear;
}
public Money getLastRepoClear() {
return lastRepoClear;
}
public void setLastRepoClear(Money lastRepoClear) {
this.lastRepoClear = lastRepoClear;
}
public Money getBankBal() {
return bankBal;
}
public void setBankBal(Money bankBal) {
this.bankBal = bankBal;
}
public Money getLastBankBal() {
return lastBankBal;
}
public void setLastBankBal(Money lastBankBal) {
this.lastBankBal = lastBankBal;
}
public Money getHappenAmt() {
return happenAmt;
}
public void setHappenAmt(Money happenAmt) {
this.happenAmt = happenAmt;
}
public String getTransBizNo() {
return transBizNo;
}
public void setTransBizNo(String transBizNo) {
this.transBizNo = transBizNo;
}
public TraderTypeEnum getTraderType() {
return traderType;
}
public void setTraderType(TraderTypeEnum traderType) {
this.traderType = traderType;
}
public Money getCheckCash() {
return checkCash;
}
public void setCheckCash(Money checkCash) {
this.checkCash = checkCash;
}
public Money getLastCheckCash() {
return lastCheckCash;
}
public void setLastCheckCash(Money lastCheckCash) {
this.lastCheckCash = lastCheckCash;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import com.abssqr.plat.common.facade.enums.OrgAstStatStatusEnum;
import com.abssqr.plat.common.model.domain.task.DispatcherNode;
import java.util.Date;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.domain.plan: PlanAstStatTask.java, v 0.1 2019-06-11 15:23 zhenxuan.luo Exp $
*/
public class PlanAstStatTask extends DispatcherNode {
private String planNo;
private Date accountDate;
private String lastExecTms;
private Long minId = 0L;
private Long maxId;
private Long cnt;
private OrgAstStatStatusEnum status;
@Override
public boolean needTrans() {
return false;
}
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public Date getAccountDate() {
return accountDate;
}
public void setAccountDate(Date accountDate) {
this.accountDate = accountDate;
}
public String getLastExecTms() {
return lastExecTms;
}
public void setLastExecTms(String lastExecTms) {
this.lastExecTms = lastExecTms;
}
public Long getMinId() {
return minId;
}
public void setMinId(Long minId) {
this.minId = minId;
}
public Long getMaxId() {
return maxId;
}
public void setMaxId(Long maxId) {
this.maxId = maxId;
}
public Long getCnt() {
return cnt;
}
public void setCnt(Long cnt) {
this.cnt = cnt;
}
public OrgAstStatStatusEnum getStatus() {
return status;
}
public void setStatus(OrgAstStatStatusEnum status) {
this.status = status;
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.domain.plan;
import java.util.Date;
import com.abssqr.plat.common.facade.enums.PlanTaskTypeEnum;
import com.general.system.common.model.BaseEntity;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.domain.plan: PlanTaskLog.java, v 0.1 2019-09-23 11:31 bangis.wangdf Exp $
*/
public class PlanTaskLog extends BaseEntity {
public PlanTaskLog() {
}
public PlanTaskLog(String planNo, PlanTaskTypeEnum taskType, Date execDate) {
this.planNo = planNo;
this.taskType = taskType;
this.execDate = execDate;
}
/**
* planNo PLAN_NO. 放款计划编号
*/
private String planNo;
/**
* taskType 任务类型.
*/
private PlanTaskTypeEnum taskType;
/**
* execDate 执行日期.
*/
private Date execDate;
public String getPlanNo() {
return planNo;
}
public void setPlanNo(String planNo) {
this.planNo = planNo;
}
public PlanTaskTypeEnum getTaskType() {
return taskType;
}
public void setTaskType(PlanTaskTypeEnum taskType) {
this.taskType = taskType;
}
public Date getExecDate() {
return execDate;
}
public void setExecDate(Date execDate) {
this.execDate = execDate;
}
}
...@@ -61,6 +61,9 @@ public enum IdTypeEnum implements IEnum { ...@@ -61,6 +61,9 @@ public enum IdTypeEnum implements IEnum {
AST_POOL_CODE("ASTPOOL","资产池编号"), AST_POOL_CODE("ASTPOOL","资产池编号"),
AST_PACK_CODE("ASTPACK","资产包编号"), AST_PACK_CODE("ASTPACK","资产包编号"),
ABS_PLAN("ABSPLAN","产品编号")
; ;
// //
......
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.ast;
import com.abssqr.plat.common.model.domain.plan.PlanAstStatTask;
import java.util.Date;
import java.util.List;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.repo.ast: OrgAstStatTaskRepo.java, v 0.1 2019-06-11 15:28 zhenxuan.luo Exp $
*/
public interface PlanAstStatTaskRepo {
/**
* 根据计划编号获取任务列表
*
* @param planNo
* @return
*/
PlanAstStatTask getPlanNo(String planNo);
/**
* 更新任务
*
* @return
*/
int updateTask(PlanAstStatTask task);
/**
*
* @return
*/
int updateHangTasksByIp(String ip);
/**
* 创建任务
*
* @param task
* @return
*/
int createTask(PlanAstStatTask task);
/**
*
* @param planNo
* @return
*/
PlanAstStatTask lock(String planNo);
List<PlanAstStatTask> getToDo(Date curTime, Integer limit);
int updateTaskExec(Date lastExecTime,String lastHost,List<String> planNos);
List<PlanAstStatTask> queryFailStatTask(Long execTimes);
/**
* 根据状态计数
* @param deadLine
* @param status
* @return
*/
Long countByStatusAndTime(Date deadLine, String status);
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.ast.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAstStatTaskDAO;
import com.abssqr.plat.common.model.convertor.PlanAstStatTaskConvert;
import com.abssqr.plat.common.model.domain.plan.PlanAstStatTask;
import com.abssqr.plat.common.model.repo.ast.PlanAstStatTaskRepo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.Date;
import java.util.List;
/**
*
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.repo.ast.impl: PlanAstStatTaskRepoImpl.java, v 0.1 2019-06-12 10:34 bangis.wangdf Exp $
*/
@Repository
public class PlanAstStatTaskRepoImpl implements PlanAstStatTaskRepo {
@Autowired
private PlanAstStatTaskDAO planAstStatTaskDAO;
/**
* 根据计划编号获取任务列表
*
* @param planNo
* @return
*/
@Override
public PlanAstStatTask getPlanNo(String planNo) {
return PlanAstStatTaskConvert.convert2Domain(planAstStatTaskDAO.getByPlanNo(planNo));
}
/**
* 更新任务
*
* @param task
* @return
*/
@Override
public int updateTask(PlanAstStatTask task) {
return planAstStatTaskDAO.updateTask(PlanAstStatTaskConvert.convert2DO(task));
}
/**
* @param ip
* @return
*/
@Override
public int updateHangTasksByIp(String ip) {
return planAstStatTaskDAO.updateHangTasksByIp(ip);
}
/**
* 创建任务
*
* @param task
* @return
*/
@Override
public int createTask(PlanAstStatTask task) {
if (task == null) {
return 0;
}
return planAstStatTaskDAO.insert(PlanAstStatTaskConvert.convert2DO(task));
}
/**
* @param planNo
* @return
*/
@Override
public PlanAstStatTask lock(String planNo) {
return PlanAstStatTaskConvert.convert2Domain(planAstStatTaskDAO.lockByPlanNo(planNo));
}
@Override
public List<PlanAstStatTask> getToDo(Date curTime, Integer limit) {
return PlanAstStatTaskConvert.convert2Domains(planAstStatTaskDAO.getToDo(curTime, limit));
}
@Override
public int updateTaskExec(Date lastExecTime, String lastHost, List<String> planNos) {
return planAstStatTaskDAO.updateTaskExec(lastExecTime, lastHost, planNos);
}
/**
* desc:查询执行次数超次数的统计任务.<br/>
* @param execTimes execTimes
* @return List<PlanAstStatTaskDO>
*/
@Override
public List<PlanAstStatTask> queryFailStatTask(Long execTimes){
return PlanAstStatTaskConvert.convert2Domains(planAstStatTaskDAO.queryFailStatTask(execTimes));
}
/**
* 根据状态计数
* @param deadLine
* @param status
* @return
*/
@Override
public Long countByStatusAndTime(Date deadLine,String status){
return planAstStatTaskDAO.countByStatusAndTime(deadLine,status);
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanAcctTitleLog;
import java.util.Date;
import java.util.List;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.repo.plan: PlanAcctTitleLogRepo.java, v 0.1 2019-07-01 00:09 zhenxuan.luo Exp $
*/
public interface PlanAcctTitleLogRepo {
/**
* 创建科目流水
* @return
*/
int insertBatch(List<PlanAcctTitleLog> logList);
/**
*
* @param planNo
* @param startDate
* @param endDate
* @return
*/
List<PlanAcctTitleLog> getByDate(String planNo, Date startDate, Date endDate);
/**
* 获取当日金融服务费
* @param accountDate
* @param planNo
* @return
*/
PlanAcctTitleLog getSettleFinFee(Date accountDate, String planNo);
/**
* 查询对应科目类型的流水
* @param accountDate
* @param planNo
* @param titleTypes
* @return
*/
PlanAcctTitleLog getAcctTitleByType(Date accountDate, String planNo, EventCodeEnum eventCode, List<TitleTypeEnum> titleTypes);
/**
* 根据计划事件码科目编号获取科目流水
* @param planNo
* @param titleNo
* @param accountDate
* @param eventCode
* @return
*/
List<PlanAcctTitleLog> getByEventAndTitleNo(String planNo, String titleNo, Date accountDate, EventCodeEnum eventCode);
/**
* 根据计划与事件码获取科目流水
* @param accountDate null时 查询所有时间下的科目流水
* @param planNo
* @param eventCode
* @return
*/
List<PlanAcctTitleLog> getByPlanAndEvent(Date accountDate, String planNo, EventCodeEnum eventCode, List<TitleTypeEnum> titleTypes);
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan;
import com.abssqr.plat.common.model.domain.plan.PlanAllocFrozen;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAllocFrozenRepo.java, v 0.1 2019-07-06 6:43 PM hanfei Exp $
*/
public interface PlanAllocFrozenRepo {
int insert(PlanAllocFrozen entity);
int insertBatch(List<PlanAllocFrozen> list);
int update(PlanAllocFrozen entity);
int deleteByAllocNo(String planNo, String allocNo);
/**
* 获取分配计划的冻结信息
* @param planNo planNo
* @param allocNo allocNo
* @return PlanAllocFrozenDO
*/
PlanAllocFrozen getByAllocNo(String planNo, String allocNo);
/**
* 查询计划所有分配冻结信息
* @param planNo
* @return
*/
List<PlanAllocFrozen> getByPlanNo(String planNo);
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstLogAmt;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanStatItem;
import com.abssqr.plat.common.facade.enums.StageChangeTypeEnum;
import com.abssqr.plat.common.facade.enums.TransCodeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanAstLog;
import java.util.Date;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAstLogRepository.java, v 0.1 2018-01-05 下午2:50 hanfei Exp $
*/
public interface PlanAstLogRepository {
/**
* desc:插入计划资产水位变更流水.<br/>
* @param planAstLog planAstLog
* @return boolean
*/
int create(PlanAstLog planAstLog);
int createBatch(List<PlanAstLog> logs);
/**
*
* @param endDate
* @param startDate
* @param planNo
* @param transCode
* @return
*/
List<PlanStatItem> getStatByTransCode(Date endDate, Date startDate, String planNo, TransCodeEnum transCode, StageChangeTypeEnum changeType);
/**
*
* @param accountDate
* @param planNo
* @return
*/
List<PlanStatItem> getAstLogStat(Date accountDate, String planNo);
/**
* 获取水位变化总额
* @param accountDate 会计日
* @param planNo 计划编号
* @param transCode 交易码
* @return
*/
List<AstLogAmt> getAmtByPlanNo(Date accountDate, String planNo, TransCodeEnum transCode);
}
...@@ -34,20 +34,11 @@ public interface PlanRepo { ...@@ -34,20 +34,11 @@ public interface PlanRepo {
/** /**
* 计划是否存在 * 计划是否存在
* * @param planFllName
* @param planNo * @param planName
* @return * @return
*/ */
Integer planExist(String planNo,String planName); Integer planExist(String planFllName,String planName);
/**
* 计划 判断是否存在,不存在返回true
*
* @param planNo
* @return
*/
Integer getSamePlan(String planNo,String planName);
/** /**
* 新增计划 * 新增计划
...@@ -64,134 +55,12 @@ public interface PlanRepo { ...@@ -64,134 +55,12 @@ public interface PlanRepo {
*/ */
void updatePlan(PlanBase plan); void updatePlan(PlanBase plan);
/**
* 修改原表审批状态
* @param planNo
* @param gmtModifier
* @param approveStatus
*/
void updateStatusByPlanNo(String planNo, String gmtModifier, ApproveStatusEnum approveStatus);
/**
* 修改原表计划状态
* @param planNo
* @param status
* @param approveStatus
*/
void updateStatus(String planNo,PlanStatusEnum status,ApproveStatusEnum approveStatus);
/** /**
* 修改原表Passed
* @param planNo
* @param passed
*/
void updatePassed(String planNo,Boolean passed);
/**
* 获取计划 * 获取计划
* @param planNo * @param planNo
* @return * @return
*/ */
PlanBase getPlanByNo(String planNo); PlanBase getPlanByNo(String planNo);
/**
* 获取所计划
* @param planNo
* @return
*/
PlanBase lockPlanByNo(String planNo);
/**
* 查询
* @param planNos
* @return
*/
<T extends PlanBase> List<T> getPlanByPlanNos(List<String> planNos,PlanTypeEnum planType, PlanStatusEnum status);
/**
* 查询
* @param planNos
* @return
*/
<T extends PlanBase> List<T> getPlanByPlanNos(List<String> planNos,PlanTypeEnum planType, List<PlanStatusEnum> statusList);
/**
* 获取所有存续期的计划
*
* @return
*/
<T extends PlanBase> List<T> getPlansByStatus(PlanTypeEnum planType, PlanStatusEnum status);
/**
* 获取所有存续期和准备中的计划
*
* @param statusList
* @return
*/
<T extends PlanBase> List<T> getPlansByStatusList(PlanTypeEnum planType,List<PlanStatusEnum> statusList);
/**
* 获取指定计划状态下的规模
* @param planStatusEnum
* @return
*/
Long getAllPlanAmt(PlanTypeEnum planType,PlanStatusEnum planStatusEnum);
/**
* 查询计划名称
* @param planNos
* @return
*/
Map<String, String> getPlanNames(List<String> planNos);
/**
* 获取放款计划编号
* @param ownOrgs
* @return
*/
Map<String,List<String>> getPlanBySpvs(List<String> ownOrgs);
/**
* 获取放款计划编号
* @param spvPlanNo
* @return
*/
List<String> getPlanNosBySpvNo(String spvPlanNo);
/**
*
* 根据服务机构获取存续期放款计划
* @param managerOrgCode
* @return
*/
List<OrganizationEntity> getSpvByManagerOrgCode(String managerOrgCode);
/**
* 查询每日任务失败的数量
* @param curDate
* @return
*/
Long getFailDailyCount(Date curDate);
/**
* 更新定价类型
* @return
*/
Long updatePirceType(String planNo, PriceTypeEnum priceType);
/**
* 删除计划信息
* @param planNo
* @return
*/
int deleteByPlanNo(String planNo);
List<PlanBase> getAllPlanAstByType(String planType);
/**
* 通过map 缓存plan
* @param planMap
* @param planNo
* @return
*/
PlanBase getPlanByMapCache(Map<String, PlanBase> planMap, String planNo);
} }
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.abssqr.plat.common.facade.enums.PlanTaskTypeEnum;
import com.abssqr.plat.common.model.domain.plan.PlanTaskLog;
/**
* 计划任务仓储
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.repo.plan: PlanTaskLogRepo.java, v 0.1 2019-09-23 11:27 bangis.wangdf Exp $
*/
public interface PlanTaskLogRepo {
/**
* 创建任务
* @param task
* @return
*/
int createTask(PlanTaskLog task);
/**
* 创建任务
* @param tasks
* @return
*/
int createTasks(List<PlanTaskLog> tasks);
/**
* 获取任务
* @param planNo
* @param bizDate
* @return
*/
PlanTaskLog getTask(String planNo, Date bizDate, PlanTaskTypeEnum taskType);
/**
* 获取当天完成的放款计划
* @param bizDate
* @param taskType
* @return
*/
List<PlanTaskLog> getTasks(Date bizDate, PlanTaskTypeEnum taskType);
/**
* 获取当天完成的放款计划
* @param bizDate
* @param taskType
* @return
*/
Map<String,PlanTaskLog> getTaskMap(Date bizDate, PlanTaskTypeEnum taskType);
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAcctTitleLogDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAcctTitleLogDO;
import com.abssqr.plat.common.facade.enums.CalcTypeEnum;
import com.abssqr.plat.common.facade.enums.EventCodeEnum;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.model.convertor.PlanAcctTitleLogConvertor;
import com.abssqr.plat.common.model.domain.plan.PlanAcctTitleLog;
import com.abssqr.plat.common.model.repo.plan.PlanAcctTitleLogRepo;
import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.repo.plan.impl: PlanAcctTitleLogRepoImpl.java, v 0.1 2019-07-01 00:10 zhenxuan.luo Exp $
*/
@Component
public class PlanAcctTitleLogRepoImpl implements PlanAcctTitleLogRepo {
@Autowired
private PlanAcctTitleLogDAO planAcctTitleLogDAO;
@Override
public int insertBatch(List<PlanAcctTitleLog> logList) {
if (CollectionUtils.isEmpty(logList)) {
return 0;
}
List<PlanAcctTitleLogDO> dos = Lists.newArrayList();
for (PlanAcctTitleLog planAcctTitleLog : logList) {
dos.add(PlanAcctTitleLogConvertor.convert2DO(planAcctTitleLog));
}
return planAcctTitleLogDAO.insertBatch(dos);
}
@Override
public List<PlanAcctTitleLog> getByDate(String planNo, Date startDate, Date endDate) {
List<PlanAcctTitleLogDO> dos = planAcctTitleLogDAO.getByDate(endDate, startDate, planNo);
List<PlanAcctTitleLog> ret = Lists.newArrayList();
for (PlanAcctTitleLogDO logDO : dos) {
ret.add(PlanAcctTitleLogConvertor.convert2Domain(logDO));
}
return ret;
}
@Override
public PlanAcctTitleLog getSettleFinFee(Date accountDate, String planNo) {
PlanAcctTitleLogDO dos = planAcctTitleLogDAO.getTitleLogByCondition(
accountDate, planNo, CalcTypeEnum.FIN_SER_FEE.getCode(), EventCodeEnum.TITLE_SETTLE.getCode());
PlanAcctTitleLog result = PlanAcctTitleLogConvertor.convert2Domain(dos);
return result;
}
/**
* 查询对应科目类型的流水
* @param accountDate
* @param planNo
* @param titleTypes
* @return
*/
@Override
public PlanAcctTitleLog getAcctTitleByType(Date accountDate, String planNo, EventCodeEnum eventCode, List<TitleTypeEnum> titleTypes) {
List<String> codes = titleTypes.stream().map(TitleTypeEnum::getCode).collect(Collectors.toList());
PlanAcctTitleLogDO titleLogDO = planAcctTitleLogDAO.getSummaryAcctTitleByTypes(accountDate, planNo, eventCode.getCode(), codes);
return PlanAcctTitleLogConvertor.convert2Domain(titleLogDO);
}
@Override
public List<PlanAcctTitleLog> getByEventAndTitleNo(String planNo, String titleNo, Date accountDate, EventCodeEnum eventCode) {
List<PlanAcctTitleLogDO> dos = planAcctTitleLogDAO.getByEventAndTitleNo(accountDate, planNo, titleNo, eventCode.getCode());
return PlanAcctTitleLogConvertor.convert2Domains(dos);
}
/**
* desc:根据计划与事件码获取科目流水.<br/>
* @param accountDate accountDate
* @param planNo planNo
* @param eventCode eventCode
* @return List<PlanAcctTitleLogDO>
*/
@Override
public List<PlanAcctTitleLog> getByPlanAndEvent(Date accountDate, String planNo, EventCodeEnum eventCode, List<TitleTypeEnum> titleTypes){
List<String> codes = titleTypes.stream().map(TitleTypeEnum::getCode).collect(Collectors.toList());
List<PlanAcctTitleLogDO> dos = planAcctTitleLogDAO.getByPlanAndEvent(accountDate, planNo, eventCode.getCode(), codes);
return PlanAcctTitleLogConvertor.convert2Domains(dos);
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAcctTitleDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAcctTitleDO;
import com.abssqr.plat.common.facade.enums.TitleTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
import com.abssqr.plat.common.model.convertor.PlanAcctTitleConvertor;
import com.abssqr.plat.common.model.repo.plan.PlanAcctTitleRepo;
import com.general.system.common.util.VarChecker;
import com.google.common.collect.Lists;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.stream.Collectors;
/**
*
* @author zhenxuan.luo
* @version com.abssqr.plat.common.model.repo.plan.impl: PlanAccountTitleRepoImpl.java, v 0.1 2019-05-31 17:48 zhenxuan.luo Exp $
*/
@Component
public class PlanAcctTitleRepoImpl implements PlanAcctTitleRepo {
@Autowired
private PlanAcctTitleDAO planAcctTitleDAO;
@Override
public int insert(PlanAcctTitle entity) {
if (entity == null) {
return 0;
}
return planAcctTitleDAO.insert(PlanAcctTitleConvertor.convert2DO(entity));
}
@Override
public int insertBatch(List<PlanAcctTitle> list) {
if (CollectionUtils.isEmpty(list)) {
return 0;
}
List<PlanAcctTitleDO> acctTitleDOS = Lists.newArrayList();
for (PlanAcctTitle planAccountTitle : list) {
acctTitleDOS.add(PlanAcctTitleConvertor.convert2DO(planAccountTitle));
}
return planAcctTitleDAO.insertBatch(acctTitleDOS);
}
@Override
public int updateAmt(PlanAcctTitle entity) {
if (null == entity) {
return 0;
}
return planAcctTitleDAO.updateAmt(PlanAcctTitleConvertor.convert2DO(entity));
}
@Override
public List<PlanAcctTitle> getByEntityNo(String planNo) {
List<PlanAcctTitle> res = Lists.newArrayList();
List<PlanAcctTitleDO> doList = planAcctTitleDAO.getByPlan(planNo);
for (PlanAcctTitleDO planAcctTitleDO : doList) {
res.add(PlanAcctTitleConvertor.convert2Domain(planAcctTitleDO));
}
return res;
}
@Override
public PlanAcctTitle getByTitleNo(String planNo, String titleNo) {
return PlanAcctTitleConvertor.convert2Domain(planAcctTitleDAO.getByTitleNo(planNo, titleNo));
}
/**
* 根据计划查询列表
*
* @param planNo
* @param titleTypeEnums
* @return
*/
@Override
public List<PlanAcctTitle> getTitleNames(String planNo, List<TitleTypeEnum> titleTypeEnums) {
List<PlanAcctTitle> res = Lists.newArrayList();
List<String> collect = titleTypeEnums.stream().map(TitleTypeEnum::getCode).collect(Collectors.toList());
List<PlanAcctTitleDO> doList = planAcctTitleDAO.getByPlanAndTypes(planNo,collect);
for (PlanAcctTitleDO planAcctTitleDO : doList) {
res.add(PlanAcctTitleConvertor.convert2Domain(planAcctTitleDO));
}
return res;
}
@Override
public List<PlanAcctTitle> getAcctFinFeeTitles(List<String> planNos) {
List<PlanAcctTitle> res = Lists.newArrayList();
List<PlanAcctTitleDO> doList = planAcctTitleDAO.getFinFeesByPlan(planNos);
for (PlanAcctTitleDO planAcctTitleDO : doList) {
res.add(PlanAcctTitleConvertor.convert2Domain(planAcctTitleDO));
}
return res;
}
@Override
public int cleanByPlanNo(String planNo){
VarChecker.checkNotNull(planNo);
return planAcctTitleDAO.deleteByPlanNo(planNo);
}
}
\ No newline at end of file
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAllocFrozenDAO;
import com.abssqr.plat.common.model.convertor.PlanAllocFrozenConvert;
import com.abssqr.plat.common.model.domain.plan.PlanAllocFrozen;
import com.abssqr.plat.common.model.repo.plan.PlanAllocFrozenRepo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAllocFrozenRepoImpl.java, v 0.1 2019-07-06 6:43 PM hanfei Exp $
*/
@Component
public class PlanAllocFrozenRepoImpl implements PlanAllocFrozenRepo {
@Autowired
private PlanAllocFrozenDAO planAllocFrozenDAO;
/**
* desc:插入表:abs_plan_alloc_frozen.<br/>
* @param entity entity
* @return int
*/
@Override
public int insert(PlanAllocFrozen entity){
return planAllocFrozenDAO.insert(PlanAllocFrozenConvert.convert2DO(entity));
}
/**
* desc:批量插入表:abs_plan_alloc_frozen.<br/>
* @param list list
* @return int
*/
@Override
public int insertBatch(List<PlanAllocFrozen> list){
return planAllocFrozenDAO.insertBatch(PlanAllocFrozenConvert.convert2DOs(list));
}
/**
* 更新
* @param entity
* @return
*/
@Override
public int update(PlanAllocFrozen entity){
return planAllocFrozenDAO.update(PlanAllocFrozenConvert.convert2DO(entity));
}
/**
* desc:根据主键删除数据:abs_plan_alloc_frozen.<br/>
* @param planNo planNo
* @param allocNo allocNo
* @return int
*/
@Override
public int deleteByAllocNo(String planNo, String allocNo){
return planAllocFrozenDAO.deleteByAllocNo(planNo, allocNo);
}
/**
* 获取分配计划的冻结信息
* @param planNo planNo
* @param allocNo allocNo
* @return PlanAllocFrozenDO
*/
@Override
public PlanAllocFrozen getByAllocNo(String planNo, String allocNo){
return PlanAllocFrozenConvert.convert2Domain(planAllocFrozenDAO.getByAllocNo(planNo, allocNo));
}
/**
* 查询计划所有分配冻结信息
* @param planNo
* @return
*/
@Override
public List<PlanAllocFrozen> getByPlanNo(String planNo) {
return PlanAllocFrozenConvert.convert2Domains(planAllocFrozenDAO.getByPlanNo(planNo));
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2019 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAllocDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAllocItemDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocDO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAllocItemDO;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanAllocItemResultMap;
import com.abssqr.plat.common.facade.enums.AllocTypeEmun;
import com.abssqr.plat.common.facade.enums.PlanAllocStatusEnum;
import com.abssqr.plat.common.facade.enums.PlanTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAcctTitle;
import com.abssqr.plat.common.facade.model.plan.PlanAlloc;
import com.abssqr.plat.common.facade.model.plan.PlanAllocItem;
import com.abssqr.plat.common.model.convertor.PlanAllocConvert;
import com.abssqr.plat.common.model.repo.plan.PlanAcctTitleRepo;
import com.abssqr.plat.common.model.repo.plan.PlanAllocRepo;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.model.Money;
import com.general.system.common.util.VarChecker;
import com.general.system.tool.util.ToolUtil;
import com.google.common.collect.Maps;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.repo.plan.impl: PlanAllocRepoImpl.java, v 0.1 2019-06-03 16:55 bangis.wangdf
* Exp $
*/
@Repository
public class PlanAllocRepoImpl implements PlanAllocRepo {
@Autowired
private PlanAllocDAO planAllocDAO;
@Autowired
private PlanAllocItemDAO planAllocItemDAO;
@Autowired
private PlanAcctTitleRepo planAcctTitleRepo;
/**
* 获取分配计划
*
* @param planNo
* @return
*/
@Override
public List<PlanAlloc> queryByPlanNo(String planNo) {
List<PlanAllocDO> planAllocDOS = planAllocDAO.queryByPlanNo(planNo);
List<PlanAlloc> result = PlanAllocConvert.convertDomains(planAllocDOS);
this.fullItems(planNo, result);
return result;
}
/**
* 获取未分配的分配计划
*
* @param planNo
* @return
*/
@Override
public List<PlanAlloc> queryUnassigneAllocByPlanNo(String planNo) {
List<PlanAllocDO> planAllocDOS = planAllocDAO.queryAllocByPlanNo(null, null, planNo,
PlanAllocStatusEnum.UNASSIGNE.getCode());
List<PlanAlloc> result = PlanAllocConvert.convertDomains(planAllocDOS);
this.fullItems(planNo, result);
return result;
}
@Override
public void insertPlanAllocs(List<PlanAlloc> allocs) {
if(CollectionUtils.isNotEmpty(allocs)) {
List<PlanAllocDO> entites = PlanAllocConvert.convertDos(allocs);
planAllocDAO.insertBatch(entites);
List<PlanAllocItemDO> itemEntites = PlanAllocConvert.convertItemDos(allocs);
planAllocItemDAO.insertBatch(itemEntites);
}
}
@Override
public PlanAlloc getPlanAllocDetail(String allocNo) {
PlanAllocDO planAllocDO = planAllocDAO.getByAllocNo(allocNo);
VarChecker.checkNotNull(planAllocDO, "[{0}]找不到对应的分配计划", allocNo);
List<PlanAllocItemResultMap> itemResultMaps = planAllocItemDAO.getByAllocNoList(allocNo);
PlanAlloc planAlloc = PlanAllocConvert.convertDomain(planAllocDO);
if (CollectionUtils.isNotEmpty(itemResultMaps)) {
planAlloc.setPlanAllocItemList(
itemResultMaps.stream().map(resultMap -> PlanAllocConvert.convertItemDomain(resultMap)).collect(
Collectors.toList()));
}
return planAlloc;
}
@Override
public void addOrUpdate(PlanAlloc alloc, boolean upd) {
PlanAllocDO planAllocDO = PlanAllocConvert.convert2Do(alloc);
if (upd) {
planAllocDAO.updateByAllocNo(planAllocDO);
} else {
planAllocDAO.insert(planAllocDO);
}
//分配事项不为空则更新事项
if (CollectionUtils.isNotEmpty(alloc.getPlanAllocItemList())) {
//更新事项列表
this.allocTitleItemUpdate(alloc);
}
}
/**
* 更新事项
* @param alloc
*/
private void allocTitleItemUpdate(PlanAlloc alloc){
//先获取之前金额,在删除
Map<String, Long> titleSettleAmtMap = planAllocItemDAO.getByAllocNo(alloc.getAllocNo());
planAllocItemDAO.deleteByAllocNo(alloc.getAllocNo());
if (CollectionUtils.isNotEmpty(alloc.getPlanAllocItemList())) {
List<PlanAllocItemDO> itemEntites = PlanAllocConvert.convertItemDomain2Dos(alloc.getPlanNo(),
alloc.getAllocNo(), alloc.getPlanAllocItemList(), titleSettleAmtMap);
planAllocItemDAO.insertBatch(itemEntites);
}
}
/**
* 删除分配方案
*
* @param allocNo
* @return
*/
@Override
public int delete(String allocNo) {
int itemCnt = planAllocItemDAO.deleteByAllocNo(allocNo);
int cnt = planAllocDAO.deleteByAllocNo(allocNo);
return itemCnt + cnt;
}
/**
* 删除分配事项
*
* @param itemNo
* @return
*/
@Override
public int deleteAllocItem(String itemNo) {
return planAllocItemDAO.deleteByItemNo(itemNo);
}
/**
* 分配计划改为已分配
*
* @param allocNo
* @param allocStatus
* @return
*/
@Override
public Boolean planAllocDetailAssigned(String allocNo, PlanAllocStatusEnum allocStatus) {
PlanAllocDO allocDO = planAllocDAO.getByAllocNo(allocNo);
int i = planAllocDAO.updateStatus(allocStatus.getCode(), allocNo, allocDO.getStatus());
return i == 1;
}
@Override
public PlanAlloc queryRecentlyPlans(PlanTypeEnum planType) {
PlanAllocDO allocDO = planAllocDAO.queryRecentlyPlans(planType.getCode());
PlanAlloc planAlloc = PlanAllocConvert.convertDomain(allocDO);
return planAlloc;
}
@Override
public int updateAllocStatus(PlanAlloc alloc){
PlanAllocDO planAllocDO = PlanAllocConvert.convert2Do(alloc);
return planAllocDAO.updateByAllocNo(planAllocDO);
}
@Override
public int querySameClearDate(Date clearDate,String planNo, String allocNo){
return planAllocDAO.querySameClearDate(clearDate, planNo, allocNo);
}
@Override
public PlanAlloc lockByAllocNo(String allocNo) {
PlanAllocDO planAllocDO = planAllocDAO.lockByAllocNo(allocNo);
return PlanAllocConvert.convertDomain(planAllocDO);
}
/**
* 查询审批通过并且未分配的时间段分配金额统计
* @param startDate
* @param endDate
* @param planNo
* @return
*/
@Override
public Money queryStatAllocAmtByPlanNoAndPayDate(Date startDate, Date endDate, String planNo) {
Long amt = planAllocDAO.queryStatAllocAmtByPlanNoAndPayDate(endDate, startDate, planNo,
PlanAllocStatusEnum.UNASSIGNE.getCode(),
ApproveStatusEnum.PASSED.getCode());
return Money.createWithCent(amt);
}
/**
* 根据计划编号获取累计分配金额
* @param planNos
* @return
*/
@Override
public Money queryStatTotalAllocAmtByPlanNos(List<String> planNos) {
if (ToolUtil.isEmpty(planNos)){
return new Money();
}
Long amt = planAllocDAO.queryStatTotalAllocAmtByPlanNos(null, null,
PlanAllocStatusEnum.UNASSIGNE.getCode(),
ApproveStatusEnum.PASSED.getCode(), planNos);
return Money.createWithCent(amt);
}
@Override
public void insertPlanAllocItem(PlanAllocItem allocItem, String planNo, String allocNo) {
PlanAllocItemDO planAllocItemDO = PlanAllocConvert.convertItemDo(allocItem, planNo, allocNo);
planAllocItemDAO.insert(planAllocItemDO);
}
@Override
public void cleanByPlanNo(String planNo){
if (planNo != null) {
planAllocDAO.deleteByPlanNo(planNo);
planAllocItemDAO.deleteByPlanNo(planNo);
}
}
@Override
public List<PlanAlloc> queryUnMatchedApprovedAlloc(String planNo) {
List<PlanAllocDO> planAllocDOS = planAllocDAO.queryUnMatchedApprovedAlloc(planNo);
List<PlanAlloc> planAllocs = PlanAllocConvert.convertDomains(planAllocDOS);
return planAllocs;
}
private void fullItems(String planNo, List<PlanAlloc> result){
if (CollectionUtils.isNotEmpty(result)) {
//获取分配明细
Map<String, List<PlanAllocItemResultMap>> allocItemMapList = planAllocItemDAO.getByPlanNo(planNo);
result.forEach(planAlloc -> {
List<PlanAllocItemResultMap> itemResultMaps = allocItemMapList.get(planAlloc.getAllocNo());
if (CollectionUtils.isNotEmpty(itemResultMaps)) {
planAlloc.setPlanAllocItemList(
itemResultMaps.stream().map(resultMap -> PlanAllocConvert.convertItemDomain(resultMap)).collect(
Collectors.toList()));
}
});
}
}
@Override
public Map<String,Money> queryApprovedNotPayMoneyGroupByLayerNo(String planNo){
List<PlanAcctTitle> byEntityNo = planAcctTitleRepo.getByEntityNo(planNo);
Map<String, PlanAcctTitle> titleNosMap = byEntityNo.stream()
.collect(Collectors.toMap(PlanAcctTitle::getTitleNo,item->item));
Map<String,Money> titlePayMoneyMap = Maps.newHashMap();
List<PlanAllocDO> planAllocDOS = planAllocDAO.queryApprovedNotPayAlloc(planNo);
if (CollectionUtils.isNotEmpty(planAllocDOS)) {
List<PlanAlloc> planAllocs = PlanAllocConvert.convertDomains(planAllocDOS);
fullItems(planNo, planAllocs);
planAllocs.forEach(alloc -> {
alloc.getPlanAllocItemList().forEach(item -> {
if (item.getAllocType() == AllocTypeEmun.PRIN) {
Money money = titlePayMoneyMap.get(item.getRelNo());
if (money == null) {
money = new Money();
PlanAcctTitle planAcctTitle = titleNosMap.get(item.getTitleNo());
VarChecker.checkNotNull(planAcctTitle, "[PlanAllocRepoImpl] - 科目[{0}]不存在", item.getTitleNo());
titlePayMoneyMap.put(planAcctTitle.getRefNo(), money);
}
money.addTo(item.getConfirmAmt());
}
});
});
}
return titlePayMoneyMap;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanAstLogDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanAstLogDO;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.AstLogAmt;
import com.abssqr.plat.common.dal.mysql.auto.resultmap.PlanStatItem;
import com.abssqr.plat.common.facade.enums.StageChangeTypeEnum;
import com.abssqr.plat.common.facade.enums.TransCodeEnum;
import com.abssqr.plat.common.model.convertor.PlanAstLogConvert;
import com.abssqr.plat.common.model.domain.plan.PlanAstLog;
import com.abssqr.plat.common.model.repo.plan.PlanAstLogRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.Date;
import java.util.List;
/**
*
* @author hanfei
* @version $Id: PlanAstLogRepositoryImpl.java, v 0.1 2018-01-05 下午2:50 hanfei Exp $
*/
@Repository
public class PlanAstLogRepositoryImpl implements PlanAstLogRepository {
@Autowired
private PlanAstLogDAO planAstLogDAO;
/**
* desc:插入计划资产水位变更流水.<br/>
* @param request request
* @return boolean
*/
@Override
public int create(PlanAstLog request) {
PlanAstLogDO entity = PlanAstLogConvert.convert2DO(request);
return planAstLogDAO.insert(entity);
}
@Override
public int createBatch(List<PlanAstLog> logs) {
return planAstLogDAO.insertBatch(PlanAstLogConvert.convert2DOs(logs));
}
@Override
public List<PlanStatItem> getStatByTransCode(Date endDate, Date startDate, String planNo, TransCodeEnum transCode, StageChangeTypeEnum changeType) {
return planAstLogDAO.getStatByTransCode(endDate, startDate, planNo, transCode.getCode(), changeType.getCode());
}
@Override
public List<PlanStatItem> getAstLogStat(Date accountDate, String planNo) {
return planAstLogDAO.getAstLogStat(accountDate, planNo);
}
@Override
public List<AstLogAmt> getAmtByPlanNo(Date accountDate, String planNo, TransCodeEnum transCode){
return planAstLogDAO.getAmtByPlanNoAndActDateAndTransCode(accountDate, planNo, transCode==null?null:transCode.getCode());
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanFeeStructureDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanFeeStructureDO;
import com.abssqr.plat.common.facade.model.plan.FeeStructure;
import com.abssqr.plat.common.model.convertor.PlanFeeStructureConvert;
import com.abssqr.plat.common.model.repo.plan.PlanFeeStructureRepo;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author yaphet
* @version com.abssqr.admin.common.model.repo.plan.impl: FeeStructureRepoImpl.java, v 0.1 2018-01-19 下午4:54 yaphet
* Exp $
*/
@Repository
public class PlanFeeStructureRepoImpl implements PlanFeeStructureRepo {
@Autowired
private PlanFeeStructureDAO planFeeStructureDAO;
/**
* 获取计划费用结构
*
* @param planNo
* @return
*/
@Override
public List<FeeStructure> selectByPlanNo(String planNo) {
List<PlanFeeStructureDO> planFeeStructureDOS = planFeeStructureDAO.selectByPlanNo(planNo);
return PlanFeeStructureConvert.convert2FeeStructureDomainList(planFeeStructureDOS);
}
@Override
public void cleanByPlanNo(String planNo) {
planFeeStructureDAO.deleteByPlanNo(planNo);
}
/**
* 增加计划费用
*
* @param planNo
* @param feeStructureList
*/
@Override
public void add(String planNo, List<FeeStructure> feeStructureList) {
List<PlanFeeStructureDO> planFeeStructureDOS = PlanFeeStructureConvert.convert2Dos(planNo,
feeStructureList);
if (CollectionUtils.isNotEmpty(planFeeStructureDOS)) {
planFeeStructureDAO.insertBatch(planFeeStructureDOS);
}
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanInvestStructureDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanInvestStructureDO;
import com.abssqr.plat.common.facade.model.plan.InvestStructure;
import com.abssqr.plat.common.model.convertor.PlanInvestStructureConvert;
import com.abssqr.plat.common.model.repo.plan.PlanInvestStructureRepo;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author yaphet
* @version com.abssqr.admin.common.model.repo.plan.impl: InvestStructureRepoImpl.java, v 0.1 2018-01-20 下午6:31
* yaphet Exp $
*/
@Repository
public class PlanInvestStructureRepoImpl implements PlanInvestStructureRepo {
@Autowired
private PlanInvestStructureDAO planInvestStructureDAO;
/**
* 获取投资结构
*
* @param planNo
* @return
*/
@Override
public List<InvestStructure> selectByPlanNo(String planNo) {
List<PlanInvestStructureDO> planInvestStructureDOS = planInvestStructureDAO.selectByPlanNo(planNo);
return (PlanInvestStructureConvert.convert2InvestStructureDomainList(planInvestStructureDOS));
}
/**
* 根据计划清理投资结构
*
* @param planNo
*/
@Override
public void cleanByPlanNo(String planNo) {
planInvestStructureDAO.deleteByPlanNo(planNo);
}
/**
* 增加投资结构
*
* @param planNo
* @param investStructures
*/
@Override
public void add(String planNo, List<InvestStructure> investStructures) {
List<PlanInvestStructureDO> planInvestStructureDOS = PlanInvestStructureConvert.convert2Dos(
planNo, investStructures);
if (CollectionUtils.isNotEmpty(planInvestStructureDOS)) {
planInvestStructureDAO.insertBatch(planInvestStructureDOS);
}
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2018 All Rights Reserved.
*/
package com.abssqr.plat.common.model.repo.plan.impl;
import com.abssqr.plat.common.dal.mysql.auto.dao.OrganizationEntityDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanDAO;
import com.abssqr.plat.common.dal.mysql.auto.dao.PlanTranScreenRelDAO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.OrganizationEntityDO;
import com.abssqr.plat.common.dal.mysql.auto.dataobject.PlanDO;
import com.abssqr.plat.common.dal.mysql.auto.paging.PlanListPage;
import com.abssqr.plat.common.facade.enums.PlanStatusEnum;
import com.abssqr.plat.common.facade.enums.PlanTypeEnum;
import com.abssqr.plat.common.facade.enums.PriceTypeEnum;
import com.abssqr.plat.common.facade.enums.YNEnum;
import com.abssqr.plat.common.facade.model.org.OrganizationEntity;
import com.abssqr.plat.common.facade.model.plan.PlanBase;
import com.abssqr.plat.common.facade.model.prod.LoanProduct;
import com.abssqr.plat.common.model.convertor.PlanConvert;
import com.abssqr.plat.common.model.repo.plan.PlanRepo;
import com.abssqr.plat.common.model.repo.prod.LoanProdRepository;
import com.abssqr.plat.common.model.utils.TextUtil;
import com.general.system.bpm.enums.ApproveStatusEnum;
import com.general.system.common.util.VarChecker;
import com.general.system.tool.util.ToolUtil;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @author bangis.wangdf
* @version com.abssqr.plat.common.model.repo.plan: PlanRepositoryImpl.java, v 0.1 2018-01-04 16:06 hongwei.wang Exp $
*/
@Repository
public class PlanRepoImpl implements PlanRepo {
@Autowired
PlanDAO planDAO;
@Autowired
OrganizationEntityDAO organizationEntityDAO;
@Autowired
PlanTranScreenRelDAO planTranScreenRelDAO;
@Autowired
LoanProdRepository loanProdRepository;
/**
* 分页查询获取计划列表
*
* @param planList
* @return
*/
@Override
public PlanListPage getPlanList(PlanListPage planList) {
return planDAO.getPlanList(planList);
}
/**
* 计划是否存在
*
* @param planNo
* @return
*/
@Override
public Integer planExist(String planNo, String planName) {
return planDAO.planExist(planNo, planName);
}
@Override
public Integer getSamePlan(String planNo, String planName) {
return planDAO.getSamePlan(planNo, planName);
}
/**
* 新增计划
*
* @param plan
* @return
*/
@Override
public void addPlan(PlanBase plan) {
PlanDO planDO = PlanConvert.convert2Do(plan);
planDAO.insert(planDO);
if (plan.getPlanType() == PlanTypeEnum.SPV && plan instanceof OrganizationEntity) {
OrganizationEntityDO entityDO = convert2EntityDO((OrganizationEntity) plan);
organizationEntityDAO.insert(entityDO);
}
}
/**
* 修改计划
*
* @param plan
*/
@Override
public void updatePlan(PlanBase plan) {
PlanDO planDO = PlanConvert.convert2Do(plan);
planDAO.updateByPlanNo(planDO);
if (plan.getPlanType() == PlanTypeEnum.SPV && plan instanceof OrganizationEntity) {
OrganizationEntityDO entityDO = convert2EntityDO((OrganizationEntity) plan);
organizationEntityDAO.updateByEntityCode(entityDO);
}
}
@Override
public void updateStatusByPlanNo(String planNo, String gmtModifier, ApproveStatusEnum approveStatus) {
String approveStatusCode = approveStatus == null ? null : approveStatus.getCode();
planDAO.updateStatusByPlanNo(planNo, null, gmtModifier, approveStatusCode);
}
@Override
public void updateStatus(String planNo, PlanStatusEnum status, ApproveStatusEnum approveStatus) {
String statusCode = status == null ? null : status.getCode();
String approveStatusCode = approveStatus == null ? null : approveStatus.getCode();
planDAO.updateStatusByPlanNo(planNo, statusCode, null, approveStatusCode);
}
@Override
public void updatePassed(String planNo, Boolean passed) {
planDAO.updatePassed(planNo, passed);
}
@Override
public PlanBase getPlanByNo(String planNo) {
PlanDO planDO = planDAO.getByPlanNo(planNo);
PlanBase planBase = PlanConvert.convert2Domain(planDO);
fullEntity(planNo, planBase);
return planBase;
}
@Override
public PlanBase lockPlanByNo(String planNo) {
PlanDO planDO = planDAO.lockByPlanNo(planNo);
PlanBase planBase = PlanConvert.convert2Domain(planDO);
fullEntity(planNo, planBase);
return planBase;
}
@Override
public <T extends PlanBase> List<T> getPlanByPlanNos(List<String> planNos, PlanTypeEnum planType,
PlanStatusEnum status) {
return getPlanByPlanNos(planNos, planType, Lists.newArrayList(status));
}
@Override
public <T extends PlanBase> List<T> getPlanByPlanNos(List<String> planNos, PlanTypeEnum planType,
List<PlanStatusEnum> statusList) {
VarChecker.checkNotEmpty(statusList);
List<String> actTypes = statusList.stream().map(PlanStatusEnum::getCode).collect(Collectors.toList());
List<PlanDO> planDOS = planDAO.getPlansByStatusList(planType == null ? null : planType.getCode(), planNos,
actTypes);
return this.listPlanDO2Base(planDOS);
}
/**
* 获取所有存续期的计划
*
* @return
*/
@Override
public <T extends PlanBase> List<T> getPlansByStatus(PlanTypeEnum planType, PlanStatusEnum status) {
return this.getPlansByStatusList(planType, Lists.newArrayList(status));
}
/**
* 获取所有存续期的计划
*
* @return
*/
@Override
public <T extends PlanBase> List<T> getPlansByStatusList(PlanTypeEnum planType, List<PlanStatusEnum> statusList) {
return getPlanByPlanNos(null, planType, statusList);
}
@Override
public Long getAllPlanAmt(PlanTypeEnum planType, PlanStatusEnum planStatusEnum) {
return planDAO.getAllPlanAmt(planStatusEnum.getCode(), planType.getCode());
}
@Override
public Map<String, String> getPlanNames(List<String> planNos) {
return planDAO.queryByPlanNo(planNos);
}
@Override
public Map<String, List<String>> getPlanBySpvs(List<String> ownOrgs) {
Map<String, List<String>> result = Maps.newHashMap();
if (ToolUtil.isEmpty(ownOrgs)) {
return result;
}
List<OrganizationEntityDO> entityDOS = organizationEntityDAO.getByEntityCodesList(ownOrgs);
if (CollectionUtils.isNotEmpty(entityDOS)) {
Map<String, List<String>> prodsMap = Maps.newHashMap();
Set<String> prodSet = Sets.newHashSet();
entityDOS.forEach(organizationEntityDO -> {
String prodLst = organizationEntityDO.getProdLst();
List<String> prods = TextUtil.convertTxt2List(prodLst);
prodSet.addAll(prods);
prodsMap.put(organizationEntityDO.getEntityCode(), prods);
});
Map<String, List<String>> planNoMap = planTranScreenRelDAO.getPlanNosByProdList(
Lists.newArrayList(prodSet));
prodsMap.forEach((ownOrg, prods) -> {
planNoMap.forEach((prodKey, palnVel) -> {
if (prods.contains(prodKey)) {
List<String> planNos = result.get(ownOrg);
if (planNos == null) {
planNos = Lists.newArrayList();
result.put(ownOrg, planNos);
}
planNos.addAll(palnVel);
}
});
});
}
return result;
}
@Override
public List<String> getPlanNosBySpvNo(String spvPlanNo) {
Map<String, List<String>> planBySpvs = getPlanBySpvs(Lists.newArrayList(spvPlanNo));
return planBySpvs.getOrDefault(spvPlanNo, Lists.newArrayList());
}
@Override
public List<OrganizationEntity> getSpvByManagerOrgCode(String managerOrgCode) {
List<PlanDO> planDOS = planDAO.getSpvByManagerOrgCode(managerOrgCode);
return listPlanDO2Base(planDOS);
}
@Override
public Long getFailDailyCount(Date curDate) {
return planDAO.getFailDailyCount(curDate);
}
@Override
public Long updatePirceType(String planNo, PriceTypeEnum priceType) {
String type = null;
if (priceType != null) {
type = priceType.getCode();
}
return Long.valueOf(planDAO.updatePriceType(planNo, type));
}
private <T extends PlanBase> List<T> listPlanDO2Base(List<PlanDO> planDOS) {
List<T> planBases = Lists.newArrayList();
if (ToolUtil.isEmpty(planDOS)) {
return planBases;
} else {
List<String> planNos = planDOS.stream().map(PlanDO::getPlanNo).collect(Collectors.toList());
Map<String, OrganizationEntityDO> entityDOMap = organizationEntityDAO.getByEntityCodes(planNos);
for (PlanDO planDO : planDOS) {
T planBase = PlanConvert.convert2Domain(planDO);
if (planBase.getPlanType() == PlanTypeEnum.SPV && planBase instanceof OrganizationEntity) {
OrganizationEntityDO entityDO = entityDOMap.get(planBase.getPlanNo());
fullEntity((OrganizationEntity) planBase, entityDO);
}
planBases.add(planBase);
}
}
return planBases;
}
private void fullEntity(String planNo, PlanBase planBase) {
if (planBase.getPlanType() == PlanTypeEnum.SPV && planBase instanceof OrganizationEntity) {
OrganizationEntity organizationEntity = (OrganizationEntity) planBase;
OrganizationEntityDO entityDO = organizationEntityDAO.getByEntityCode(planNo);
fullEntity(organizationEntity, entityDO);
}
}
private void fullEntity(OrganizationEntity organizationEntity, OrganizationEntityDO entityDO) {
if (entityDO != null) {
organizationEntity.setProdCodeList(TextUtil.convertTxt2List(entityDO.getProdLst()));
organizationEntity.setNeedAlloc(YNEnum.getByCode(entityDO.getNeedAlloc()));
organizationEntity.setStopPayDate(entityDO.getStopPayDate());
organizationEntity.setManagerOrgCode(entityDO.getManagerOrgCode());
}
}
private OrganizationEntityDO convert2EntityDO(OrganizationEntity entity) {
OrganizationEntityDO entityDO = new OrganizationEntityDO();
entityDO.setProdLst(TextUtil.convertSet2Txt(Sets.newHashSet(entity.getProdCodeList())));
entityDO.setStopPayDate(entity.getStopPayDate());
entityDO.setNeedAlloc(entity.getNeedAlloc().getCode());
entityDO.setEntityCode(entity.getPlanNo());
entityDO.setManagerOrgCode(null);
if (CollectionUtils.isNotEmpty(entity.getProdCodeList())) {
List<LoanProduct> prods = loanProdRepository.getBybssqrProdCodes(entity.getProdCodeList());
if (CollectionUtils.isNotEmpty(prods)) {
entityDO.setManagerOrgCode(prods.stream().findFirst().get().getManagerOrgCode());
}
}
return entityDO;
}
@Override
public int deleteByPlanNo(String planNo) {
VarChecker.checkNotNull(planNo);
int result = planDAO.deleteByPlanNo(planNo);
result += organizationEntityDAO.deleteByEntityCode(planNo);
return result;
}
@Override
public List<PlanBase> getAllPlanAstByType(String planType) {
List<PlanBase> ret=new ArrayList<>();
List<PlanDO> allPlanByType = planDAO.getAllPlanByType(planType);
if(CollectionUtils.isNotEmpty(allPlanByType)){
allPlanByType.forEach(v->{
ret.add(PlanConvert.convert2Domain(v));
});
}
return ret;
}
@Override
public PlanBase getPlanByMapCache(Map<String, PlanBase> planMap, String planNo){
if (ToolUtil.isEmpty(planMap)){
planMap = new HashMap<>();
}
PlanBase planBase = planMap.get(planNo);
if (ToolUtil.isEmpty(planBase)){
// 查询对手机构
planBase = this.getPlanByNo(planNo);
planMap.put(planBase.getPlanNo(), planBase);
}
return planBase;
}
}
/**
* abssqr.com Inc.
* Copyright (c) 2017-2020 All Rights Reserved.
*/
package com.abssqr.plat.common.model.utils;
import com.abssqr.plat.common.facade.enums.StageChangeTypeEnum;
import com.abssqr.plat.common.facade.model.plan.PlanAst;
import com.abssqr.plat.common.model.domain.plan.PlanAstLog;
import com.abssqr.plat.common.model.exception.AbssqrBizException;
import com.abssqr.plat.common.util.base.autoconfig.AbsConfig;
import com.abssqr.plat.common.util.utils.BigDecimalUtil;
import com.general.system.common.model.Money;
import com.general.system.common.util.LogUtil;
import com.general.system.common.util.MessageUtil;
import com.general.system.common.util.MoneyUtil;
import com.general.system.tool.util.SpringContextHolder;
import com.general.system.tool.util.ToolUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.DependsOn;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* 计划水位变更金额校验
* @author hanfei
* @version $Id: PlanAstChangeCheckerUtil.java, v 0.1 2020-01-06 4:24 PM hanfei Exp $
*/
@Component
@DependsOn("springContextHolder")
public class PlanAstChangeCheckerUtil {
private static Logger LOGGER = LoggerFactory.getLogger(PlanAstChangeCheckerUtil.class);
@Autowired
private AbsConfig absConfig;
public static PlanAstChangeCheckerUtil me() {
try {
return SpringContextHolder.getBean(PlanAstChangeCheckerUtil.class);
}catch (Throwable e){
return new PlanAstChangeCheckerUtil();
}
}
/**
* 分别对待结算金额,在途金额,冻结和水位金额进行前后值发生额相等计算;
* @param planAstLogs
*/
public void checkChangeLogAmt(List<PlanAstLog> planAstLogs){
planAstLogs.forEach(one -> {
//1、水位金额校验 cash与lastCash不相等,lastCash - cash 得出绝对值与cashAmt判等
checkAmt(one.getPlanNo(), one.getLastCash(), one.getCash(), one.getCashAmt(), one.getChangeType());
//2、冻结金额校验 frozenCash与lastFrozenCash不相等,lastFrozenCash- frozenCash得出绝对值与frozenCashAmt判等
checkAmt(one.getPlanNo(), one.getLastFrozenCash(), one.getFrozenCash(), one.getFrozenCashAmt(), one.getChangeType());
//3、累计投放金额校验 accGrant与lastAccGrant不相等,lastAccGrant- accGrant得出绝对值与accGrantAmt判等
checkAmt(one.getPlanNo(), one.getLastAccGrant(), one.getAccGrant(), one.getAccGrantAmt(), one.getChangeType());
/**
* 4、在途金额校验
payOnWay与lastPayOnWay不相等,lastPayOnWay- payOnWay得出绝对值与happenAmt判等
repoOnWay与lastRepoOnWay不相等,lastRepoOnWay- repoOnWay得出绝对值与happenAmt判等
*/
checkAmt(one.getPlanNo(), one.getLastPayOnWay(), one.getPayOnWay(), one.getHappenAmt(), one.getChangeType());
checkAmt(one.getPlanNo(), one.getLastRepoOnWay(), one.getRepoOnWay(), one.getHappenAmt(), one.getChangeType());
});
}
/**
* 金额校验
* @param lastAmt
* @param nowAmt
* @param hapAmt
* @param changeType
*/
private void checkAmt(String planNo, Money lastAmt, Money nowAmt,
Money hapAmt, StageChangeTypeEnum changeType){
if (ToolUtil.isOneEmpty(lastAmt, nowAmt, hapAmt)){
errorHandle(MessageUtil.formatMsg(
"水位变更异常:[{0} - {1}]金额中有null,[lastAmt:{2}-nowAmt:{3}-hapAmt:{4}]",
planNo, changeType.getDesc(), lastAmt, nowAmt, hapAmt));
}
// 金额相等不校验
if (MoneyUtil.compare(lastAmt, nowAmt) == 0){
return;
}
// 获取差异金额
Money amt = lastAmt.subtract(nowAmt);
// 差异金额取绝对值与 发生额比较是否相等
if (!BigDecimalUtil.isEQ(amt.getAmount().abs(), hapAmt.getAmount())){
errorHandle(MessageUtil.formatMsg(
"水位变更异常:[{0} - {1}]变更金额与发生额不想等,[lastAmt:{2}-nowAmt:{3}-hapAmt:{4}]",
planNo, changeType.getDesc(), lastAmt, nowAmt, hapAmt));
}
}
/**
* 校验水位金额不能小于0
* @param planAst
*/
public void checkPlanAstAmtZero(PlanAst planAst){
//1、水位金额cash校验不能小于0;
checkGreaterThanZero(planAst.getPlanNo(), "水位余额", planAst.getCash());
checkGreaterThanZero(planAst.getPlanNo(), "水位校验金额", planAst.getCheckCash());
//2、冻结金额frozenCash校验不能小于0;
checkGreaterThanZero(planAst.getPlanNo(), "冻结金额", planAst.getFrozenCash());
//3、在途金额payOnWay,repoOnWay校验不能小于0;
checkGreaterThanZero(planAst.getPlanNo(), "支出在途", planAst.getPayOnWay());
checkGreaterThanZero(planAst.getPlanNo(), "收入在途", planAst.getRepoOnWay());
//4、待结算金payClear,repoClear额校验不能小于0;
checkGreaterThanZero(planAst.getPlanNo(), "支出待结算", planAst.getPayClear());
checkGreaterThanZero(planAst.getPlanNo(), "收入待结算", planAst.getRepoClear());
}
private void checkGreaterThanZero(String planNo, String des, Money amt){
if (amt.isNegtive()){
throw new AbssqrBizException(MessageUtil.formatMsg(
"水位变更异常:[{0} - {1}]金额不能小于0,[amt:{2}]", planNo, des, amt));
}
}
/**
* 每笔操作对PlanAst 操作变更后
* 通过计算公式: cash - payOnway - payClear + repoOnWay + repoClear = checkAmt 判断相等;
*/
public void checkEqualFund(PlanAst planAst, PlanAstLog astLog) {
// 发生额
Money hmt = planAst.getCash().subtract(planAst.getPayOnWay()).subtractFrom(planAst.getPayClear())
.addTo(planAst.getRepoOnWay()).addTo(planAst.getRepoClear());
if (MoneyUtil.compare(hmt, planAst.getCheckCash()) != 0){
errorHandle(MessageUtil.formatMsg(
"水位变更异常:[{0}]计划处理交易[{4}-{5}],水位计算金额[{1}]与校验金额[{2}]不相等,发生额[{3}],编号[{6}]",
planAst.getPlanNo(), hmt, planAst.getCheckCash(),
astLog.getHappenAmt(), astLog.getTransCode(), astLog.getChangeType(), astLog.getTransBizNo()));
}
}
/**
* 异常处理
* @param msg
*/
private void errorHandle(String msg){
if (absConfig.isAstCheckException()){
throw new AbssqrBizException(msg);
}else{
LogUtil.error(LOGGER, msg);
}
}
}
...@@ -74,7 +74,7 @@ public class AstSyncTaskComponent { ...@@ -74,7 +74,7 @@ public class AstSyncTaskComponent {
* @return false 可以查询余额 * @return false 可以查询余额
*/ */
public boolean cantBankBalance(PlanBase entity, Day execDate){ public boolean cantBankBalance(PlanBase entity, Day execDate){
if (entity.getPlanType() == PlanTypeEnum.SPV /*if (entity.getPlanType() == PlanTypeEnum.SPV
&& entity instanceof OrganizationEntity){ && entity instanceof OrganizationEntity){
// 获取 计划的服务机构 // 获取 计划的服务机构
OrganizationEntity orgEntity = (OrganizationEntity) entity; OrganizationEntity orgEntity = (OrganizationEntity) entity;
...@@ -90,7 +90,7 @@ public class AstSyncTaskComponent { ...@@ -90,7 +90,7 @@ public class AstSyncTaskComponent {
} }
// 不能查询余额 // 不能查询余额
return true; return true;
} }*/
return false; return false;
} }
} }
drop table abs_plan;
drop table abs_plan;
CREATE TABLE ABS_PLAN
(
ID NUMBER(10) PRIMARY KEY,
PLAN_NAME VARCHAR2(64),
PLAN_FULL_NAME VARCHAR2(128),
PLAN_NO VARCHAR2(128),
TOTAL_AMT NUMBER(20),
BEGIN_DATE DATE,
END_DATE DATE,
FIRST_CALC_DATE DATE,
FIRST_PAY_DATE DATE,
FIRST_SETTLE_DATE DATE,
FIRST_ALLOC_DATE DATE,
FIRST_REPORT_DATE DATE,
CALC_INTR_TYPE VARCHAR2(64),
ALLOC_PERIOD NUMBER(2),
ALLOC_PERIOD_METHOD VARCHAR2(64),
TRADE_PLACE VARCHAR2(128),
STATUS VARCHAR2(64),
GMT_CREATOR VARCHAR2(128),
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN.PLAN_NAME IS '产品简称';
COMMENT ON COLUMN ABS_PLAN.PLAN_FULL_NAME IS '产品全称';
COMMENT ON COLUMN ABS_PLAN.PLAN_NO IS '产品编号';
COMMENT ON COLUMN ABS_PLAN.TOTAL_AMT IS '发行规模';
COMMENT ON COLUMN ABS_PLAN.BEGIN_DATE IS '产品成立日';
COMMENT ON COLUMN ABS_PLAN.END_DATE IS '法定到期日';
COMMENT ON COLUMN ABS_PLAN.FIRST_CALC_DATE IS '首次计算日';
COMMENT ON COLUMN ABS_PLAN.FIRST_PAY_DATE IS '首次转付日';
COMMENT ON COLUMN ABS_PLAN.FIRST_SETTLE_DATE IS '首次结息日';
COMMENT ON COLUMN ABS_PLAN.FIRST_ALLOC_DATE IS '首次分配日';
COMMENT ON COLUMN ABS_PLAN.FIRST_REPORT_DATE IS '首次报告日';
COMMENT ON COLUMN ABS_PLAN.CALC_INTR_TYPE IS '计息方式/计息基准';
COMMENT ON COLUMN ABS_PLAN.ALLOC_PERIOD IS '兑付周期';
COMMENT ON COLUMN ABS_PLAN.ALLOC_PERIOD_METHOD IS '兑付周期类型';
COMMENT ON COLUMN ABS_PLAN.TRADE_PLACE IS '交易场所';
COMMENT ON COLUMN ABS_PLAN.STATUS IS '产品状态(设计中,已发行,已清算)';
COMMENT ON COLUMN ABS_PLAN.GMT_CREATE IS '创建时间';
COMMENT ON COLUMN ABS_PLAN.GMT_MODIFIED IS '修改时间';
COMMENT ON COLUMN ABS_PLAN.GMT_CREATOR IS '计划创建人';
COMMENT ON TABLE ABS_PLAN IS '产品表';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN;
CREATE SEQUENCE SEQ_ABS_PLAN MINVALUE 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
drop table ABS_PLAN_ACCT_TITLE;
drop table ABS_PLAN_ACCT_TITLE;
CREATE TABLE ABS_PLAN_ACCT_TITLE
(
ID NUMBER(10) PRIMARY KEY,
TITLE_NO VARCHAR2(128),
REF_NO VARCHAR2(128),
PLAN_NO VARCHAR2(128),
TITLE_NAME VARCHAR2(128),
TITLE_TYPE VARCHAR2(64),
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.ID IS '唯一主键';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.TITLE_NO IS '科目编号';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.REF_NO IS '对应资金编号';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.PLAN_NO IS '计划编号';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.TITLE_NAME IS '科目名称';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.TITLE_TYPE IS '科目类型(本金,利息,费用)';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.GMT_CREATE IS '创建日期';
COMMENT ON COLUMN ABS_PLAN_ACCT_TITLE.GMT_MODIFIED IS 'GMT_MODIFIED';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN_ACCT_TITLE;
CREATE SEQUENCE SEQ_ABS_PLAN_ACCT_TITLE 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
drop table ABS_PLAN_ALLOC;
drop table ABS_PLAN_ALLOC;
CREATE TABLE ABS_PLAN_ALLOC
(
ID NUMBER(10) PRIMARY KEY,
PLAN_NO VARCHAR2(128),
ALLOC_NO VARCHAR2(128),
CALC_DATE DATE,
PAY_DATE DATE,
SETTLE_DATE DATE,
ALLOC_DATE DATE,
REPORT_DATE DATE,
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN_ALLOC.ID IS '唯一主键';
COMMENT ON COLUMN ABS_PLAN_ALLOC.PLAN_NO IS '计划编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC.ALLOC_NO IS '分配编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC.CALC_DATE IS '本次计算日';
COMMENT ON COLUMN ABS_PLAN_ALLOC.PAY_DATE IS '本次转付日';
COMMENT ON COLUMN ABS_PLAN_ALLOC.SETTLE_DATE IS '本次结息日';
COMMENT ON COLUMN ABS_PLAN_ALLOC.ALLOC_DATE IS '本次分配日';
COMMENT ON COLUMN ABS_PLAN_ALLOC.REPORT_DATE IS '本次报告日';
COMMENT ON COLUMN ABS_PLAN_ALLOC.GMT_CREATE IS '创建时间';
COMMENT ON COLUMN ABS_PLAN_ALLOC.GMT_MODIFIED IS '更新时间';
COMMENT ON TABLE ABS_PLAN_ALLOC IS '分配计划表';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN_ALLOC;
CREATE SEQUENCE SEQ_ABS_PLAN_ALLOC 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
drop table ABS_PLAN_ALLOC_ITEM;
drop table ABS_PLAN_ALLOC_ITEM;
CREATE TABLE ABS_PLAN_ALLOC_ITEM
(
ID NUMBER(10) PRIMARY KEY,
ITEM_NO VARCHAR(128),
PLAN_NO VARCHAR(128),
ALLOC_NO VARCHAR(128),
TITLE_NO VARCHAR(128),
TITLE_NAME VARCHAR2(128),
ALLOC_TYPE VARCHAR2(128),
ORDER NUMBER(4,0),
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.ID IS '唯一id';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.ITEM_NO IS '事项编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.PLAN_NO IS '计划编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.ALLOC_NO IS '分配编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.TITLE_NO IS '科目编号';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.TITLE_NAME IS '分配事项名称';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.ALLOC_TYPE IS '分配类型';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.GMT_CREATE IS '创建时间';
COMMENT ON COLUMN ABS_PLAN_ALLOC_ITEM.GMT_MODIFIED IS '更新时间';
COMMENT ON TABLE ABS_PLAN_ALLOC_ITEM IS '分配计划事项表';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN_ALLOC_ITEM;
CREATE SEQUENCE SEQ_ABS_PLAN_ALLOC_ITEM MINVALUE 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
drop table abs_plan;
drop table abs_plan;
CREATE TABLE ABS_PLAN_FEE_STRUCTURE
(
ID NUMBER(10) PRIMARY KEY,
FEE_NO VARCHAR(128),
PLAN_NO VARCHAR2(128),
FEE_CALC_DEFAULT_DATE DATE,
FEE_CALC_TYPE VARCHAR(64),
FIXED_FEE_AMT NUMBER(20),
FEE_SCALE_TYPE VARCHAR2(64),
FEE_RATE NUMBER(10,5),
PAY_LIMIT_AMT NUMBER(20),
ORDER NUMBER(4,0),
FEE_NAME VARCHAR2(128),
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.ID IS '唯一主键';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_NO IS '费用编号';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.PLAN_NO IS '产品编号';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_CALC_DEFAULT_DATE IS '默认计费时间';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_CALC_TYPE IS '计费方式';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FIXED_FEE_AMT IS '固定费用';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_SCALE_TYPE IS '费用基准';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_RATE IS '费率';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.PAY_LIMIT_AMT IS '支付上限';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.FEE_NAME IS '费用名称';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.GMT_CREATE IS '创建时间';
COMMENT ON COLUMN ABS_PLAN_FEE_STRUCTURE.GMT_MODIFIED IS '更新时间';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN_FEE_STRUCTURE;
CREATE SEQUENCE SEQ_ABS_PLAN_FEE_STRUCTURE MINVALUE 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
drop table ABS_PLAN_INVEST_STRUCTURE;
drop table ABS_PLAN_INVEST_STRUCTURE;
CREATE TABLE ABS_PLAN_INVEST_STRUCTURE
(
ID NUMBER(10) PRIMARY KEY NOT NULL,
LAYER_NO VARCHAR2(128),
PLAN_NO VARCHAR2(128),
LAYER_TYPE VARCHAR2(128),
LAYER_NAME VARCHAR2(128),
LAYER_AMT NUMBER(20),
LAYER_INTR NUMBER(10,5),
INTR_TYPE VARCHAR2(64),
ALLOC_METHOD VARCHAR2(64),
GRADE VARCHAR2(64),
EFFECT_DATE DATE,
EXPECT_END_DATE DATE,
SORT NUMBER(4,0),
END_DATE DATE,
GMT_CREATE DATE,
GMT_MODIFIED DATE
);
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.ID IS '唯一主键';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.LAYER_NO IS '层级编号';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.PLAN_NO IS '产品编号';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.LAYER_TYPE IS '分层类型';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.LAYER_NAME IS '层级名称';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.LAYER_AMT IS '金额/层级规模';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.LAYER_INTR IS '利率';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.INTR_TYPE IS '利率类型';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.ALLOC_METHOD IS '偿付方式';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.GRADE IS '评级';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.EFFECT_DATE IS '起息日';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.EXPECT_END_DATE IS '预计到期日';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.END_DATE IS '到期日';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.GMT_CREATE IS '创建时间';
COMMENT ON COLUMN ABS_PLAN_INVEST_STRUCTURE.GMT_MODIFIED IS '更新时间';
COMMENT ON TABLE ABS_PLAN_INVEST_STRUCTURE IS '投资结构表';
-- 序列号
drop SEQUENCE SEQ_ABS_PLAN_INVEST_STRUCTURE;
CREATE SEQUENCE SEQ_ABS_PLAN_INVEST_STRUCTURE MINVALUE 1 MAXVALUE 9999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 ORDER NOCYCLE ;
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