private async void DeleteCalibrations_Clicked(object sender, EventArgs e) { var deleteConfirmation = await DisplayAlert(AppResources.Delete_calibrations, string.Empty, AppResources.Delete, AppResources.Cancel); if (deleteConfirmation) { var calibrationService = Startup.ServiceProvider.GetService <ICalibrationService>(); var query = new CalibrationsQuery() { CalibrationIds = SelectedCalibrations.Select(calibration => calibration.Id).ToArray() }; var deleted = await calibrationService.DeleteCalibrations(query); if (deleted) { CrossToastPopUp.Current.ShowToastError($"{SelectedCalibrations.Count} {AppResources.Calibrations.ToLower()} {AppResources.Deleted.ToLower()}"); SelectedCalibrations.ForEach(deleted => { var item = Calibrations.FirstOrDefault(calibration => calibration.Id == deleted.Id); Calibrations.Remove(item); }); SelectedCalibrations.Clear(); } } }
public async Task <List <Calibration> > GetCalibrations(CalibrationsQuery query) { return(await this.databaseContext.Calibrations .Where(query.LocaleId, localeId => calibration => calibration.Position !.Zone !.LocaleId == localeId) .Where(query.ZoneId, zoneId => calibration => calibration.Position !.ZoneId == zoneId) .Where(query.PositionId, positionId => calibration => calibration.PositionId == positionId) .Where(query.SignalType, signalType => calibration => calibration.SignalType == signalType) .Where(query.SignalId, signalId => calibration => calibration.SignalId == signalId) .ToListAsync()); }
public void ConvertArrayInQuery() { var client = new Client(new Configuration()); var query = new CalibrationsQuery() { CalibrationIds = new int[] { 1, 2, 3 } }; Assert.AreEqual("?calibrationIds[]=1&calibrationIds[]=2&calibrationIds[]=3", client.ConvertQuery(query)); }
public void ConvertQuery() { var client = new Client(new Configuration()); var query = new CalibrationsQuery() { LocaleId = 1, PositionId = 1 }; Assert.AreEqual("?localeId=1&positionId=1", client.ConvertQuery(query)); }
public async Task <bool> DeleteCalibrations(CalibrationsQuery query) { var calibrations = await this.databaseContext.Calibrations .Include(calibration => calibration.Position) .Where(query.CalibrationIds, calibrationIds => calibration => calibrationIds.Contains(calibration.Id)) .Where(query.LocaleId, localeId => calibration => calibration.Position !.Zone !.LocaleId == localeId) .Where(query.PositionId, positionId => calibration => calibration.PositionId == positionId) .Where(query.SignalId, signalId => calibration => calibration.SignalId == signalId) .Where(query.ZoneId, zoneId => calibration => calibration.Position !.ZoneId == zoneId) .ToListAsync(); if (calibrations.Count == 0) { return(false); } calibrations.ForEach(calibration => calibration.Position !.DataNeedsUpdate = true); this.databaseContext.Calibrations.RemoveRange(calibrations); await this.databaseContext.SaveChangesAsync(); return(true); }
public Task <List <Calibration> > GetCalibrations(CalibrationsQuery query) { return(client.Get <List <Calibration> >(calibrationsController, query)); }
public Task <bool> DeleteCalibrations(CalibrationsQuery query) { return(client.Delete <bool>(calibrationsController, string.Empty, query)); }
public async Task <ActionResult <bool> > DeleteCalibrations( [FromServices] ICalibrationService calibrationService, [FromQuery] CalibrationsQuery query) { return(await calibrationService.DeleteCalibrations(query)); }
public async Task <ActionResult <List <Calibration> > > GetCalibrations( [FromServices] ICalibrationService calibrationService, [FromQuery] CalibrationsQuery query) { return(await calibrationService.GetCalibrations(query)); }