Ejemplo n.º 1
0
        void CreateSellTransaction(Guid walletID, string privateKeySeller, decimal amountWantToSell)
        {
            BitcoinSecret SellerWallet;

            var getPrivateKeySeller = walletDataAccess.FindWalletByPrivateKey(privateKeySeller);

            if (getPrivateKeySeller != null)
            {
                SellerWallet = new BitcoinSecret(getPrivateKeySeller.PrivateKey);

                // tao 1 trans muon ban
                // so luong amountWantToSell.ToString() phai tru vao object
                // sau do luu tru
                Transaction SellerWalletFunding = new Transaction()
                {
                    Outputs =
                    {
                        new TxOut(amountWantToSell.ToString(), SellerWallet.GetAddress())
                    }
                };

                var subtract = getPrivateKeySeller.BalanceAmount - amountWantToSell;
                getPrivateKeySeller.BalanceAmountTransaction = subtract;

                // tao mot transaction voi order luu vao db -> Done
                Order newOrderForSeller = new Order();
                newOrderForSeller.OrderID      = Guid.NewGuid();
                newOrderForSeller.WalletID     = walletID;
                newOrderForSeller.Amount       = amountWantToSell; // here
                newOrderForSeller.CreatedDate  = DateTime.Now;
                newOrderForSeller.ModifiedDate = DateTime.Now;


                orderDataAccess.CreateOrder(newOrderForSeller);
            }
            else
            {
                throw new Exception("Can't get object");
            }
        }