コード例 #1
0
        public ActionResult Update(int id)
        {
            var clientOrder = new ClientOrderViewModel()
            {
                ClientOrders = _context.TableClientOrders.Include(c => c.Items).Include(d => d.Clients).SingleOrDefault(c => c.id == id),
                Client       = _context.TableClients.ToList(),
                Item         = _context.TableItems.ToList()
            };

            if (clientOrder == null)
            {
                return(HttpNotFound());
            }
            return(View("ClientOrderForm", clientOrder));
        }
コード例 #2
0
        public ActionResult AddOrder()
        {
            var clients   = _context.TableClients.ToList();
            var items     = _context.TableItems.ToList();
            var viewModel = new ClientOrderViewModel
            {
                ClientOrders = new ClientOrders {
                    date = DateTime.Now
                },
                Client = clients,
                Item   = items
            };

            return(View("ClientOrderForm", viewModel));
        }
コード例 #3
0
        public ActionResult Create()
        {
            ClientOrderViewModel comodel = new ClientOrderViewModel();

            ViewBag.CityID            = new SelectList(db.Cities, "CityID", "CityName");
            ViewBag.ClientID          = new SelectList(db.Clients, "ClientID", "Name");
            ViewBag.EventSubTypeID    = new SelectList(db.EventSubTypes, "EventSubTypeID", "EventSubTypeName");
            ViewBag.EventTypeID       = new SelectList(db.EventTypes, "EventTypeID", "EventTypeName");
            ViewBag.VenueID           = new SelectList(db.Venues, "VenueID", "VenueName");
            ViewBag.ServiceID         = new SelectList(db.Services, "ServiceID", "ServiceName");
            ViewBag.ServiceProviderID = new SelectList(db.ServiceProviders, "ServiceProviderID", "ServiceProviderName");
            ViewBag.pgCategory        = new SelectList("1", "1", "1");
            ViewBag.DecorationTypeID  = new SelectList(db.DecorationTypes, "DecorationTypeID", "Name");
            ViewBag.DecorationImageID = new SelectList(db.DecorationImages, "DecorationImageID", "Image");
            return(View(comodel));
        }
コード例 #4
0
        public ActionResult IndexByID()
        {
            var context     = new IdentityDbContext();
            var users       = context.Users.ToList();
            var user        = User.Identity.Name;
            var Usercontact = users.Where(m => m.UserName == user).Single();
            var contact     = Usercontact.PhoneNumber;
            var clID        = db.Clients.Where(c => c.Phone == contact).Select(i => i.ClientID).FirstOrDefault();

            List <ClientOrderViewModel> covm = new List <ClientOrderViewModel>();

            var clientOrderDetails = (from co in db.ClientOrders
                                      join cl in db.Clients
                                      on co.ClientID equals cl.ClientID
                                      join ep in db.EventsPhotographies
                                      on co.ClientOrderID equals ep.ClientOrderID
                                      join city in db.Cities
                                      on co.CityID equals city.CityID
                                      join et in db.EventTypes
                                      on co.EventTypeID equals et.EventTypeID
                                      join est in db.EventSubTypes
                                      on co.EventSubTypeID equals est.EventSubTypeID
                                      join vn in db.Venues
                                      on co.VenueID equals vn.VenueID
                                      where cl.ClientID == clID
                                      select new { co.ClientOrderID, cl.ClientID, cl.Name, city.CityName, et.EventTypeName, est.EventSubTypeName, co.EventName, co.EventStartDate, co.EventEndDate, co.NoOfGuest, vn.VenueName, co.SpecialInstruction }).ToList();

            foreach (var item in clientOrderDetails)
            {
                ClientOrderViewModel cvm = new ClientOrderViewModel();
                cvm.ClientOrderID    = item.ClientOrderID;
                cvm.Name             = item.Name;
                cvm.CityName         = item.CityName;
                cvm.EventTypeName    = item.EventTypeName;
                cvm.EventSubTypeName = item.EventSubTypeName;
                cvm.EventName        = item.EventName;
                cvm.EventStartDate   = item.EventStartDate;
                cvm.EventEndDate     = item.EventEndDate;

                cvm.NoOfGuest          = item.NoOfGuest;
                cvm.VenueName          = item.VenueName;
                cvm.SpecialInstruction = item.SpecialInstruction;
                covm.Add(cvm);
            }
            return(View(covm));
        }
コード例 #5
0
        public IActionResult MakeOrder(ClientOrderViewModel request)
        {
            if (request.order.CheckOutDate != null && request.order.CheckInDate >= request.order.CheckOutDate)
            {
                ModelState.AddModelError("", "CheckInDate can't be more or equal than CheckOutDate");
            }
            if (!ModelState.IsValid)
            {
                return(View(request.order));
            }

            ClientDTO      client = mapper.Map <ClientDTO>(request.client);
            ActiveOrderDTO order  = mapper.Map <ActiveOrderDTO>(request.order);

            clientOrderService.AddClientActiveOrder(order, client);
            return(View("~/Views/Home/Index.cshtml"));
        }
