public async Task <ActionResult> AddFlightTicketCategoriesAsync(string id, SaveFlightTicketCategoryDTO values) { var flightAsync = await _unitOfWork.Flights.FindAsync(f => f.Id.ToLower().Equals(id.ToLower())); // Kiểm tra mã chuyến bay var flight = flightAsync.SingleOrDefault(); if (flight == null) { return(NotFound(new { Id = "Mã chuyến bay này không tồn tại." })); } var flightTicketCategoryAsync = await _unitOfWork.Flights .GetFlightTicketCategoriesByIdAsync(id); // Kiểm tra mã loại vé đã tồn tại hay chưa var flightTicketCategory = flightTicketCategoryAsync .Where(ftc => ftc.TicketCategoryId == values.TicketCategoryId).SingleOrDefault(); if (flightTicketCategory != null) { return(BadRequest(new { Id = "Loại vé của chuyến bay này đã tồn tại." })); } // Mapping: SaveFlightTicketCategory flightTicketCategory = _mapper.Map <SaveFlightTicketCategoryDTO, FlightTicketCategory>(values); await _unitOfWork.FlightTicketCategories.AddAsync(flightTicketCategory); await _unitOfWork.CompleteAsync(); return(Ok(new { success = true, message = "Thêm loại vé thành công." })); }
public async Task <ActionResult> UpdateFlightAsync(string id, SaveFlightDTO values) { var flight = await _unitOfWork.Flights.GetByAsync(id); // Check flight exists if (flight == null) { return(NotFound(new { Id = "Mã chuyến bay này không tồn tại." })); } // Check id of flight if (id != values.Id) { return(BadRequest(new { id = "Mã chuyến bay không hợp lệ." })); } // Create SaveFlightDTO SaveFlightDTO saveFlightDTO = new SaveFlightDTO { Id = values.Id, StartTime = values.StartTime, FlightTime = values.FlightTime, AirportFrom = values.AirportFrom, AirportTo = values.AirportTo, SeatsCount = values.SeatsCount, AirlineId = values.AirlineId, Status = values.Status }; // Mapping: SaveAirport _mapper.Map <SaveFlightDTO, Flight>(saveFlightDTO, flight); // Mapping: SaveFlightTicketCategory foreach (var val in values.FlightTicketCategories) { var flightTicketCategoryAsync = await _unitOfWork.Flights .GetFlightTicketCategoriesByIdAsync(values.Id); var flightTicketCategory = flightTicketCategoryAsync .Where(ftc => ftc.TicketCategoryId == val.TicketCategoryId).SingleOrDefault(); SaveFlightTicketCategoryDTO save = new SaveFlightTicketCategoryDTO { FlightId = values.Id, TicketCategoryId = val.TicketCategoryId, Price = val.Price, }; _mapper.Map <SaveFlightTicketCategoryDTO, FlightTicketCategory>(save, flightTicketCategory); } await _unitOfWork.CompleteAsync(); return(Ok(new { success = true, message = "Sửa thành công" })); }
public async Task <ActionResult> PostFlightTicketCategoriesAsync(string id, SaveFlightTicketCategoryDTO values) { var res = await _service.AddFlightTicketCategoriesAsync(id, values); return(res); }