Beispiel #1
0
        public int Update(InvoiceAccount invoiceAccount)
        {
            _context.InvoiceAccounts.Update(invoiceAccount);
            _context.SaveChanges();

            return(invoiceAccount.InvoiceAccountId);
        }
Beispiel #2
0
        public int Add(InvoiceAccount invoiceAccount)
        {
            _context.InvoiceAccounts.Add(invoiceAccount);
            _context.SaveChanges();

            return(invoiceAccount.InvoiceAccountId);
        }
Beispiel #3
0
 public ActionResult Delete(int id, FormCollection collection)
 {
     try
     {
         var db             = new ApplicationDbContext();
         var invoiceAccount = new InvoiceAccount {
             InvoiceAccountId = id
         };
         db.InvoiceAccounts.Attach(invoiceAccount);
         db.InvoiceAccounts.Remove(invoiceAccount);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
Beispiel #4
0
        public ActionResult Create(FormCollection collection)
        {
            var db = new ApplicationDbContext();

            try
            {
                var invoiceAccount = new InvoiceAccount
                {
                    AccountNumber     = collection["AccountNumber"].ToString(),
                    AccountName       = collection["AccountName"].ToString(),
                    ApplicationUserId = User.Identity.GetUserId(),
                    Confirmed         = "No",
                    InvoiceAccountId  = db.InvoiceAccounts.Count() + 1
                };

                db.InvoiceAccounts.Add(invoiceAccount);
                db.SaveChanges();

                Task.Run(async() =>
                {
                    var userId  = User.Identity.GetUserId();
                    var address = db.Companies.Where(a => a.ApplicationUserId == userId).Select(a => a.Address).ToList <string>();
                    var eth     = new Ethereum(address[0]);
                    var result  = await eth.ExecuteContractStore("h@ck3r00", invoiceAccount.AccountNumber, invoiceAccount.AccountName);

                    if (result == "Account registered")
                    {
                        invoiceAccount.Confirmed = "Yes";
                        db.InvoiceAccounts.Attach(invoiceAccount);
                        var entry = db.Entry(invoiceAccount);
                        entry.Property(e => e.Confirmed).IsModified = true;
                        db.SaveChanges();
                    }
                });

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }