package com.brilliance.isc.bo.model;

import java.util.*;
import com.brilliance.mda.runtime.mda.*;
import com.brilliance.mda.runtime.mda.impl.*;
import static com.brilliance.mda.runtime.mda.Constants.*;
import com.brilliance.isc.bo.*;
import com.brilliance.isc.common.vo.AbstractCommonVo;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

/**
 *
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class Eblmod extends AbstractCommonVo {

    //交易类型
    private String dectyp = NULLSTR;
    //Old Value Stream
    private IStream oldvalstm = new StreamImpl();
    //数据提取标志
    private String trnflg = NULLSTR;
    //发生日期
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date paydat;


//    @Module(getter = false, setter = false)
//    private transient ModuleHolder<IModule> rec;

    private Cfasig cfasig;

    private Cfacou cfacou;

    private Ebl ebl;

    private Ebl wrkebl;

    private Trn wrktrn;

    private Cfaerr err;

    private Cfabchsel cfabchsel;

    @Override
    public void reset() {
        if(cfasig == null){
            cfasig = new Cfasig();
        }
        if(cfacou == null){
            cfacou = new Cfacou();
        }
        if(ebl == null) {
            ebl = new Ebl();
        }
        if(wrkebl == null) {
            wrkebl = new Ebl();
        }
        if(wrktrn == null) {
            wrktrn = new Trn();
        }
        if(err == null) {
            err = new Cfaerr();
        }
        if(cfabchsel == null) {
            cfabchsel = new Cfabchsel();
        }
    }

}