public ApartmentDto(IApartment apartment)
        {
            if (apartment is null)
            {
                return;
            }

            this.Id             = apartment.Id;
            this.ActivityState  = apartment.ActivityState;
            this.Amenities      = apartment.Amenities.Where(a => !a.IsDeleted).Select(a => new AmenityDto(a));
            this.ApartmentType  = apartment.ApartmentType;
            this.CheckInTime    = apartment.CheckInTime;
            this.CheckOutTime   = apartment.CheckOutTime;
            this.ForRentalDates = apartment.ForRentalDates.Where(a => !a.IsDeleted).Select(frd => frd.Date);

            if (apartment.Host != null)
            {
                this.Host = new UserPublicDto(apartment.Host);
            }

            this.Images = apartment.Images.Where(i => !i.IsDeleted).Select(i => new ImageDto(i));

            if (apartment.Location != null)
            {
                this.Location = new LocationDto(apartment.Location);
            }

            this.NumberOfGuests = apartment.NumberOfGuests;
            this.NumberOfRooms  = apartment.NumberOfRooms;
            this.PricePerNight  = apartment.PricePerNight;
            this.Title          = apartment.Title;
        }
Exemple #2
0
        public async Task <ActionResult <IResponse <IApartment> > > Post([FromBody] Apartment data)
        {
            try
            {
                IApartment Result = await DatabaseService.ApartmentModel.Insert(data);

                return(new Response <IApartment>()
                {
                    Status = true,
                    Code = 200,
                    Data = Result,
                    msg = "Thêm dữ liệu thành công"
                });
            }
            catch (Exception e)
            {
                return(new Response <IApartment>()
                {
                    Status = true,
                    Code = 201,
                    Data = null,
                    msg = e.Message
                });
            }
        }
        public IActionResult CreateApartment(CreateApartment createApartment)
        {
            IApartment apartment = Mapper.Map <IApartment>(createApartment);

            var log = User.Identity.Name;
            var us  = Repository.Users.Search(user => user.Email == log).FirstOrDefault();

            apartment.HouseHolder = us;

            Repository.Apartments.Add(apartment);
            Repository.Save();

            var newApartment = Repository.Apartments.Search(ap => true).Last();

            var apartmentFacilities = new ApartmentFacilities
            {
                ApartmentId = newApartment.Id,
                Facilities  = Enum.GetNames(typeof(Models.Intefaces.Facility))
                              .Select(a => new Views.ViewModels.ApartmentModels.Facility
                {
                    Title = a
                })
            };

            return(View("AddFacilities", apartmentFacilities));
        }
Exemple #4
0
 /// <summary>
 /// Метод. Копирует данные сущности в компоненты квартира
 /// </summary>
 protected void CopyApartmentFromEntity(IApartment apartment)
 {
     ObjectType    = Convert.ToString(apartment.RoomNumber);             // Скопировать тип квартиры
     ObjectCity    = apartment.Home.Street.City.Name;                    // Скопировать город
     ObjectStreet  = apartment.Home.Street.Name;                         // Скопировать улица
     ObjectComplex = Convert.ToString(apartment.Home.ComplexNumber);     // Скопировать комплекс
     ObjectHome    = apartment.Home.Number;                              // Скопировать номер дома
     ObjectFlat    = apartment.Number.ToString();                        // Скопировать номер квартиры
 }
Exemple #5
0
        public ParserForm(IApartment apartment, IObjects objects, IComparisonAparts comparisonApartments)
        {
            _apartment            = apartment;
            _objects              = objects;
            _comparisonApartments = comparisonApartments;

            InitializeComponent();

            ConfigureEntitiesDataGridView();
        }
Exemple #6
0
        private void relinkObjectButton_Click(object sender, EventArgs e)
        {
            ApartmentSelectForm apartmentSelectForm;                                             // Форма выбора квартиры

            apartmentSelectForm = new ApartmentSelectForm(_apartments);                          // Создание формы
            apartmentSelectForm.ShowDialog();                                                    // Открытие диалогового окна

            if (apartmentSelectForm.SelectedApartment != null)                                   // Проверить выбранного квартиры
            {
                _apartmentAfterRelinking = apartmentSelectForm.SelectedApartment;                // Сохранить выбранного квартиры в поле
            }

            CopyLinkedDataFromEntity();                                                          // Скопировать данные из сущностей, связанных с основной сущностью
        }
Exemple #7
0
        /// <summary>
        /// Конструктор
        /// </summary>
        public PictureForm(IPicture picture, IApartment apartment, string imageFolderPath)
            : base()
        {
            InitializeComponent();                 // Инициализировать компоненты формы

            _picture = picture;                    // Сохранить картинку в поле

            _apartment            = apartment;     // Сохранить список квартир
            _apartmentAfterRelink = apartment;

            _imageFolderPath = imageFolderPath;   // Сохранить путь к файлу картинок в поле

            CleanAllData();                       // Очистить компоненты всех групп

            CopyDataFromEntity();                 // Скопировать данные сущности в компоненты формы

            SetPicture(ImageFileName);            // Задать картинку для предварительного просмотра
        }
Exemple #8
0
        private void unlinkObjectButton_Click(object sender, EventArgs e)
        {
            DialogResult unlinkConfirm;                         // Результат подтверждения сообщения

            unlinkConfirm = MessageBox.Show(                    // Отобразить окно сообщения с подтверждением и сохранить результат подтверждения
                "Вы действительно хотите отвязать квартиру?",
                "Подтверждение",
                MessageBoxButtons.YesNo);

            if (unlinkConfirm == DialogResult.Yes)              // Проверить результат подтверждения сообщения
            {
                _apartmentAfterRelinking = null;                // Отвязать отчет от связанного квартиры

                CleanApartment();                               // Очистить данные квартиры

                CopyLinkedDataFromEntity();                     // Скопировать данные из сущностей, связанных с основной сущностью
            }
        }
