|
@@ -76,6 +76,7 @@ func Task(msg *model.Message) {
|
|
taskMsgMap := map[string]string{}
|
|
taskMsgMap := map[string]string{}
|
|
success_status := 0
|
|
success_status := 0
|
|
end_time := ""
|
|
end_time := ""
|
|
|
|
+ task_id := int64(0)
|
|
taskAllMsg := db.Tidb.SelectBySql(`select a.task_id,a.name,a.status,a.type,b.success_status,b.end_time from integral_task_detail a
|
|
taskAllMsg := db.Tidb.SelectBySql(`select a.task_id,a.name,a.status,a.type,b.success_status,b.end_time from integral_task_detail a
|
|
left join integral_task b on a.task_id =b.id
|
|
left join integral_task b on a.task_id =b.id
|
|
where a.user_id =?`, baseUserId)
|
|
where a.user_id =?`, baseUserId)
|
|
@@ -88,7 +89,7 @@ func Task(msg *model.Message) {
|
|
logger.Info(fmt.Sprintf("用户%s已经完成挑战,默认任务完成%v,不再增加积分。", msg.E_userId, code))
|
|
logger.Info(fmt.Sprintf("用户%s已经完成挑战,默认任务完成%v,不再增加积分。", msg.E_userId, code))
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- task_id := gconv.Int64(v["task_id"])
|
|
|
|
|
|
+ task_id = gconv.Int64(v["task_id"])
|
|
typ := gconv.String(v["type"])
|
|
typ := gconv.String(v["type"])
|
|
status := gconv.String(v["status"])
|
|
status := gconv.String(v["status"])
|
|
taskMsgMap[typ] = fmt.Sprintf("%v_%s", task_id, status)
|
|
taskMsgMap[typ] = fmt.Sprintf("%v_%s", task_id, status)
|
|
@@ -107,17 +108,19 @@ func Task(msg *model.Message) {
|
|
if taskMsgMap[types] == "" {
|
|
if taskMsgMap[types] == "" {
|
|
//如果等于空证明没有初始化
|
|
//如果等于空证明没有初始化
|
|
db.Tidb.ExecTx("创建任务", func(tx *sql.Tx) bool {
|
|
db.Tidb.ExecTx("创建任务", func(tx *sql.Tx) bool {
|
|
- taskId := db.Tidb.InsertByTx(tx, "integral_task", map[string]interface{}{
|
|
|
|
- "user_id": baseUserId,
|
|
|
|
- "position_id": positionId,
|
|
|
|
- "type": common.If(isNew, 2, 1),
|
|
|
|
- "create_time": now,
|
|
|
|
- })
|
|
|
|
|
|
+ if task_id <= 0 {
|
|
|
|
+ task_id = db.Tidb.InsertByTx(tx, "integral_task", map[string]interface{}{
|
|
|
|
+ "user_id": baseUserId,
|
|
|
|
+ "position_id": positionId,
|
|
|
|
+ "type": common.If(isNew, 2, 1),
|
|
|
|
+ "create_time": now,
|
|
|
|
+ })
|
|
|
|
+ }
|
|
//任务明细
|
|
//任务明细
|
|
for _, v := range taskData {
|
|
for _, v := range taskData {
|
|
if v.Type == types {
|
|
if v.Type == types {
|
|
db.Tidb.InsertByTx(tx, "integral_task_detail", map[string]interface{}{
|
|
db.Tidb.InsertByTx(tx, "integral_task_detail", map[string]interface{}{
|
|
- "task_id": taskId,
|
|
|
|
|
|
+ "task_id": task_id,
|
|
"user_id": baseUserId,
|
|
"user_id": baseUserId,
|
|
"position_id": positionId,
|
|
"position_id": positionId,
|
|
"name": v.Name,
|
|
"name": v.Name,
|