123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- using Microsoft.EntityFrameworkCore;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using UnivateProperties_API.Containers.Misc;
- using UnivateProperties_API.Containers.Property;
- using UnivateProperties_API.Context;
- using UnivateProperties_API.Model.Misc;
-
- namespace UnivateProperties_API.Repository.Misc
- {
- public class CarouselRepository : ICarouselRepository
- {
- private readonly DataContext dBContext;
-
- public CarouselRepository(DataContext _dBContext)
- {
- dBContext = _dBContext;
- }
-
- public List<Carousel> Get(Func<Carousel, bool> where)
- {
- var CarouselList = dBContext.Carousel.Where(where).ToList();
-
- foreach (var item in CarouselList)
- {
- if (!string.IsNullOrEmpty(item.Image) && !item.Image.StartsWith("data:image"))
- item.Image = ImageFormatter.ImageToBase64(item.Image);
- }
-
- return CarouselList;
- }
-
- public List<Carousel> GetAll()
- {
- var CarouselList = dBContext.Carousel.ToList();
-
- foreach (var item in CarouselList)
- {
- if (!string.IsNullOrEmpty(item.Image) && !item.Image.StartsWith("data:image"))
- item.Image = ImageFormatter.ImageToBase64(item.Image);
- }
-
- return CarouselList;
- }
-
- public Carousel GetDetailed(Func<Carousel, bool> first)
- {
- return dBContext.Carousel.FirstOrDefault(first);
- }
-
- public List<Carousel> GetDetailedAll()
- {
- return dBContext.Carousel.ToList();
- }
-
- public void Insert(Carousel item)
- {
- dBContext.Carousel.Add(item);
- Save();
- }
-
- public void Insert(IEnumerable<Carousel> items)
- {
- foreach (var item in items)
- {
- dBContext.Carousel.Add(item);
- Save();
- }
- }
-
- public void Remove(Carousel item)
- {
- dBContext.Carousel.Remove(item);
- Save();
- }
-
- public void Remove(IEnumerable<Carousel> items)
- {
- foreach (var item in items)
- {
- dBContext.Carousel.Remove(item);
- Save();
- }
- }
-
- public void RemoveAtId(int item)
- {
- var Carousel = Get(x => x.Id == item).FirstOrDefault();
- if (Carousel != null)
- {
- dBContext.Carousel.Remove(Carousel);
- Save();
- }
- }
-
- public void Save()
- {
- dBContext.SaveChanges();
- }
-
- public void Update(Carousel item)
- {
- dBContext.Entry(item).State = EntityState.Modified;
- Save();
- }
-
- public int NewId()
- {
- // Not sure if properties need it
- return 0;
- }
-
- public List<CarouselList> GetCarouselItems()
- {
- List<CarouselList> list = new List<CarouselList>();
- var CarouselList = dBContext.Carousel.ToList();
-
- foreach (var item in CarouselList)
- {
- if (!string.IsNullOrEmpty(item.Image) && !item.Image.StartsWith("data:image"))
- item.Image = ImageFormatter.ImageToBase64(item.Image);
-
- var carItem = new CarouselList()
- {
- Image = item.Image,
- Header = item.Header
- };
- if (item.PropertyId > 0)
- {
- var property = dBContext.Properties.Include("Province").Include("City").Include("Suburb").Where(p => p.Id == item.PropertyId).FirstOrDefault();
- carItem.Address = string.Format("{0}, {1} <br/>{2}", property.Suburb.Description, property.City.Description, property.AddressLine3);
- carItem.IsProperty = true;
- }
- if (item.TimeshareId > 0)
- {
- var timeshare = dBContext.Weeks.Where(t => t.Id == item.TimeshareId).FirstOrDefault();
- carItem.Bedrooms = timeshare.Bedrooms;
- carItem.Sleeps = timeshare.MaxSleep;
- carItem.Arrival = timeshare.ArrivalDate;
- carItem.Departure = timeshare.DepartureDate;
- carItem.IsProperty = false;
- }
-
- list.Add(carItem);
- }
-
- return list;
- }
- }
- }
|