using DapperExtensions.OracleExt; using FineAdmin.IRepository; using FineAdmin.Model; using System; using System.Collections.Generic; namespace FineAdmin.Repository { public class BaseRepository : IBaseRepository where T : class, new() { #region CRUD /// /// 根据主键返回实体 /// public T GetById(int Id) { using (var conn = OracleHelper.OracleConnection()) { return conn.GetById(Id); } } /// /// 新增 /// public int Insert(T model) { using (var conn = OracleHelper.OracleConnection()) { return conn.Insert(model); } } /// /// 根据主键修改数据 /// public int UpdateById(T model) { using (var conn = OracleHelper.OracleConnection()) { return conn.UpdateById(model); } } /// /// 根据主键修改数据 修改指定字段 /// public int UpdateById(T model, string updateFields) { using (var conn = OracleHelper.OracleConnection()) { return conn.UpdateById(model, updateFields); } } /// /// 根据主键删除数据 /// public int DeleteById(int Id) { using (var conn = OracleHelper.OracleConnection()) { return conn.DeleteById(Id); } } /// /// 根据主键批量删除数据 /// public int DeleteByIds(object Ids) { using (var conn = OracleHelper.OracleConnection()) { return conn.DeleteByIds(Ids); } } /// /// 根据条件删除 /// public int DeleteByWhere(string where) { using (var conn = OracleHelper.OracleConnection()) { return conn.DeleteByWhere(where); } } #endregion /// /// 获取分页数据 /// public IEnumerable GetByPage(SearchFilter filter, out int total) { using (var conn = OracleHelper.OracleConnection()) { return conn.GetByPage(filter.pageIndex, filter.pageSize, out total, filter.returnFields, filter.where, filter.param, filter.orderBy, filter.transaction, filter.commandTimeout); } } /// /// 获取分页数据 联合查询 /// public IEnumerable GetByPageUnite(SearchFilter filter, out int total) { using (var conn = OracleHelper.OracleConnection()) { var t = filter.prefix; //return conn.GetByPageUnite(filter.prefix, filter.pageIndex, filter.pageSize, out total, filter.returnFields, filter.where, filter.param, filter.orderBy, filter.transaction, filter.commandTimeout); return conn.GetByPageUnite(filter.pageIndex, filter.pageSize, out total, filter.returnFields, filter.where, filter.param, filter.orderBy, filter.transaction, filter.commandTimeout); } } /// /// 返回整张表数据 /// returnFields需要返回的列,用逗号隔开。默认null,返回所有列 /// public IEnumerable GetAll(string returnFields = null, string orderby = null) { using (var conn = OracleHelper.OracleConnection()) { return conn.GetAll(returnFields, orderby); } } /// /// 根据查询条件获取数据 /// public IEnumerable GetByWhere(string where = null, object param = null, string returnFields = null, string orderby = null) { using (var conn = OracleHelper.OracleConnection()) { return conn.GetByWhere(where, param, returnFields, orderby); } } } }