81 lines
1.9 KiB
Lua
81 lines
1.9 KiB
Lua
|
|
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
|