﻿-- 主权清单
DROP TABLE IF EXISTS RWA_BDM_OBJ_CONF_SOVEREIGN_LIST;
create table IF NOT EXISTS RWA_BDM_OBJ_CONF_SOVEREIGN_LIST(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
CUST_NAME VARCHAR(200) comment '保证人交易对手名称' ,
SOVEREIGN_CODE VARCHAR(60) comment '国家代码',
SOVEREIGN_RATING VARCHAR(50) comment '主权评级(如有)',
CRM_FIRST_LEVEL VARCHAR(50) comment '缓释分类',
QUALFIED_CREDIT_TOOL_TYPE_NAME VARCHAR(200) comment '合格信用风险缓释工具类型',
BASE_WEIGHT DECIMAL(30,6) comment '基础缓释权重',
EXEMPTION_WEIGHT DECIMAL(30,6) comment '豁免后缓释权重',
state  VARCHAR(4)  comment '状态'
) COMMENT='主权清单';


-- 我国开发性金融机构和政策性银行发行人名称清单
DROP TABLE IF EXISTS RWA_BDM_OBJ_CONF_POLICY_BANK_LIST;
create table IF NOT EXISTS RWA_BDM_OBJ_CONF_POLICY_BANK_LIST(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
CUST_NAME VARCHAR(200) comment '保证人交易对手名称',
IS_RISKCLASS_USE VARCHAR(50) comment '是否用于风险暴露划分',
IS_SLOWRELEASE_USE VARCHAR(50) comment '是否用于合格缓释认定',
CRM_FIRST_LEVEL VARCHAR(50) comment '缓释分类',
QUALFIED_CREDIT_TOOL_TYPE_NAME VARCHAR(200) comment '合格信用风险缓释工具类型',
BASE_WEIGHT DECIMAL(30,6) comment '基础缓释权重',
EXEMPTION_WEIGHT DECIMAL(30,6) comment '豁免后缓释权重',
REMARK VARCHAR(3000) comment '备注'
) COMMENT='我国开发性金融机构和政策性银行发行人名称清单';

-- 中央政府投资的金融资产管理公司清单表
DROP TABLE IF EXISTS RWA_BDM_OBJ_CONF_GOV_FINANCIAL_ASSET_COMP;
create table IF NOT EXISTS RWA_BDM_OBJ_CONF_GOV_FINANCIAL_ASSET_COMP(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
CRM_CLASS VARCHAR(200) comment '缓释分类',
QUALFIED_CREDIT_TOOL_TYPE_NAME VARCHAR(200) comment '合格信用风险缓释工具类型',
WEIGHT decimal(30,6) comment '缓释权重' ,
NAME VARCHAR(200) comment '名称',
NOTES VARCHAR(200) comment '备注'
) COMMENT='中央政府投资的金融资产管理公司';

-- 总账勾稽配置信息
DROP TABLE IF EXISTS RWA_OBJ_CONF_GL_RECONCILIATION;
create table IF NOT EXISTS RWA_OBJ_CONF_GL_RECONCILIATION(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
RULE_ID VARCHAR(60)  comment '规则编号',
RULE_NAME VARCHAR(60)  comment '规则名称',
GL_CODE VARCHAR(60)  comment '总账科目号',
SUBJECT_DESC VARCHAR(60)  comment '科目名称',
SUBJECT_NATURE VARCHAR(2)  comment '科目性质',
SUBJECT_STATE VARCHAR(60)  comment '科目状态',
ONOROFF VARCHAR(60)  comment '表内外标识',
ACCOUNTING_DIRECTION VARCHAR(60)  comment '记账方向(A:实际,D:借方,C:贷方)',
CALC_METHOD VARCHAR(60)  comment '计算方式',
POSITIVE_RISK_TYPE VARCHAR(60)  comment '正差异风险暴露分类',
NEGATIVE_RISK_TYPE VARCHAR(60)  comment '负差异风险暴露分类',
POSITIVE_OFF_PROJECT_TYPE VARCHAR(60)  comment '正差异表外项目分类',
NEGATIVE_OFF_PROJECT_TYPE VARCHAR(60)  comment '负差异表外项目分类',
STAGEIN_ID VARCHAR(60)  comment '所属阶段',
SUBJECT_SQL VARCHAR(4000)  comment '总账取数规则',
PRODUCT_SQL VARCHAR(4000)  comment '勾稽明细取数规则',
YESORNO VARCHAR(60) comment '状态',
 primary key (RULE_ID)
)COMMENT='总账勾稽配置信息';


