HomeServer/lualib-src/Server-main/AllServer/MultiServer/TaskList.lua

81 lines
1.9 KiB
Lua
Raw Permalink Normal View History

2024-11-20 15:41:09 +08:00
local skynet = require "skynet"
local oo = require "Class"
local log = require "Log"
local redisKeyUrl = require "RedisKeyUrl"
local sqlUrl = require "SqlUrl"
local json =require "json"
local errorInfo = require "ErrorInfo"
local dataType = require "DataType"
local TaskList = oo.class()
function TaskList:Init()
self.allTask = {} --所有任务
end
function TaskList:OnNewDay() --跨天
end
--每5秒调一次
function TaskList:On5SecTimer()
end
--从DB中载入数据
function TaskList:LoadDB()
--加载兑换码列表
local sql = string.format(sqlUrl.selectInfoFromRedeemList , self.Status_StartBonus )
local queryData = skynet.server.db:Query( "game" , sql )
for k, v in pairs(queryData) do
self:NewRedeemListRecord( v.Code , v.Status , v.BonusPlayerCount , json:decode(v.Data))
log.info(string.format("加载兑换码信息 兑换码Code %s " , v.Code ))
end
end
--保存数据到DB
function TaskList:SaveDB()
local sql = nil
local queryData = nil
--保存兑换码列表
for k, v in pairs(self.redeemList) do
sql = string.format(sqlUrl.updateDataToRedeemList , json:encode(v.data) , v.redeemCode )
queryData = skynet.server.db:Query( "game" , sql )
if 1 ~= queryData.affected_rows then
log.info("修改兑换码数据失败不存在该Code" , v.redeemCode )
else
log.info("成功保存兑换码列表" , v.redeemCode )
end
end
end
--新增任务
function TaskList:Add()
local lastTaskId = self:GetID()
end
--删除任务
function TaskList:Remove()
end
--开始任务
function TaskList:Start()
end
--停止任务
function TaskList:Stop()
end
--获取任务ID
function TaskList:GetID()
local redisKey = string.format( redisKeyUrl.MultiServerTaskID )
local lastTaskId = skynet.server.redis:incr(redisKey)
return lastTaskId
end
skynet.server.taskList = TaskList
return TaskList