コード例 #6
0
        public ActionResult Save(ClientOrders clientOrders)
        {
            var itemInDb = _context.TableItems.Single(c => c.id == clientOrders.ItemsId);

            if (!ModelState.IsValid)
            {
                var clientOrder = new ClientOrderViewModel()
                {
                    ClientOrders = clientOrders,
                    Client       = _context.TableClients.ToList(),
                    Item         = _context.TableItems.ToList()
                };
                return(View("ClientOrderForm", clientOrder));
            }
            var clientInDb = _context.TableClients.Single(c => c.id == clientOrders.ClientsId);

            if (clientOrders.id == 0)
            {
                clientOrders.bill = clientOrders.quantity * itemInDb.sellingPrice;
                _context.TableClientOrders.Add(clientOrders);
            }

            else
            {
                var clientOrderInDb = _context.TableClientOrders.Single(c => c.id == clientOrders.id);
                itemInDb.quantity         = itemInDb.quantity + clientOrderInDb.quantity;
                clientOrderInDb.ClientsId = clientOrders.ClientsId;
                clientOrderInDb.ItemsId   = clientOrders.ItemsId;
                clientOrderInDb.quantity  = clientOrders.quantity;
                clientOrderInDb.date      = clientOrders.date;
                clientOrderInDb.status    = clientOrders.status;
                clientOrderInDb.bill      = clientOrders.quantity * itemInDb.sellingPrice;
            }
            if (clientOrders.status.Equals("2"))
            {
                clientInDb.balance = clientInDb.balance - clientOrders.bill;
            }
            if (!clientOrders.status.Equals("3"))
            {
                itemInDb.quantity = itemInDb.quantity - clientOrders.quantity;
            }
            _context.SaveChanges();
            return(RedirectToAction("Index", "ClientOrders"));
        }
