using CommunityToolkit.Mvvm.ComponentModel;
using MegaRobo.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MegaRobo.C00225155.Entities.Entity_DB
{
    [Table(Comment = "反应站1ml移液枪吸液配置", Name = "Liquid_lml_React")]
    public class Liquid_lml_React
    {
        /// <summary>
        /// 自增ID
        /// </summary>
        [Column(IsIdentity = true, IsPrimaryKey = true, Comment = "自增ID")]
        public int Id { get; set; }
        /// <summary>
        /// 1：50ul   2：300ul  3；1000ul
        /// </summary>
        public int TipType { set; get; }
        /// <summary>
        /// 开盖取样/稀释加样
        /// </summary>
        public string FuncType { get; set; }
        /// <summary>
        /// 瓶子类型  1：12ml样品瓶  2：5ml样品瓶 
        /// </summary>
        public int BottleType { set; get; }
        /// <summary>
        /// 液体名称
        /// </summary>
        public string LiquidName { get; set; }
        /// <summary>
        /// 以纯水为标准的吸取比例
        /// </summary>
        public double Ratio { get; set; } = 1.0000;
        /// <summary>
        /// 液体编号
        /// </summary>
        public int LiquidParamId { get; set; }
        /// <summary>
        /// 容器编号
        /// </summary>
        public int ContainerPlateIndex { get; set; }
        /// <summary>
        /// 平台编号
        /// </summary>
        public int PlatformCode { get; set; }
        /// <summary>
        /// 是否液面探测
        /// </summary>
        public int LiqLedetec { get; set; }
        /// <summary>
        /// 吸液高度
        /// </summary>
        public int AspireHeight { get; set; }
        /// <summary>
        /// 分液高度
        /// </summary>
        public int DispenHeight { get; set; }
        /// <summary>
        /// 液体体积/
        /// </summary>
        public int LiquidVolume { get; set; }
    }

    public class Liquid_lml_React_Show : ObservableObject
    {
        private int id;
        public int Id { get => id; set => SetProperty(ref id, value); }

        private int tiptype;
        /// <summary>
        /// 1：50ul   2：300ul  3；1000ul
        /// </summary>
        public int TipType { get => tiptype; set => SetProperty(ref tiptype, value); }

        private string functype;
        /// <summary>
        /// 用途，开盖取样/稀释加样
        /// </summary>
        public string FuncType { get => functype; set => SetProperty(ref functype, value); }

        private int bottletype;
        /// <summary>
        /// 瓶子类型  1：12ml样品瓶  2：5ml样品瓶 
        /// </summary>
        public int BottleType { get => bottletype; set => SetProperty(ref bottletype, value); }

        private string liquidname;
        /// <summary>
        /// 液体名称
        /// </summary>
        public string LiquidName { get => liquidname; set => SetProperty(ref liquidname, value); }

        private double ratio = 1.0000;
        public double Ratio { get => ratio; set => SetProperty(ref ratio, value); }

        private int liquidparamid;
        /// <summary>
        /// 液体编号
        /// </summary>
        public int LiquidParamId { get => liquidparamid; set => SetProperty(ref liquidparamid, value); }

        private int containerPlateIndex;
        /// <summary>
        /// 容器编号
        /// </summary>
        public int ContainerPlateIndex { get => containerPlateIndex; set => SetProperty(ref containerPlateIndex, value); }

        private int plateformcode;
        /// <summary>
        /// 平台编号
        /// </summary>
        public int PlatformCode { get => plateformcode; set => SetProperty(ref plateformcode, value); }

        private int liqLedetec;
        /// <summary>
        /// 是否液面探测
        /// </summary>
        public int LiqLedetec { get => liqLedetec; set => SetProperty(ref liqLedetec, value); }

        private int aspireHeight;
        /// <summary>
        /// 吸液高度
        /// </summary>
        public int AspireHeight { get => aspireHeight; set => SetProperty(ref aspireHeight, value); }

        private int dispenHeight;
        /// <summary>
        /// 分液高度
        /// </summary>
        public int DispenHeight { get => dispenHeight; set => SetProperty(ref dispenHeight, value); }

        private int liquidVolume;
        /// <summary>
        /// 液体体积/
        /// </summary>
        public int LiquidVolume { get => liquidVolume; set => SetProperty(ref liquidVolume, value); }
    }
}
