//会员转账 public void MemCardTransfer() { if (!string.IsNullOrEmpty(Request.Form["TransferMoney"]) && !string.IsNullOrEmpty(Request.Form["MC_CardID"]) && !string.IsNullOrEmpty(Request.Form["OutMC_CardID"])) {// MemCards m = (from i in db.MemCards where i.MC_CardID == Request.Form["MC_CardID"] select i).First(); MemCards out_m = (from i in db.MemCards where i.MC_CardID == Request.Form["OutMC_CardID"] select i).First(); TransferLogs t = new TransferLogs(); Users u = Session["UserInfo"] as Users; t.S_ID = u.S_ID; t.U_ID = u.U_ID; t.TL_FromMC_ID = m.MC_ID; t.TL_FromMC_CardID = m.MC_CardID.ToString(); t.TL_ToMC_ID = out_m.MC_ID; t.TL_ToMC_CardID = out_m.MC_CardID.ToString(); t.TL_TransferMoney = decimal.Parse(Request.Form["TransferMoney"]); t.TL_Remark = (Request.Form["Remark"] ?? ""); t.TL_CreateTime = DateTime.Now; m.MC_Point -= Convert.ToInt32(t.TL_TransferMoney); out_m.MC_Point += Convert.ToInt32(t.TL_TransferMoney); try { db.TransferLogs.InsertOnSubmit(t); db.SubmitChanges(); Response.Write("转账成功!"); } catch (Exception ex) { Response.Write("异常:转账失败,错误消息:" + ex.Message); } } else { Response.Write("异常:参数不全"); } }
// 会员转账页面 public ActionResult MemberTransfer(int RollMC_ID, string RollCardID, float RollMC_TotalMoney, int ShiftMC_ID, string ShiftCardID, decimal TL_TransferMoney, string TL_Remark, DateTime TL_CreateTime) { var jf = Convert.ToInt32(RollMC_TotalMoney); using (TransactionScope transaction = new TransactionScope())//使用事务 { try { //修改转出的会员信息 MemCards mc = mpms.MemCards.FirstOrDefault(x => x.MC_ID == RollMC_ID); mc.MC_Point -= jf; if (mc.MC_Point < 0) { return(Json(false, JsonRequestBehavior.AllowGet)); } mc.MC_TotalMoney += RollMC_TotalMoney; mc.MC_TotalCount += 1; mpms.Entry <MemCards>(mc).State = System.Data.Entity.EntityState.Modified; //在转账记录表插入一条记录 TransferLogs tr = new TransferLogs { S_ID = (Session["Users"] as Users).S_ID, U_ID = (Session["Users"] as Users).U_ID, TL_FromMC_ID = RollMC_ID, TL_FromMC_CardID = RollCardID, TL_ToMC_ID = ShiftMC_ID, TL_ToMC_CardID = ShiftCardID, TL_TransferMoney = TL_TransferMoney, TL_Remark = TL_Remark, TL_CreateTime = TL_CreateTime }; mpms.TransferLogs.Add(tr); //修改转入的会员信息 MemCards zr = mpms.MemCards.FirstOrDefault(x => x.MC_ID == ShiftMC_ID); zr.MC_Point += jf; mpms.Entry <MemCards>(zr).State = System.Data.Entity.EntityState.Modified; transaction.Complete();//放在catch上面,否则不能回滚 } catch { } } return(Json(mpms.SaveChanges() > 2, JsonRequestBehavior.AllowGet)); }
public bool InsertTransferLog(TransferLogs t) { string sql = "P_InsertTransferLogs"; SqlParameter[] para = { new SqlParameter("@S_ID", t.S_ID), new SqlParameter("@U_ID", t.U_ID), new SqlParameter("@TL_FromMC_ID", t.TL_FromMC_ID), new SqlParameter("@TL_FromMC_CardID", t.TL_FromMC_CardID), new SqlParameter("@TL_ToMC_ID", t.TL_ToMC_ID), new SqlParameter("@TL_ToMC_CardID", t.TL_ToMC_CardID), new SqlParameter("@TL_TransferMoney", t.TL_TransferMoney), new SqlParameter("@TL_Remark", t.TL_Remark), new SqlParameter("@TL_CreateTime", t.TL_CreateTime) }; return(DBHelper.ExecuteNonQuery(sql, true, para)); }
protected override void ExecuteQueryCommand() { IsBusy = true; TransferLogs.Clear(); Action action = () => CommunicateManager.Invoke <IAccountService>(p => { var dataPack = p.FindTransferAccountsLog(StartTime, EndTime, (CurrentPageIndex - 1) * PageSize, PageSize, OutTradeNo); TotalCount = dataPack.TotalCount; foreach (var item in dataPack.List) { DispatcherHelper.UIDispatcher.Invoke(new Action <TransferAccountsLogDto>(TransferLogs.Add), item); } }, UIManager.ShowErr); Task.Factory.StartNew(action).ContinueWith(task => { Action setAction = () => { IsBusy = false; }; DispatcherHelper.UIDispatcher.Invoke(setAction); }); }
public bool InsertTransferLog(TransferLogs t) { return(_ITransferLogsDAL.InsertTransferLog(t)); }