ÎļþÃû´Ó Schedule/IStation.Algorithm/DAL/BaseDAL.cs ÐÞ¸Ä |
| | |
| | | /// </summary> |
| | | /// <typeparam name="T">å®ä½ç±»ç±»å</typeparam> |
| | | public partial class BaseDAL<T> |
| | | where T : Model.BaseModel, new() |
| | | where T : Entity.BaseEntity, new() |
| | | { |
| | | /// <summary> |
| | | /// è·å表åç§° |
| | | /// </summary> |
| | | /// <typeparam name="T"></typeparam> |
| | | /// <returns></returns> |
| | | /// </summary> |
| | | public string TableName |
| | | { |
| | | get |
| | |
| | | return (att[0] as SugarTable).TableName; |
| | | return objType.Name; |
| | | } |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¿æ¥é
ç½® |
| | | /// é»è®¤è¿æ¥å¯¹è±¡ |
| | | /// </summary> |
| | | public virtual ConnectionConfig ConnectionConfig |
| | | public virtual SqlSugarClient Connection |
| | | { |
| | | get |
| | | { |
| | | return default; |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// é»è®¤è¿æ¥å¯¹è±¡ |
| | | /// </summary> |
| | | public ISqlSugarClient Connection |
| | | { |
| | | get |
| | | { |
| | | return new SqlSugarClient(ConnectionConfig); |
| | | } |
| | | } |
| | | |
| | |
| | | /// <summary> |
| | | /// æå
¥æå®å¯¹è±¡å°æ°æ®åºä¸ |
| | | /// </summary> |
| | | public virtual long Insert(T entity) |
| | | public virtual int Insert(T entity) |
| | | { |
| | | if (entity == null) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Insertable(entity).ExecuteReturnSnowflakeId(); |
| | | return db.Insertable(entity).ExecuteReturnIdentity(); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Insertable(list).ExecuteReturnSnowflakeIdList().Count() > 0; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æå
¥å¹¶è¿å |
| | | /// </summary> |
| | | public virtual List<long> InsertsR(List<T> list) |
| | | { |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | { |
| | | return db.Insertable(list).ExecuteReturnSnowflakeIdList(); |
| | | return db.Insertable(list).ExecuteReturnIdentity() > 0; |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | list.ForEach(x => x.ID = SnowFlakeSingle.instance.NextId()); |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Fastest<T>().BulkCopy(list) > 0; |
| | | } |
| | |
| | | { |
| | | if (entity == null) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Updateable(entity).ExecuteCommand() > 0; |
| | | } |
| | |
| | | return default; |
| | | if (pros == null || pros.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Updateable(entity).UpdateColumns(pros.ToArray()).ExecuteCommand() > 0; |
| | | } |
| | |
| | | { |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Updateable(list).ExecuteCommand() > 0; |
| | | } |
| | |
| | | return default; |
| | | if (pros == null || pros.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Updateable(list).UpdateColumns(pros.ToArray()).ExecuteCommand() > 0; |
| | | } |
| | |
| | | { |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Fastest<T>().BulkUpdate(list) > 0; |
| | | } |
| | |
| | | return default; |
| | | if (entity.ID < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Deleteable<T>().Where(entity).ExecuteCommand() > 0; |
| | | } |
| | |
| | | return default; |
| | | if (list.Exists(x => x.ID < 1)) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Deleteable<T>().Where(list).ExecuteCommand() > 0; |
| | | } |
| | |
| | | /// <summary> |
| | | /// æ ¹æ®æå®å¯¹è±¡çID,仿°æ®åºä¸å 餿å®å¯¹è±¡ |
| | | /// </summary> |
| | | public virtual bool DeleteByID(long ID) |
| | | public virtual bool DeleteByID(int ID) |
| | | { |
| | | if (ID < 1) |
| | | return default; |
| | | |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Deleteable<T>().Where(x => x.ID == ID).ExecuteCommand() > 0; |
| | | } |
| | |
| | | /// <summary> |
| | | /// éè¿idå表å é¤ |
| | | /// </summary> |
| | | public virtual bool DeleteByIds(List<long> ids) |
| | | public virtual bool DeleteByIds(List<int> ids) |
| | | { |
| | | if (ids == null || ids.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Deleteable<T>().Where(x => ids.Contains(x.ID)).ExecuteCommand() > 0; |
| | | } |
| | |
| | | /// </summary> |
| | | public virtual bool DeleteAll() |
| | | { |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.DbMaintenance.TruncateTable<T>(); |
| | | } |
| | |
| | | /// </summary> |
| | | public virtual List<T> GetAll() |
| | | { |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<T>().ToList(); |
| | | } |
| | |
| | | /// <summary> |
| | | /// æ¥è¯¢æ°æ®åº,è¿åæå®IDç对象 |
| | | /// </summary> |
| | | public virtual T GetByID(long id) |
| | | public virtual T GetByID(int id) |
| | | { |
| | | if (id < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<T>().First(x => x.ID == id); |
| | | } |
| | |
| | | /// éæidå表è·å |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public virtual List<T> GetByIds(List<long> ids) |
| | | public virtual List<T> GetByIds(List<int> ids) |
| | | { |
| | | if (ids == null || ids.Count < 1) |
| | | return default; |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<T>().OrderBy(x => x.ID).Where(x => ids.Contains(x.ID)).ToList(); |
| | | } |
| | |
| | | /// <summary> |
| | | /// å¤ææ°æ®åºæ¯å¦åå¨å¯¹è±¡ |
| | | /// </summary> |
| | | public virtual bool Exist(long id) |
| | | public virtual bool Exist(int id) |
| | | { |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | return db.Queryable<T>().Where(x => x.ID == id).Any(); |
| | | } |
| | |
| | | if (list == null || list.Count < 1) |
| | | return default; |
| | | |
| | | using (SqlSugarClient db = new SqlSugarClient(ConnectionConfig)) |
| | | using (SqlSugarClient db = Connection) |
| | | { |
| | | db.Ado.BeginTran(); |
| | | db.Deleteable<T>().ExecuteCommand(); |