public async Task <IHttpActionResult> SaveEventManagementPin(EventManagementPinViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            model = await _eventBuilder.AddOrUpdatePinAsync(model);

            return(Ok(model));
        }
Esempio n. 2
0
        public async Task <EventManagementPinViewModel> BuildEventMangementPinAsync()
        {
            var model = new EventManagementPinViewModel {
                IsActive = true
            };
            var query = _repo.EventManagementPins.Where(m => m.IsActive);

            if (query.FirstOrDefault() != null)
            {
                model = (await query.ProjectTo <EventManagementPinViewModel>(MapQueries()).FirstOrDefaultAsync());
            }
            return(model);
        }
        public async Task <IHttpActionResult> ValidatePin(EventManagementPinViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var dbPin = _repo.EventManagementPins.Where(m => m.IsActive && m.PinNumber == model.PinNumber).FirstOrDefault();

            if (dbPin == null)
            {
                ModelState.AddModelError("PinNumber", "Pin number is invalid");
                return(BadRequest(ModelState));
            }

            return(Ok());
        }
Esempio n. 4
0
        public async Task <EventManagementPinViewModel> AddOrUpdatePinAsync(EventManagementPinViewModel model)
        {
            var dbPin = await _repo.EventManagementPins.GetByIdAsync(model.Id);

            var addPin = new EventManagementPin();

            if (dbPin == null)
            {
                addPin = MapAddPin().CreateMapper().Map <EventManagementPin>(model);
            }
            else
            {
                addPin = MapUpdatePin().CreateMapper().Map <EventManagementPin>(model);
            }
            await _repo.EventManagementPins.AddOrUpdateAndSaveAsync(addPin);

            return(MapQueries().CreateMapper().Map <EventManagementPinViewModel>(addPin));
        }