TispContentGroupRepository.cs 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. using Ropin.Inspection.Model.Entities;
  2. using Ropin.Inspection.Model.SearchModel;
  3. using Ropin.Inspection.Model.SearchModel.MTN;
  4. using Ropin.Inspection.Model.ViewModel;
  5. using Ropin.Inspection.Model.ViewModel.MTN;
  6. using Ropin.Inspection.Repository.Interface;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Text;
  11. using System.Threading.Tasks;
  12. namespace Ropin.Inspection.Repository
  13. {
  14. public class TispContentGroupRepository : RepositoryBase<TISP_ContentGroup, Guid>, ITispContentGroupRepository
  15. {
  16. public TispContentGroupRepository(InspectionDbContext dbContext) : base(dbContext)
  17. {
  18. }
  19. public Task<IEnumerable<TispContentGroupViewModel>> GetList(TispContentGroupsSearchModel searchModel)
  20. {
  21. MySqlConnector.MySqlParameter[] parameters = new[] {
  22. new MySqlConnector.MySqlParameter("devCode", searchModel.C_DevStoreCode),
  23. new MySqlConnector.MySqlParameter("storeCode", searchModel.C_StoreCode),
  24. new MySqlConnector.MySqlParameter("types", searchModel.I_Type),
  25. new MySqlConnector.MySqlParameter("Status", searchModel.C_Status),
  26. new MySqlConnector.MySqlParameter("name", "%"+searchModel.C_Name+"%")
  27. };
  28. StringBuilder sql = new StringBuilder();
  29. sql.Append(@" select * from (
  30. select C.*,D.C_Name as C_DevName,D.C_DevQRUrl from TISP_ContentGroup C
  31. LEFT JOIN TDEV_DevStore D on (C.C_DevStoreCode=D.C_ID)
  32. )tab WHERE 1=1
  33. ");
  34. if (!string.IsNullOrEmpty(searchModel.C_Status))
  35. {
  36. if (searchModel.C_Status.Contains(","))
  37. {
  38. sql.Append($" AND C_Status in ('{searchModel.C_Status.Replace(",", "','")}') ");
  39. }
  40. else
  41. {
  42. sql.Append(" AND C_Status=@Status ");
  43. }
  44. }
  45. if (!string.IsNullOrEmpty(searchModel.C_StoreCode))
  46. {
  47. sql.Append(" and C_StoreCode=@storeCode ");
  48. }
  49. if (!string.IsNullOrEmpty(searchModel.C_DevStoreCode))
  50. {
  51. sql.Append(" and C_DevStoreCode=@devCode ");
  52. }
  53. if (searchModel.I_Type!=null&& searchModel.I_Type!=0)
  54. {
  55. sql.Append(" and I_Type=@types ");
  56. }
  57. sql.Append(" order by I_Sort asc ");
  58. IEnumerable<TispContentGroupViewModel> recordItemlist = EntityFrameworkCoreExtensions.GetList<TispContentGroupViewModel>(DbContext.Database, sql.ToString(), parameters);
  59. if (recordItemlist.First()==null)
  60. {
  61. recordItemlist = new List<TispContentGroupViewModel>();
  62. }
  63. return Task.FromResult(recordItemlist);
  64. //searchModel.TotalCount = recordItemlist.First() != null ? recordItemlist.ToList().Count : 0;
  65. //if (searchModel.TotalCount == 0)
  66. //{
  67. // recordItemlist = new List<TispContentGroupViewModel>();
  68. //}
  69. //return Task.FromResult(searchModel.IsPagination ? recordItemlist.Skip((searchModel.PageIndex - 1) * searchModel.PageSize).Take(searchModel.PageSize) : recordItemlist);
  70. }
  71. }
  72. }