public async Task <(bool IsSuccess, Models.ViewModels.Vehicle Vehicle, string ErrorMessage)> PostVehicleAsync(VehicleRequest vehicle) { try { var newVehicle = new DB.Vehicle() { CarModelID = vehicle.CarModelID, LicensePlate = vehicle.LicensePlate, ModelYear = vehicle.ModelYear }; dBContext.Add(newVehicle); if (await dBContext.SaveChangesAsync() > 0) { newVehicle = await dBContext.Vehicles.Include(m => m.CarModel).Include(m => m.CarModel.Make).Include(m => m.CarModel.VehicleCategory).Include(c => c.CarModel.FuelType).FirstOrDefaultAsync(v => v.ID == newVehicle.ID); var result = mapper.Map <DB.Vehicle, Models.ViewModels.Vehicle>(newVehicle); return(true, result, null); } return(false, null, "Failed to insert record."); } catch (Exception ex) { logger?.LogError(ex.ToString()); return(false, null, ex.Message); } }
public async Task <(bool IsSuccess, Models.ViewModels.Vehicle Vehicle, string ErrorMessage)> DeleteVehicleAsync(int id) { try { var vehicle = new DB.Vehicle() { ID = id }; dBContext.Remove(vehicle); if (await dBContext.SaveChangesAsync() > 0) { return(true, null, null); } return(false, null, "Failed to delete record."); } catch (Exception ex) { logger?.LogError(ex.ToString()); return(false, null, ex.Message); } }
public Response AddNewVehicle(int plateNumber, string plateText, string plateModel, string plateColor, int userId) { Response response = new Response(); int?PLATENUMBER = plateNumber; if (!PLATENUMBER.HasValue) { response.Msg = "fail, plateNumber required"; } if (string.IsNullOrEmpty(plateModel)) { response.Msg = "fail, plateModel required"; } if (string.IsNullOrEmpty(plateColor)) { response.Msg = "fail, plateColor required"; } int?USERID = userId; if (!USERID.HasValue) { response.Msg = "fail, login first to add vehicles"; } else { int plateTextId = 0; if (plateText != "" && plateText != null) { using (VehiclesSystemEntities db = new VehiclesSystemEntities()) { DB.PlateText plate = new DB.PlateText { Text = plateText }; db.PlateTexts.Add(plate); db.SaveChanges(); plateTextId = plate.Id; } } using (VehiclesSystemEntities db = new VehiclesSystemEntities()) { DB.Vehicle vehicle = new DB.Vehicle { PlateNumber = plateNumber, PlateColor = plateColor, PlateModel = plateModel, UserId = userId, WaitingForApprove = true }; if (plateTextId != 0) { vehicle.PlateTextId = plateTextId; } db.Vehicles.Add(vehicle); db.SaveChanges(); response.Msg = "success"; var UserInfo = (from u in db.Users where u.Id == userId select u).FirstOrDefault(); //SendEmail(plateNumber, plateText, plateColor, plateModel, UserInfo.FirstName,UserInfo.LastName,UserInfo.MobileNumber, UserInfo.Email, UserInfo.Age); } } return(response); }