public async Task <IActionResult> UploadCompanyImage(int?id) { if (id == null) { return(BadRequest(new Exception("Invalid Company"))); } try { var updatedCompany = _context.MCompany .FirstOrDefault(x => x.Id == id); // if (updatedCompany.Image != null) { // deleteImage // } if (updatedCompany == null) { return(NotFound(new Exception("Company not found"))); } var file = Request.Form.Files[0]; var path = Path.Combine("upload", "companies", id.ToString()); var physicalPath = Path.Combine("assets", path); if (!Directory.Exists(physicalPath)) { Directory.CreateDirectory(physicalPath); } if (file.Length > 0) { var extArray = file.FileName.Split('.'); var ext = extArray[extArray.Length - 1]; var fileName = Guid.NewGuid().ToString("N") + "." + ext; var fullPath = Path.Combine(physicalPath, fileName); using (var stream = new FileStream(fullPath, FileMode.Create)) { await file.CopyToAsync(stream); } var request = HttpContext.Request; var uriBuilder = new UriBuilder { Host = request.Host.Host, Scheme = request.Scheme, Path = Path.Combine(path, fileName) }; if (request.Host.Port.HasValue) { uriBuilder.Port = request.Host.Port.Value; } var urlPath = uriBuilder.ToString(); updatedCompany.Image = urlPath; _context.Update(updatedCompany); _context.Commit(); return(Ok(new { name = fileName, path = urlPath })); } return(BadRequest(new Exception("Invalid File"))); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, ex)); } }
public IActionResult UpdateUser([FromBody] MUser updateUser, int id) { var oldUser = _context.MUser .FirstOrDefault(x => x.Id == id); if (oldUser == null) { return(NotFound(new Exception("User not found"))); } oldUser = MUserMapping.UpdatedUserMapping(oldUser, updateUser); _context.Update(oldUser); _context.Commit(); return(Ok()); }
public async Task <IActionResult> ChangeProductInterval([FromBody] SysParamRequest paramRequest) { if (paramRequest.ParamCode == null && !paramRequest.ParamCode.Equals("DEFAULT_PRODUCT_INTERVAL") && paramRequest.ParamValue == null) { return(BadRequest()); } var config = await _context.SysParam.FirstOrDefaultAsync(x => x.ParamCode.Equals(paramRequest.ParamCode)); if (config == null) { return(BadRequest()); } config.ParamValue = paramRequest.ParamValue; _context.Update(config); _context.Commit(); // var products = _context.Product.ToList(); // foreach (var item in products) // { // item.UpdateIntervalInSecond = paramRequest.ParamValue; // _context.Update(item); // } // _context.Commit(); return(Ok()); }
public async Task <IActionResult> UpdateProductInterval(int?id, string interval) { if (id == null) { return(BadRequest()); } if (!Regex.IsMatch(interval, @"\d")) { return(BadRequest()); } var product = await _context.Product.FirstOrDefaultAsync(x => x.Id == id); product.UpdateIntervalInSecond = interval; _context.Update(product); await _context.SaveChangesAsync(); return(Ok()); }
public IActionResult AddChat(int chatId) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var chat = _context.ChatMessages.FirstOrDefault(x => x.Id == chatId && !x.IsRead); chat.IsRead = true; _context.Update(chat); _context.Commit(); return(Ok(new { msg = "Chat Readed" })); }
public IActionResult ResetPassword([FromBody] ForgotPassword request) { var user = _context.MUser .FirstOrDefault(x => x.Email == request.Email); if (user == null) { return(NotFound(new Exception("Email not found!"))); } // var mask = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; var mask = "0123456789"; var newPassword = ""; Random random = new Random(); for (int i = 0; i < 8; i++) { var index = random.Next(mask.Length); newPassword += mask[index]; } user.Password = newPassword; _context.Update(user); _context.Commit(); var toAddress = new EmailAddress() { Address = user.Email, Name = user.Name }; var emailMessage = new EmailMessage() { Subject = "Password Reset", Content = "<p>Your new password is: <b>" + newPassword + "</b></p>", }; emailMessage.ToAddresses.Add(toAddress); _emailService.Send(emailMessage); return(Ok()); }