コード例 #1
0
ファイル: RoomController.cs プロジェクト: imanoel01/HMS
        public IActionResult Post(RoomCreateDto model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var isRoomExits = _repository.getRoom(model.RoomNo);

            if (isRoomExits != null)
            {
                return(BadRequest("Room Number Already Exists"));
            }
            RoomReadDto readRoom = new RoomReadDto();

            _repository.BeginTransaction();
            try
            {
                var room = _Mapper.Map <Room>(model);
                _repository.createRoom(room);
                _repository.saveChanges();
                _repository.CommitTransaction();
                readRoom = _Mapper.Map <RoomReadDto>(room);
            }
            catch (Exception ex)
            {
                _repository.RollBackTransaction();
                throw new ApiException(ex.Message, 400);
            }

            return(Ok(readRoom));
        }
コード例 #2
0
ファイル: RoomRepo.cs プロジェクト: Sammylaw23/PeaceHotelAPI
        public async Task <RoomCreateDto> CreateRoom(RoomCreateDto roomCreate)
        {
            var _room = _mapper.Map <Room>(roomCreate);

            _db.Rooms.Add(_room);
            int result = await _db.SaveChangesAsync();

            return(result > 0 ? _mapper.Map <RoomCreateDto>(_room) : null);
        }
コード例 #3
0
        public async Task <ActionResult> CreateRoom(RoomCreateDto room)
        {
            if (await _roomRepo.RoomExists(room))
            {
                return(StatusCode(400, new { Error = "Room already exists" }));
            }

            var _room = await _roomRepo.CreateRoom(room);

            return(_room == null
                ? StatusCode(500, new { Error = "Could not create room." })
                : StatusCode(201, _room));
        }
コード例 #4
0
ファイル: RoomController.cs プロジェクト: imanoel01/HMS
        public IActionResult Put(int id, RoomCreateDto model)
        {
            var room = _repository.getRoom(id);

            if (room == null)
            {
                return(NotFound());
            }
            var roomUpdateModel = _Mapper.Map(model, room);

            _repository.updateRoom(roomUpdateModel);
            _repository.saveChanges();
            //sending the updated data model
            var roomUpdatedModel = _Mapper.Map <RoomReadDto>(roomUpdateModel);

            return(Ok(roomUpdatedModel));
        }
コード例 #5
0
        public async Task <ActionResult> Create(RoomCreateDto dto)
        {
            var email = HttpContext.User.RetrieveEmailFromPrincipal();

            dto.AppUserEmail = email;

            if (email == null)
            {
                return(BadRequest());
            }

            var room = _mapper.Map <RoomCreateDto, Room>(dto);

            _roomRepository.Add(room);
            await _context.SaveChangesAsync();

            return(Ok());
        }
コード例 #6
0
ファイル: RoomService.cs プロジェクト: randy102/cinemo
        public Room Create(RoomCreateDto dto)
        {
            var isExist = GetDetail(dto.TheaterId, dto.Name);

            if (isExist != null && dto.TheaterId == isExist.TheaterId)
            {
                throw new Exception(dto.Name + " existed");
            }
            var entity = new Room
            {
                TheaterId = dto.TheaterId,
                Name      = FormatString.Trim_MultiSpaces_Title(dto.Name),
                NumCol    = dto.NumCol,
                NumRow    = dto.NumRow,
                Total     = dto.NumRow * dto.NumCol,
                Formats   = dto.Formats
            };

            return(repository.Add(entity));
        }
コード例 #7
0
        public async Task <IActionResult> UpdateRoom(int id, RoomCreateDto dto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var room = await _roomRepository.GetByIDAsync(id);

            if (room == null)
            {
                return(NotFound());
            }

            var roomUpdate = _mapper.Map <RoomCreateDto, Room>(dto, room);

            _roomRepository.Update(roomUpdate);
            await _context.SaveChangesAsync();

            return(Ok(roomUpdate));
        }
コード例 #8
0
ファイル: RoomRepo.cs プロジェクト: Sammylaw23/PeaceHotelAPI
 public async Task <bool> RoomExists(RoomCreateDto roomCreate)
 {
     return(await _db.Rooms.AnyAsync(u => u.RoomName.Equals(roomCreate.RoomName) && u.RoomCost.Equals(roomCreate.RoomCost)));
 }