package com.develop.food.base.repo.entity

import androidx.room.ColumnInfo
import androidx.room.Entity
import androidx.room.PrimaryKey

/**
 * Recipe
 * 食谱
 * @author elber
 * @date 2022/6/16 16:20
 * @since 0.0.1
 */
@Entity(tableName = "cc_dev_recipe")
data class DevRecipe(

    @PrimaryKey
    @ColumnInfo
    var code: String,

    /**
     * 编码
     */
    @ColumnInfo
    val number: String?,

    /**
     * 当前版本
     */
    @ColumnInfo
    val edition: String?,

    /**
     * 默认语言
     */
    @ColumnInfo
    val lang: String?,

    /**
     * 照片编码
     */
    @ColumnInfo
    val photo: String?,

    /**
     * 照片路径
     */
    @ColumnInfo(name = "photo_path")
    val photoPath: String?,

    /**
     * 准备小时
     */
    @ColumnInfo(name = "prepare_hours")
    val prepareHours: Int?,

    /**
     * 准备分钟
     */
    @ColumnInfo(name = "prepare_minutes")
    val prepareMinutes: Int?,

    /**
     * 制作小时
     */
    @ColumnInfo(name = "make_hours")
    val makeHours: Int?,

    /**
     * 制作分钟
     */
    @ColumnInfo(name = "make_minutes")
    val makeMinutes: Int?,

    /**
     * 休息小时
     */
    @ColumnInfo(name = "rest_hours")
    val restHours: Int?,

    /**
     * 休息分钟
     */
    @ColumnInfo(name = "rest_minutes")
    val restMinutes: Int?,

    /**
     * 食谱分类序号
     */
    @ColumnInfo(name = "recipe_category_number")
    val recipeCategoryNumber: String?,

    /**
     * 难度等级
     * @see com.kuyuntech.cofarcooking.coreapi.constant.core.DifficultyLevel
     */
    @ColumnInfo(name = "difficulty_level")
    val difficultyLevel: String?,

    /**
     * 兼容母包版本
     */
    @ColumnInfo(name = "compatible_version")
    val compatibleVersion: String?,

    /**
     * 名称
     */
    @ColumnInfo
    val name: String?,

    /**
     * 介绍
     */
    @ColumnInfo
    val introduction: String?,

    /**
     * 评分
     */
    @ColumnInfo
    val score: Double?,

    /**
     * 使用次数
     */
    @ColumnInfo(name = "use_num")
    val useNum: Long?,

    @ColumnInfo(name = "update_time")
    val updateTime: Long?,

    @ColumnInfo(name = "create_time")
    val createTime: Long?
)