From 38dd24cf52fefa02a2235ea21b2845eb21540d99 Mon Sep 17 00:00:00 2001 From: 陆恒 Date: Mon, 10 Aug 2020 14:18:45 +0800 Subject: [PATCH] 提交 --- src/HttpServer/jsonconf/DailyTask.json | 334 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------- src/HttpServer/jsonconf/RedConfig.json | 2 +- src/HttpServer/logic/constdef.go | 2 +- src/HttpServer/logic/function.go | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- src/HttpServer/logic/logic.go | 4 ++-- 5 files changed, 352 insertions(+), 47 deletions(-) diff --git a/src/HttpServer/jsonconf/DailyTask.json b/src/HttpServer/jsonconf/DailyTask.json index db61894..4b8910c 100644 --- a/src/HttpServer/jsonconf/DailyTask.json +++ b/src/HttpServer/jsonconf/DailyTask.json @@ -2,99 +2,351 @@ { "id": 1, "task": "领取%d%个红包", - "num": 5, - "reward": [8,1], + "num": 2, + "reward": "[8,1]", "type": 5 }, { "id": 2, - "task": "使用%d%次道具", + "task": "领取%d%个红包", "num": 5, - "reward": [8,1], - "type": 4 + "reward": "[8,1]", + "type": 5 }, { "id": 3, - "task": "今日通过%d%关", - "num": 5, - "reward": [8,1], - "type": 3 + "task": "领取%d%个红包", + "num": 7, + "reward": "[8,1]", + "type": 5 }, { "id": 4, - "task": "累计在线%d%分钟", - "num": 5, - "reward": [8,1], - "type": 7 + "task": "领取%d%个红包", + "num": 10, + "reward": "[8,1]", + "type": 5 }, { "id": 5, "task": "领取%d%个红包", "num": 15, - "reward": [8,1], + "reward": "[8,1]", "type": 5 }, { "id": 6, - "task": "使用%d%次道具", - "num": 10, - "reward": [8,1], - "type": 4 + "task": "领取%d%个红包", + "num": 20, + "reward": "[8,1]", + "type": 5 }, { "id": 7, - "task": "今日通过%d%关", - "num": 10, - "reward": [8,1], - "type": 3 + "task": "领取%d%个红包", + "num": 25, + "reward": "[8,1]", + "type": 5 }, { "id": 8, - "task": "累计在线%d%分钟", - "num": 15, - "reward": [8,1], - "type": 7 + "task": "领取%d%个红包", + "num": 30, + "reward": "[8,1]", + "type": 5 }, { "id": 9, "task": "领取%d%个红包", - "num": 30, - "reward": [8,1], + "num": 35, + "reward": "[8,1]", "type": 5 }, { "id": 10, - "task": "使用%d%次道具", - "num": 20, - "reward": [8,1], - "type": 4 + "task": "领取%d%个红包", + "num": 40, + "reward": "[8,1]", + "type": 5 }, { "id": 11, + "task": "领取%d%个红包", + "num": 45, + "reward": "[8,1]", + "type": 5 + }, + { + "id": 12, + "task": "领取%d%个红包", + "num": 50, + "reward": "[8,1]", + "type": 5 + }, + { + "id": 13, + "task": "今日通过%d%关", + "num": 2, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 14, + "task": "今日通过%d%关", + "num": 4, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 15, + "task": "今日通过%d%关", + "num": 6, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 16, + "task": "今日通过%d%关", + "num": 8, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 17, + "task": "今日通过%d%关", + "num": 10, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 18, "task": "今日通过%d%关", "num": 15, - "reward": [8,1], + "reward": "[8,1]", "type": 3 }, { - "id": 12, + "id": 19, + "task": "今日通过%d%关", + "num": 20, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 20, + "task": "今日通过%d%关", + "num": 25, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 21, + "task": "今日通过%d%关", + "num": 30, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 22, + "task": "今日通过%d%关", + "num": 40, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 23, + "task": "今日通过%d%关", + "num": 50, + "reward": "[8,1]", + "type": 3 + }, + { + "id": 24, + "task": "使用%d%次道具", + "num": 2, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 25, + "task": "使用%d%次道具", + "num": 4, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 26, + "task": "使用%d%次道具", + "num": 6, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 27, + "task": "使用%d%次道具", + "num": 8, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 28, + "task": "使用%d%次道具", + "num": 10, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 29, + "task": "使用%d%次道具", + "num": 15, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 30, + "task": "使用%d%次道具", + "num": 20, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 31, + "task": "使用%d%次道具", + "num": 25, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 32, + "task": "使用%d%次道具", + "num": 30, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 33, + "task": "使用%d%次道具", + "num": 40, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 34, + "task": "使用%d%次道具", + "num": 50, + "reward": "[8,1]", + "type": 4 + }, + { + "id": 35, + "task": "累计在线%d%分钟", + "num": 5, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 36, + "task": "累计在线%d%分钟", + "num": 10, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 37, + "task": "累计在线%d%分钟", + "num": 15, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 38, + "task": "累计在线%d%分钟", + "num": 20, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 39, + "task": "累计在线%d%分钟", + "num": 25, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 40, "task": "累计在线%d%分钟", "num": 30, - "reward": [8,1], + "reward": "[8,1]", "type": 7 }, { - "id": 13, - "task": "领取%d%个红包", + "id": 41, + "task": "累计在线%d%分钟", + "num": 35, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 42, + "task": "累计在线%d%分钟", + "num": 40, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 43, + "task": "累计在线%d%分钟", + "num": 45, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 44, + "task": "累计在线%d%分钟", "num": 50, - "reward": [8,1], - "type": 5 + "reward": "[8,1]", + "type": 7 }, { - "id": 14, + "id": 45, + "task": "累计在线%d%分钟", + "num": 55, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 46, + "task": "累计在线%d%分钟", + "num": 60, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 47, + "task": "累计在线%d%分钟", + "num": 70, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 48, + "task": "累计在线%d%分钟", + "num": 80, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 49, + "task": "累计在线%d%分钟", + "num": 90, + "reward": "[8,1]", + "type": 7 + }, + { + "id": 50, "task": "每日登录", "num": 1, - "reward": [8,1], + "reward": "[8,1]", "type": 1 } ] \ No newline at end of file diff --git a/src/HttpServer/jsonconf/RedConfig.json b/src/HttpServer/jsonconf/RedConfig.json index 4c29033..005177f 100644 --- a/src/HttpServer/jsonconf/RedConfig.json +++ b/src/HttpServer/jsonconf/RedConfig.json @@ -1,7 +1,7 @@ [ { "id": 1, - "cash": 3188 + "cash": 500 }, { "id": 2, diff --git a/src/HttpServer/logic/constdef.go b/src/HttpServer/logic/constdef.go index 2ca3a0e..d578665 100644 --- a/src/HttpServer/logic/constdef.go +++ b/src/HttpServer/logic/constdef.go @@ -61,7 +61,7 @@ const ( const ( WATCH_ADD_DAY_LIMIT = 50 //当天获取红包次数限制 - FREE_REDBAG_NUM = 3 //玩家免费红包次数 + FREE_REDBAG_NUM = 1 //玩家免费红包次数 READGOLDMULTI = 700 //阅读量到金币转化倍数 SDKOPGOLD_TYPEWE = 302 //微转发金币类型 SHAKELIMIT = 20 //摇一摇限制次数 diff --git a/src/HttpServer/logic/function.go b/src/HttpServer/logic/function.go index 2e06bd0..832a4d1 100644 --- a/src/HttpServer/logic/function.go +++ b/src/HttpServer/logic/function.go @@ -92,7 +92,10 @@ func GetAchieveConfig(taskid int) *jsonconf.AchieveDesc { return nil } -func (uinfo *UserData) CalcTaskList(list *TaskList, uniqueid string) { +func (uinfo *UserData) CalcTaskList(list *TaskList, uniqueid string) *TaskList { + + newlist := new(TaskList) + curtype := -1 //记录当前类型 for k, val := range list.Taskdata { //未完成的才做判断 @@ -154,11 +157,61 @@ func (uinfo *UserData) CalcTaskList(list *TaskList, uniqueid string) { } + for k, val := range list.Taskdata { + + cfg := GetTaskConfig(val.Taskid) + if cfg == nil { + logger.Error("CalcTaskList GetTaskConfig failed id=%v", val.Taskid) + continue + } + + if val.Taskstatus == 2 { + //未领取已完成 只需要加入第一种 + if curtype == cfg.TaskType { + continue + } else { + //将类型加入返回列表 + newlist.Taskdata = append(newlist.Taskdata, list.Taskdata[k]) + curtype = cfg.TaskType + } + } else if val.Taskstatus == 1 { + //未完成 返回第一个 + if curtype == cfg.TaskType { + continue + } else { + //将类型加入返回列表 + newlist.Taskdata = append(newlist.Taskdata, list.Taskdata[k]) + curtype = cfg.TaskType + } + } else { + //已领取 需要判断一下是否最后一项 + if k != len(list.Taskdata)-1 { + //不是最后一条数据 + nextcfg := GetTaskConfig(list.Taskdata[k+1].Taskid) + if nextcfg != nil { + if nextcfg.TaskType != cfg.TaskType { + //下面一天不是此类型了 + newlist.Taskdata = append(newlist.Taskdata, list.Taskdata[k]) + curtype = cfg.TaskType + } + } + + } else { + //最后一条 加入 + newlist.Taskdata = append(newlist.Taskdata, list.Taskdata[k]) + curtype = cfg.TaskType + } + } + + } + //需要保存到redis SaveTaskInfo(uniqueid, 1, list) //排序 - sort.Sort(list) + sort.Sort(newlist) + + return newlist } func (uinfo *UserData) CalcAchieveProgress(ttype int) int { diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index a0150b7..720b955 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -746,11 +746,11 @@ func HandlerQuerytaskinfo(w http.ResponseWriter, data string, uuid int) { } if rdata.Tasktype == 1 { - uinfo.CalcTaskList(tasklist, uniqueuuid) + tasklist = uinfo.CalcTaskList(tasklist, uniqueuuid) } else if rdata.Tasktype == 2 { tasklist = uinfo.CalcAchieveList(tasklist, uniqueuuid) } else { - uinfo.CalcTaskList(tasklist, uniqueuuid) + tasklist = uinfo.CalcTaskList(tasklist, uniqueuuid) } if tasklist == nil { -- libgit2 0.21.0