12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using Ropin.Inspection.Model.Entities;
- using Ropin.Inspection.Model.SearchModel;
- using Ropin.Inspection.Model.ViewModel;
- using Ropin.Inspection.Repository.Interface;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Ropin.Inspection.Repository
- {
- public class ReportRepository : RepositoryBase<TISP_Report, Guid>, IReportRepository
- {
- public ReportRepository(InspectionDbContext dbContext) : base(dbContext)
- {
- }
- public Task<IEnumerable<ReportViewModel>> GetWithoutReportData(ReportSearchModel searchModel)
- {
- MySqlConnector.MySqlParameter[] parameters = new[] {
- new MySqlConnector.MySqlParameter("StoreCode", searchModel.StoreCode),
- new MySqlConnector.MySqlParameter("start", searchModel.Start),
- new MySqlConnector.MySqlParameter("end", searchModel.End),
- new MySqlConnector.MySqlParameter("name ", searchModel.C_Name),
- new MySqlConnector.MySqlParameter("type", searchModel.I_Type),
- new MySqlConnector.MySqlParameter("groupName ", searchModel.C_GroupName) };
- string sql = "SELECT G_ID,C_Name,I_Type,C_GroupName,D_CreateTime,C_Remark,D_Start,D_End FROM TISP_Report WHERE C_Status = '1' AND C_StoreCode = @StoreCode AND D_CreateTime between @start and @end";
- if (!string.IsNullOrEmpty(searchModel.C_Name))
- {
- sql += " AND C_Name = @name";
- }
- if (searchModel.I_Type != 0)
- {
- sql += " AND I_Type = @type";
- }
- if (!string.IsNullOrEmpty(searchModel.C_GroupName))
- {
- sql += " AND C_GroupName = @groupName";
- }
- sql += " ORDER BY D_CreateTime DESC";
- IEnumerable<ReportViewModel> list = EntityFrameworkCoreExtensions.GetList<ReportViewModel>(DbContext.Database, sql, parameters);
- searchModel.TotalCount = list.First() != null ? list.ToList().Count : 0;
- return Task.FromResult(searchModel.IsPagination ? list.Skip((searchModel.PageIndex - 1) * searchModel.PageSize).Take(searchModel.PageSize) : list);
- }
- }
- }
|