Exemple #9
0
        private static void Main(string[] args)
        {
            IFactory vFactory = new VankeFactory();
            IFactory sFactory = new SohoFactory();

            IVilla     vVilla     = vFactory.ProduceVilla();
            IApartment vApartment = vFactory.ProduceApartment();

            IVilla     sVilla     = sFactory.ProduceVilla();
            IApartment sApartment = sFactory.ProduceApartment();

            vVilla.Show();
            vApartment.Show();

            sVilla.Show();
            sApartment.Show();

            Console.ReadLine();
        }
Exemple #10
0
        private void btnChoiseApart_Click(object sender, EventArgs e)
        {
            ApartmentSelectForm apartmentSelectForm;                         // Форма выбора квартиры

            apartmentSelectForm = new ApartmentSelectForm(_apartments);      // Создать форму выбора квартиры

            apartmentSelectForm.ShowDialog();                                // Отобразить форму выбора квартиры

            if (apartmentSelectForm.SelectedApartment != null)               // Проверить выбранный квартиры
            {
                _selectedApartment = apartmentSelectForm.SelectedApartment;  // Сохранить выбранный квартиру в поле
            }

            labelApart.Text = _selectedApartment.Home.Street.Name + ", " + _selectedApartment.Home.Number +
                              " (" + _selectedApartment.Home.ComplexNumber + ") кв." + _selectedApartment.Number;
            _picturesApartment = _pictures.ToList().FindAll(p => p.Apartment == _selectedApartment);

            //_pictures.

            FillEntitiesDataGridView2(_picturesApartment);
        }
Exemple #11
0
        /// <summary>
        /// Конструктор
        /// </summary>
        public ReportForm(IReport report, IClients clients, IEmployees employees, IApartments apartments, IObjects objects, IHomes homes, IMans man, IDocuments document)
        {
            InitializeComponent();                          // Инициализировать компоненты формы

            _report     = report;                           // Сохранить отчет в поле
            _clients    = clients;                          // Сохранить список клиентов в поле
            _employees  = employees;                        // Сохранить список сотрудников в поле
            _apartments = apartments;                       // Сохранить список квартир в поле
            _objects    = objects;
            _homes      = homes;                            // Сохранить список домов с поле
            _man        = man;                              // Сохранить чловека
            _document   = document;                         // Сохранить документ

            _clientAfterRelinking    = report.Client;       // Сохранить клиента связанного с отчетов
            _employeeAfterRelinking  = report.Employee;     // Сохранить сотрудника связанного с отчетов
            _apartmentAfterRelinking = report.Apartment;    // Сохранить квартиру связанного с отчетов

            CleanAllData();                                 // Очистить компоненты всех групп

            CopyDataFromEntity();                           // Скопировать данные человека в компоненты формы
        }
        /// <summary>
        /// Метод. Выбирает квартиру из списка квартир, сохраняет в поле и закрывает диалоговое окно
        /// </summary>

        private void selectButton_Click(object sender, EventArgs e)
        {
            DataGridViewRow selectedRow;                                    // Выделенная строка
            int             id;                                             // Идентификатор выделенного квартиры

            int rowCount;                                                   // Общее количество строк в списке
            int selectedRowIndex;                                           // Индекс выделенной строки

            rowCount = entitiesDataGridView.Rows.Count;                     // Получить общее количество строк в списке

            if (rowCount > 0)                                               // Проверить общее количество строк
            {
                selectedRow      = entitiesDataGridView.SelectedRows[0];    // Получить выделенную строку
                selectedRowIndex = selectedRow.Index;                       // Получить индекс выделенной строки
                id = Convert.ToInt32(selectedRow.Cells["id"].Value);        // Получить идентификатор квартиры в выделенной строке

                _selectedApartment = _apartments.GetAppartment(id);         // Получить выделенный квартиру
            }

            CloseForm();                                                    // Закрыть диалоговое окно
        }
 void IApartmentStorage.Update(IApartment model)
 {
     throw new NotImplementedException();
 }
Exemple #14
0
 /// <summary>
 /// Метод. Добавляет квартиру в набор квартир
 /// </summary>
 public void Add(IApartment appartment)
 {
     _appartmentsDbSet.Add((Apartment)appartment);
     SaveChanges();
 }
Exemple #15
0
 /// <summary>
 /// Метод. Удаляет квартиру из набора квартир
 /// </summary>
 public void Remove(IApartment appartment)
 {
     _appartmentsDbSet.Remove((Apartment)appartment);
     SaveChanges();
 }
Exemple #16
0
 /// <summary>
 /// Метод. Копирует данные сущности в компоненты квартиры
 /// </summary>
 private void CopyApartmentNumberFromEntity(IApartment apartment)
 {
     ApartmentNumber = Convert.ToString(apartment.Number);       // Скопировать номер квартиры
 }
Exemple #17
0
 /// <summary>
 /// Метод. Возвращает список картинок для выбранной квартиры
 /// </summary>
 public IPictures PicturesForApartment(IApartment apartment)
 {
     return((IPictures)_picturesDbSet.Include(p => p.ApartmentForEntityFramework.HomeForEntityFramework.StreetForEntityFramework).Where(p => p.Apartment == apartment));
 }
Exemple #18
0
 public void Add(IApartment model)
 {
     apartmentStorage.Add(model);
 }
Exemple #19
0
 public void Update(IApartment model)
 {
     apartmentStorage.Update(model);
 }