コード例 #1
0
        public int AddDelegation(NewDelegationVm delVm)
        {
            var deleg = _mapper.Map <Delegation>(delVm);
            var id    = _delegationRepo.AddDelegation(deleg);

            return(id);
        }
コード例 #2
0
 public IActionResult EditDelegation(NewDelegationVm del)
 {
     if (!ModelState.IsValid)
     {
         _delegService.SetParametersToVm(del);
         return(View(del));
     }
     _delegService.UpdateDelegation(del);
     return(RedirectToAction("ViewDelegation", new { id = del.Id }));
 }
コード例 #3
0
        public void UpdateDelegation(NewDelegationVm delVm)
        {
            if (delVm.DelegationStatusId != 1)
            {
                return;
            }
            var del = _mapper.Map <Delegation>(delVm);

            _delegationRepo.UpdateDelegation(del);
        }
コード例 #4
0
        public List <NewRouteVm> CheckRoutes(NewDelegationVm delVm)
        {
            if (delVm.IsAdditionalRoute)
            {
                return(delVm.Routes);
            }
            var routes = delVm.Routes;

            routes.RemoveAt(2);
            return(routes);
        }
コード例 #5
0
 public NewDelegationVm SetParametersToVm(NewDelegationVm delVm)
 {
     delVm.Destinations   = GetAllDestinations().ToList();
     delVm.RouteTypes     = GetRouteTypes().ToList();
     delVm.TransportTypes = GetTransportTypes().ToList();
     delVm.Vehicles       = _vehRepo.GetVehiclesByEmployee(delVm.EmployeeId)
                            .ProjectTo <VehicleForListVm>(_mapper.ConfigurationProvider).ToList();
     if (delVm.Id != 0)
     {
         delVm.Routes = _delegationRepo.GetRoutesByDelegation(delVm.Id)
                        .ProjectTo <NewRouteVm>(_mapper.ConfigurationProvider).ToList();
     }
     return(delVm);
 }
コード例 #6
0
        public IActionResult AddDelegation(NewDelegationVm delVm)
        {
            if (!ModelState.IsValid)
            {
                if (delVm.Routes.Count != 3)
                {
                    delVm.Routes.Add(new NewRouteVm());
                }
                delVm = _delegService.SetParametersToVm(delVm);
                return(View(delVm));
            }
            var id = _delegService.AddDelegation(delVm);

            return(RedirectToAction("Index"));
        }
コード例 #7
0
        public IActionResult AddDelegation()
        {
            var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;

            if (_empService.CheckIfEmployeeExist(userId))
            {
                _logger.LogInformation("Can't add delegation - employee dosen't exist");
                return(RedirectToAction("AddEmployee", "Employee"));
            }
            var model = new NewDelegationVm()
            {
                EmployeeId = _empService.GetEmployeeByUserId(userId).Id
            };

            model = _delegService.SetParametersToVm(model);
            return(View(model));
        }
コード例 #8
0
        public void ShouldReturnErrorIfDelVmIsWrong()
        {
            //var routes = new List<NewRouteVm>() { new Route { Id = 1, CreatedDateTime = DateTime.Now, DelegationId = 1, RouteTypeId = 1, TypeOfTransportId = 1,
            //    RouteDetail = new RouteDetail() { Id = 1, RouteRef = 1, VehicleId = 2, StartDate = DateTime.Now, EndDate = DateTime.Now,
            //        StartPoint = "start", EndPoint = "end", Kilometers = 35 } } };
            //var costs = new List<NewCostVm>() { new Cost() { Id = 1, Amount = 300, CostTypeId = 1, DelegationId = 1 }, new Cost() { Id = 2, Amount = 100, DelegationId = 1, CostTypeId = 2 } };
            var delegation = new NewDelegationVm()
            {
                DelegationStatusId = 1,
                Purpose            = "xxx",
                EmployeeId         = 1,
                DestinationId      = 2

                                     //CreatedDateTime = DateTime.Now,
                                     //DelegationStatusId = 1,
                                     //DelegationStatus = new DelegationStatus() { Id = 1, Name = "open" },
                                     //DestinationId = 1,
                                     //Destination = new Destination() { Id = 1, Name = "testDestination" },
                                     //EmployeeId = 1,
                                     //Employee = new Employee() { Id = 1, FirstName = "testName", LastName = "testSurname" },
                                     //Routes = routes,
                                     //Costs = costs
            };

            var config = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new MappingProfile());
            });
            var mapper  = config.CreateMapper();
            var vehRepo = new Mock <IVehicleRepository>();
            var empRepo = new Mock <IEmployeeRepository>();
            var delRepo = new Mock <IDelegationRepository>();
            //delRepo.Setup(d => d.AddDelegation(delegation)).Returns(0);
            var delServ = new DelegationService(delRepo.Object, empRepo.Object, vehRepo.Object, mapper);

            var delResult = delServ.AddDelegation(delegation);
        }