package com.brilliance.isc.common.api.lim.vo;

import com.brilliance.mda.support.jakson.serialize.BigDecimalSerializeRate;
import com.brilliance.mda.support.jakson.serialize.DecimalLength;
import com.brilliance.isc.bo.Umd;
import com.brilliance.isc.common.limmod.vo.*;
import com.brilliance.isc.common.vo.AbstractCommonVo;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

@Data
@Builder
@ApiModel(value = "额度查询返回信息", description = "额度查询返回信息")
public class LimResponse extends AbstractCommonVo {
    /**
     * 额度角色信息
     */
    private LimptsVo limpts;
    /**
     * 业务编号
     */
    private String ownref;
    /**
     * 业务余额
     */
    @JsonSerialize(using = BigDecimalSerializeRate.class)
    @DecimalLength(value = 2)
    private BigDecimal comamt;
    /**
     * 保证金余额
     */
    @JsonSerialize(using = BigDecimalSerializeRate.class)
    @DecimalLength(value = 2)
    private BigDecimal ccvamt;
    /**
     * 对公额度明细信息
     */
    private List<LimgrdVo> limgrdVoList;

    /**
     * 同业额度明细信息
     */
    private List<LmegrdVo> lmegrdVos;

    /**
     * 额度发生额
     */
    private List<ClmcbbVo> clmcbbVos;
    /**
     * 额度占用余额
     */
    private List<ClmcbeVo> clmcbeVos;
    /**
     * 客户额度余额
     */
    private List<ClmptyVo> clmptyVos;
    /**
     * 试同业算结果
     */
    private List<TygrdVo> tygrd;
    /**
     * 试对公算结果
     */
    private List<DggrdVo> dggrd;

    /**
     * 转授权列表
     */
    private List<ZsqInfoVo> zsqInfos;

    /**
     * 预警信息提示
     */
    private List<String> rw02ConfirmInfos;


    /**
     * 预警信息命中
     */
    private String rw02Rmatch;
}
