public async Task <ServiceResponseObject <BaseResponseObject> > EditBox(EditBoxViewModel model) { if (ModelState.IsValid) { ContainerMethods BoxData = new ContainerMethods(_boxContext); var Result = await BoxData.EditBox(model); return(Result); } ServiceResponseObject <BaseResponseObject> response = new ServiceResponseObject <BaseResponseObject>(); response.Status = ResponseResult.Error; List <string> errors = ModelState.Values.Aggregate( new List <string>(), (a, c) => { a.AddRange(c.Errors.Select(r => r.ErrorMessage)); return(a); }, a => a ); response.Message = errors[0]; return(response); }
public void TestsCleanup() { this.boxService = null; this.navigationService = null; this.localizationService = null; this.dialogService = null; this.editBoxViewModel = null; }
public void TestsInitialize() { this.boxService = new FakeBoxService(); this.navigationService = new FakeNavigationService(); this.localizationService = new FakeLocalizationService(); this.dialogService = new FakeDialogService(); this.editBoxViewModel = new EditBoxViewModel(this.boxService, this.navigationService, this.localizationService, this.dialogService); }
public async Task <IActionResult> EditBoxes(EditBoxViewModel form) { if (this.ModelState.IsValid) { await this.service.EditBoxesAsync(form); return(this.RedirectToAction("Success", "Blacksmith", new { message = "Successfully Edited Boxes" })); } return(this.View(form)); }
public async Task <IActionResult> EditBoxes() { var boxes = await this.service.GetAllBoxesAsync(); var model = new EditBoxViewModel(); model.BoxViewModel = new List <AddBoxViewModel>(); foreach (var box in boxes) { model.BoxViewModel.Add(new AddBoxViewModel { Href = box.Href, Color = box.Color, Text = box.Text }); } return(this.View(model)); }
public async Task EditBoxesAsync(EditBoxViewModel form) { var page = await this.context.Pages.FirstOrDefaultAsync(x => x.PageName == "Index"); var boxes = page.ColorfulBoxes.Where(x => x.IsDeleted == false).ToList(); for (int i = 0; i < form.BoxViewModel.Count; i++) { var formBox = form.BoxViewModel[i]; var dbBox = boxes[i]; dbBox.Href = formBox.Href; dbBox.Color = formBox.Color; dbBox.Text = formBox.Text; dbBox.IsDeleted = formBox.IsDeleted; } await this.context.SaveChangesAsync(); }
/// <summary> /// Редактирование данных объекта /// </summary> /// <param name="id"></param> /// <param name="model"></param> /// <returns></returns> public async Task <ServiceResponseObject <BaseResponseObject> > EditBox(EditBoxViewModel model) { ServiceResponseObject <BaseResponseObject> ContentData = new ServiceResponseObject <BaseResponseObject>(); if (model == null) { ContentData.Message = "Не указаны данные для контейнера."; ContentData.Status = ResponseResult.Error; return(ContentData); } var box = await _boxContext.SmartBoxes.FirstOrDefaultAsync(s => s.Id == model.Id); //var team = await _teamContext.Teams.FirstOrDefaultAsync(f => f.Id == user.TeamId); if (box == null) { ContentData.Message = "Контейнер не найден."; ContentData.Status = ResponseResult.Error; return(ContentData); } box.Name = model.Name; box.BoxState = model.BoxState; box.BatteryPower = model.BatteryPower; box.Code = model.Code; box.IsOpenedBox = model.IsOpenedBox; box.IsOpenedDoor = model.IsOpenedDoor; box.Light = model.Light; box.Temperature = model.Temperature; box.Weight = model.Weight; box.Wetness = model.Wetness; _boxContext.Update(box); await _boxContext.SaveChangesAsync(); ContentData.Message = "Успешно."; ContentData.Status = ResponseResult.OK; return(ContentData); }
public static async Task <AuthApiData <BaseResponseObject> > EditBox() { try { var myHttpClient = new HttpClient(); EditBoxViewModel ForAnotherServer = new EditBoxViewModel { id = StaticBox.DeviceId, Sensors = new Dictionary <string, string> { ["Вес груза"] = StaticBox.Sensors["Вес груза"], ["Температура"] = StaticBox.Sensors["Температура"], ["Влажность"] = StaticBox.Sensors["Влажность"], ["Освещенность"] = StaticBox.Sensors["Освещенность"], ["Уровень заряда аккумулятора"] = StaticBox.Sensors["Уровень заряда аккумулятора"], ["Уровень сигнала"] = StaticBox.Sensors["Уровень сигнала"], ["Состояние дверей"] = StaticBox.Sensors["Состояние дверей"], ["Состояние контейнера"] = StaticBox.Sensors["Состояние контейнера"], ["Местоположение контейнера"] = StaticBox.Sensors["Местоположение контейнера"] }, }; var date = DateTime.Now; var uri = new Uri("http://iot.tmc-centert.ru/api/container/editsensors?date=" + date + "&id=" + CrossSettings.Current.GetValueOrDefault("id", "") + "&sensors[Вес груза]=" + StaticBox.Sensors["Вес груза"] + "&sensors[Температура]=" + StaticBox.Sensors["Температура"] + "&sensors[Влажность]=" + StaticBox.Sensors["Влажность"] + "&sensors[Освещенность]=" + StaticBox.Sensors["Освещенность"] + "&sensors[Уровень заряда аккумулятора]=" + StaticBox.Sensors["Уровень заряда аккумулятора"] + "&sensors[Уровень сигнала]=" + StaticBox.Sensors["Уровень сигнала"] + "&sensors[Состояние дверей]=" + StaticBox.Sensors["Состояние дверей"] + "&sensors[Состояние контейнера]=" + StaticBox.Sensors["Состояние контейнера"] + "&sensors[Местоположение контейнера]=" + StaticBox.Sensors["Местоположение контейнера"]); var uri2 = new Uri("http://smartboxcity.ru:8003/imitator/sensors?" + "id=" + StaticBox.DeviceId + "&sensors[Вес груза]=" + StaticBox.Sensors["Вес груза"] + "&sensors[Температура]=" + StaticBox.Sensors["Температура"] + "&sensors[Влажность]=" + StaticBox.Sensors["Влажность"] + "&sensors[Освещенность]=" + StaticBox.Sensors["Освещенность"] + "&sensors[Уровень заряда аккумулятора]=" + StaticBox.Sensors["Уровень заряда аккумулятора"] + "&sensors[Уровень сигнала]=" + StaticBox.Sensors["Уровень сигнала"] + "&sensors[Состояние дверей]=" + StaticBox.Sensors["Состояние дверей"] + "&sensors[Состояние контейнера]=" + StaticBox.Sensors["Состояние контейнера"] + "&sensors[Местоположение контейнера]=" + StaticBox.Sensors["Местоположение контейнера"]); var formContent = new FormUrlEncodedContent(new Dictionary <string, string> { { "id", CrossSettings.Current.GetValueOrDefault("id", "") }, { "date", date.ToString() }, { "sensors[Вес груза]", StaticBox.Sensors["Вес груза"] }, { "sensors[Температура]", StaticBox.Sensors["Температура"] }, { "sensors[Влажность]", StaticBox.Sensors["Влажность"] }, { "sensors[Освещенность]", StaticBox.Sensors["Освещенность"] }, { "sensors[Уровень заряда аккумулятора]", StaticBox.Sensors["Уровень заряда аккумулятора"] }, { "sensors[Уровень сигнала]", StaticBox.Sensors["Уровень сигнала"] }, { "sensors[Состояние дверей]", StaticBox.Sensors["Состояние дверей"] }, { "sensors[Состояние контейнера]", StaticBox.Sensors["Состояние контейнера"] }, { "sensors[Местоположение контейнера]", StaticBox.Sensors["Местоположение контейнера"] } }); //EditBoxViewModel box = new EditBoxViewModel //{ // id = CrossSettings.Current.GetValueOrDefault("id", ""), // date = date, // Sensors = new Dictionary<string, string> // { // {"Температура",StaticBox.Sensors["Температура"] }, // {"Влажность",StaticBox.Sensors["Влажность"] }, // {"Освещенность",StaticBox.Sensors["Освещенность"] }, // {"Вес груза",StaticBox.Sensors["Вес груза"] }, // {"Уровень заряда аккумулятора",StaticBox.Sensors["Уровень заряда аккумулятора"]}, // {"Уровень сигнала",StaticBox.Sensors["Уровень сигнала"]}, // {"Состояние дверей",StaticBox.Sensors["Состояние дверей"]}, // {"Состояние контейнера",StaticBox.Sensors["Состояние контейнера"]}, // {"Местоположение контейнера",StaticBox.Sensors["Местоположение контейнера"]} // } //}; //var data = new StringContent(JsonConvert.SerializeObject(box)); //HttpResponseMessage response = await myHttpClient.PostAsync(uri.ToString(), formContent); HttpResponseMessage responseFromAnotherServer = await myHttpClient.PostAsync(uri2.ToString(), new StringContent(JsonConvert.SerializeObject(ForAnotherServer), Encoding.UTF8, "application/json")); AuthApiData <BaseResponseObject> o_data = new AuthApiData <BaseResponseObject>(); //string s_result; //using (HttpContent responseContent = response.Content) //{ // s_result = await responseContent.ReadAsStringAsync(); //} string s_result_from_server; using (HttpContent responseContent = responseFromAnotherServer.Content) { s_result_from_server = await responseContent.ReadAsStringAsync(); } if (responseFromAnotherServer.IsSuccessStatusCode) { StaticBox.CreatedAtSensors = date; o_data = JsonConvert.DeserializeObject <AuthApiData <BaseResponseObject> >(s_result_from_server); } else { ErrorResponseObject error = new ErrorResponseObject(); error = JsonConvert.DeserializeObject <ErrorResponseObject>(s_result_from_server); o_data.Message = error.Errors[0]; o_data.Status = responseFromAnotherServer.StatusCode.ToString(); } return(o_data); } catch (Exception ex) { AuthApiData <BaseResponseObject> result = new AuthApiData <BaseResponseObject>(); result.Status = "1"; result.Message = ex.Message; return(result); } }