package org.dromara.payment.sys.domain.vo;

import java.math.BigDecimal;
import org.dromara.payment.sys.domain.SysSydConfig;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;


/**
 * 服务商配置视图对象 sys_syd_config
 *
 * @author LionLi
 * @date 2024-03-26
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SysSydConfig.class)
public class SysSydConfigVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private Long id;

    /**
     * 结算中心id(0:默认配置)
     */
    @ExcelProperty(value = "结算中心id(0:默认配置)")
    private Long sydId;

    /**
     * 收税开始范围（单位：分）
     */
    @ExcelProperty(value = "收税开始范围", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "单=位：分")
    private Integer begin;

    /**
     * 收税结束范围（单位：分，-1无限大）
     */
    @ExcelProperty(value = "收税结束范围", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "单=位：分，-1无限大")
    private Integer end;

    /**
     * 税率（%）
     */
    @ExcelProperty(value = "税率", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "%=")
    private BigDecimal rate;

    /**
     * 是否能使用临时税务登记证（0:否 1:是）
     */
    @ExcelProperty(value = "是否能使用临时税务登记证", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "0=:否,1=:是")
    private Long isTaxCertificate;

    /**
     * 计算方式（1:普通 2:逆向）
     */
    @ExcelProperty(value = "计算方式", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "1=:普通,2=:逆向")
    private Long calStyle;


}
