//
        // GET: /Admin/ServicesRendered/Edit/5
        public async virtual Task <ActionResult> Edit(string id)
        {
            ServiceRendered model = await ServiceRenderedManager.GetServiceRendered(id);

            Customer currentCustomer = await CustomerManager.GetCustomer(model.CustomerId);

            ServiceRenderedViewModel viewModel = new ServiceRenderedViewModel
            {
                AmountPaid   = model.AmountPaid,
                TipAmount    = model.TipAmount,
                CustomerId   = model.CustomerId,
                CustomerName = string.Format("{0} {1}", currentCustomer.FirstName, currentCustomer.LastName),
                Notes        = model.Notes,
                Service      = model.Service
            };

            return(View(viewModel));
        }
        public async virtual Task <ActionResult> Delete(string id, ServiceRendered model)
        {
            try
            {
                // TODO: Add delete logic here
                ServiceRendered currentServiceRendered = await ServiceRenderedManager.GetServiceRendered(id);

                await ServiceRenderedManager.DeleteServiceRendered(id);

                await ServiceRenderedManager.SaveChanges();

                return(RedirectToAction("Details", "Customer", new { id = currentServiceRendered.CustomerId }));
            }
            catch
            {
                return(View());
            }
        }
        public async virtual Task <ActionResult> Edit(string id, ServiceRenderedViewModel model)
        {
            try
            {
                // TODO: Add update logic here
                ServiceRendered currentServiceRendered = await ServiceRenderedManager.GetServiceRendered(id);

                ServiceRendered updatedServiceRendered = new ServiceRendered();
                UpdateModel(updatedServiceRendered);

                await ServiceRenderedManager.UpdateServiceRendered(updatedServiceRendered);

                await ServiceRenderedManager.SaveChanges();

                return(RedirectToAction("Details", "Customer", new { id = currentServiceRendered.CustomerId }));
            }
            catch
            {
                return(View());
            }
        }
        public async virtual Task <ActionResult> Create(string id, ServiceRenderedViewModel model)
        {
            try
            {
                //  Build and bind
                ServiceRendered newServiceRendered = new ServiceRendered();
                UpdateModel(newServiceRendered);

                // Clean id from new obj and add customer Id
                newServiceRendered.Id         = null;
                newServiceRendered.CustomerId = id;

                await ServiceRenderedManager.AddNewServiceRendered(newServiceRendered);

                await ServiceRenderedManager.SaveChanges();

                return(RedirectToAction("Details", "Customer", new { id = newServiceRendered.CustomerId }));
            }
            catch
            {
                return(View());
            }
        }