-- 差异容忍度规则定义表
DROP TABLE IF EXISTS RWA_CALC_CONF_DIFFTOLERANCE;
create table IF NOT EXISTS RWA_CALC_CONF_DIFFTOLERANCE(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
RULE_NO VARCHAR(60) comment '规则编号',
RULE_NAME VARCHAR(300) comment '规则名称',
UPPER_LIMIT VARCHAR(60) comment '容忍度下限%',
LOWER_LIMIT VARCHAR(60) comment '容忍度上限%',
INTERVAL_TYPE VARCHAR(60) comment '区间开闭类型',
RULE_AREA_TYPE VARCHAR(60) comment '适用范围类型',
 primary key (RULE_NO)
)COMMENT='差异容忍度规则定义表';

-- 差异容忍度适用范围表
DROP TABLE IF EXISTS RWA_CALC_CONF_DIFFTOLERANCERANGE;
create table IF NOT EXISTS RWA_CALC_CONF_DIFFTOLERANCERANGE(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
RULE_NO VARCHAR(60) not null comment '规则编号',
ROLE_LEDGERCHECK_NO VARCHAR(60) not null comment '总分勾稽规则ID',
 primary key (RULE_NO,ROLE_LEDGERCHECK_NO)
)COMMENT='差异容忍度适用范围表';



-- 总账勾稽结果表
DROP TABLE IF EXISTS RWA_LEART_INS_LEDGRESULT;
create table IF NOT EXISTS RWA_LEART_INS_LEDGRESULT(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
ORGCODE VARCHAR(60) comment '法人机构',
RULE_ID VARCHAR(60) not null comment '规则编号',
RULE_NAME VARCHAR(60) not null comment '规则名称',
SUBJCODE VARCHAR(30) comment '科目代码',
SUBJNAME VARCHAR(60) comment '科目名称',
CCY VARCHAR(60) comment '币种',
GLAMT DECIMAL(30,6) comment '总账科目余额(万元)',
LEDGARTAMT DECIMAL(30,6) comment '勾稽汇总金额(万元)',
DIFFERAMT DECIMAL(30,6) comment '核对差异金额(万元)',
DIFFERRATE DECIMAL(30,6) comment '核对差异率%',
PERCTHRESHOLD DECIMAL(30,6) comment '差异容忍度%',
LEARTRESULTTYPE VARCHAR(30) comment '是否超过容忍度',
OFFSETDIFFERAMT DECIMAL(30,6) comment '轧差后核对差异(万元)',
 primary key (CALCINDEX,RULE_ID,SUBJCODE)
) COMMENT='总账勾稽结果表';

-- 产品定义表
DROP TABLE IF EXISTS RWA_CALC_CONF_PRODUCT;
create table IF NOT EXISTS RWA_CALC_CONF_PRODUCT(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
PRODUCT_NO VARCHAR(60) comment '产品编号',
PRODUCT_NAME VARCHAR(60) comment '产品名称',
PRODUCT_TYPE VARCHAR(60) comment '产品分类',
PRODUCT_BUSSINESS_CODE VARCHAR(60) comment '对应业务',
PRODUCT_STAGE_ID VARCHAR(60) comment '产品所属阶段',
PRODUCT_INDEX DECIMAL(30,0) comment '产品序号',
PRODUCT_FROM_SYSTEM VARCHAR(60) comment '来源系统',
DEFAULT_GETDATARULE VARCHAR(4000) comment '默认取数逻辑',
DEFAULT_OUT VARCHAR(60) comment '默认输出',
 primary key (PRODUCT_NO)
)COMMENT='产品定义表';

