From b156f5c658e476961c4aa123868980a59017b9ff Mon Sep 17 00:00:00 2001 From: Daniel GP Date: Mon, 15 May 2023 22:26:06 +0200 Subject: [PATCH 1/3] Add GetPlayerByLicense function --- server/functions.lua | 7 +++++++ server/player.lua | 21 +++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/server/functions.lua b/server/functions.lua index 8b9e106f6..3c86fafb8 100644 --- a/server/functions.lua +++ b/server/functions.lua @@ -76,6 +76,13 @@ function QBCore.Functions.GetOfflinePlayerByCitizenId(citizenid) return QBCore.Player.GetOfflinePlayer(citizenid) end +---Get player by license +---@param license string +---@return table? +function QBCore.Functions.GetPlayerByLicense(license) + return QBCore.Player.GetPlayerByLicense(license) +end + ---Get player by phone number ---@param number number ---@return table? diff --git a/server/player.lua b/server/player.lua index 2c454c0d2..a8d18855e 100644 --- a/server/player.lua +++ b/server/player.lua @@ -57,6 +57,27 @@ function QBCore.Player.GetOfflinePlayer(citizenid) return nil end +function QBCore.Player.GetPlayerByLicense(license) + if license then + local PlayerData = MySQL.Sync.prepare('SELECT * FROM players where license = ?', {license}) + if PlayerData then + PlayerData.money = json.decode(PlayerData.money) + PlayerData.job = json.decode(PlayerData.job) + PlayerData.position = json.decode(PlayerData.position) + PlayerData.metadata = json.decode(PlayerData.metadata) + PlayerData.charinfo = json.decode(PlayerData.charinfo) + if PlayerData.gang then + PlayerData.gang = json.decode(PlayerData.gang) + else + PlayerData.gang = {} + end + + return QBCore.Player.CheckPlayerData(nil, PlayerData) + end + end + return nil +end + function QBCore.Player.CheckPlayerData(source, PlayerData) PlayerData = PlayerData or {} local Offline = true From 4b1acec5d11f1bcce8e6e21ce201154665a6b768 Mon Sep 17 00:00:00 2001 From: Daniel GP <96537843+DaniGP17@users.noreply.github.com> Date: Thu, 1 Jun 2023 21:23:00 +0200 Subject: [PATCH 2/3] Update query function --- server/player.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/player.lua b/server/player.lua index a8d18855e..96ec738ce 100644 --- a/server/player.lua +++ b/server/player.lua @@ -59,7 +59,7 @@ end function QBCore.Player.GetPlayerByLicense(license) if license then - local PlayerData = MySQL.Sync.prepare('SELECT * FROM players where license = ?', {license}) + local PlayerData = MySQL.prepare.await('SELECT * FROM players where license = ?', {license}) if PlayerData then PlayerData.money = json.decode(PlayerData.money) PlayerData.job = json.decode(PlayerData.job) From 5998d92a9bd46626efc5acc702c38c1c32cb5d6a Mon Sep 17 00:00:00 2001 From: Daniel GP <96537843+DaniGP17@users.noreply.github.com> Date: Fri, 2 Jun 2023 22:09:52 +0200 Subject: [PATCH 3/3] Fix bad implemention with SQL Function --- server/player.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/player.lua b/server/player.lua index 96ec738ce..cff52e9eb 100644 --- a/server/player.lua +++ b/server/player.lua @@ -38,7 +38,7 @@ end function QBCore.Player.GetOfflinePlayer(citizenid) if citizenid then - local PlayerData = MySQL.Sync.prepare('SELECT * FROM players where citizenid = ?', {citizenid}) + local PlayerData = MySQL.prepare.await('SELECT * FROM players where citizenid = ?', {citizenid}) if PlayerData then PlayerData.money = json.decode(PlayerData.money) PlayerData.job = json.decode(PlayerData.job)