Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Rehber GCPHONE IBAN ENTEGRE

Admin

Yönetici
moderatör
Katılım
19 Haziran 2021
Mesajlar
214
Öncelikle gcphone > server > bank.lua'yı açıp birkaç editleme ve ekleme çıkarma yapacağız.

gcPhone:transfer eventini şu şekilde değiştiriyoruz;


Kod:
RegisterServerEvent("gcPhone:transfer")
AddEventHandler("gcPhone:transfer", function(a, amount)
    _source = source
    local r5k.senderIBAN = r5k.GetIBAN(_source)
 
    a = tostring(a)

    duzenlenmisAmount = comma_value(amount)

    local gerceklesti = r5k.BankParaGonder(_source, a, tonumber(amount))
    if gerceklesti then
        local forTargetKimden = r5k.GetNameFromIBAN(r5k.senderIBAN)
        local forSenderKimden = r5k.GetNameFromIBAN(a)
        Citizen.Wait(500)
        local r5k.Saat = r5k.SaatKac()
    end
end)

16. satır'a şu kodları ekleyebilirsiniz, bu kodlar betterbank'a son işlem eklemeye yarar.



Kod:
TriggerEvent('BetterBank:SonIslemEkle', a, 'gelenTransfer', tostring(duzenlenmisAmount), r5k.Saat, forTargetKimden, tonumber(amount))
TriggerEvent('BetterBank:SonIslemEkle', r5k.senderIBAN, 'gidenTransfer', tostring(duzenlenmisAmount), r5k.Saat, forSenderKimden, tonumber(amount))

Ardından aşağıda boş olan yerlere şu kodları ekliyoruz;


Kod:
function r5k.GetIdentifierFromIBAN(IBAN)
    local result = MySQL.Sync.fetchAll('SELECT identifier FROM users WHERE IBAN = @IBAN', {
        ['@IBAN'] = IBAN,
    })
    Citizen.Wait(100)
    return result[1].identifier
end

function r5k.BankParaGonder(source, IBAN, miktar)

    local _source = source
    local xPlayer = ESX.GetPlayerFromId(_source)
    local sourceBalance = xPlayer.getAccount('bank').money
    local TIBAN = IBAN

    local targetIdentifier = r5k.GetIdentifierFromIBAN(IBAN)
    local targetID = ESX.GetPlayerFromIdentifier(targetIdentifier)

    if miktar < sourceBalance then
        if targetID == nil then
            local result = MySQL.Sync.fetchAll('SELECT accounts FROM users WHERE IBAN = @TIBAN', {
                ['@TIBAN'] = TIBAN,
            })

            local sqlAccountTable = json.decode(result[1].accounts)
            if (sqlAccountTable["bank"] ~= nil) then
                xPlayer.removeAccountMoney('bank', tonumber(miktar))
                sqlAccountTable["bank"] = sqlAccountTable["bank"] + miktar
                sqlAccountTable = json.encode(sqlAccountTable)
                MySQL.Async.insert("UPDATE users SET accounts = @yeniPara WHERE IBAN = @TIBAN", {
                    ['@TIBAN'] = TIBAN,
                    ['@yeniPara'] = sqlAccountTable
                })
                return true
            end
        else
            xPlayer.removeAccountMoney('bank', tonumber(miktar))
            targetID.addAccountMoney('bank', tonumber(miktar))
            return true
        end
    else
        return false
    end
end

function r5k.GetIBAN(source, id)
    local xPlayer = getPlayerID(source)
    print(xPlayer)

    local result = MySQL.Sync.fetchAll('SELECT IBAN FROM users WHERE identifier = @identifier', {
        ['@identifier'] = xPlayer
    })

    print(result[1].IBAN)

    local x = result[1].IBAN
    Citizen.Wait(100)
    return x
end

function myfirstname(a, b, c)
    MySQL.Async.fetchAll("SELECT firstname, phone_number FROM users WHERE users.firstname = @firstname AND users.phone_number = @phone_number", {["@phone_number"] = a, ["@firstname"] = b}, function(d)
        c(d[1])
    end)
end

function r5k.GetNameFromIBAN(IBAN)
    local result = MySQL.Sync.fetchAll('SELECT firstname, lastname FROM users WHERE IBAN = @IBAN', {
        ['@IBAN'] = IBAN
    })
    local nameAndIBAN = result[1].firstname .." " ..result[1].lastname .." - " ..IBAN
    return nameAndIBAN
end

function r5k.SaatKac()
    local date_table = os.date("*t")
    local hour, minute = date_table.hour, date_table.min
    return (os.date("%d-%m-%Y ") ..hour ..":" ..minute)
end

function comma_value(n)
    local left,num,right = string.match(n,'^([^%d]*%d)(%d*)(.-)$')
    return "$" ..(left..(num:reverse():gsub('(%d%d%d)','%1.'):reverse())..right) ..",00"
end
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Izgara yada normal mod

Temanızda forum listeleme yapısını ızgara yapısında yada normal yapıda listemek için kullanabilirsiniz.

Forum arkaplan resimleri

Forum arkaplanlarına eklenmiş olan resimlerinin kontrolü senin elinde, resimleri aç/kapat

Sidebar blogunu kapat/aç

Forumun kalabalığında kurtulmak için sidebar (kenar çubuğunu) açıp/kapatarak gereksiz kalabalıklardan kurtula bilirsiniz.

Yapışkan sidebar kapat/aç

Yapışkan sidebar ile sidebar alanını daha hızlı ve verimli kullanabilirsiniz.

Radius aç/kapat

Blok köşelerinde bulunan kıvrımları kapat/aç bu şekilde tarzını yansıt.

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Geri