|
|
@@ -1,6 +1,7 @@ |
|
|
|
package models |
|
|
|
|
|
|
|
import ( |
|
|
|
"code.gitea.io/gitea/modules/log" |
|
|
|
"code.gitea.io/gitea/modules/timeutil" |
|
|
|
"strconv" |
|
|
|
"strings" |
|
|
@@ -456,3 +457,22 @@ func GetAdminRewardRecordShowList(opts *RewardRecordListOpts) (RewardRecordShowL |
|
|
|
RewardRecordShowList(r).loadAttribute(true) |
|
|
|
return r, count, nil |
|
|
|
} |
|
|
|
|
|
|
|
func IsWechatOpenIdRewarded(wechatOpenId string) bool { |
|
|
|
actions := make([]Action, 0) |
|
|
|
err := x.Where(" op_type = ? and content = ?", ActionBindWechat, wechatOpenId).Find(&actions) |
|
|
|
|
|
|
|
if err != nil { |
|
|
|
log.Error("IsWechatOpenIdRewarded find actions err.%v", err) |
|
|
|
return true |
|
|
|
} |
|
|
|
if len(actions) == 0 { |
|
|
|
return false |
|
|
|
} |
|
|
|
actionIds := make([]int64, len(actions)) |
|
|
|
for i, v := range actions { |
|
|
|
actionIds[i] = v.ID |
|
|
|
} |
|
|
|
n, _ := x.Where(builder.Eq{"source_type": SourceTypeAccomplishTask}.And(builder.In("source_id", actionIds))).Count(&RewardOperateRecord{}) |
|
|
|
return n > 0 |
|
|
|
} |