Ejemplo n.º 1
0
        public async Task <IActionResult> PutBankWithdrawal(int id, BankWithdrawal bankWithdrawal)
        {
            if (id != bankWithdrawal.BankWithdrawalId)
            {
                return(BadRequest());
            }

            _context.Entry(bankWithdrawal).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!BankWithdrawalExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <BankWithdrawal> > PostBankWithdrawal(BankWithdrawal bankWithdrawal)
        {
            _context.BankWithdrawals.Add(bankWithdrawal);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetBankWithdrawal", new { id = bankWithdrawal.BankWithdrawalId }, bankWithdrawal));
        }
Ejemplo n.º 3
0
        public string MakePurchase(double Dollars, double BtcPurchaseAmount /*,ClientBtcWalletAddress*/)
        {
            // Create a OctagonWallet Object
            OctagonWallet wallet = new OctagonWallet();

            // Get Bitcoin Balance in the wallet
            var BtcWalletBalance = wallet.GetBtcAvailable();

            // Withdraw money from the bank equal to the purchase (restoking)
            BankWithdrawal Withdrawal = new BankWithdrawal(Dollars.ToString());

            // Make purchase
            BuyBTC purchase = new BuyBTC(BtcPurchaseAmount);

            // While BTC's are not available in wallet, keep cheking until it's available in order to make a transfer
            while (Double.Parse(BtcWalletBalance) < BtcPurchaseAmount)
            {
                BtcWalletBalance = wallet.GetBtcAvailable();
            }

            // Make transfer to user's wallet from octagon's wallet
            // Create a Signature Object
            Signature signature = new Signature(BtcPurchaseAmount /*, ClientBtcWalletAddress  */);

            // View Result. ID if Successful, Error if not
            return(purchase.getResponseString());
        }
Ejemplo n.º 4
0
        public string MakePurchase(double Dollars, double EthPurchaseAmount /*,ClientBtcWalletAddress*/)
        {
            // Create a OctagonWallet Object
            OctagonWallet wallet = new OctagonWallet();

            // Get Ether Balance in the wallet
            var EthWalletBalance = wallet.GetEthAvailable();

            // Withdraw money from the bank equal to the purchase
            BankWithdrawal Withdrawal = new BankWithdrawal(Dollars.ToString());

            // Make purchase
            BuyETH purchase = new BuyETH(EthPurchaseAmount);

            // While Ether's are not available in wallet, keep cheking until it's available in order to make a transfer
            while (Double.Parse(EthWalletBalance) < EthPurchaseAmount)
            {
                EthWalletBalance = wallet.GetEthAvailable();
            }

            // Make transfer to user's wallet from octagon's wallet
            // Create a EtherTransfer Object
            EtherTransfer signature = new EtherTransfer(EthPurchaseAmount /*, ClientEthWalletAddress  */);

            // View Result. ID if Successful, Error if not
            return(purchase.getResponseString());
        }
Ejemplo n.º 5
0
        public ActionResult DeleteConfirmed(int id)
        {
            BankWithdrawal bankWithdrawal = db.Withdrawals.Find(id);

            db.Withdrawals.Remove(bankWithdrawal);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 6
0
        public void OnUpdate(AprajitaRetailsContext db, BankWithdrawal objectName)
        {
            var old = db.BankWithdrawals.Where(c => c.BankWithdrawalId == objectName.BankWithdrawalId).Select(d => new { d.Amount, d.DepoDate }).FirstOrDefault();

            if (old != null)
            {
                CashTrigger.UpdateCashInHand(db, old.DepoDate, 0 - old.Amount);
                CashTrigger.UpDateCashOutBank(db, old.DepoDate, 0 - old.Amount);
            }
            CashTrigger.UpdateCashInHand(db, objectName.DepoDate, objectName.Amount);
            CashTrigger.UpDateCashOutBank(db, objectName.DepoDate, objectName.Amount);
        }
 public ActionResult Edit([Bind(Include = "BankWithdrawalId,DepoDate,AccountNumberId,Amount,ChequeNo,SignedBy,ApprovedBy,InNameOf")] BankWithdrawal bankWithdrawal)
 {
     if (ModelState.IsValid)
     {
         //TODO: Rectifed This  ProcessAccounts(bankWithdrawal);
         db.Entry(bankWithdrawal).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.AccountNumberId = new SelectList(db.BankAccounts, "AccountNumberId", "Account", bankWithdrawal.AccountNumberId);
     return(PartialView(bankWithdrawal));
 }
        public async Task <IActionResult> Create([Bind("BankWithdrawalId,DepoDate,AccountNumberId,Amount,ChequeNo,SignedBy,ApprovedBy,InNameOf")] BankWithdrawal bankWithdrawal)
        {
            if (ModelState.IsValid)
            {
                _context.Add(bankWithdrawal);
                new BankingManager().OnInsert(_context, bankWithdrawal);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AccountNumberId"] = new SelectList(_context.AccountNumbers, "AccountNumberId", "Account", bankWithdrawal.AccountNumberId);
            return(PartialView(bankWithdrawal));
        }
 private void ProcessAccounts(BankWithdrawal objectName, bool IsIn)
 {
     if (IsIn)
     {
         Utils.UpDateCashInHand(db, objectName.DepoDate, objectName.Amount);
         Utils.UpDateCashOutBank(db, objectName.DepoDate, objectName.Amount);
     }
     else
     {
         Utils.UpDateCashInHand(db, objectName.DepoDate, 0 - objectName.Amount);
         Utils.UpDateCashOutBank(db, objectName.DepoDate, 0 - objectName.Amount);
     }
 }
        public ActionResult Create([Bind(Include = "BankWithdrawalId,DepoDate,AccountNumberId,Amount,ChequeNo,SignedBy,ApprovedBy,InNameOf")] BankWithdrawal bankWithdrawal)
        {
            if (ModelState.IsValid)
            {
                db.Withdrawals.Add(bankWithdrawal);
                ProcessAccounts(bankWithdrawal, true);

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.AccountNumberId = new SelectList(db.BankAccounts, "AccountNumberId", "Account", bankWithdrawal.AccountNumberId);
            return(View(bankWithdrawal));
        }
        // GET: BankWithdrawals/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BankWithdrawal bankWithdrawal = db.Withdrawals.Find(id);

            if (bankWithdrawal == null)
            {
                return(HttpNotFound());
            }
            return(PartialView(bankWithdrawal));
        }
        // GET: BankWithdrawals/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BankWithdrawal bankWithdrawal = db.Withdrawals.Find(id);

            if (bankWithdrawal == null)
            {
                return(HttpNotFound());
            }
            ViewBag.AccountNumberId = new SelectList(db.BankAccounts, "AccountNumberId", "Account", bankWithdrawal.AccountNumberId);
            return(View(bankWithdrawal));
        }
        [Authorize(Roles = "Admin,PowerUser")]     public async Task <IActionResult> Edit(int id, [Bind("BankWithdrawalId,DepoDate,AccountNumberId,Amount,ChequeNo,SignedBy,ApprovedBy,InNameOf")] BankWithdrawal bankWithdrawal)
        {
            if (id != bankWithdrawal.BankWithdrawalId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    new BankingManager().OnUpdate(_context, bankWithdrawal);
                    _context.Update(bankWithdrawal);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BankWithdrawalExists(bankWithdrawal.BankWithdrawalId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AccountNumberId"] = new SelectList(_context.AccountNumbers, "AccountNumberId", "Account", bankWithdrawal.AccountNumberId);
            return(PartialView(bankWithdrawal));
        }
Ejemplo n.º 14
0
 public void OnDelete(AprajitaRetailsContext db, BankWithdrawal objectName)
 {
     CashTrigger.UpdateCashInHand(db, objectName.DepoDate, 0 - objectName.Amount);
     CashTrigger.UpDateCashOutBank(db, objectName.DepoDate, 0 - objectName.Amount);
 }
Ejemplo n.º 15
0
 private void ProcessAccounts(BankWithdrawal objectName)
 {
     Utils.UpDateCashInHand(db, objectName.DepoDate, objectName.Amount);
     Utils.UpDateCashOutBank(db, objectName.DepoDate, objectName.Amount);
 }