game2006go/server/backtask/service/spec_transfer.go
aozhiwei c1cfbc5e43 1
2024-06-25 20:21:03 +08:00

150 lines
3.0 KiB
Go

package service
import (
"q5"
"f5"
"jccommon"
"main/constant"
. "main/global"
)
func UpdateSpecTransferStatus(dbIdx int64, status int32) bool {
return true
}
func OpenGoldBullion(accountId string, accountAddress string, netId int32, tokenId string) bool {
GetTaskMgr().LockOpenGodBullion()
defer GetTaskMgr().UnLockOpenGodBullion()
if !AccountIdExistsAndIgnoreError(accountId) {
return false
}
var itemId int32
if !GetNoOpenGoldBullionItemIdByTokenId(tokenId, &itemId) {
return false
}
goldNum := jccommon.GetGoldBullionGoldNum(itemId)
if goldNum <= 0 {
return false
}
{
var dbErr error
nowTime := f5.GetApp().GetRealSeconds()
f5.GetGoStyleDb().Update(
constant.GAME_DB,
"t_gold_bullion",
[][]string {
{"token_id", tokenId},
{"status", q5.ToString(jccommon.GOLD_BULLION_NO_OPEN)},
},
[][]string {
{"status", q5.ToString(jccommon.GOLD_BULLION_OPENED)},
{"open_status", q5.ToString(jccommon.GOLD_BULLION_OPEN_STATUS_SENT)},
{"open_address", accountAddress},
{"open_time", q5.ToString(nowTime)},
{"open_account_id", accountId},
},
func (err error, lastInsertId int64, rowsAffected int64) {
dbErr = err
})
if dbErr != nil {
return false
}
}
{
if !UserAddGold(accountId, goldNum) {
return false
}
}
{
var dbErr error
f5.GetGoStyleDb().Update(
constant.GAME_DB,
"t_gold_bullion",
[][]string {
{"token_id", tokenId},
{"status", q5.ToString(jccommon.GOLD_BULLION_OPEN_STATUS_SENT)},
},
[][]string {
{"open_status", q5.ToString(jccommon.GOLD_BULLION_OPEN_STATUS_RECEIVED)},
},
func (err error, lastInsertId int64, rowsAffected int64) {
dbErr = err
})
if dbErr != nil {
return false
}
}
result := false
return result
}
func ReturnGoldBullion(accountId string, netId int32, tokenId string) bool {
GetTaskMgr().LockOpenGodBullion()
defer GetTaskMgr().UnLockOpenGodBullion()
if !AccountIdExistsAndIgnoreError(accountId) {
return false
}
var itemId int32
if !GetNoOpenGoldBullionItemIdByTokenId(tokenId, &itemId) {
return false
}
goldNum := jccommon.GetGoldBullionGoldNum(itemId)
if goldNum <= 0 {
return false
}
{
var dbErr error
nowTime := f5.GetApp().GetRealSeconds()
f5.GetGoStyleDb().Update(
constant.GAME_DB,
"t_gold_bullion",
[][]string {
{"token_id", tokenId},
},
[][]string {
{"return_status", q5.ToString(1)},
{"returned", q5.ToString(1)},
{"return_time", q5.ToString(nowTime)},
},
func (err error, lastInsertId int64, rowsAffected int64) {
dbErr = err
})
if dbErr != nil {
return false
}
}
{
if !UserAddGold(accountId, goldNum) {
return false
}
}
{
var dbErr error
f5.GetGoStyleDb().Update(
constant.GAME_DB,
"t_gold_bullion",
[][]string {
{"token_id", tokenId},
},
[][]string {
{"return_status", q5.ToString(2)},
},
func (err error, lastInsertId int64, rowsAffected int64) {
dbErr = err
})
if dbErr != nil {
return false
}
}
return true
}