コード例 #1
0
        public static LiftViewModel MapLiftToViewModel(Lift lift, string uid)
        {
            var vm = new LiftViewModel()
            {
                MaxLift    = lift.MaxLift,
                IsMainLift = lift.IsMainLift,
                LiftName   = lift.LiftName.Name,
                LiftType   = lift.LiftType.Name,
                Date       = lift.Date,
                Day        = lift.Days.Day,
                Lift       = new Lift()
                {
                    Id         = lift.Id,
                    MaxLift    = lift.MaxLift,
                    IsMainLift = lift.IsMainLift,
                    Date       = lift.Date,
                    UserId     = uid,
                    LiftName   = new LiftName()
                    {
                        Id = lift.LiftName.Id
                    },
                    LiftType = new LiftType()
                    {
                        Id = lift.LiftType.Id
                    }
                }
            };

            return(vm);
        }
コード例 #2
0
        public async Task <LiftViewModel> UpdateAsync(LiftViewModel lift, string uid)
        {
            /*
             * Update lift and call GetAll to retrieve the updated lifts
             */
            //var vm = new LiftViewModel();
            Lift     l           = _liftRepository.Get(lift.Lift.Id, uid);
            LiftName liftName    = _liftNameRepository.GetByName(lift.LiftName);
            LiftType liftType    = _liftTypeRepository.GetByName(lift.LiftType);
            var      updatedLift = await _liftRepository.UpdateAsync(l, uid);

            return(LiftMapper.MapLiftToViewModel(updatedLift, uid));//, liftName, liftType, uid);
        }
コード例 #3
0
        public async Task <LiftViewModel> CreateAsync(LiftViewModel viewModel, string uid)
        {
            /*
             * Create lift and call GetAll to retrieve the updated lifts
             * - Add DaysService call to change Id (int) to String (day)
             */
            LiftName liftName = _liftNameRepository.GetByName(viewModel.LiftName);
            LiftType liftType = _liftTypeRepository.GetByName(viewModel.LiftType);
            Lift     lift     = LiftMapper.MapViewModelToLift(viewModel, uid, liftName, liftType);

            lift = await _liftRepository.CreateAsync(lift, uid);

            return(LiftMapper.MapLiftToViewModel(lift, uid));//, liftName, liftType, uid);
        }
コード例 #4
0
        public LiftViewModel Get(string id, string uid)
        {
            Lift     lift     = _liftRepository.Get(id, uid);
            LiftName liftName = _liftNameRepository.Get(lift.LiftName.Id);
            LiftType liftType = _liftTypeRepository.Get(lift.LiftType.Id);

            LiftViewModel viewModel = LiftMapper.MapLiftToViewModel(lift, uid);//,

            //liftName,
            //liftType,
            //uid);

            return(viewModel);
        }
コード例 #5
0
 public static Lift MapViewModelToLift(LiftViewModel viewModel, string uid, LiftName liftName, LiftType liftType)
 {
     return(new Lift()
     {
         Id = Guid.NewGuid().ToString(),
         MaxLift = viewModel.MaxLift,
         IsMainLift = viewModel.IsMainLift,
         Date = viewModel.Date,
         UserId = uid,
         LiftName = new LiftName()
         {
             Id = liftName.Id
         },
         LiftType = new LiftType()
         {
             Id = liftType.Id
         }
     });
 }
コード例 #6
0
        // GET: Lifts/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            int _id = (int)id;

            var vm = new LiftViewModel
            {
                Lift     = _repo.GetById(id),
                Bookings = _repoBooking.All.Where(x => x.LiftId == _id).OrderBy(d => d.Start)
            };

            Lift lift = _repo.GetById(id);

            if (lift == null)
            {
                return(HttpNotFound());
            }

            return(View(vm));
        }