public async Task <ApiResult <bool> > Update(TransporterUpdateRequest request) { try { var result = await _context.Transporters.FindAsync(request.id); if (result != null) { result.isActive = request.isActive; result.name = request.name; result.update_at = DateTime.Now; result.link = request.link; if (request.image != null) { await _storageService.DeleteFileAsync(result.image); result.image = await this.SaveFile(request.image); } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy đơn vị vận chuyển này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <IActionResult> Update([FromForm] TransporterUpdateRequest request) { var result = await _transportService.Update(request); if (!result.IsSuccess) { return(BadRequest(result)); } return(Ok(result)); }
public async Task <IActionResult> Update(TransporterUpdateRequest request) { if (!ModelState.IsValid) { return(View(request)); } var result = await _transportApiClient.UpdateTransporter(request); if (result.IsSuccess) { TempData["result"] = "Cập nhật thành công"; return(RedirectToAction("Index")); } ModelState.AddModelError("", result.Message); return(View(request)); }
public async Task <IActionResult> Update(int id) { var result = await _transportApiClient.GetById(id); if (!result.IsSuccess || result.ResultObject == null) { TempData["error"] = result.Message; return(RedirectToAction("Index")); } var updateRequest = new TransporterUpdateRequest() { id = id, isActive = result.ResultObject.isActive, name = result.ResultObject.name, link = result.ResultObject.link, imageBase64 = result.ResultObject.image }; if (TempData["result"] != null) { ViewBag.SuccessMsg = TempData["result"]; } return(View(updateRequest)); }
public async Task <ApiResult <bool> > UpdateTransporter(TransporterUpdateRequest request) { var client = _httpClientFactory.CreateClient(); client.BaseAddress = new Uri(_configuration["BaseAddress"]); var requestContent = new MultipartFormDataContent(); if (request.image != null) { byte[] data; using (var br = new BinaryReader(request.image.OpenReadStream())) { data = br.ReadBytes((int)request.image.OpenReadStream().Length); } ByteArrayContent bytes = new ByteArrayContent(data); requestContent.Add(bytes, "image", request.image.FileName); } requestContent.Add(new StringContent(request.name.ToString()), "name"); requestContent.Add(new StringContent(request.link.ToString()), "link"); requestContent.Add(new StringContent(request.isActive.ToString()), "isActive"); requestContent.Add(new StringContent(request.id.ToString()), "id"); var respone = await client.PutAsync($"/api/transport", requestContent); var result = await respone.Content.ReadAsStringAsync(); if (respone.IsSuccessStatusCode) { return(JsonConvert.DeserializeObject <ApiSuccessResult <bool> >(result)); } else { return(JsonConvert.DeserializeObject <ApiErrorResult <bool> >(result)); } }