package campaignnotice import ( "joybuywork/internal/repository/cache" "joybuywork/internal/repository/dbcheck" "joybuywork/internal/service/provider/players" "joybuywork/internal/service/queue/types" "joybuywork/internal/utils/logic" ) type SettlementReward struct { logic.Logic Req *types.CampaignSettlementReward } func (s *SettlementReward) Exec() (err error) { m := s.GetDao().FissionVsVoteSettlement slt, err := m.WithContext(s.Ctx).Where(m.ID.Eq(s.Req.SettlementId)).Take() if err = dbcheck.DbError(err); err != nil { err = s.BE().MysqlError(err) return } if slt == nil { return } user, err := cache.NewFissionUser(s.Ctx, slt.CampaignID).FindById(slt.UserID) if err != nil { err = s.BE().CacheError(err) return } vs, err := players.NewVs(s.Ctx, user) if err != nil { return } _, err = vs.SettlementReward(slt) if err != nil { return } return }