private BaseResponse AddMoney(MoneyParameter param, bool minus = false) { var result = new BaseResponse(); var wallet = wr.GetWallet(param.User.UserId); if (wallet == null) { throw new Exception("Пользователь не найден"); } if (!wallet.Accounts.ContainsKey(param.Money.Currency)) { if (!cr.CurrencyExist(param.Money.Currency)) { throw new Exception("Валюта не определена"); } wallet.Accounts[param.Money.Currency] = 0; } if (minus) { wallet.Accounts[param.Money.Currency] -= param.Money.Amount; } else { wallet.Accounts[param.Money.Currency] += param.Money.Amount; } wr.Update(wallet); return(result); }
public BaseResponse PlusMoney(MoneyParameter param) { var result = new BaseResponse(); try { result = AddMoney(param); } catch (Exception e) { result.IsError = true; result.ErrorMessage = e.Message; } return(result); }
public BaseResponse MinusMoney(MoneyParameter parm) { return(ws.MinusMoney(parm)); }