// 积分合并的DB操作 m1:积分并入的会员卡;m2:积分清空的会员卡; private bool InsertBonusMergerHistory(string m1id, string m2id) { bool res = false; // 积分 b1:是会员M1的积分;b2:是会员M2的积分 int b1,b2; using (UnitOfWork uow = new UnitOfWork(DBSession.DataLayer)) { DateTime updateTime = DateTime.Now; // 积分兑换历史记录 this.bonusExHis1 = new t_Bonus_Exchange_History(uow); this.bonusExHis2 = new t_Bonus_Exchange_History(uow); // 会员信息 t_Member_Info m1 = memberLogic.GetMemberInfoByMemberID(m1id, uow); t_Member_Info m2 = memberLogic.GetMemberInfoByMemberID(m2id, uow); b1 = m1.Bouns; b2 = m2.Bouns; // 会员1信息 this.bonusExHis1.Member_ID = m1; this.bonusExHis1.Member_No = m1.Member_No; this.bonusExHis2.Member_ID = m2; this.bonusExHis2.Member_No = m2.Member_No; // 兑换日期 this.bonusExHis1.Exchange_DateTime = updateTime; this.bonusExHis2.Exchange_DateTime = updateTime; // 合并积分数 this.bonusExHis1.Bonus_Num = -1 * b2; // 增加积分 this.bonusExHis2.Bonus_Num = b2; // 扣除积分 // 合并后剩余积分 m1.Bouns = b1 + b2; m2.Bouns = 0; // 兑换金额 this.bonusExHis1.Money_Num = 0; this.bonusExHis2.Money_Num = 0; // 合并后剩余金额 this.bonusExHis1.Surplus_Money = m1.Balance; this.bonusExHis2.Surplus_Money = m2.Balance; // 兑换类别:积分合并 this.bonusExHis1.Bonus_Type = BonusExchangeType.BonusMerger; this.bonusExHis2.Bonus_Type = BonusExchangeType.BonusMerger; // 备注 this.bonusExHis1.Comment = this.memoRemark1.Text; this.bonusExHis2.Comment = this.memoRemark2.Text; //数据状态-正常 this.bonusExHis1.State = (int)RecordState.Normal; this.bonusExHis2.State = (int)RecordState.Normal; // 更新者 this.bonusExHis1.Operator_No = SysParam.OperatorNo; this.bonusExHis2.Operator_No = SysParam.OperatorNo; m1.Operator_No = SysParam.OperatorNo; m2.Operator_No = SysParam.OperatorNo; // 更新时间 m1.Update_DateTime = updateTime; m2.Update_DateTime = updateTime; try { uow.ExplicitBeginTransaction(); uow.CommitChanges(); hisId = this.bonusExHis1.Exchange_History_ID; uow.ExplicitCommitTransaction(); // 积分合并成功 ShowInfoMsgBox(MessageConst.info_bonusMegerSuccess); res = true; } catch { // 积分合并失败 uow.ExplicitRollbackTransaction(); ShowWarnMsgBox(MessageConst.errMsg_BonusMegerFaild); } } return res; }
private bool InsertBonusExchangeHistory() { bool res = false; using (UnitOfWork uow = new UnitOfWork(DBSession.DataLayer)) { DateTime updateTime = DateTime.Now; // 积分兑换历史记录 this.bonuxExHis = new t_Bonus_Exchange_History(uow); // 会员信息 this.memberInfo = memberLogic.GetMemberInfoByMemberID(this.MemberId, uow); this.bonuxExHis.Member_ID = this.memberInfo; this.bonuxExHis.Member_No = this.memberInfo.Member_No; this.bonuxExHis.Operator_No = SysParam.OperatorNo; // 兑换日期 this.bonuxExHis.Exchange_DateTime = updateTime; // 兑换积分数 int tempBonus = Convert.ToInt32(this.spnBonus.Value); this.bonuxExHis.Bonus_Num = tempBonus; // 兑换后剩余积分 this.bonuxExHis.Surplus_Bonus = this.Bonus - tempBonus; this.memberInfo.Bouns = this.Bonus - tempBonus; // 兑换金额 double tempBalance = tempBonus * SysParam.storeInfo.Bonus_to_Money_Ratio; this.bonuxExHis.Money_Num = tempBalance; this.memberInfo.Balance = tempBalance; // 兑换后剩余金额 this.bonuxExHis.Surplus_Money = this.memberInfo.Balance + tempBalance; this.memberInfo.Balance += tempBalance; // 兑换类别:积分兑换金额 this.bonuxExHis.Bonus_Type = BonusExchangeType.MoneyExchange; // 备注 this.bonuxExHis.Comment = this.memoRemark.Text; //数据状态-正常 this.bonuxExHis.State = (int)RecordState.Normal; // 更新者 this.bonuxExHis.Operator_No = SysParam.OperatorNo; // 更新时间 this.memberInfo.Update_DateTime = updateTime; // 更新者 this.memberInfo.Operator_No = SysParam.OperatorNo; try { uow.ExplicitBeginTransaction(); uow.CommitChanges(); hisId = this.bonuxExHis.Exchange_History_ID; uow.ExplicitCommitTransaction(); // 兑换成功 ShowInfoMsgBox(MessageConst.info_BonusExchangeSucces); res = true; } catch { // 积分兑换失败 uow.ExplicitRollbackTransaction(); ShowWarnMsgBox(MessageConst.errMsg_BonusExchangeFaild); } } return res; }