🖥️For Developers
Code tích hợp
1. Tích hợp TOKEN
Mã tích hợp Dasu Token với các chức năng như chuyển, nhận và kiểm tra số dư:
from web3 import Web3
# Kết nối với blockchain
web3 = Web3(Web3.HTTPProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID'))
# Địa chỉ hợp đồng thông minh (Dasu Token)
contract_address = '0xYourTokenAddress'
abi = 'Your_ABI_Here'
# Tải hợp đồng thông minh
contract = web3.eth.contract(address=contract_address, abi=abi)
# Chức năng kiểm tra số dư
def get_balance(wallet_address):
balance = contract.functions.balanceOf(wallet_address).call()
return web3.fromWei(balance, 'ether')
# Chức năng chuyển token
def transfer_token(private_key, sender_address, recipient_address, amount):
nonce = web3.eth.getTransactionCount(sender_address)
transaction = contract.functions.transfer(recipient_address, web3.toWei(amount, 'ether')).buildTransaction({
'gas': 2000000,
'gasPrice': web3.toWei('50', 'gwei'),
'nonce': nonce,
'chainId': 1
})
signed_tx = web3.eth.account.signTransaction(transaction, private_key)
tx_hash = web3.eth.sendRawTransaction(signed_tx.rawTransaction)
return web3.toHex(tx_hash)
# Ví dụ: Kiểm tra số dư
wallet = "0xUserWalletAddress"
print(f"Số dư: {get_balance(wallet)} Dasu Token")
2. Ranking Referral
Mã code tính điểm referral (ranking):
# Cấu trúc dữ liệu referral
users = {
'user_1': {'referrals': 10, 'level': 1, 'xp': 100},
'user_2': {'referrals': 20, 'level': 3, 'xp': 500},
}
# Tăng điểm referral
def add_referral(user_id, referred_user_id):
if user_id in users:
users[user_id]['referrals'] += 1
users[user_id]['xp'] += 100 # Mỗi lượt referral tăng 100 XP
update_level(user_id)
print(f"Referral thành công! {user_id} hiện có {users[user_id]['referrals']} referrals.")
else:
print("Người dùng không tồn tại.")
# Cập nhật level dựa trên XP
def update_level(user_id):
xp = users[user_id]['xp']
if xp >= 1000:
users[user_id]['level'] = 5
elif xp >= 500:
users[user_id]['level'] = 3
elif xp >= 200:
users[user_id]['level'] = 2
else:
users[user_id]['level'] = 1
print(f"{user_id} đã lên cấp {users[user_id]['level']}!")
# Ví dụ thêm referral
add_referral('user_1', 'user_3')
3. Cấp độ (Level System)
Hệ thống cấp độ với XP:
# Bảng điều kiện XP cho cấp độ
level_conditions = {
1: 0,
2: 200,
3: 500,
4: 1000,
5: 2000,
6: 5000,
10: 20000
}
# Tính cấp độ dựa trên XP
def get_level(xp):
level = 1
for lvl, required_xp in level_conditions.items():
if xp >= required_xp:
level = lvl
return level
# Tăng XP
def add_xp(user_id, xp_gained):
if user_id in users:
users[user_id]['xp'] += xp_gained
new_level = get_level(users[user_id]['xp'])
if new_level > users[user_id]['level']:
users[user_id]['level'] = new_level
print(f"{user_id} đã lên cấp {new_level}!")
else:
print("Người dùng không tồn tại.")
# Ví dụ thêm XP
add_xp('user_1', 300) # Tăng 300 XP
Tích hợp Frontend
Gọi các API này từ backend qua các REST API endpoint hoặc WebSocket để cập nhật số dư, điểm referral, và cấp độ theo thời gian thực.
Last updated