// GET: Admin/Signatures/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { Response.StatusCode = 404; return(View("SignaturesNotFound")); } var signature = await _context.Signatures.FindAsync(id); if (signature == null) { Response.StatusCode = 404; return(View("SignaturesNotFound")); } SignatureEditViewModel models = new SignatureEditViewModel() { Id = signature.Id, SignaturePhotoExists = signature.SignaturePhoto, UserId = signature.UserId, Degree = signature.Degree, JobsSignatorieId = signature.JobsSignatorieId, Status = signature.Status }; ViewData["DegreeList"] = new SelectList(DegreeList(), "Name", "Name", signature.Degree); ViewData["JobsSignatorieId"] = new SelectList(_context.JobsSignatories, "Id", "Name", signature.JobsSignatorieId); ViewData["ValidUnValidList"] = new SelectList(ValidUnValidHelpr.ValidUnValidHelprList(), "Value", "Name", signature.Status); ViewData["UserId"] = new SelectList(_context.Users, "Id", "FullName", signature.UserId); return(View(models)); }
public async Task <IActionResult> Edit(int id, SignatureEditViewModel signature) { if (id != signature.Id) { Response.StatusCode = 404; return(View("SignaturesNotFound")); } if (ModelState.IsValid) { string filenameForEdit = null; string uniqFileName = null; if (signature.SignaturePhoto != null && signature.SignaturePhoto.Length > 0) { string filePathForDelete = Path.Combine(_ihostingEnvironment.WebRootPath, "img/signatures", signature.SignaturePhotoExists); System.IO.File.Delete(filePathForDelete); if (IsFileValidate(signature.SignaturePhoto.FileName)) { string uplouadsFolder = Path.Combine(_ihostingEnvironment.WebRootPath, "img/signatures"); uniqFileName = Guid.NewGuid().ToString() + "_" + signature.SignaturePhoto.FileName; string filePath = Path.Combine(uplouadsFolder, uniqFileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { signature.SignaturePhoto.CopyTo(fileStream); } } else { ViewBag.msg = "الصور المسموح بها يجب ان تكون بمتداد : " + "png , jpeg , jpg , gif , bmp "; ViewData["DegreeList"] = new SelectList(DegreeList(), "Name", "Name", signature.Degree); ViewData["JobsSignatorieId"] = new SelectList(_context.JobsSignatories, "Id", "Name", signature.JobsSignatorieId); ViewData["ValidUnValidList"] = new SelectList(ValidUnValidHelpr.ValidUnValidHelprList(), "Value", "Name", signature.Status); ViewData["UserId"] = new SelectList(_context.Users, "Id", "FullName", signature.UserId); return(View(signature)); } } filenameForEdit = uniqFileName == null ? signature.SignaturePhotoExists : uniqFileName; Signature signatureforSave = new Signature() { UserId = signature.UserId, SignaturePhoto = filenameForEdit, Id = id, Degree = signature.Degree, JobsSignatorieId = signature.JobsSignatorieId, Status = signature.Status }; if (!SignatureExists(id, signature.UserId)) { if (SignatureExists(signature.UserId)) { ViewData["SignatureExists"] = "لايمكن اضافة توقيع آخر / يملك توقيع مسبقا!!"; ViewData["DegreeList"] = new SelectList(DegreeList(), "Name", "Name", signature.Degree); ViewData["JobsSignatorieId"] = new SelectList(_context.JobsSignatories, "Id", "Name", signature.JobsSignatorieId); ViewData["ValidUnValidList"] = new SelectList(ValidUnValidHelpr.ValidUnValidHelprList(), "Value", "Name", signature.Status); ViewData["UserId"] = new SelectList(_context.Users, "Id", "FullName", signature.UserId); return(View(signature)); } } _context.Update(signatureforSave); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["DegreeList"] = new SelectList(DegreeList(), "Name", "Name", signature.Degree); ViewData["JobsSignatorieId"] = new SelectList(_context.JobsSignatories, "Id", "Name", signature.JobsSignatorieId); ViewData["ValidUnValidList"] = new SelectList(ValidUnValidHelpr.ValidUnValidHelprList(), "Value", "Name", signature.Status); ViewData["UserId"] = new SelectList(_context.Users, "Id", "FullName", signature.UserId); return(View(signature)); }