Exemple #1
0
        public int Execute(User @operatorUser)
        {
            _operatorUser    = @operatorUser ?? _operatorUser;
            _account.Amount += Amount;
            AccountService.Update(_account);
            var systemDealLog = new SystemDealLog(SerialNo, _operatorUser)
            {
                Amount     = Amount,
                DealType   = SystemDealLogTypes.Recharge,
                HasReceipt = HasReceipt,
                Addin      = _account.AccountId.ToString(),
                DealWayId  = this.HowToDeal
            };

            SystemDealLogService.Create(systemDealLog);

            DealLog dealLog = CreateDealLog();

            dealLog.Addin = systemDealLog.SystemDealLogId;
            DealLogService.Create(dealLog);
            if (!string.IsNullOrWhiteSpace(CurrentSite.MessageTemplateOfRecharge))
            {
                if (_owner != null && _accountType.IsSmsRecharge && _owner.IsMobileAvailable)
                {
                    string message = MessageFormator.FormatTickForRecharging(CurrentSite.MessageTemplateOfRecharge,
                                                                             CurrentSite, HasReceipt, Amount,
                                                                             _dealWay != null?_dealWay.DisplayName:"", dealLog, _account, AccountType,
                                                                             _owner, _operatorUser);
                    SmsHelper.Send(_owner.Mobile, message);
                }
            }
            return(ResponseCode.Success);
        }