Пример #1
0
        public void SetFreeShipFee(int CustomerSysNo, decimal increment, int freeShipFeeLogType, string freeShipFeeLogMemo)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                int rowsAffected = new FreeShipFeeDac().SetFreeShipFee(CustomerSysNo, increment);
                if (rowsAffected != 1)
                {
                    throw new BizException("客户免运费余额更新失败,可能因为运费余额不足。");
                }

                if (increment != 0)
                {
                    CustomerFreeShipFeeLogInfo oLog = new CustomerFreeShipFeeLogInfo(CustomerSysNo, freeShipFeeLogType, increment, freeShipFeeLogMemo);
                    oLog.LogCheck = oLog.CalcLogCheck();

                    if (1 != new FreeShipFeeDac().Insert(oLog))
                    {
                        throw new BizException("更新免运费余额失败");
                    }
                }

                scope.Complete();
            }
        }
Пример #2
0
        public void CommendCustomerEmailVerified(int CustomerSysNo, string CommendEmail)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                CustomerCommendInfo oInfo = LoadCustomerCommend(CommendEmail);
                if (oInfo == null)
                {
                    throw new BizException("");
                }
                decimal increment    = 5; //推荐的好友通过Email验证赠送5¥运费
                int     rowsAffected = new FreeShipFeeDac().SetFreeShipFee(CustomerSysNo, increment);
                if (rowsAffected != 1)
                {
                    throw new BizException("客户运费余额更新失败,可能因为运费余额不足。");
                }

                UpdateCustomerCommendStatus(CommendEmail, (int)AppEnum.CommendStatus.Registered);  //更新推荐状态

                if (increment != 0)
                {
                    int    freeShipFeeLogType       = (int)AppEnum.FreeShipFeeLogType.CustomerRegister;
                    string freeShipFeeLogMemo       = "推荐客户注册送运费 - " + CommendEmail;
                    CustomerFreeShipFeeLogInfo oLog = new CustomerFreeShipFeeLogInfo(CustomerSysNo, freeShipFeeLogType, increment, freeShipFeeLogMemo);
                    oLog.LogCheck = oLog.CalcLogCheck();

                    if (1 != new FreeShipFeeDac().Insert(oLog))
                    {
                        throw new BizException("增加运费余额失败");
                    }
                }

                scope.Complete();
            }
        }