using DataEntity; using DataRWDAL; using DataRWDAL.Base; using HxEnum; using MySql.Data.MySqlClient; using SqlSugar; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using XCommon.Log; using XCommon.MySql; namespace XImagingXhandler.XDAL { /// /// 台面模板内板位关联操作类 /// public class TabletopRelLatticeDB:BaseDB { #region 删除某台面模板内的所有板位数据 /// /// 删除某台面模板内的所有板位数据 /// /// 台面模板Id /// 1:成功;0:失败; public static int DeleteTabletopRelLatticeIntodb(string tabletopid) { using (var db = GetInstance()) { int sum = 0;//执行的总数 var query = db.Queryable().Where(it => it.tabletopid.Equals(tabletopid)).ToList(); if(query!=null&&query.Count()>0) { foreach(var item in query) { Lattice lattice = LatticeDB.GetLatticeDataByIdFromdb(item.lattice_id.ToString()); lattice.lattice_state = 0; int ret=DeleteLatticeFromdb(lattice); if (ret == 1) { sum++; } } if (sum == query.Count) { return 1; } } return 0; } } #endregion #region 删除指定的台面模板内的板位数据 /// /// 删除指定的台面模板内的板位数据 /// /// 板位 /// 1:成功;0:失败; public static int DeleteLatticeFromdb(Lattice lattice) { using (var db = GetInstance()) { return db.Updateable(lattice).ExecuteCommand(); } } #endregion #region 更新指定的台面模板内的板位数据 /// /// 更新指定的台面模板内的板位数据 /// /// 板位 /// 1:成功;0:失败; public static int UpdateLatticeFromdb(Lattice lattice) { using (var db = GetInstance()) { return db.Updateable(lattice).ExecuteCommand(); } } #endregion #region 更新指定的台面模板与板位关系数据 /// /// 更新指定的台面模板与板位关系数据 /// /// 台面与板位关系对象 /// 1:成功;0:失败; public static int UpdateTabletopRelLatticeFromdb(TabletopRelLattice tabletopRelLattice) { using (var db = GetInstance()) { return db.Updateable(tabletopRelLattice).Where(it=>it.tabletopid.Equals(tabletopRelLattice.tabletopid) &&it.lattice_id.Equals(tabletopRelLattice.lattice_id)).ExecuteCommand(); } } #endregion #region 获取当前最大的台面板位Id /// /// 获取当前最大的台面板位Id /// /// 最大板位Id public static int GetMaxLattceId() { using (var db = GetInstance()) { return db.Queryable().ToList().Count; } } #endregion #region 获取台面板位关系数据 通过台面Id和板位Id /// /// 获取台面板位关系数据 通过台面Id和板位Id /// /// 板位Id /// 台面Id /// 台面板位关系数据 public static TabletopRelLattice GetTabletopRelLatticeByTabletopIdAndLatticeId(string tabletopId,int latticeId) { using (var db = GetInstance()) { return db.Queryable().Single(it => it.tabletopid.Equals(tabletopId) && it.lattice_id.Equals(latticeId)); } } #endregion #region 批量添加板位数据 /// /// 批量添加板位数据 /// /// 板位对象 /// 开始板位Id /// 台面模板Id /// public static int AddLatticeIntodb(Lattice lattice,int startLatticeid,string tabletopId) { using (var db = GetInstance()) { int sum = 0;//执行的总数 //for (int i = 0; i < lattices.Count; i++) //{ lattice.lattice_id = (startLatticeid).ToString(); db.Insertable(lattice).ExecuteCommand(); int ret=db.Insertable(new TabletopRelLattice() { lattice_id = (startLatticeid), tabletopid = tabletopId, lattice_pixel_x = lattice.lattice_pixel_x, lattice_pixel_y = lattice.lattice_pixel_y, labware_id= lattice.labware_id, isbaselattice = 1 }).ExecuteCommand(); sum++; //} //if(sum==lattices.Count) //{ if(ret>0) { return ret; } //} return 0; } } #endregion } }