コード例 #1
0
        public async Task <IActionResult> CreatePendingBooking([FromBody] PendingBookingDto pendingBookingDto)
        {
            var pendingBooking = _mapper.Map <PendingBooking>(pendingBookingDto);

            var userIdFromClaims = User.Claims.FirstOrDefault().Value;

            if (Int32.TryParse(userIdFromClaims, out int currentUser))
            {
                pendingBooking.CreatedBy = currentUser;
            }
            else
            {
                pendingBooking.CreatedBy = 0;
            }
            _repo.Add <PendingBooking>(pendingBooking);

            var pbAddSuccess = await _repo.Commit();

            if (!pbAddSuccess)
            {
                return(StatusCode(500));
            }

            var objectToReturn = new { id = pendingBooking.Id };

            return(Ok(objectToReturn));
        }
コード例 #2
0
        public async Task <IActionResult> UpdatePendingBooking(PendingBookingDto pendingBookingDto)
        {
            var pendingBookingFromClient = _mapper.Map <PendingBooking>(pendingBookingDto);

            var pendingBookingFromDb = await _repo.GetPendingBookingById(pendingBookingFromClient.Id);

            if (_objectService.HaveSameData(pendingBookingFromDb, pendingBookingFromClient))
            {
                return(NoContent());
            }

            AddCustAndPartyToPendingBooking(pendingBookingFromClient, ref pendingBookingFromDb);

            var updateSuccess = await _repo.Commit();

            if (!updateSuccess)
            {
                return(StatusCode(500));
            }

            return(NoContent());
        }