using DataRWDAL;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XCommon;
using XImagingXhandler.XDAL;
namespace XCore
{
public class LabwareTypeBll
{
#region 根据耗材类型默认或自定义名返回耗材类型列表集合
///
/// 根据耗材类型默认或自定义名返回耗材类型列表集合
///
/// 耗材类型默认或自定义
/// 耗材类型列表集合
public ObservableCollection GetLabwareTypeListInfo(int kind)
{
return LabwareTypeDB.GetLabwareTypeFromdb(kind);
}
#endregion
#region 添加一个新耗材类型
///
/// 添加一个新耗材类型
///
/// 耗材类型对象
/// 添加是否成功
public int AddLabwareTypeInfo(LabwareType labwareType)
{
return LabwareTypeDB.AddLabwareTypeIntodb(labwareType);
}
#endregion
#region 添加一个新耗材类型带耗材类型名查重功能
///
/// 添加一个新耗材类型带耗材类型名查重功能
///
/// 耗材类型名
/// 耗材类型名英文
/// 耗材类型集合对象
/// 耗材类型Id
/// 添加是否成功;-2:已存在同名耗材类型;1:成功;其他失败
public int AddNewLabwareTypeInfoWithCheck(string labwareTypeName, string labwareTypeNameEN, ObservableCollection custdata, string labwareTypeid = "")
{
LabwareType labwareType = new LabwareType();
if (labwareTypeid != "")
{
labwareType.labwaretype_id = labwareTypeid;
}
else
{
//allUser.user_id = Guid.NewGuid().ToString("N");
}
labwareType.labwaretype_name = labwareTypeName;
labwareType.labware_well_name_en = labwareTypeNameEN;
labwareType.is_default_type = 0;
labwareType.labware_type_status = 1;
labwareType.labware_type_timestamp = DateTime.Now;
bool isExistUser = LabwareTypeDB.GetIsDoubleLabwareTypeOndb(labwareType);
if (isExistUser)
{
return -2;
}
else
{
if (labwareTypeid != "")
{
custdata.FirstOrDefault(x => x.labwaretype_id == labwareType.labwaretype_id).labwaretype_name = labwareTypeName;
custdata.FirstOrDefault(x => x.labwaretype_id == labwareType.labwaretype_id).labware_well_name_en = labwareTypeNameEN;
return LabwareTypeDB.UpdateLabwareTypeFromdb(labwareType);
}
else
{
labwareType.labwaretype_id = ComUtility.GetGuid();
custdata.Add(labwareType);
return this.AddLabwareTypeInfo(labwareType);
}
}
}
#endregion
#region 删除一个新耗材类型
///
/// 删除一个新耗材类型
///
/// 耗材类型Id
/// 删除是否成功
public int DeleteLabwareTypeInfo(string labwareTypeid)
{
return LabwareTypeDB.DeleteLabwareTypeFromdb(labwareTypeid);
}
#endregion
#region 构建圆形皿耗材规格分格可选数据集合
///
/// 构建圆形皿耗材规格分格可选数据集合
///
///
public ObservableCollection GetLabwareRoundShape()
{
return LabwareTypeDB.GetLabwareRoundShapeData() ;
}
#endregion
#region 构建圆形皿耗材规格直径可选数据集合
///
/// 构建圆形皿耗材规格直径可选数据集合
///
///
public ObservableCollection GetLabwareRoundDiameter()
{
return LabwareTypeDB.GetLabwareRoundDiameterData() ;
}
#endregion
#region 构建圆形皿耗材规格高度可选数据集合
///
/// 构建圆形皿耗材规格高度可选数据集合
///
///
public ObservableCollection GetLabwareRoundHeight()
{
return LabwareTypeDB.GetLabwareRoundHeightData();
}
#endregion
}
}