diff --git a/app/mix/service/utilservice.go b/app/mix/service/utilservice.go index ca5ddce5..c2591f38 100644 --- a/app/mix/service/utilservice.go +++ b/app/mix/service/utilservice.go @@ -1153,7 +1153,7 @@ func (s *Service) utilGetApiMomentVOListByIds(ctx *gin.Context, visitorMid int64 return make([]*momentproto.ApiMomentVO, 0), nil } - list, err := _DefaultMoment.OpListByIds(ctx, &momentproto.OpListByIdsReq{ + rlist, err := _DefaultMoment.OpListByIds(ctx, &momentproto.OpListByIdsReq{ Ids: ids, }) if err != nil { @@ -1161,6 +1161,18 @@ func (s *Service) utilGetApiMomentVOListByIds(ctx *gin.Context, visitorMid int64 return } + // 重新按照ids的顺序排列list + momentMap := make(map[int64]*dbstruct.Moment) + for _, moment := range rlist { + momentMap[util.DerefInt64(moment.Id)] = moment + } + list := make([]*dbstruct.Moment, 0) + for _, id := range ids { + if momentMap[id] != nil { + list = append(list, momentMap[id]) + } + } + // 获取访问者的关注列表 followMap, err := s.utilGetFollowMap(ctx, visitorMid) if err != nil {