예제 #1
0
        public IActionResult Create()
        {
            var cars        = this.carservice.GetAll <CarsDropDownViewModel>();
            var repairTypes = this.repairService.GetRepairTypes();

            var model = new CreateRepairViewModel
            {
                Cars       = cars,
                RepairType = repairTypes,
            };

            return(this.View(model));
        }
예제 #2
0
        public ActionResult Create([Bind(Include = "Reparatieopdracht, KlantId, ReparateurId")] CreateRepairViewModel createRepairViewModel)
        {
            if (ModelState.IsValid)
            {
                var reparatieopdracht = createRepairViewModel.Reparatieopdracht;
                reparatieopdracht.Klant      = db.klantens.Find(createRepairViewModel.KlantId);
                reparatieopdracht.Reparateur = db.Reparateurs.Find(createRepairViewModel.ReparateurId);
                db.reparatieopdrachtens.Add(reparatieopdracht);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(createRepairViewModel));
        }
예제 #3
0
        // GET: Reparatieopdrachten/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var CreateReparatieViewModel = new CreateRepairViewModel
            {
                Reparatieopdracht = db.reparatieopdrachtens.Find(id),
                Klanten           = db.klantens.ToList()
            };

            return(View(CreateReparatieViewModel));
        }
예제 #4
0
        // GET: Reparatieopdrachten/Create
        public ActionResult Create()
        {
            var CreateReparatieViewModel = new CreateRepairViewModel
            {
                Reparatieopdracht = new Reparatieopdracht
                {
                    Startdate = DateTime.Now,
                    Enddate   = DateTime.Now
                },
                Klanten     = db.klantens.ToList(),
                reparateurs = db.Reparateurs.ToList()
            };

            return(View(CreateReparatieViewModel));
        }
예제 #5
0
        // GET: Reparatieopdrachten/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            var CreateReparatieViewModel = new CreateRepairViewModel
            {
                Reparatieopdracht = db.reparatieopdrachtens.Include(r => r.Klant).Include(r => r.Reparateur).FirstOrDefault(r => r.Id == id),
                Klanten           = db.klantens.ToList(),
                reparateurs       = db.Reparateurs.ToList()
            };

            CreateReparatieViewModel.KlantId      = CreateReparatieViewModel.Reparatieopdracht.Klant.Id;
            CreateReparatieViewModel.ReparateurId = CreateReparatieViewModel.Reparatieopdracht.Reparateur.Id;
            return(View(CreateReparatieViewModel));
        }
예제 #6
0
        public async Task <JsonResult> EditRepair(int id, bool editMode)
        {
            var repairDto = await Factory.GetByIdAsync <IRepairDto>(id.ToString());

            var vehicleDto = await Factory.GetByIdAsync <IVehicleDto>(repairDto.VehicleVIN);

            var repairViewModel  = Mapper.Map <RepairViewModel>(repairDto);
            var vehicleViewModel = Mapper.Map <VehicleViewModel>(vehicleDto);

            var vm = new CreateRepairViewModel
            {
                Vehicle             = vehicleViewModel,
                RepairOrder         = repairViewModel,
                VehicleSelectList   = GetVehicleMakeSelectList(),
                ShopSelectListItems = ShopSelectListItems,
                ReadOnly            = editMode == false
            };

            return(Json(vm));
        }
예제 #7
0
        public ActionResult Edit([Bind(Include = "Reparatieopdracht, KlantId, ReparateurId,reparateurtime")] CreateRepairViewModel createRepairViewModel)
        {
            if (ModelState.IsValid)
            {
                var reparatieOpdracht = db.reparatieopdrachtens.Include(r => r.Klant).Include(r => r.Reparateur).FirstOrDefault(r => r.Id == createRepairViewModel.Reparatieopdracht.Id);

                reparatieOpdracht.Name       = createRepairViewModel.Reparatieopdracht.Name;
                reparatieOpdracht.Startdate  = createRepairViewModel.Reparatieopdracht.Startdate;
                reparatieOpdracht.Enddate    = createRepairViewModel.Reparatieopdracht.Enddate;
                reparatieOpdracht.Details    = createRepairViewModel.Reparatieopdracht.Details;
                reparatieOpdracht.price      = reparatieOpdracht.price + (createRepairViewModel.reparateurtime * (db.Reparateurs.FirstOrDefault(k => k.Id == createRepairViewModel.ReparateurId).Wage) / 60);
                reparatieOpdracht.Status     = createRepairViewModel.Reparatieopdracht.Status;
                reparatieOpdracht.Klant      = db.klantens.FirstOrDefault(k => k.Id == createRepairViewModel.KlantId);
                reparatieOpdracht.Reparateur = db.Reparateurs.FirstOrDefault(k => k.Id == createRepairViewModel.ReparateurId);

                db.Entry(reparatieOpdracht).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(createRepairViewModel));
        }
예제 #8
0
        public async Task <JsonResult> CreateRepair(CreateRepairViewModel model)
        {
            // Update/Load Vehicle.
            if (model.Vehicle.ManualEntryInd)
            {
                Factory.Save(model.Vehicle as IVehicleDto);
            }

            var repairDto = Mapper.Map <IRepairDto>(model.RepairOrder);
            var result    = Factory.Save(repairDto);

            if (model.RepairOrder.RepairId != 0 || !result.UpdateResult.Success)
            {
                return(Json(result));
            }

            var requestUrl = Url.Action("Dashboard", "Repairs", null, Request?.Url?.Scheme);

            await
            new ClientHubMessenger().RepairCreated(result.RepairId, requestUrl)
            .ConfigureAwait(continueOnCapturedContext: false);

            return(Json(result));
        }