|
|
@@ -5,15 +5,13 @@ import com.alipay.api.AlipayApiException;
|
|
|
import com.fasterxml.jackson.annotation.JsonView;
|
|
|
import com.huifu.adapay.core.exception.BaseAdaPayException;
|
|
|
import com.izouma.nineth.converter.EncryptConverter;
|
|
|
+import com.izouma.nineth.domain.Follow;
|
|
|
import com.izouma.nineth.domain.IdentityAuth;
|
|
|
import com.izouma.nineth.domain.User;
|
|
|
import com.izouma.nineth.dto.*;
|
|
|
import com.izouma.nineth.enums.AuthorityName;
|
|
|
import com.izouma.nineth.exception.BusinessException;
|
|
|
-import com.izouma.nineth.repo.IdentityAuthRepo;
|
|
|
-import com.izouma.nineth.repo.TokenHistoryRepo;
|
|
|
-import com.izouma.nineth.repo.UserBankCardRepo;
|
|
|
-import com.izouma.nineth.repo.UserRepo;
|
|
|
+import com.izouma.nineth.repo.*;
|
|
|
import com.izouma.nineth.security.Authority;
|
|
|
import com.izouma.nineth.security.JwtTokenUtil;
|
|
|
import com.izouma.nineth.security.JwtUserFactory;
|
|
|
@@ -36,10 +34,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.util.Collections;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
|
|
|
@AllArgsConstructor
|
|
|
@RestController
|
|
|
@@ -56,6 +51,8 @@ public class UserController extends BaseController {
|
|
|
|
|
|
private TokenHistoryRepo tokenHistoryRepo;
|
|
|
|
|
|
+ private FollowRepo followRepo;
|
|
|
+
|
|
|
@PostMapping("/register")
|
|
|
public User register(@RequestParam String username,
|
|
|
@RequestParam String password) {
|
|
|
@@ -434,11 +431,26 @@ public class UserController extends BaseController {
|
|
|
|
|
|
@GetMapping("/topTen")
|
|
|
public List<User> topTen() {
|
|
|
+
|
|
|
LocalDateTime time = LocalDateTime.now().plusDays(-7);
|
|
|
List<Map<String, String>> map = tokenHistoryRepo.top(time);
|
|
|
JSONArray jsonArray = new JSONArray();
|
|
|
jsonArray.addAll(map);
|
|
|
- return jsonArray.toJavaList(User.class);
|
|
|
+ List<User> users = jsonArray.toJavaList(User.class);
|
|
|
+ if (Objects.isNull(SecurityUtils.getAuthenticatedUser())) {
|
|
|
+ return users;
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isEmpty(users)) {
|
|
|
+ return users;
|
|
|
+ }
|
|
|
+ Long id = SecurityUtils.getAuthenticatedUser().getId();
|
|
|
+ users.forEach(user -> {
|
|
|
+ List<Follow> follows = followRepo.findByUserIdAndFollowUserId(id, user.getId());
|
|
|
+ if (CollectionUtils.isNotEmpty(follows)) {
|
|
|
+ user.setFollow(true);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return users;
|
|
|
}
|
|
|
}
|
|
|
|