using DataRWDAL.Base; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Reflection; using XImagingXhandler.XDAL; namespace DataRWDAL { /// /// 菌落库表操作类 /// public class BacteriaDB: BaseDB { #region 根据菌落Id,获取菌落信息 /// /// 根据菌落Id,获取菌落信息 /// /// 菌落Id /// 菌落对象 public static Bacteria GetABacteriaFromdb(string bacteriaid) { using (var db = GetInstance()) { return db.Queryable().Single(it => it.bacteria_id.Equals(bacteriaid)); } } #endregion #region 添加一条新的菌数据 by 菌落对象 /// /// 添加一条新的菌落数据 by 菌落对象 /// /// 菌落对象 /// 1:成功;0:失败 public static int AddBacteriaIntodb(Bacteria bacteria) { using (var db = GetInstance()) { return db.Insertable(bacteria).ExecuteCommand(); } } #endregion #region 查询菌落是否重名 by 菌落对象 /// /// 查询菌落是否重名 by 菌落对象 /// /// 菌落对象 /// true:存在;false:不存在 public static bool GetIsDoubleBacteriaOndb(Bacteria bacteria) { bool isExistUser = false; int count = 0; using (var db = GetInstance()) { if (bacteria.bacteria_id != "") { count= db.Queryable().Where(it => it.bacteria_name.Equals(bacteria.bacteria_name)&&!it.bacteria_id.Equals(bacteria.bacteria_id)&&it.bacteria_status.Equals(1)).Count(); } else { count = db.Queryable().Where(it => it.bacteria_name.Equals(bacteria.bacteria_name) && it.bacteria_status.Equals(1)).Count(); } if(count>0) { isExistUser = true; } else { isExistUser = false; } } return isExistUser; } #endregion #region 修改一条新的菌落数据 by 菌落对象 /// /// 修改一条新的菌落数据 by 菌落对象 /// /// 菌落对象 /// 1:成功;0:失败 public static int UpdateBacteriaIntodb(Bacteria bacteria) { using (var db = GetInstance()) { return db.Updateable(bacteria).ExecuteCommand(); } } #endregion #region 查询返回菌落数据集 by 默认类型 /// /// 查询返回菌落数据集 by 默认类型 /// /// 1:系统默认;0:非默认;2:全部 /// public static ObservableCollection GetBacteriaListFromdb(int isDefault) { using (var db = GetInstance()) { if (isDefault == 2) { return new ObservableCollection(db.Queryable().Where(it => it.bacteria_status.Equals(1)).ToList()); } else { return new ObservableCollection(db.Queryable().Where(it => it.bacteria_status.Equals(1)&&it.is_default_type.Equals(isDefault)).ToList()); } } } #endregion #region 构建返回挑菌位置数据集合信息 /// /// 构建返回挑菌位置数据集合信息 /// /// 挑菌位置实体集合 public static ObservableCollection GetBacteriaPositionListFromdb() { ObservableCollection dropdowns = new ObservableCollection(); DropdownName dropdown = new DropdownName(); dropdown.dropdown_id = "1"; dropdown.dropdown_name = "距离皿底距离"; dropdowns.Add(dropdown); dropdown = new DropdownName(); dropdown.dropdown_id = "2"; dropdown.dropdown_name = "菌表面距离"; dropdowns.Add(dropdown); return dropdowns; } #endregion } }