コード例 #7
0
        public IActionResult PostOrder(ClientOrderViewModel request)
        {
            if (request is null || request.Client is null || request.Order is null)
            {
                return(BadRequest());
            }
            if (request.Order.CheckOutDate != null && request.Order.CheckInDate >= request.Order.CheckOutDate)
            {
                ModelState.AddModelError("", "CheckInDate can't be more or equal than CheckOutDate");
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            ClientDTO      client = mapper.Map <ClientDTO>(request.Client);
            ActiveOrderDTO order  = mapper.Map <ActiveOrderDTO>(request.Order);

            clientOrderService.AddClientActiveOrder(order, client);
            return(Ok());
        }
コード例 #8
0
        public ActionResult Index()
        {
            List <ClientOrderViewModel> covm = new List <ClientOrderViewModel>();

            var clientOrderDetails = (from co in db.ClientOrders
                                      join cl in db.Clients
                                      on co.ClientID equals cl.ClientID
                                      join ep in db.EventsPhotographies
                                      on co.ClientOrderID equals ep.ClientOrderID
                                      join city in db.Cities
                                      on co.CityID equals city.CityID
                                      join et in db.EventTypes
                                      on co.EventTypeID equals et.EventTypeID
                                      join est in db.EventSubTypes
                                      on co.EventSubTypeID equals est.EventSubTypeID
                                      join vn in db.Venues
                                      on co.VenueID equals vn.VenueID

                                      select new { co.ClientOrderID, cl.ClientID, cl.Name, city.CityName, et.EventTypeName, est.EventSubTypeName, co.EventName, co.EventStartDate, co.EventEndDate, co.NoOfGuest, vn.VenueName, co.SpecialInstruction }).ToList();

            foreach (var item in clientOrderDetails)
            {
                ClientOrderViewModel cvm = new ClientOrderViewModel();
                cvm.ClientOrderID    = item.ClientOrderID;
                cvm.Name             = item.Name;
                cvm.CityName         = item.CityName;
                cvm.EventTypeName    = item.EventTypeName;
                cvm.EventSubTypeName = item.EventSubTypeName;
                cvm.EventName        = item.EventName;
                cvm.EventStartDate   = item.EventStartDate;
                cvm.EventEndDate     = item.EventEndDate;

                cvm.NoOfGuest          = item.NoOfGuest;
                cvm.VenueName          = item.VenueName;
                cvm.SpecialInstruction = item.SpecialInstruction;
                covm.Add(cvm);
            }
            return(View(covm));
        }
コード例 #9
0
 public ClientOrder()
 {
     clientOrderViewModel = new ClientOrderViewModel();
     DataContext          = clientOrderViewModel;
     this.InitializeComponent();
 }
コード例 #10
0
        public JsonResult Create(ClientOrderViewModel vm)
        {
            ViewBag.CityID            = new SelectList(db.Cities, "CityID", "CityName");
            ViewBag.ClientID          = new SelectList(db.Clients, "ClientID", "Name");
            ViewBag.EventSubTypeID    = new SelectList(db.EventSubTypes, "EventSubTypeID", "EventSubTypeName");
            ViewBag.EventTypeID       = new SelectList(db.EventTypes, "EventTypeID", "EventTypeName");
            ViewBag.VenueID           = new SelectList(db.Venues, "VenueID", "VenueName");
            ViewBag.ServiceID         = new SelectList(db.Services, "ServiceID", "ServiceName");
            ViewBag.ServiceProviderID = new SelectList(db.ServiceProviders, "ServiceProviderID", "ServiceProviderName");


            bool status = false;

            if (ModelState.IsValid)
            {
                EventServices evs = new EventServices();



                ClientOrder co = new ClientOrder();
                co.ClientID       = vm.ClientID;
                co.CityID         = vm.CityID;
                co.EventTypeID    = vm.EventTypeID;
                co.EventSubTypeID = vm.EventSubTypeID;
                co.EventName      = vm.EventName;
                co.EventStartDate = vm.EventStartDate;
                co.EventEndDate   = vm.EventEndDate;
                co.NoOfGuest      = vm.NoOfGuest;
                if (vm.VenueID != 0)
                {
                    co.VenueID = Convert.ToInt32(vm.VenueID);
                }
                co.SpecialInstruction = vm.SpecialInstruction;
                co.Date = DateTime.Now.Date;
                db.ClientOrders.Add(co);
                db.SaveChanges();

                int latestCoId = co.ClientOrderID;

                if (vm.VenueID != 0)
                {
                    evs.ClientOrderID = latestCoId;
                    evs.ServiceID     = 9;
                    evs.Price         = Convert.ToDouble(db.Venues.Where(e => e.VenueID == vm.VenueID).Select(rent => rent.Rent).FirstOrDefault());
                    db.EventServicess.Add(evs);
                    db.SaveChanges();
                }


                EventSchedule es = new EventSchedule();
                es.EventName      = vm.EventName;
                es.EventStartDate = vm.EventStartDate;
                es.EventEndDate   = vm.EventEndDate;
                es.VenueID        = Convert.ToInt32(vm.VenueID);
                db.EventSchedules.Add(es);
                db.SaveChanges();


                if (vm.PgCategory != null)
                {
                    EventsPhotography ep = new EventsPhotography();
                    ep.Category      = Convert.ToInt32(vm.PgCategory);
                    ep.NumberOfTeam  = Convert.ToInt32(vm.PgNumberOfTeam);
                    ep.Price         = Convert.ToDouble(vm.PgPrice);
                    ep.ClientOrderID = latestCoId;
                    db.EventsPhotographies.Add(ep);
                    db.SaveChanges();


                    evs.ClientOrderID = latestCoId;
                    evs.ServiceID     = 7;
                    evs.Price         = Convert.ToDouble(vm.PgPrice);
                    db.EventServicess.Add(evs);
                    db.SaveChanges();
                }


                if (vm.EventsDecorations != null)
                {
                    foreach (var item in vm.EventsDecorations)
                    {
                        EventsDecoration evDec = new EventsDecoration();
                        evDec.ClientOrderID    = latestCoId;
                        evDec.DecorationTypeID = item.DecorationTypeID;
                        if (item.DecorationImageID != null)
                        {
                            evDec.DecorationImageID = item.DecorationImageID;
                        }
                        if (item.CustomImage != null)
                        {
                            evDec.CustomImage = item.CustomImage;
                        }
                        evDec.Price = item.Price;
                        db.EventsDecorations.Add(evDec);
                    }

                    evs.ClientOrderID = latestCoId;
                    evs.ServiceID     = 6;
                    evs.Price         = Convert.ToDouble(vm.TotalDecCost);
                    db.SaveChanges();
                }


                if (vm.EventsCaterings != null)
                {
                    foreach (var item in vm.EventsCaterings)
                    {
                        EventsCatering ecate = new EventsCatering();
                        ecate.ClientOrderID = latestCoId;
                        ecate.MealType      = item.MealType;
                        ecate.FoodItems     = item.FoodItems;
                        ecate.PerPersonCost = item.PerPersonCost;
                        ecate.TotalCost     = item.PerPersonCost * vm.NoOfGuest;
                        db.EventsCaterings.Add(ecate);
                    }
                    evs.ClientOrderID = latestCoId;
                    evs.ServiceID     = 5;
                    evs.Price         = Convert.ToDouble(vm.TotalCateCost * vm.NoOfGuest);
                    db.SaveChanges();
                }

                if (vm.EventServicess != null)
                {
                    foreach (var i in vm.EventServicess)
                    {
                        EventServices eser = new EventServices();
                        eser.ClientOrderID = latestCoId;
                        eser.ServiceID     = i.ServiceID;
                        eser.Price         = i.Price;
                        db.EventServicess.Add(eser);
                    }
                    db.SaveChanges();
                }


                var subTotal = db.EventServicess.Where(e => e.ClientOrderID == latestCoId).Sum(s => s.Price);

                if (subTotal != 0)
                {
                    EventBill ebill = new EventBill();

                    ebill.ClientOrderID  = latestCoId;
                    ebill.SubTotalAmount = Convert.ToDouble(subTotal);
                    ebill.MadeBy         = User.Identity.GetUserName();
                    ebill.vat            = vm.Vat;
                    ebill.Discount       = Convert.ToInt32(vm.Discount);
                    db.EventBills.Add(ebill);
                    db.SaveChanges();

                    EventPayment epay = new EventPayment();
                    epay.ClientOrderID = latestCoId;
                    epay.Total         = vm.NetTotal;
                    epay.PaidAmount    = 0;
                    db.EventPayments.Add(epay);
                    db.SaveChanges();
                }

                status = true;
            }
            else
            {
                status = false;
            }
            var errors = ModelState.Values.SelectMany(v => v.Errors);

            return(Json(status, JsonRequestBehavior.AllowGet));
        }
コード例 #11
0
        public ActionResult DetailsForClient(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            else
            {
                ClientOrderViewModel cvm = new ClientOrderViewModel();


                var clientOrderDetails = (from co in db.ClientOrders
                                          join cl in db.Clients
                                          on co.ClientID equals cl.ClientID
                                          join ep in db.EventsPhotographies
                                          on co.ClientOrderID equals ep.ClientOrderID
                                          join city in db.Cities
                                          on co.CityID equals city.CityID
                                          join et in db.EventTypes
                                          on co.EventTypeID equals et.EventTypeID
                                          join est in db.EventSubTypes
                                          on co.EventSubTypeID equals est.EventSubTypeID
                                          join vn in db.Venues
                                          on co.VenueID equals vn.VenueID
                                          where co.ClientOrderID == id
                                          select new
                {
                    co.ClientOrderID,
                    cl.Name,
                    city.CityName,
                    et.EventTypeName,
                    est.EventSubTypeName,
                    co.EventName,
                    co.EventStartDate,
                    co.EventEndDate,
                    co.NoOfGuest,
                    vn.VenueName,
                    co.SpecialInstruction,
                    ep.EventsPhotographyID,
                    ep.Category,
                    ep.NumberOfTeam,
                    ep.Price
                }).FirstOrDefault();

                var eventCate = db.EventsCaterings.Where(i => i.ClientOrderID == id).ToList();
                var eventDec  = db.EventsDecorations.Where(i => i.ClientOrderID == id).ToList();

                //var eventDec = (from ed in db.EventsDecorations
                //                join de in db.DecorationTypes
                //                on ed.DecorationTypeID equals de.DecorationTypeID
                //                join di in db.DecorationImages
                //                on ed.DecorationImageID equals di.DecorationImageID
                //                where ed.ClientOrderID == id
                //                select ed).ToList();
                var EventOtherSer = db.EventServicess.Where(i => i.ClientOrderID == id).ToList();


                cvm.ClientOrderID      = clientOrderDetails.ClientOrderID;
                cvm.FirstName          = clientOrderDetails.Name;
                cvm.CityName           = clientOrderDetails.CityName;
                cvm.EventTypeName      = clientOrderDetails.EventTypeName;
                cvm.EventSubTypeName   = clientOrderDetails.EventSubTypeName;
                cvm.EventName          = clientOrderDetails.EventName;
                cvm.EventStartDate     = clientOrderDetails.EventStartDate;
                cvm.EventEndDate       = clientOrderDetails.EventEndDate;
                cvm.NoOfGuest          = clientOrderDetails.NoOfGuest;
                cvm.VenueName          = clientOrderDetails.VenueName;
                cvm.SpecialInstruction = clientOrderDetails.SpecialInstruction;
                if (eventCate != null)
                {
                    cvm.EventsCaterings = eventCate;
                }
                if (eventDec != null)
                {
                    cvm.EventsDecorations = eventDec;
                }
                if (EventOtherSer != null)
                {
                    cvm.EventServicess = EventOtherSer;
                }

                return(PartialView(cvm));
            };
        }