示例#1
0
        /// <summary>
        /// Writes a transaction to the database.
        /// </summary>
        /// <param name="t">the transaction and its items</param>
        public static void LogTransaction(InternalTransactionPostModel t)
        {
            decimal       total   = t.items.Sum(i => decimal.Parse(i.price));
            String        command = String.Format("INSERT INTO Transactions (time, cc, total) VALUES (GETDATE(), '{0}', {1}); SELECT @@IDENTITY AS txid", t.cc, total);
            SqlDataReader reader  = DbAccess.RunReader(command);

            reader.Read();
            int txid = decimal.ToInt32((decimal)reader["txid"]);

            reader.Close();

            for (int i = 0; i < t.items.Count; i++)
            {
                command = String.Format("INSERT INTO TransactionLineItems VALUES ({0}, {1}, '{2}', {3})", txid, i, t.items[i].description, t.items[i].price);
                DbAccess.RunCommand(command);
            }
        }
示例#2
0
 /// <summary>
 /// Logs one transaction that consists of one or more item.
 /// </summary>
 /// <param name="request">the transaction information</param>
 /// <returns>true on success</returns>
 public bool Post(InternalTransactionPostModel request)
 {
     Transaction.LogTransaction(request);
     return(true);
 }