Exemplo n.º 1
0
 public Customer(BookingTourCommand command)
 {
     this.Name    = command.Name;
     this.Address = command.Address;
     this.Phone   = command.Phone;
     this.Email   = command.Email;
 }
Exemplo n.º 2
0
        public IActionResult BookingTour(BookingTourCommand command)
        {
            if (ModelState.IsValid)
            {
                this._bookingService.BookingTour(command);
                return(RedirectToAction("Index", "Home"));
            }
            var model = _tourService.TourDetail(command.TourId);

            return(View("/Views/Tour/TourDetail.cshtml", model));
        }
Exemplo n.º 3
0
        public void BookingTour(BookingTourCommand command)
        {
            var newCustomer = new Customer(command);

            _db.Customers.Add(newCustomer);
            _db.SaveChanges();
            //Insert Contract
            ContractViewModel contract = new ContractViewModel();
            {
                contract.CustomerId = newCustomer.Id;
                contract.TourId     = command.TourId;
                contract.BeginDate  = command.BeginDate;
                contract.Paid       = false;
                contract.Content    = command.Content;
            }
            var newContract = new Contract(contract);

            _db.Contracts.Add(newContract);
            _db.SaveChanges();
            var tour = _db.Tours.FirstOrDefault(n => n.Id == command.TourId);

            {
                tour.Quantity = tour.Quantity - Convert.ToInt32(command.PeopleGo);
            }
            _db.SaveChanges();
            //Insert ContractDetail
            ContractDetailViewModel contractDetail = new ContractDetailViewModel();
            {
                contractDetail.TourId     = tour.Id;
                contractDetail.NameTour   = tour.NameTour;
                contractDetail.Cost       = tour.Cost;
                contractDetail.PeopleGo   = Convert.ToInt32(command.PeopleGo);
                contractDetail.ContractId = newContract.Id;
            }
            var newContractDetail = new ContractDetail();

            {
                newContractDetail.TourId     = contractDetail.TourId;
                newContractDetail.NameTour   = contractDetail.NameTour;
                newContractDetail.Cost       = contractDetail.Cost;
                newContractDetail.PeopleGo   = contractDetail.PeopleGo;
                newContractDetail.ContractId = contractDetail.ContractId;
            }
            _db.ContractDetails.Add(newContractDetail);
            _db.SaveChanges();
        }
Exemplo n.º 4
0
        public void BookingTour(BookingTourCommand command)
        {
            var newCustomer = new Customer();

            newCustomer.Name    = command.Name;
            newCustomer.Email   = command.Email;
            newCustomer.Address = command.Address;
            newCustomer.Phone   = command.Phone;

            _db.Customers.Add(newCustomer);
            _db.SaveChanges();
            //Insert Contract
            ContractViewModel contract = new ContractViewModel();
            {
                contract.CustomerId = newCustomer.Id;
                contract.TourId     = command.TourId;
                contract.BeginDate  = command.BeginDate;
                contract.Paid       = false;
                contract.Content    = command.Content;
            }
            var newContract = new Contract(contract);

            _db.Contracts.Add(newContract);
            _db.SaveChanges();

            var tour = new Tour();

            using (var connection = new SqlConnection(this._db.Database.GetDbConnection().ConnectionString))
            {
                connection.Open();
                if (command != null)
                {
                    tour = connection.Query <Tour>(@"select * from Tour").FirstOrDefault(n => n.Id == command.TourId);
                }
                connection.Close();
            }

            tour.Quantity = tour.Quantity - Convert.ToInt32(command.PeopleGo);

            dbSet.Attach(tour);
            _db.Entry(tour).State = EntityState.Modified;

            _db.SaveChanges();
            //Insert ContractDetail
            ContractDetailViewModel contractDetail = new ContractDetailViewModel();
            {
                contractDetail.TourId     = tour.Id;
                contractDetail.NameTour   = tour.NameTour;
                contractDetail.Cost       = tour.Cost;
                contractDetail.PeopleGo   = Convert.ToInt32(command.PeopleGo);
                contractDetail.ContractId = newContract.Id;
            }
            var newContractDetail = new ContractDetail();

            {
                newContractDetail.TourId     = contractDetail.TourId;
                newContractDetail.NameTour   = contractDetail.NameTour;
                newContractDetail.Cost       = contractDetail.Cost;
                newContractDetail.PeopleGo   = contractDetail.PeopleGo;
                newContractDetail.ContractId = contractDetail.ContractId;
            }
            _db.ContractDetails.Add(newContractDetail);
            _db.SaveChanges();

            using (MailMessage emailMessage = new MailMessage())
            {
                emailMessage.From = new MailAddress("*****@*****.**", "Công ty du lịch");
                emailMessage.To.Add(new MailAddress("*****@*****.**", "Account1"));
                emailMessage.Subject  = "Thông tin đặt tour";
                emailMessage.Body     = "TourId: " + contractDetail.TourId + Environment.NewLine + "Tên Tour: " + contractDetail.NameTour + Environment.NewLine + "Giá: " + contractDetail.Cost + Environment.NewLine + "Số người đi: " + contractDetail.PeopleGo;
                emailMessage.Priority = MailPriority.Normal;
                using (SmtpClient MailClient = new SmtpClient("smtp.gmail.com", 587))
                {
                    MailClient.EnableSsl   = true;
                    MailClient.Credentials = new System.Net.NetworkCredential("*****@*****.**", "tungvipro809");
                    MailClient.Send(emailMessage);
                }
            }
        }