-- 产品规则定义表
DROP TABLE IF EXISTS RWA_CALC_CONF_PRODUCTRULES;
create table IF NOT EXISTS RWA_CALC_CONF_PRODUCTRULES(
CALCINDEX               VARCHAR(60)   comment '计算实例号',
SDATE                   VARCHAR(8)    comment '起始数据日期',
EDATE                   VARCHAR(8)    comment '截止数据日期',
TERM                    VARCHAR(8)    comment '年月',
DATA_DATE               VARCHAR(8)    comment '数据日期',
PRODUCT_NO              VARCHAR(60)   comment '产品编号',
RULE_CODE               VARCHAR(60)   comment '规则编号',
RULE_NAME               VARCHAR(300)  comment '规则名称',
RULE_INDEX              DECIMAL(30,0) comment '规则序号',
DATA_TYPE               VARCHAR(60)   comment '数据类型',
RULE_SUBJECT            VARCHAR(60)   comment '对应科目',
RULE_IN                 VARCHAR(60)   comment '输入',
RULE_OUT                VARCHAR(60)   comment '输出',
RULE_GETDATA            VARCHAR(3000) comment '取数规则',
 primary key (PRODUCT_NO,RULE_CODE)
)COMMENT='产品规则定义表';

-- 表外项目分类定义表
DROP TABLE IF EXISTS RWA_CALC_CONF_OFFBALANCEPROTYPE;
create table IF NOT EXISTS RWA_CALC_CONF_OFFBALANCEPROTYPE(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
OFFOBJECT_NO VARCHAR(60) comment '表外项目编号',
OFFOBJECT_NAME VARCHAR(60) comment '表外项目名称',
OFFOBJECT_STAGE_ID VARCHAR(60) comment '所属阶段',
OFFOBJECT_INDEX DECIMAL(30,0) comment '项目序号',
DEFAULT_OUT VARCHAR(60) comment '默认输出',
OFFOBJECT_SUPER VARCHAR(60) comment '上级项目代码',
ISMINI VARCHAR(60) comment '是否最细一级',
CCF DECIMAL(30,6) comment '转换系数(%)',
RISK_EXPOSE_CLASS_CODE VARCHAR(10) comment '表外项目分类层级',
YESORNO VARCHAR(60) comment '状态',
 primary key (OFFOBJECT_NO)
)COMMENT='表外项目分类定义表';

-- 表外项目分类认定规则表
DROP TABLE IF EXISTS RWA_CALC_CONF_OFFBALANCEPROTYPERULE;
create table IF NOT EXISTS RWA_CALC_CONF_OFFBALANCEPROTYPERULE(
CALCINDEX VARCHAR(60) comment '计算实例号',
SDATE VARCHAR(8) comment '起始数据日期',
EDATE VARCHAR(8) comment '截止数据日期',
TERM VARCHAR(8) comment '年月',
DATA_DATE VARCHAR(8) comment '数据日期',
OFFOBJECT_NO VARCHAR(60) comment '表外项目编号',
RULE_NAME VARCHAR(60) comment '规则名称',
RULE_NO VARCHAR(60) comment '规则编号',
RULE_INDEX DECIMAL(30,0) comment '规则序号',
RULE_PRODUCT_NO VARCHAR(60) comment '所属产品',
RULE_GETDATA VARCHAR(3000) comment '分类规则',
RULE_IN VARCHAR(60) comment '输入',
RULE_OUT VARCHAR(60) comment '输出',
 primary key (OFFOBJECT_NO,RULE_NO)
)COMMENT='表外项目分类认定规则表';

-- 总账科目表
CREATE TABLE rwa_cbs_gl_ac_subject (
sdate  varchar(8) NULL comment '开始日期',
edate  varchar(8) NULL comment '结束日期',
subject_code  varchar(20) NULL comment '科目编号',
subject_desc  varchar(900) NULL comment '科目名称',
control_subject  varchar(20) NULL comment '上级科目'
)COMMENT='总账科目表';