package com.brilliance.isc.bo.model;

import com.brilliance.isc.bo.Ead;
import com.brilliance.isc.common.vo.AbstractCommonVo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

import static com.brilliance.mda.runtime.mda.Constants.NULLSTR;

/**
 *海外代付
 */

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Cfaead extends AbstractCommonVo{

    /**
     * 数据采集标志
     */
    private  String cfaflg = NULLSTR;


    /**
     * 签约信息
     */
    private  String basflg = NULLSTR;

    /**
     * 变动信息
     */
    private  String dclflg = NULLSTR;

    /**
     * 数据提取操作类型 A-新增  M-修改  S-变动
     */
    private  String cfatyp = NULLSTR;

    /**
     * 变动信息数目
     */
    private  int dclnum;

    /**
     * 地区机构号
     */
    private  String ownextkey = NULLSTR;

    /**
     * 是否显示资本项目页面
     */
    private  String visflg = NULLSTR;

    /**
     * recp.pansta  状态 含义未知，加载前手数据会赋值
     */
    private  String pansta = NULLSTR;


    /**
     * 国内外汇贷款 数据模型
     */
    private Eadgrp recgrp;


    /**
     * 状态控制表模型
     */
    private Eblmod eblmod;

    /**
     * 老国结按钮面板  暂时未使用
     */
    private Cutp cutp;

    /**
      *映射模型，暂时未使用
      */
    //private Cfamap cfamap;

    /**
     *国内外汇贷款－签约信息
     */
    private Ead oldead;

    /**
      *申报号码模块
      */
    private Cfaref cfaref;


    /**
     * 海外代付报送需要的 业务要素
     */
    private CfaeadBizInfo cfaeadBizInfo;




    @Override
    public void reset() {
        if(eblmod == null) {
            eblmod = new Eblmod();
        }
        eblmod.reset();
//        if(cfamap == null) {
//            cfamap = new Cfamap();
//        }
//        cfamap.reset();
        if(oldead == null) {
            oldead = new Ead();
        }
        if(recgrp == null){
            recgrp = new Eadgrp();
        }
        recgrp.reset();
        if(cfaref == null) {
            cfaref = new Cfaref();
        }
        cfaref.reset();
        if(cfaeadBizInfo == null) {
            cfaeadBizInfo = new CfaeadBizInfo();
        }
        cfaeadBizInfo.reset();
    }

}

