API
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

SuburbRepository.cs 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. using Microsoft.EntityFrameworkCore;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using UnivateProperties_API.Context;
  6. using UnivateProperties_API.Model.Region;
  7. namespace UnivateProperties_API.Repository.Region
  8. {
  9. public class SuburbRepository : ISuburbRepository
  10. {
  11. private readonly DataContext dBContext;
  12. public SuburbRepository(DataContext _dBContext)
  13. {
  14. dBContext = _dBContext;
  15. }
  16. public List<Suburb> Get(Func<Suburb, bool> where)
  17. {
  18. return dBContext.Suburbs.Where(where).ToList();
  19. }
  20. public List<Suburb> GetAll()
  21. {
  22. return dBContext.Suburbs.ToList();
  23. }
  24. public List<Suburb> GetBy(string province, string city)
  25. {
  26. var provObj = dBContext.Provinces.Where(p => p.Description == province).FirstOrDefault();
  27. var cityObj = dBContext.Cities.Where(c => c.ProvinceId == provObj.Id && c.Description == city).FirstOrDefault();
  28. if (cityObj != null)
  29. return dBContext.Suburbs.Where(s => s.CityId == cityObj.Id).OrderBy(s => s.Description).ToList();
  30. else
  31. return null;
  32. }
  33. public Suburb GetDetailed(Func<Suburb, bool> first)
  34. {
  35. throw new NotImplementedException();
  36. }
  37. public List<Suburb> GetDetailedAll()
  38. {
  39. throw new NotImplementedException();
  40. }
  41. public void Insert(Suburb item)
  42. {
  43. dBContext.Suburbs.Add(item);
  44. Save();
  45. }
  46. public void Insert(IEnumerable<Suburb> items)
  47. {
  48. foreach (var item in items)
  49. {
  50. dBContext.Suburbs.Add(item);
  51. Save();
  52. }
  53. }
  54. public void Remove(Suburb item)
  55. {
  56. dBContext.Suburbs.Remove(item);
  57. Save();
  58. }
  59. public void Remove(IEnumerable<Suburb> items)
  60. {
  61. foreach (var item in items)
  62. {
  63. dBContext.Suburbs.Remove(item);
  64. }
  65. Save();
  66. }
  67. public void RemoveAtId(int item)
  68. {
  69. var suburb = Get(x => x.Id == item).FirstOrDefault();
  70. if (suburb != null)
  71. {
  72. dBContext.Suburbs.Remove(suburb);
  73. Save();
  74. }
  75. }
  76. public void Save()
  77. {
  78. dBContext.SaveChanges();
  79. }
  80. public void Update(Suburb item)
  81. {
  82. dBContext.Entry(item).State = EntityState.Modified;
  83. Save();
  84. }
  85. }
  86. }