コード例 #1
0
        public void Register(CustomerDTO model)
        {
            var customer = MappingDTO.MapCustomer(model);

            _dataBase.Customers.Register(customer);
            _dataBase.Save();
        }
コード例 #2
0
        public void UpdateTourCustomer(TourCustomerDTO tourCustomerDTO)
        {
            var typeOfStatusPaid = _dataBase.TypeOfStatuses.Get("Paid");

            if (tourCustomerDTO.TypeOfStatusId == typeOfStatusPaid.Id)
            {
                var customerDto = tourCustomerDTO.Customer;
                var customer    = MappingDTO.MapCustomer(customerDto);
                customer.Discount = Discount.AddDiscount(customer.Discount, customer.StepDiscount, customer.MaxDiscount);
                _dataBase.Customers.UpdateInfo(customer);
                _dataBase.Save();
            }
            _dataBase.TourCustomers.SetStatus(tourCustomerDTO.Id, tourCustomerDTO.TypeOfStatusId);
            _dataBase.Save();
        }
コード例 #3
0
        /// <summary>
        ///    cancellation of the tour with a reduction in discounts for customer
        /// </summary>
        public void CancelTour(TourCustomerDTO tourCustomer)
        {
            _dataBase.TourCustomers.Delete(tourCustomer.Id);
            _dataBase.Save();
            var tourDto = tourCustomer.Tour;

            tourDto.NumberOfOrders++;
            var tour = MappingDTO.MapTour(tourDto);

            _dataBase.Tours.UpdateInfo(tour);
            var customerDto = tourCustomer.Customer;

            customerDto.Discount = Discount.ReduceDiscount(customerDto.Discount);
            var customer = MappingDTO.MapCustomer(customerDto);

            _dataBase.Customers.UpdateInfo(customer);
            _dataBase.Save();
        }