package org.dromara.web.domain.vo;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import com.google.type.Decimal;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.web.domain.NutritionSetting;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;



/**
 * 营养设定视图对象 nutrition_setting
 *
 * @author Lion Li
 * @date 2025-07-21
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = NutritionSetting.class)
public class NutritionSettingVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

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

    /**
     * 所需热量
     */
    @ExcelProperty(value = "所需热量")
    private BigDecimal caloriesKcalPerDay;

    /**
     * 所需热量
     */
    @ExcelProperty(value = "所需热量")
    private BigDecimal caloriesKcalPerKgDay;

    /**
     * 所需热量
     */
    @ExcelProperty(value = "所需热量")
    private BigDecimal caloriesKjPerDay;

    /**
     * 蛋白质热量占比
     */
    @ExcelProperty(value = "蛋白质热量占比")
    private BigDecimal proteinCaloriePercentage;

    /**
     * 脂肪热量占比
     */
    @ExcelProperty(value = "脂肪热量占比")
    private BigDecimal fatCaloriePercentage;

    /**
     * 碳水化合物热量占比
     */
    @ExcelProperty(value = "碳水化合物热量占比")
    private BigDecimal carbohydrateCaloriePercentage;

    /**
     * 所需蛋白质
     */
    @ExcelProperty(value = "所需蛋白质")
    private BigDecimal proteinGPerKgDay;

    /**
     * 所需蛋白质
     */
    @ExcelProperty(value = "所需蛋白质")
    private BigDecimal proteinGPerDay;

    /**
     * 所需脂肪
     */
    @ExcelProperty(value = "所需脂肪")
    private BigDecimal fatGPerKgDay;

    /**
     * 所需脂肪
     */
    @ExcelProperty(value = "所需脂肪")
    private BigDecimal fatGPerDay;

    /**
     * 所需碳水化合物
     */
    @ExcelProperty(value = "所需碳水化合物")
    private BigDecimal carbohydrateGPerKgDay;

    /**
     * 所需碳水化合物
     */
    @ExcelProperty(value = "所需碳水化合物")
    private BigDecimal carbohydrateGPerDay;

    /**
     * 钙
     */
    @ExcelProperty(value = "钙")
    private BigDecimal calcium;

    /**
     * 钾
     */
    @ExcelProperty(value = "钾")
    private BigDecimal potassium;

    /**
     * 钠
     */
    @ExcelProperty(value = "钠")
    private BigDecimal sodium;

    /**
     * 镁
     */
    @ExcelProperty(value = "镁")
    private BigDecimal magnesium;

    /**
     * 磷
     */
    @ExcelProperty(value = "磷")
    private BigDecimal phosphorus;

    /**
     * 氯
     */
    @ExcelProperty(value = "氯")
    private BigDecimal chloride;

    /**
     * 铁
     */
    @ExcelProperty(value = "铁")
    private BigDecimal iron;

    /**
     * 硒
     */
    @ExcelProperty(value = "硒")
    private BigDecimal selenium;

    /**
     * 锰
     */
    @ExcelProperty(value = "锰")
    private BigDecimal manganese;

    /**
     * 氟
     */
    @ExcelProperty(value = "氟")
    private BigDecimal fluoride;

    /**
     * 钼
     */
    @ExcelProperty(value = "钼")
    private BigDecimal molybdenum;

    /**
     * 锌
     */
    @ExcelProperty(value = "锌")
    private BigDecimal zinc;

    /**
     * 铜
     */
    @ExcelProperty(value = "铜")
    private BigDecimal copper;

    /**
     * 碘
     */
    @ExcelProperty(value = "碘")
    private BigDecimal iodine;

    /**
     * 铬
     */
    @ExcelProperty(value = "铬")
    private BigDecimal chromium;

    /**
     * 维生素A
     */
    @ExcelProperty(value = "维生素A")
    private BigDecimal vitaminA;

    /**
     * 维生素D
     */
    @ExcelProperty(value = "维生素D")
    private BigDecimal vitaminD;

    /**
     * 维生素E
     */
    @ExcelProperty(value = "维生素E")
    private BigDecimal vitaminE;

    /**
     * 维生素K
     */
    @ExcelProperty(value = "维生素K")
    private BigDecimal vitaminK;

    /**
     * 维生素B1
     */
    @ExcelProperty(value = "维生素B1")
    private BigDecimal vitaminBOne;

    /**
     * 维生素B2
     */
    @ExcelProperty(value = "维生素B2")
    private BigDecimal vitaminBTwo;

    /**
     * 维生素B6
     */
    @ExcelProperty(value = "维生素B6")
    private BigDecimal vitaminBSix;

    /**
     * 维生素B12
     */
    @ExcelProperty(value = "维生素B12")
    private BigDecimal vitaminBTwelve;

    /**
     * 烟酸（尼克酸）
     */
    @ExcelProperty(value = "烟酸", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "尼=克酸")
    private BigDecimal niacin;

    /**
     * 维生素C
     */
    @ExcelProperty(value = "维生素C")
    private BigDecimal vitaminC;

    /**
     * 叶酸
     */
    @ExcelProperty(value = "叶酸")
    private BigDecimal folicAcid;

    /**
     * 胆碱
     */
    @ExcelProperty(value = "胆碱")
    private BigDecimal choline;

    /**
     * 生物素
     */
    @ExcelProperty(value = "生物素")
    private BigDecimal biotin;

    /**
     * 泛酸
     */
    @ExcelProperty(value = "泛酸")
    private BigDecimal pantothenicAcid;

    /**
     * 膳食纤维
     */
    @ExcelProperty(value = "膳食纤维")
    private BigDecimal dietaryFiber;

    /**
     * 设定方式
     */
    @ExcelProperty(value = "设定方式")
    private String settingType;

    /**
     * 患者id
     */
    @ExcelProperty(value = "患者id")
    private Long patientId;

    /**
     * 看诊类型
     */
    @ExcelProperty(value = "看诊类型")
    private String type;

    /**
     * 科室
     */
    @ExcelProperty(value = "科室")
    private Long deptId;

    /**
     * 门诊号
     */
    @ExcelProperty(value = "门诊号")
    private String outpatientNo;

    /**
     * 身高
     */
    private BigDecimal height;


    /**
     * 体重
     */
    private BigDecimal weight;


    /**
     * 体力活动
     */
    private Integer activity;


    /**
     * 应激状态
     */
    private Integer stressType;


    /**
     * 上臀围
     */
    private BigDecimal highHip;

    /**
     * 下臀围
     */
    private BigDecimal lowHip;

    /*烧伤面积*/
    private BigDecimal burnArea;

    private Date createTime;

    private Long createBy;

    private String createByUser;


}
