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));
     }
 }
Exemple #2
0
        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());
        }
Exemple #4
0
        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());
        }