Add check of ATM Balance

This commit is contained in:
VegaZ
2019-04-04 18:37:48 +02:00
parent 03b12aa004
commit be7b96584a
3 changed files with 66 additions and 28 deletions

View File

@@ -85,34 +85,56 @@ namespace ReallifeGamemode.Server.Managers
{
player.TriggerEvent("SERVER:ShowAtmUi", atmId);
}
[RemoteEvent("CLIENT:CHECK_ATM_BALANCE")]
public void CheckATMBalance(Client client, int site, int inputField1, int inputField2)
[RemoteEvent("CLIENT:ATM_MAN:CHECK_BALANCE")]
public void CheckATMBalance(Client client, int inputField1)
{
var user = client.GetUser();
int nearATM = client.GetData("nearATM");
using (var dbContext = new DatabaseContext())
{
var checkATM = dbContext.ATMs.FirstOrDefault(a => a.Id == nearATM);
if(checkATM.Balance < inputField1)
{
//TODO im CEFBrowser anzeigen client.SendChatMessage("Nicht genügend Geld im Automaten. Maximal Verfügbar: " + checkATM.Balance);
client.TriggerEvent("SERVER:WORLD_INTERACTION:ATM_ERROR", 0, checkATM.Balance);
}
else
{
client.TriggerEvent("SERVER:WORLD_INTERACTION:UPDATE_HANDMONEY", inputField1);
AtmAction(client, 1, inputField1, 0);
}
}
}
[RemoteEvent("CLIENT:ATM_ACTION")]
[RemoteEvent("CLIENT:ATM_MANAGER:ATM_ACTION")]
public void AtmAction(Client client, int site, int inputField1, int inputField2)
{
var user = client.GetUser();
using (var dbContext = new DatabaseContext())
{
int nearATM = client.GetData("nearATM");
//SITE //0 Geld einzahlen //1 Geld auszahlen //2 Geld überweisen
switch (site)
{
//GELD EINZAHLEN in1
case 0:
var updateHandMoneyIn = dbContext.Users.FirstOrDefault(u => u.Id == user.Id);
var updateBankMoneyIn = dbContext.UserBankAccounts.FirstOrDefault(b => b.UserId == user.Id);
var updateATMBalanceIn = dbContext.ATMs.FirstOrDefault(a => a.Id == nearATM);
updateHandMoneyIn.Handmoney -= inputField1;
updateBankMoneyIn.Balance += inputField1;
updateATMBalanceIn.Balance += inputField1;
break;
//GELD AUSZAHLEN in1
case 1:
var updateHandMoneyOut = dbContext.Users.FirstOrDefault(u => u.Id == user.Id);
var updateBankMoneyOut = dbContext.UserBankAccounts.FirstOrDefault(b => b.UserId == user.Id);
var updateATMBalanceOut = dbContext.ATMs.FirstOrDefault(a => a.Id == nearATM);
updateHandMoneyOut.Handmoney += inputField1;
updateBankMoneyOut.Balance -= inputField1;
updateATMBalanceOut.Balance -= inputField1;
break;
//GELD ÜBERWEISEN in1 = Kontonr // in2 = Betrag