优质留言
This commit is contained in:
parent
54b66ed80a
commit
8fab74e064
@ -271,7 +271,7 @@ func (b *CaseComment) AddCaseCommentHighQuality(c *gin.Context) {
|
|||||||
|
|
||||||
// 发放积分-优质留言-1010 修改
|
// 发放积分-优质留言-1010 修改
|
||||||
userService := service.UserService{}
|
userService := service.UserService{}
|
||||||
err = userService.ReportUserScore(tx, result.ProjectId, caseComment.CaseId, caseComment.PlatformId, scoreType, user)
|
user,err = userService.ReportUserScore(tx, result.ProjectId, caseComment.CaseId, caseComment.PlatformId, scoreType, user)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
tx.Rollback()
|
tx.Rollback()
|
||||||
responses.FailWithMessage(err.Error(), c)
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
|||||||
@ -63,7 +63,7 @@ func (r *UserService) HandleUserImage(wxAvatar string) (ossPath string, err erro
|
|||||||
|
|
||||||
// ReportUserScore 发放积分
|
// ReportUserScore 发放积分
|
||||||
// scoreType : 积分类型(1:完成阅读 2:阅读时间满足 3:优质留言 4:再次优质留言 )
|
// scoreType : 积分类型(1:完成阅读 2:阅读时间满足 3:优质留言 4:再次优质留言 )
|
||||||
func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId int64, scoreType int, user *model.User) (err error) {
|
func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId int64, scoreType int, user *model.User) (reportUser *model.User, err error) {
|
||||||
maps := make(map[string]interface{})
|
maps := make(map[string]interface{})
|
||||||
// // 获取项目关联平台
|
// // 获取项目关联平台
|
||||||
// projectPlatformDao := dao.ProjectPlatformDao{}
|
// projectPlatformDao := dao.ProjectPlatformDao{}
|
||||||
@ -119,7 +119,7 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
maps["mobile_encryption"] = user.MobileEncryption
|
maps["mobile_encryption"] = user.MobileEncryption
|
||||||
users, err := userDao.GetUserList(maps)
|
users, err := userDao.GetUserList(maps)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return user,nil
|
||||||
}
|
}
|
||||||
for _, m := range users {
|
for _, m := range users {
|
||||||
// 检测积分是否已在其他平台发放过
|
// 检测积分是否已在其他平台发放过
|
||||||
@ -147,7 +147,7 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
recordScore, _ = recordScoreDao.GetRecordScore(maps)
|
recordScore, _ = recordScoreDao.GetRecordScore(maps)
|
||||||
if recordScore != nil {
|
if recordScore != nil {
|
||||||
// 积分已发放过
|
// 积分已发放过
|
||||||
return nil
|
return user,nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -159,13 +159,13 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
maps["platform_id"] = platformId
|
maps["platform_id"] = platformId
|
||||||
projectPlatform, err := projectPlatformDao.GetProjectPlatform(maps)
|
projectPlatform, err := projectPlatformDao.GetProjectPlatform(maps)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 检测福利开关
|
// 检测福利开关
|
||||||
if projectPlatform.IsWelfare == 0 {
|
if projectPlatform.IsWelfare == 0 {
|
||||||
// 福利未开
|
// 福利未开
|
||||||
return nil
|
return user,nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取需发放积分
|
// 获取需发放积分
|
||||||
@ -206,7 +206,7 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
projectPlatformWhiteService := ProjectPlatformWhiteService{}
|
projectPlatformWhiteService := ProjectPlatformWhiteService{}
|
||||||
isWhite, err = projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, projectId, platformId)
|
isWhite, err = projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, projectId, platformId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -223,14 +223,14 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
maps["platform_id"] = platformId
|
maps["platform_id"] = platformId
|
||||||
casePlatform, err := casePlatformDao.GetCasePlatform(maps)
|
casePlatform, err := casePlatformDao.GetCasePlatform(maps)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 检测全部积分是否已发放完毕
|
// 检测全部积分是否已发放完毕
|
||||||
remainingScore := projectPlatform.SingleCaseScore - casePlatform.IssuedScore
|
remainingScore := projectPlatform.SingleCaseScore - casePlatform.IssuedScore
|
||||||
if remainingScore <= 0 {
|
if remainingScore <= 0 {
|
||||||
// 积分已发放完毕
|
// 积分已发放完毕
|
||||||
return nil
|
return user,nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增发放记录-每发一次记录一次
|
// 新增发放记录-每发一次记录一次
|
||||||
@ -247,7 +247,7 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
|
|
||||||
recordScore, err = recordScoreDao.AddRecordScore(tx, recordScore)
|
recordScore, err = recordScoreDao.AddRecordScore(tx, recordScore)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取用户参与记录
|
// 获取用户参与记录
|
||||||
@ -258,38 +258,38 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
maps["user_id"] = user.UserId
|
maps["user_id"] = user.UserId
|
||||||
caseUser, _ := caseUserDao.GetCaseUserUseTx(tx, maps)
|
caseUser, _ := caseUserDao.GetCaseUserUseTx(tx, maps)
|
||||||
if caseUser == nil {
|
if caseUser == nil {
|
||||||
return errors.New("用户还未完成该病例阅读,请稍后再试")
|
return user,errors.New("用户还未完成该病例阅读,请稍后再试")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计用户领取积分数据
|
// 累计用户领取积分数据
|
||||||
err = caseUserDao.Inc(tx, caseUser.CaseUserId, "total_score", score)
|
err = caseUserDao.Inc(tx, caseUser.CaseUserId, "total_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计平台发放积分数据
|
// 累计平台发放积分数据
|
||||||
err = casePlatformDao.Inc(tx, casePlatform.CasePlatformId, "issued_score", score)
|
err = casePlatformDao.Inc(tx, casePlatform.CasePlatformId, "issued_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计发放积分数据
|
// 累计发放积分数据
|
||||||
caseDao := dao.CaseDao{}
|
caseDao := dao.CaseDao{}
|
||||||
err = caseDao.Inc(tx, caseId, "issued_score", score)
|
err = caseDao.Inc(tx, caseId, "issued_score", score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 发放积分-
|
// 发放积分-
|
||||||
if platformId != 1 && platformId != 2 {
|
if platformId != 1 && platformId != 2 {
|
||||||
return errors.New("积分发放失败")
|
return user,errors.New("积分发放失败")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 肝胆相照
|
// 肝胆相照
|
||||||
if platformId == 1 && score > 0 {
|
if platformId == 1 && score > 0 {
|
||||||
_, err = app.ReportUserScore(appScoreTypeStr, user.UserIden, score)
|
_, err = app.ReportUserScore(appScoreTypeStr, user.UserIden, score)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -299,16 +299,16 @@ func (r *UserService) ReportUserScore(tx *gorm.DB, projectId, caseId, platformId
|
|||||||
caseDao := dao.CaseDao{}
|
caseDao := dao.CaseDao{}
|
||||||
result, err := caseDao.GetCaseById(caseId)
|
result, err := caseDao.GetCaseById(caseId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = superKangaroo.ReportUserScore(caseId, user.UserIden, superScoreTypeStr, recordScore, result)
|
_, err = superKangaroo.ReportUserScore(caseId, user.UserIden, superScoreTypeStr, recordScore, result)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return user,err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return user,nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// ReportCaseRecord 上报用户参与情况-只上报优质留言
|
// ReportCaseRecord 上报用户参与情况-只上报优质留言
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user