Beispiel #1
0
        public async Task <IActionResult> Deactivate(DeactivateViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(User);

                if (await _userManager.CheckPasswordAsync(user, model.Password))
                {
                    _repository.DeactivateUser(new Guid(user.Id));
                }
            }

            return(View(nameof(Deactivate)));
        }
        public ActionResult DeactivateInvestor([FromBody] DeactivateViewModel model)
        {
            if (model == null)
            {
                return(this.Json(new MetaResponse <object> {
                    StatusCode = 200, ErrorMessage = "model is null"
                }));
            }
            var usd = dbContext.Assets.FirstOrDefault(a => a.Name == "USD");

            if (usd != null && usd.Quantity - model.AmountReturned < 0)
            {
                return(this.Json(new MetaResponse <object> {
                    StatusCode = 200, ErrorCode = 5
                }));
            }

            var investor = dbContext.Investors.FirstOrDefault(p => p.Id == model.Id);

            if (investor != null)
            {
                investor.Status         = Status.Inactive;
                investor.DeactivateDate = DateTime.ParseExact(model.DeactivateDate, "d/M/yyyy", CultureInfo.InvariantCulture);
                investor.SharesBurned   = investor.SharesReceived;
                investor.AmountReturned = model.AmountReturned;
                investor.AmountInvested = 0;
                investor.SharesReceived = 0;
                var list = JsonConvert.DeserializeObject <List <DateTime> >(investor.JsonDeactivateDateList);
                list.Add(DateTime.ParseExact(model.DeactivateDate, "d/M/yyyy", CultureInfo.InvariantCulture));
                investor.JsonDeactivateDateList = JsonConvert.SerializeObject(list);
                dbContext.Investors.Update(investor);

                usd.Quantity -= investor.AmountReturned;
                dbContext.Assets.Update(usd);

                dbContext.SaveChanges();
            }

            return(this.Json(new MetaResponse <object> {
                StatusCode = 200
            }));
        }
Beispiel #3
0
        public IActionResult Deactivate()
        {
            var model = new DeactivateViewModel();

            return(View(model));
        }