Example #1
0
        public async Task <IActionResult> List()
        {
            var list = new List <VehicleAllotmentModel>();
            var allotedVehicesList = await _vehicleAllotmentService.GetAllAllotedVehiclesAsync();

            foreach (var item in allotedVehicesList)
            {
                var vehicle = await _vehicleMasterService.GetByIdAsync((int)item.VehicleId);

                var sc = await _userMasterService.GetUserByIdAsync((int)item.Scid);

                var model = new VehicleAllotmentModel();
                model.Id              = item.Id;
                model.Model           = vehicle.ModelVarient;
                model.Colour          = vehicle.ModelColour;
                model.VINNumber       = vehicle.Vinnumber;
                model.EngineNumber    = vehicle.EngineNumber;
                model.IsAlloted       = item.IsAlloted;
                model.CustomerName    = (await _customerService.GetAllCustomerByIdAsync((int)item.CustomerId)).CustomerName;
                model.SalesConsultant = sc.FirstName + " " + sc.LastName;
                model.AllotDate       = Convert.ToDateTime(item.DateCreated).ToString("dd/MM/yyyy");
                model.AgingDays       = vehicle.AgingDays;
                model.BranchName      = (await _branchMasterService.GetBranchByIdAsync((int)item.BranchId)).BranchName;
                list.Add(model);
            }

            return(View(list));
        }
Example #2
0
        public async Task <IActionResult> Edit(VehicleAllotmentModel viewModel, bool continueEditing)
        {
            var existingAllotment = await _vehicleAllotmentService.GetByIdAsync(viewModel.Id);

            existingAllotment.IsAlloted   = viewModel.IsAlloted;
            existingAllotment.ApprovedBy  = Convert.ToInt32(HttpContext.User.FindFirst(claim => claim.Type == System.Security.Claims.ClaimTypes.NameIdentifier)?.Value);
            existingAllotment.DateUpdated = DateTime.UtcNow;
            await _vehicleAllotmentService.UpdateAsync(existingAllotment);

            //update vehicle track status
            var existingVehicle = await _vehicleMasterService.GetByIdAsync((int)existingAllotment.VehicleId);

            if (existingVehicle != null)
            {
                existingVehicle.TrackStatus = VehicleStatusEnum.Alloted.ToString();
                existingVehicle.DateUpdated = DateTime.UtcNow;
                await _vehicleMasterService.UpdateAsync(existingVehicle);
            }
            AllowContinueEditing(continueEditing);
            //TempData["UserMessageSuccess"] = "Record saved sucessfully.";

            if (continueEditing)
            {
                return(RedirectToAction(nameof(Edit), new { id = existingAllotment.Id }));
            }

            return(RedirectToAction(nameof(List)));
        }
Example #3
0
        public async Task <IActionResult> CoDealerVehicleAllotment()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableModels       = BindModels(await _modelsMasterService.GetAllModelsListAsync());
            model.AvailableVarientTypes = BindVarientsType();
            model.AvailableCoDealers    = await BindCoDealers();

            model.AvailableTeamLeaders = await BindTeamLeaders();

            model.AvailableBranches = await BindBranches();

            return(View(model));
        }
Example #4
0
        public async Task <IActionResult> CustomerVehicleAllotment()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableModels       = BindModels(await _modelsMasterService.GetAllModelsListAsync());
            model.AvailableVarientTypes = BindVarientsType();
            //model.AvailableVarients = BindVarients();
            model.CustomerDetails.AvailableStates = await BindStates();

            model.AvailableTeamLeaders = await BindTeamLeaders();

            //model.AvailableSalesConsultants = BindSalesConsultants();
            model.CustomerDetails.AvailableSalutations = BindSalutations();
            model.AvailableBranches = await BindBranches();

            return(View(model));
        }
Example #5
0
        private List <SelectListItem> BindVarientsType()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableVarientTypes.Add(new SelectListItem
            {
                Value = "",
                Text  = "Varient Type"
            });
            foreach (VarientTypeEnum e in Enum.GetValues(typeof(VarientTypeEnum)))
            {
                model.AvailableVarientTypes.Add(new SelectListItem
                {
                    Value = e.ToString(),
                    Text  = e.ToString()
                });
            }

            return(model.AvailableVarientTypes);
        }
