Compare commits
3 Commits
377e2b7eeb
...
588abccb72
| Author | SHA1 | Date | |
|---|---|---|---|
| 588abccb72 | |||
| f2d47db3f5 | |||
| 8d6b5bb42e |
@ -117,6 +117,10 @@ func (b *User) GetUserScore(c *gin.Context) {
|
|||||||
// 优质留言
|
// 优质留言
|
||||||
var describe []string
|
var describe []string
|
||||||
for _, score := range recordScores {
|
for _, score := range recordScores {
|
||||||
|
if score.Score == 0 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
d := score.NodeName + ":"
|
d := score.NodeName + ":"
|
||||||
|
|
||||||
if score.Type == 4 {
|
if score.Type == 4 {
|
||||||
|
|||||||
@ -341,51 +341,52 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 检测白名单
|
|
||||||
if projectPlatform.IsWhite == 1 {
|
|
||||||
projectPlatformWhiteService := ProjectPlatformWhiteService{}
|
|
||||||
isWhite, err := projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, projectId, platformId)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 非白名单用户,无需发放积分
|
|
||||||
if isWhite == false {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取需发放积分
|
// 获取需发放积分
|
||||||
reportScore := 0
|
score := 0
|
||||||
appScoreTypeStr := "" // 积分发放原因-app
|
appScoreTypeStr := "" // 积分发放原因-app
|
||||||
superScoreTypeStr := "" // 积分发放原因-超级袋鼠
|
superScoreTypeStr := "" // 积分发放原因-超级袋鼠
|
||||||
nodeName := "" // 获取积分节点名称
|
nodeName := "" // 获取积分节点名称
|
||||||
if scoreType == 1 {
|
if scoreType == 1 {
|
||||||
// 完成阅读
|
// 完成阅读
|
||||||
reportScore = projectPlatform.CompleteRead
|
score = projectPlatform.CompleteRead
|
||||||
appScoreTypeStr = "互动病例-完成阅读"
|
appScoreTypeStr = "互动病例-完成阅读"
|
||||||
superScoreTypeStr = "调研奖励(完成阅读)"
|
superScoreTypeStr = "调研奖励(完成阅读)"
|
||||||
nodeName = "学习"
|
nodeName = "学习"
|
||||||
} else if scoreType == 2 {
|
} else if scoreType == 2 {
|
||||||
// 阅读时间满足
|
// 阅读时间满足
|
||||||
reportScore = projectPlatform.CompleteReadTime
|
score = projectPlatform.CompleteReadTime
|
||||||
appScoreTypeStr = "互动病例-阅读时间满足"
|
appScoreTypeStr = "互动病例-阅读时间满足"
|
||||||
superScoreTypeStr = "调研奖励(阅读质量)"
|
superScoreTypeStr = "调研奖励(阅读质量)"
|
||||||
nodeName = "阅读达标"
|
nodeName = "阅读达标"
|
||||||
} else if scoreType == 3 {
|
} else if scoreType == 3 {
|
||||||
// 优质留言
|
// 优质留言
|
||||||
reportScore = projectPlatform.FirstHighQuality
|
score = projectPlatform.FirstHighQuality
|
||||||
appScoreTypeStr = "互动病例-优质留言"
|
appScoreTypeStr = "互动病例-优质留言"
|
||||||
superScoreTypeStr = "调研奖励(社区贡献)"
|
superScoreTypeStr = "调研奖励(社区贡献)"
|
||||||
nodeName = "优质留言"
|
nodeName = "优质留言"
|
||||||
} else if scoreType == 4 {
|
} else if scoreType == 4 {
|
||||||
// 再次优质留言
|
// 再次优质留言
|
||||||
reportScore = projectPlatform.OnceMoreHighQuality
|
score = projectPlatform.OnceMoreHighQuality
|
||||||
appScoreTypeStr = "互动病例-优质留言"
|
appScoreTypeStr = "互动病例-优质留言"
|
||||||
superScoreTypeStr = "调研奖励(社区贡献)"
|
superScoreTypeStr = "调研奖励(社区贡献)"
|
||||||
nodeName = "优质留言"
|
nodeName = "优质留言"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 检测白名单-无需检测白名单
|
||||||
|
var isWhite bool
|
||||||
|
if projectPlatform.IsWhite == 1 {
|
||||||
|
projectPlatformWhiteService := ProjectPlatformWhiteService{}
|
||||||
|
isWhite, err = projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, projectId, platformId)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 当用户为非白名单时,重置积分数
|
||||||
|
if isWhite == false {
|
||||||
|
score = 0
|
||||||
|
}
|
||||||
|
|
||||||
recordScoreDao := dao.RecordScoreDao{}
|
recordScoreDao := dao.RecordScoreDao{}
|
||||||
|
|
||||||
// 检测是否有相同手机号用户
|
// 检测是否有相同手机号用户
|
||||||
@ -437,7 +438,7 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
UserName: user.UserName,
|
UserName: user.UserName,
|
||||||
Type: scoreType,
|
Type: scoreType,
|
||||||
NodeName: nodeName,
|
NodeName: nodeName,
|
||||||
Score: reportScore,
|
Score: score,
|
||||||
}
|
}
|
||||||
|
|
||||||
recordScore, err = recordScoreDao.AddRecordScore(tx, recordScore)
|
recordScore, err = recordScoreDao.AddRecordScore(tx, recordScore)
|
||||||
@ -457,20 +458,20 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 累计用户领取积分数据
|
// 累计用户领取积分数据
|
||||||
err = caseUserDao.Inc(tx, caseUser.CaseUserId, "total_score", reportScore)
|
err = caseUserDao.Inc(tx, caseUser.CaseUserId, "total_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计平台发放积分数据
|
// 累计平台发放积分数据
|
||||||
err = casePlatformDao.Inc(tx, casePlatform.CasePlatformId, "issued_score", reportScore)
|
err = casePlatformDao.Inc(tx, casePlatform.CasePlatformId, "issued_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计发放积分数据
|
// 累计发放积分数据
|
||||||
caseDao := dao.CaseDao{}
|
caseDao := dao.CaseDao{}
|
||||||
err = caseDao.Inc(tx, caseId, "issued_score", reportScore)
|
err = caseDao.Inc(tx, caseId, "issued_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -481,8 +482,8 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 肝胆相照
|
// 肝胆相照
|
||||||
if platformId == 1 {
|
if platformId == 1 && score > 0 {
|
||||||
_, err = app.ReportUserScore(appScoreTypeStr, user.UserIden, reportScore)
|
_, err = app.ReportUserScore(appScoreTypeStr, user.UserIden, score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user