using ProjectBase.Data.BaseDAL; using ProjectBase.Data.Logs; using SIMDP.DAL.IDALSQL; using SIMDP.Model; using System; using System.Collections.Generic; namespace SIMDP.BLL { /// /// MTOC_Data /// public class BlMtocData : BaseBLL { private IDalMtocData dalData; public BlMtocData() : base() { base.Init(this.GetType().FullName, System.Reflection.Assembly.GetExecutingAssembly().GetName().Name); dalData = baseDal as IDalMtocData; } /// /// 达到17行时,自动删除10行 /// /// /// public void AutoDelete(string pointer) { if (string.IsNullOrEmpty(pointer)) return; // string deleteSql = " Id in(select top 15 Id from MTOC_Data order by Id)"; string sql1 = $"select top 1 id from mtoc_data where vin = '{pointer}'"; var strID = dalData.SqlValueList(sql1); if (string.IsNullOrEmpty(strID)) return; // string sql2 = $"Id in(select top 10 Id from MTOC_Data where Id < '{Convert.ToInt64(strID) - 10}' order by Id)";//前面留10个 string sql2 = $" Id < '{Convert.ToInt64(strID) - 10}'";//前面留10个 BLLFactory.Instance.DeleteByCondition(sql2); } public MoMtocData FindPointerModel(string pointer) { if (string.IsNullOrEmpty(pointer)) return null; string sql = $"vin = '{pointer}'"; return dalData.FindSingle(sql); } public MoMtocData FindPointerNextModel(string pointer) { if (string.IsNullOrEmpty(pointer)) return null; string sql1 = $"select top 1 id from mtoc_data where vin = '{pointer}'"; var strID = dalData.SqlValueList(sql1); if (string.IsNullOrEmpty(strID)) return null; string sql2 = $"select top 2 * from mtoc_data where id >= '{strID}'"; var listtt = dalData.GetList(sql2); if (listtt.Count < 2) return null; return listtt[1]; } public List FindFromThis(string pointer, int length) { if (string.IsNullOrEmpty(pointer)) return null; string sql1 = $"select top 1 id from mtoc_data where vin = '{pointer}'"; var strID = dalData.SqlValueList(sql1); if (string.IsNullOrEmpty(strID)) return null; string sql2 = $"select top {length} * from mtoc_data where id >= '{strID}'"; return dalData.GetList(sql2); } /// /// 截断表,将重置标识种子 /// /// public int TruncateTable() { string sql = "TRUNCATE TABLE MTOC_DATA"; return dalData.SqlExecute(sql); } } }