diff --git a/models/reward_operate_record.go b/models/reward_operate_record.go
index da1b6a589e..f201be6464 100644
--- a/models/reward_operate_record.go
+++ b/models/reward_operate_record.go
@@ -3,6 +3,7 @@ package models
import (
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/timeutil"
+ "fmt"
"strconv"
"strings"
"xorm.io/builder"
@@ -130,21 +131,27 @@ func (l RewardRecordShowList) loadAction() error {
return nil
}
actionIds := make([]int64, 0)
- actionIdMap := make(map[int64]*RewardOperateRecordShow, 0)
for _, r := range l {
if r.SourceType != SourceTypeAccomplishTask.Name() {
continue
}
i, _ := strconv.ParseInt(r.SourceId, 10, 64)
actionIds = append(actionIds, i)
- actionIdMap[i] = r
}
actions, err := GetActionByIds(actionIds)
if err != nil {
return err
}
+ actionIdMap := make(map[string]*Action, 0)
for _, v := range actions {
- actionIdMap[v.ID].Action = v.ToShow()
+ actionIdMap[fmt.Sprint(v.ID)] = v
+ }
+
+ for i, r := range l {
+ act := actionIdMap[r.SourceId]
+ if act != nil {
+ l[i].Action = act.ToShow()
+ }
}
return nil
}
diff --git a/options/locale/locale_zh-CN.ini b/options/locale/locale_zh-CN.ini
index cdba8c290a..1ddd83d2b7 100755
--- a/options/locale/locale_zh-CN.ini
+++ b/options/locale/locale_zh-CN.ini
@@ -3101,9 +3101,9 @@ task_gputrainjob=`创建了CPU/GPU类型训练任务 %s`
task_c2netgputrainjob=`创建了CPU/GPU类型训练任务 %s`
binded_wechat=绑定微信
-dataset_recommended=`创建的数据集%s被设置为推荐数据集`
-create_image=`提交了镜像%s`
-image_recommended=`提交的镜像%s被设置为推荐镜像`
+dataset_recommended=`创建的数据集 %s 被设置为推荐数据集`
+create_image=`提交了镜像 %s`
+image_recommended=`提交的镜像 %s 被设置为推荐镜像`
update_user_avatar=更新了头像
[tool]
diff --git a/services/task/task.go b/services/task/task.go
index 194a43649d..f9a6d0c0c1 100644
--- a/services/task/task.go
+++ b/services/task/task.go
@@ -61,7 +61,7 @@ func Accomplish(action models.Action) {
actions = append(actions, models.Action{
ID: action.ID,
OpType: models.ActionDatasetRecommended,
- ActUserID: action.UserID,
+ ActUserID: action.ActUserID,
UserID: user.ID,
RepoID: action.RepoID,
Content: action.Content,
@@ -85,7 +85,11 @@ func accomplish(action models.Action, taskType models.TaskType) error {
log.Error("PANIC:%v", combinedErr)
}
}()
+ log.Info("accomplish start. actionId=%d userId= %d", action.ID, action.UserID)
userId := action.UserID
+ if !isUserAvailable(userId) {
+ return nil
+ }
//get task config
config, err := GetTaskConfig(string(taskType))
@@ -127,7 +131,7 @@ func accomplish(action models.Action, taskType models.TaskType) error {
Type: models.GetRewardTypeInstance(config.AwardType),
},
TargetUserId: userId,
- RequestId: fmt.Sprint(action.ID),
+ RequestId: fmt.Sprintf("%d_%d", action.ID, userId),
OperateType: models.OperateTypeIncrease,
RejectPolicy: models.FillUp,
})
@@ -143,3 +147,17 @@ func isLimited(userId int64, config *models.TaskConfig, rejectPolicy models.Limi
return false
}
+
+func isUserAvailable(userId int64) bool {
+ if userId < 1 {
+ return false
+ }
+ user, err := models.GetUserByID(userId)
+ if err != nil || user == nil {
+ return false
+ }
+ if user.IsOrganization() {
+ return false
+ }
+ return true
+}