Example #6
0
        private List <SelectListItem> BindModels(IList <ModelMaster> models)
        {
            var modelList = new VehicleAllotmentModel();

            modelList.AvailableModels.Add(new SelectListItem
            {
                Value = "",
                Text  = "Select Model"
            });
            foreach (var model in models)
            {
                modelList.AvailableModels.Add(new SelectListItem
                {
                    Value = model.Id.ToString(),
                    Text  = model.ModelName.ToString()
                });
            }

            return(modelList.AvailableModels);
        }
Example #7
0
        private async Task <List <SelectListItem> > BindCoDealers()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableBranches.Add(new SelectListItem
            {
                Value = "0",
                Text  = "Select Co-Dsaler"
            });
            var coDealers = (await _coDealerMasterService.GetAllCoDealerListAsync());

            foreach (var dealer in coDealers)
            {
                model.AvailableBranches.Add(new SelectListItem
                {
                    Value = dealer.Id.ToString(),
                    Text  = dealer.SubDealerName
                });
            }

            return(model.AvailableBranches);
        }
Example #8
0
        private async Task <List <SelectListItem> > BindBranches()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableBranches.Add(new SelectListItem
            {
                Value = "0",
                Text  = "Select Branch"
            });
            var branchList = (await _branchMasterService.GetBranchListAsync());

            foreach (var branch in branchList)
            {
                model.AvailableBranches.Add(new SelectListItem
                {
                    Value = branch.Id.ToString(),
                    Text  = branch.BranchName
                });
            }

            return(model.AvailableBranches);
        }
Example #9
0
        //[HttpPost]
        //public IActionResult List(VehicleAllotmentModel model)
        //{
        //    return View();
        //}

        public async Task <IActionResult> Edit(int Id)
        {
            var existingAllotment = await _vehicleAllotmentService.GetByIdAsync(Id);

            var vehicle = await _vehicleMasterService.GetByIdAsync((int)existingAllotment.VehicleId);

            var sc = await _userMasterService.GetUserByIdAsync((int)existingAllotment.Scid);

            var model = new VehicleAllotmentModel();

            model.Id              = existingAllotment.Id;
            model.Model           = vehicle.ModelVarient;
            model.Colour          = vehicle.ModelColour;
            model.VINNumber       = vehicle.Vinnumber;
            model.EngineNumber    = vehicle.EngineNumber;
            model.IsAlloted       = existingAllotment.IsAlloted;
            model.CustomerName    = (await _customerService.GetAllCustomerByIdAsync((int)existingAllotment.CustomerId)).CustomerName;
            model.SalesConsultant = sc.FirstName + " " + sc.LastName;
            model.AllotDate       = Convert.ToDateTime(existingAllotment.DateCreated).ToString("dd/MM/yyyy");
            model.AgingDays       = vehicle.AgingDays;

            return(View(model));
        }
Example #10
0
        private async Task <List <SelectListItem> > BindTeamLeaders()
        {
            var model = new VehicleAllotmentModel();

            model.AvailableTeamLeaders.Add(new SelectListItem
            {
                Value = "",
                Text  = "Select Team Leader"
            });
            var designId         = (await _designationMasterService.GetAllDesignationsListAsync()).Where(x => x.Designation.ToLower() == "team leader").FirstOrDefault().Id;
            var TeamLieadersList = (await _userMasterService.GetSMandTLList()).Where(x => x.DesignationId == designId);

            foreach (var tl in TeamLieadersList)
            {
                model.AvailableTeamLeaders.Add(new SelectListItem
                {
                    Value = tl.Id.ToString(),
                    Text  = tl.FirstName + " " + tl.LastName.ToString()
                });
            }

            return(model.AvailableTeamLeaders);
        }
Example #11
0
        private async Task <List <SelectListItem> > BindStates()
        {
            var modelList = new VehicleAllotmentModel();

            modelList.CustomerDetails.AvailableStates.Add(new SelectListItem
            {
                Value = "0",
                Text  = "Select State"
            });

            var stateList = await _stateListService.GetStateList();

            foreach (var state in stateList)
            {
                modelList.CustomerDetails.AvailableStates.Add(new SelectListItem
                {
                    Value = state.Id.ToString(),
                    Text  = state.State
                });
            }

            return(modelList.CustomerDetails.AvailableStates);
        }