Пример #1
0
        public async Task <IActionResult> Add()
        {
            var form = new CreatePurchaseForm();

            await InitLotsList(form);

            return(View(form));
        }
Пример #2
0
        public async Task <IActionResult> Add(CreatePurchaseForm form)
        {
            if (!ModelState.IsValid)
            {
                await InitLotsList(form);

                return(View(form));
            }

            var res = await _purchase.Create(form);

            if (res.IsCorrect)
            {
                return(RedirectToAction(nameof(List)));
            }

            ViewData[ViewDataKeys.ErrorMessage] = res.ErrorMessage;
            await InitLotsList(form);

            return(View(form));
        }
Пример #3
0
        public async Task <HbResult <HbPurchase> > Create(CreatePurchaseForm form)
        {
            var lotExist = await _dc.Lots.AnyAsync(u => !u.IsDeleted && u.Id == form.LotId);

            if (!lotExist)
            {
                return(new HbResult <HbPurchase>(ErrorCodes.LotNotFound));
            }

            var purchase = _dc.Purchases.Add(new HbPurchases
            {
                Address      = form.Address,
                Amount       = form.Amount,
                Count        = form.Count,
                LotId        = form.LotId,
                PurchaseDate = form.PurchaseDate
            });

            await _dc.SaveChangesAsync();

            await _lotsUnit.RecalculateLot(form.LotId);

            return(new HbResult <HbPurchase>(_mapper.Map <HbPurchase>(purchase.Entity)));
        }
Пример #4
0
 private async Task InitLotsList(CreatePurchaseForm form)
 {
     form.Lots = await _lots.GetList(new PagedLotsForm());
 }