protected void Button2_Click(object sender, EventArgs e) { var account = Code.AccountManage.Instance.GetAccount(TextBox1.Text, accountType, transactionType); decimal amount=Convert.ToInt32(TextBox2.Text); int op = Convert.ToInt32(drpOperate.SelectedValue); //创建交易流水 var ts = new CRL.Package.Account.Transaction() { AccountId = account.Id, Amount = amount, OperateType = (CRL.Package.Account.OperateType)op, TradeType = op, Remark = "业务交易:" + amount }; ts.OutOrderId = DateTime.Now.ToShortTimeString();//外部订单号,会用来判断有没有重复提交 string error; //提交交易 bool a = Code.TransactionManage.Instance.SubmitTransaction(out error, true, ts); Response.Write("操作" + a + " " + error); Bind(); }
/// <summary> /// 充值入口 /// </summary> /// <param name="member"></param> /// <param name="amount"></param> /// <param name="remark"></param> /// <param name="transactionType"></param> /// <param name="error"></param> /// <returns></returns> public bool Charge(Member member, decimal amount, string remark, TransactionType transactionType, out string error) { var account = Transaction.AccountManage.Instance.GetAccountId(member.Id, Model.AccountType.会员, transactionType); string orderId = DateTime.Now.ToString("yyMMddhhmmssff"); int tradeType = 10001; var trans = new List <CRL.Package.Account.Transaction>(); var ts = new CRL.Package.Account.Transaction() { AccountId = account, Amount = amount, OperateType = CRL.Package.Account.OperateType.收入, TradeType = tradeType, OutOrderId = orderId, Remark = remark }; trans.Add(ts); bool b = Transaction.TransactionManage.Instance.SubmitTransaction(out error, true, trans.ToArray());//提交流水 return(b); }
/// <summary> /// 扣款 /// </summary> /// <param name="order"></param> /// <param name="error"></param> /// <returns></returns> public bool PayOrder(OrderMain order, out string error) { error = ""; //会员账户 var accountUser = Transaction.AccountManage.Instance.GetAccount(order.UserId, Model.AccountType.会员, Model.TransactionType.现金); var accountUser2 = Transaction.AccountManage.Instance.GetAccount(order.UserId, Model.AccountType.会员, Model.TransactionType.积分); if (accountUser.AvailableBalance < order.TotalAmount) { error = "账户余额不足"; return(false); } int tradeType = 1001; var amount = order.TotalAmount; var orderId = order.OrderId; var remark = "订单支付"; var trans = new List <CRL.Package.Account.Transaction>(); //生成会员交易流水 var ts = new CRL.Package.Account.Transaction() { AccountId = accountUser.Id, Amount = amount, OperateType = CRL.Package.Account.OperateType.支出, TradeType = tradeType, OutOrderId = orderId, Remark = remark }; trans.Add(ts); //赠送积分 var ts3 = new CRL.Package.Account.Transaction() { AccountId = accountUser2.Id, Amount = amount, OperateType = CRL.Package.Account.OperateType.收入, TradeType = tradeType, OutOrderId = orderId, Remark = "赠送积分" }; trans.Add(ts3); bool b = Transaction.TransactionManage.Instance.SubmitTransaction(out error, true, trans.ToArray());//提交流水 if (!b) { return(false); } //order是查询创建的,直接更改值即可更新 order.Status = OrderStatus.单成功; Update(order); return(b); }
protected void Button2_Click(object sender, EventArgs e) { var account = Code.AccountManage.Instance.GetAccount(TextBox1.Text, accountType, transactionType); decimal amount = Convert.ToInt32(TextBox2.Text); int op = Convert.ToInt32(drpOperate.SelectedValue); //创建交易流水 var ts = new CRL.Package.Account.Transaction() { AccountId = account.Id, Amount = amount, OperateType = (CRL.Package.Account.OperateType)op, TradeType = op, Remark = "业务交易:" + amount }; ts.OutOrderId = DateTime.Now.ToShortTimeString();//外部订单号,会用来判断有没有重复提交 string error; //提交交易 bool a = Code.TransactionManage.Instance.SubmitTransaction(out error, true, ts); Response.Write("操作" + a + " " + error); Bind(); }