using System.Collections.ObjectModel;
|
using System.ComponentModel;
|
using XImagingXhandler.XDAL;
|
|
namespace XHandler.Class.DataEx
|
{
|
/// <summary>
|
/// 耗材类型,该数据和数据库里的labwaretype的id对应
|
/// </summary>
|
public enum ConsumableTypeEnum
|
{
|
/// <summary>
|
/// 无
|
/// </summary>
|
[Description("无")]
|
None = 0,
|
/// <summary>
|
/// 孔板
|
/// </summary>
|
[Description("孔板")]
|
Plate = 1,
|
/// <summary>
|
/// 吸头
|
/// </summary>
|
[Description("吸头")]
|
Tips = 2,
|
/// <summary>
|
/// 试剂槽
|
/// </summary>
|
[Description("试剂槽")]
|
Through = 3,
|
/// <summary>
|
/// 管架
|
/// </summary>
|
[Description("管架")]
|
Tube = 4,
|
/// <summary>
|
/// 圆形皿
|
/// </summary>
|
[Description("圆形皿")]
|
CircularDish = 5,
|
/// <summary>
|
/// 吸头盒
|
/// </summary>
|
[Description("吸头盒")]
|
TipsBox = 6,
|
/// <summary>
|
/// 盖子
|
/// </summary>
|
[Description("盖子")]
|
Lid = 7,
|
/// <summary>
|
/// 圆形皿盖子
|
/// </summary>
|
[Description("圆形皿盖子")]
|
Rounddishlid = 8,
|
/// <summary>
|
/// 板位
|
/// </summary>
|
[Description("板位")]
|
Shelf = 9,
|
/// <summary>
|
/// 离心管
|
/// </summary>
|
[Description("离心管")]
|
Centrifugal = 10,
|
/// <summary>
|
/// 电泳槽
|
/// </summary>
|
[Description("电泳槽")]
|
Electrophoto = 11
|
}
|
|
public enum WellShape
|
{
|
None,
|
/// <summary>
|
/// 圆柱体
|
/// </summary>
|
Cylinder,
|
/// <summary>
|
/// 长方体
|
/// </summary>
|
Cuboid
|
}
|
|
public enum BottomShape
|
{
|
None,
|
/// <summary>
|
/// 锥形
|
/// </summary>
|
Taper,
|
/// <summary>
|
/// 半球
|
/// </summary>
|
HalfBall,
|
/// <summary>
|
/// 平底
|
/// </summary>
|
Flat,
|
/// <summary>
|
/// 倒金字塔
|
/// </summary>
|
Pyramid
|
}
|
public class LabwareEx:Labware
|
{
|
public LabwareEx() { }
|
|
public LabwareEx(Labware labware)
|
{
|
label = "";
|
labware_id = labware.labware_id;
|
labware_barcode = labware.labware_barcode;
|
labware_name = labware.labware_name;
|
brand = labware.brand;
|
number = labware.number;
|
labware_type = labware.labware_type;
|
labware_type_id = labware.labware_type_id;
|
labware_well_id = labware.labware_well_id;
|
content = labware.content;
|
nw = labware.nw;
|
sw = labware.sw;
|
ne = labware.ne;
|
se = labware.se;
|
number_row = labware.number_row;
|
number_column = labware.number_column;
|
labware_length = labware.labware_length;
|
labware_width = labware.labware_width;
|
labware_height = labware.labware_height;
|
a1_distance_x = labware.a1_distance_x;
|
a1_distance_y = labware.a1_distance_y;
|
a1_a2_distance = labware.a1_a2_distance;
|
a1_b1_distance = labware.a1_b1_distance;
|
well_maximum_volume = labware.well_maximum_volume;
|
well_available_volume = labware.well_available_volume;
|
well_mix_points=labware.well_mix_points;
|
well_depth = labware.well_depth;
|
well_shape = labware.well_shape;
|
well_mouth_radius = labware.well_mouth_radius;
|
well_bottom_randius = labware.well_bottom_randius;
|
well_height = labware.well_height;
|
well_top_x = labware.well_top_x;
|
well_top_y = labware.well_top_y;
|
well_down_x = labware.well_down_x;
|
well_down_y = labware.well_down_y;
|
well_bottom_shape = labware.well_bottom_shape;
|
well_bottom_height = labware.well_bottom_height;
|
well_bottom_width = labware.well_bottom_width;
|
well_bottom_length = labware.well_bottom_length;
|
is_moved = labware.is_moved;
|
gripper_x_offset = labware.gripper_x_offset;
|
gripper_y_offset = labware.gripper_y_offset;
|
gripper_z_offset = labware.gripper_z_offset;
|
gripper_squeeze = labware.gripper_squeeze;
|
gripper_spread = labware.gripper_spread;
|
gripper_speed = labware.gripper_speed;
|
gripper_rotational = labware.gripper_rotational;
|
is_with_lid = labware.is_with_lid;
|
with_lid_height = labware.with_lid_height;
|
with_lid_pile_height = labware.with_lid_pile_height;
|
total_without_lid_height = labware.total_without_lid_height;
|
total_with_lid_height = labware.total_with_lid_height;
|
gripper_lid_offset = labware.gripper_lid_offset;
|
is_piling = labware.is_piling;
|
is_piled = labware.is_piled;
|
piled_script =labware.piled_script;
|
piled_height = labware.piled_height;
|
piled_speed = labware.piled_speed;
|
is_pilingon = labware.is_pilingon;
|
pilingon_script =labware.pilingon_script;
|
piled_x = labware.piled_x;
|
piled_y = labware.piled_y;
|
is_seal = labware.is_seal;
|
sealed_height = labware.sealed_height;
|
sealed_piled_height = labware.sealed_piled_height;
|
tip_name = labware.tip_name;
|
tip_volume_max = labware.tip_volume_max;
|
tip_use_volume_max = labware.tip_use_volume_max;
|
tip_air_volume = labware.tip_air_volume;
|
tip_length = labware.tip_length;
|
tip_header_height = labware.tip_header_height;
|
tip_cone_height = labware.tip_cone_height;
|
tip_cone_radius_max = labware.tip_cone_radius_max;
|
tip_cone_radius_min = labware.tip_cone_radius_min;
|
press_tip_depth = labware.press_tip_depth;
|
quit_tip = labware.quit_tip;
|
is_filter = labware.is_filter;
|
is_lls = labware.is_lls;
|
tip_loaded_type = labware.tip_loaded_type;
|
labware_status = labware.labware_status;
|
labware_picture = labware.labware_picture;
|
labware_color_lside = labware.labware_color_lside;
|
labware_color_front = labware.labware_color_front;
|
labware_color_top = labware.labware_color_top;
|
labware_color_well = labware.labware_color_well;
|
labware_color_line = labware.labware_color_line;
|
is_default_type = labware.is_default_type;
|
timestamp = labware.timestamp;
|
labware_round_division = labware.labware_round_division;
|
labware_round_diameter = labware.labware_round_diameter;
|
labware_round_height = labware.labware_round_height;
|
labware_round_bottom_indiameter = labware.labware_round_bottom_indiameter;
|
labware_round_bottom_outdiameter = labware.labware_round_bottom_outdiameter;
|
labware_round_bottom_inheight = labware.labware_round_bottom_inheight;
|
labware_round_bottom_outheight = labware.labware_round_bottom_outheight;
|
labware_round_lid_indiameter = labware.labware_round_lid_indiameter;
|
labware_round_lid_outdiameter = labware.labware_round_lid_outdiameter;
|
labware_round_lid_height = labware.labware_round_lid_height;
|
labware_round_totalheight = labware.labware_round_totalheight;
|
if (labware is LabwareEx)
|
{
|
LabwareEx labwareEx = ((LabwareEx)labware);
|
validWells = labwareEx.validWells;
|
}
|
|
plateWellDataList = new ObservableCollection<PlateWellsData>();
|
if (labware.labware_type_id == "4")
|
{
|
labwareWellInfoList = labware.labwareWellInfoList;
|
}
|
}
|
|
public void Update(Labware labware)
|
{
|
labware_id = labware.labware_id;
|
labware_name = labware.labware_name;
|
brand = labware.brand;
|
number = labware.number;
|
labware_type = labware.labware_type;
|
labware_type_id = labware.labware_type_id;
|
labware_well_id = labware.labware_well_id;
|
content = labware.content;
|
nw = labware.nw;
|
sw = labware.sw;
|
ne = labware.ne;
|
se = labware.se;
|
number_row = labware.number_row;
|
number_column = labware.number_column;
|
labware_length = labware.labware_length;
|
labware_width = labware.labware_width;
|
labware_height = labware.labware_height;
|
a1_distance_x = labware.a1_distance_x;
|
a1_distance_y = labware.a1_distance_y;
|
a1_a2_distance = labware.a1_a2_distance;
|
a1_b1_distance = labware.a1_b1_distance;
|
well_maximum_volume = labware.well_maximum_volume;
|
well_available_volume = labware.well_available_volume;
|
well_mix_points = labware.well_mix_points;
|
well_depth = labware.well_depth;
|
well_shape = labware.well_shape;
|
well_mouth_radius = labware.well_mouth_radius;
|
well_bottom_randius = labware.well_bottom_randius;
|
well_height = labware.well_height;
|
well_top_x = labware.well_top_x;
|
well_top_y = labware.well_top_y;
|
well_down_x = labware.well_down_x;
|
well_down_y = labware.well_down_y;
|
well_bottom_shape = labware.well_bottom_shape;
|
well_bottom_height = labware.well_bottom_height;
|
well_bottom_width = labware.well_bottom_width;
|
well_bottom_length = labware.well_bottom_length;
|
is_moved = labware.is_moved;
|
gripper_x_offset = labware.gripper_x_offset;
|
gripper_y_offset = labware.gripper_y_offset;
|
gripper_z_offset = labware.gripper_z_offset;
|
gripper_squeeze = labware.gripper_squeeze;
|
gripper_spread = labware.gripper_spread;
|
gripper_speed = labware.gripper_speed;
|
gripper_rotational = labware.gripper_rotational;
|
is_with_lid = labware.is_with_lid;
|
with_lid_height = labware.with_lid_height;
|
with_lid_pile_height = labware.with_lid_pile_height;
|
total_without_lid_height = labware.total_without_lid_height;
|
total_with_lid_height = labware.total_with_lid_height;
|
gripper_lid_offset = labware.gripper_lid_offset;
|
is_piling = labware.is_piling;
|
is_piled = labware.is_piled;
|
piled_script = labware.piled_script;
|
piled_height = labware.piled_height;
|
piled_speed = labware.piled_speed;
|
is_pilingon = labware.is_pilingon;
|
pilingon_script = labware.pilingon_script;
|
piled_x = labware.piled_x;
|
piled_y = labware.piled_y;
|
is_seal = labware.is_seal;
|
sealed_height = labware.sealed_height;
|
sealed_piled_height = labware.sealed_piled_height;
|
tip_name = labware.tip_name;
|
tip_volume_max = labware.tip_volume_max;
|
tip_use_volume_max = labware.tip_use_volume_max;
|
tip_air_volume = labware.tip_air_volume;
|
tip_length = labware.tip_length;
|
tip_header_height = labware.tip_header_height;
|
tip_cone_height = labware.tip_cone_height;
|
tip_cone_radius_max = labware.tip_cone_radius_max;
|
tip_cone_radius_min = labware.tip_cone_radius_min;
|
press_tip_depth = labware.press_tip_depth;
|
quit_tip = labware.quit_tip;
|
is_filter = labware.is_filter;
|
is_lls = labware.is_lls;
|
tip_loaded_type = labware.tip_loaded_type;
|
labware_status = labware.labware_status;
|
labware_picture = labware.labware_picture;
|
labware_color_lside = labware.labware_color_lside;
|
labware_color_front = labware.labware_color_front;
|
labware_color_top = labware.labware_color_top;
|
labware_color_well = labware.labware_color_well;
|
labware_color_line = labware.labware_color_line;
|
is_default_type = labware.is_default_type;
|
timestamp = labware.timestamp;
|
labware_round_division = labware.labware_round_division;
|
labware_round_diameter = labware.labware_round_diameter;
|
labware_round_height = labware.labware_round_height;
|
labware_round_bottom_indiameter = labware.labware_round_bottom_indiameter;
|
labware_round_bottom_outdiameter = labware.labware_round_bottom_outdiameter;
|
labware_round_bottom_inheight = labware.labware_round_bottom_inheight;
|
labware_round_bottom_outheight = labware.labware_round_bottom_outheight;
|
labware_round_lid_indiameter = labware.labware_round_lid_indiameter;
|
labware_round_lid_outdiameter = labware.labware_round_lid_outdiameter;
|
labware_round_lid_height = labware.labware_round_lid_height;
|
labware_round_totalheight = labware.labware_round_totalheight;
|
}
|
|
public string label { get; set; }
|
|
//public string barcode { get; set; }
|
|
//台面位置
|
public string position { get; set; }
|
public int row { get; set; }
|
public int col { get; set; }
|
|
public string validWells { get; set; }
|
public string invalidWells { get; set; }
|
|
public ObservableCollection<PlateWellsData> plateWellDataList { get; set; }
|
|
}
|
}
|