package org.dromara.web.domain.vo;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.web.domain.ChargeSet;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;


/**
 * 收费设置视图对象 charge_set
 *
 * @author Lion Li
 * @date 2025-08-04
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = ChargeSet.class)
public class ChargeSetVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

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

    /**
     * 服务商
     */
    @ExcelProperty(value = "服务商")
    private Long servicer;

    /**
     * 是否开启现金收费
     */
    @ExcelProperty(value = "是否开启现金收费")
    private Long moneyCharge;

    /**
     * 收费模式
     */
    @ExcelProperty(value = "收费模式")
    private Long chargeMode;

    /**
     * 收费方式 1单项收费 2 组合收费
     */
    @ExcelProperty(value = "收费方式 1单项收费 2 组合收费")
    private Long chargeType;

    /**
     * 单项收费配置
     */
    @ExcelProperty(value = "单项收费配置")
    private String oneWayCharge;

    /**
     * 组合收费配置
     */
    @ExcelProperty(value = "组合收费配置")
    private String groupCharge;

    /**
     * 营养配置收费设置
     */
    @ExcelProperty(value = "营养配置收费设置")
    private Long nutritionChargeSet;

    /**
     * 适合处方类型
     */
    @ExcelProperty(value = "适合处方类型")
    private String suitRecipe;

    /**
     * 患者订单配置
     */
    @ExcelProperty(value = "患者订单配置")
    private Long patientOrderSet;

    /**
     * 订单有效期
     */
    @ExcelProperty(value = "订单有效期")
    private Long orderIndate;

    /**
     * 多模式收费配置
     */
    @ExcelProperty(value = "多模式收费配置")
    private String multiModeCharge;

    private List<ChargeItemVo> chargeItemArr;


}
