using Ropin.Inspection.Model.Entities; using Ropin.Inspection.Model.ViewModel.DEV; using Ropin.Inspection.Repository.DEV.Interface; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Ropin.Inspection.Repository.DEV { public class dev_DevBoxMigrateRepository : RepositoryBase, Idev_DevBoxMigrateRepository { public dev_DevBoxMigrateRepository(InspectionDbContext DbContext) : base(DbContext) { } public Task> GetConditionAsync(dev_DevBoxMigrateSearchModel searchModel) { MySqlConnector.MySqlParameter[] parameters = new[] { new MySqlConnector.MySqlParameter("devBoxCode", searchModel.C_DevBoxCode) }; StringBuilder sql = new StringBuilder(); sql.Append(@"select d.C_ID,d.C_Name,d.C_DevBoxCode, b.C_Name as C_DevBoxName,b.C_BoxNo, d.C_LastStoreCode,s.C_Name as C_LastStoreName, d.C_CurrentStoreCode,store.C_Name as C_CurrentStoreName, d.C_Remark,d.C_CreateBy,d.D_CreateOn from TDEV_DevBoxMigrate d LEFT JOIN TDEV_Box b on (d.C_DevBoxCode=b.C_ID) LEFT JOIN TPNT_Store s on (d.C_LastStoreCode=s.C_Code) LEFT JOIN TPNT_Store store on (d.C_CurrentStoreCode=store.C_Code) where d.C_DevBoxCode=@devBoxCode order by d.D_CreateOn desc "); IEnumerable recordItemlist = EntityFrameworkCoreExtensions.GetList(DbContext.Database, sql.ToString(), parameters); searchModel.TotalCount = recordItemlist.First() != null ? recordItemlist.ToList().Count : 0; return Task.FromResult(searchModel.IsPagination ? recordItemlist.Skip((searchModel.PageIndex - 1) * searchModel.PageSize).Take(searchModel.PageSize) : recordItemlist); } } }