diff --git a/src/main/java/com/pyc/campus/controller/WebController.java b/src/main/java/com/pyc/campus/controller/WebController.java index aa81c1836f2f0a3efb087a9834427547f04a41f0..8399db62da45bfebbb2b3a02509b241f89be6d63 100644 --- a/src/main/java/com/pyc/campus/controller/WebController.java +++ b/src/main/java/com/pyc/campus/controller/WebController.java @@ -109,12 +109,25 @@ public class WebController { SecurityContextImpl securityContext = (SecurityContextImpl)session.getAttribute("SPRING_SECURITY_CONTEXT"); String currentStudentId = ((UserDetails) securityContext.getAuthentication().getPrincipal()).getUsername(); Student s = studentRepository.findNameByStudentID(currentStudentId); - friendListRepository.setOnlineStatus(onlineStatus,currentStudentId); + studentRepository.setOnlineStatus(onlineStatus,currentStudentId); Msg msg = new Msg("","",""); model.addAttribute("msg",msg); model.addAttribute("curUse",s); return "page/UserCenter"; } + @RequestMapping("/toBrowseFriendInfo") + public String toBrowseFriendInfo(Model model, HttpSession session, + @Param("toName")String toName){ + SecurityContextImpl securityContext = (SecurityContextImpl)session.getAttribute("SPRING_SECURITY_CONTEXT"); + String currentStudentId = ((UserDetails) securityContext.getAuthentication().getPrincipal()).getUsername(); + Student s = studentRepository.findNameByStudentID(currentStudentId); + Student stu = studentRepository.findNameByStudentID(toName); + Msg msg = new Msg("","",""); + model.addAttribute("msg",msg); + model.addAttribute("curUse",s); + model.addAttribute("stu",stu); + return "page/BrowseFriendInfo"; + } @RequestMapping("/addFriend") public String addFriend(Model model, HttpSession session, @Param("fromName")String fromName, @@ -137,6 +150,19 @@ public class WebController { model.addAttribute("curUse",s); return "page/AddFriend"; } + @RequestMapping("/toVerifyFriend") + public String toVerifyFriend(Model model, HttpSession session) { + SecurityContextImpl securityContext = (SecurityContextImpl)session.getAttribute("SPRING_SECURITY_CONTEXT"); + String currentStudentId = ((UserDetails) securityContext.getAuthentication().getPrincipal()).getUsername(); + Student s = studentRepository.findNameByStudentID(currentStudentId); + List fl = friendListRepository.toNameIsFalseByToName(currentStudentId); + int len = fl.size(); + Msg msg = new Msg("待验证好友申请数量:", "一共"+len+"个",""); + model.addAttribute("msg",msg); + model.addAttribute("curUse",s); + model.addAttribute("fl",fl); + return "page/VerifyFriend"; + } @RequestMapping("/toChangePWD") public String toChangePWD(Model model,HttpSession session){ SecurityContextImpl securityContext = (SecurityContextImpl)session.getAttribute("SPRING_SECURITY_CONTEXT"); diff --git a/src/main/java/com/pyc/campus/dao/FriendListRepository.java b/src/main/java/com/pyc/campus/dao/FriendListRepository.java index f9ee4bd0c41915e96f9039128baf199f740988b8..547ead6c138fe1b14d0034b73492b07c1158bb83 100644 --- a/src/main/java/com/pyc/campus/dao/FriendListRepository.java +++ b/src/main/java/com/pyc/campus/dao/FriendListRepository.java @@ -23,15 +23,15 @@ public interface FriendListRepository extends JpaRepository { List toNameIsFalseByFromName(String fromName); @Modifying @Transactional + @Query("select fl from FriendList fl where fl.toName=?1 and fl.status=false ") + List toNameIsFalseByToName(String toName); + @Modifying + @Transactional @Query("select fl from FriendList fl where fl.fromName=?1 and fl.status=true ") List findMyFriendsByFromName(String fromName); @Modifying @Transactional @Query("select fl from FriendList fl where fl.toName=?1 and fl.status=true") List findMyFriendsByToName(String toName); - @Modifying - @Transactional - @Query("update FriendList fl set fl.onlineStatus=?1 where fl.fromName=?2") - void setOnlineStatus(Boolean onlineStatus,String fromName); } diff --git a/src/main/java/com/pyc/campus/dao/StudentRepository.java b/src/main/java/com/pyc/campus/dao/StudentRepository.java index 99472b6e4e7a3acc768a19cfa554e88d13327836..84c88b741cb1ef6d0fa8a00afded32cb05f47d99 100644 --- a/src/main/java/com/pyc/campus/dao/StudentRepository.java +++ b/src/main/java/com/pyc/campus/dao/StudentRepository.java @@ -27,6 +27,10 @@ public interface StudentRepository extends JpaRepository { @Transactional @Query("update Student s set s.password=?1 where s.studentID=?2") int saveChangePWD(String password, String studentID); + @Modifying + @Transactional + @Query("update Student s set s.onlineStatus=?1 where s.studentID=?2") + void setOnlineStatus(Boolean onlineStatus, String studentID); // 根据Student ID前缀查询 @Modifying @Transactional diff --git a/src/main/java/com/pyc/campus/domain/FriendList.java b/src/main/java/com/pyc/campus/domain/FriendList.java index 3aa942c38ab3fab5ad4c7f246e9e37f4fb44b36d..fef1259ad23d0e74db266c684c29b6017f7b1eb5 100644 --- a/src/main/java/com/pyc/campus/domain/FriendList.java +++ b/src/main/java/com/pyc/campus/domain/FriendList.java @@ -20,7 +20,6 @@ public class FriendList { private String fromName; //主动添加方 private String toName; private Boolean status; // 标识双方是否通过好友申请 - private Boolean onlineStatus; // 是否在线 public FriendList() { super(); } @@ -28,7 +27,6 @@ public class FriendList { this.fromName=fromName; this.toName=toName; this.status=false; - this.onlineStatus=false; } public void setId(long id) { @@ -47,14 +45,6 @@ public class FriendList { this.status = status; } - public void setOnlineStatus(Boolean onlineStatus) { - this.onlineStatus = onlineStatus; - } - - public Boolean getOnlineStatus() { - return onlineStatus; - } - public long getId() { return id; } diff --git a/src/main/java/com/pyc/campus/domain/Student.java b/src/main/java/com/pyc/campus/domain/Student.java index 1dc091fc2d5cded433da460485f8cc7ad940a0db..5f325e2897c0b93a56b10e952afebaf38621a4f9 100644 --- a/src/main/java/com/pyc/campus/domain/Student.java +++ b/src/main/java/com/pyc/campus/domain/Student.java @@ -22,6 +22,7 @@ public class Student { private String weChat; private String QQ; private int admin; + private boolean onlineStatus; public Student() { super(); @@ -35,12 +36,21 @@ public class Student { this.weChat = weChat; this.QQ = QQ; this.admin = admin; + this.onlineStatus=false; } public void setAdmin(int admin) { this.admin = admin; } + public boolean isOnlineStatus() { + return onlineStatus; + } + + public void setOnlineStatus(boolean onlineStatus) { + this.onlineStatus = onlineStatus; + } + public int getAdmin() { return admin; } diff --git a/src/main/resources/templates/page/AddFriend.html b/src/main/resources/templates/page/AddFriend.html index 9080a83c6b2757ee3e808d0f5b0446dbe4db372a..f4dc97d48b7da5245f9fa5039da4ab94d220e494 100644 --- a/src/main/resources/templates/page/AddFriend.html +++ b/src/main/resources/templates/page/AddFriend.html @@ -98,7 +98,7 @@
  • Home
  • 学习资源
  • 校内新闻
  • -
  • +
  • 网站管理
  • @@ -120,6 +120,7 @@
  • 公共聊天室
  • 添加好友
  • 我的好友
  • +
  • 好友申请验证
  • diff --git a/src/main/resources/templates/page/BrowseFriendInfo.html b/src/main/resources/templates/page/BrowseFriendInfo.html new file mode 100644 index 0000000000000000000000000000000000000000..16a341f933eaba03122e79da5efc497103fab916 --- /dev/null +++ b/src/main/resources/templates/page/BrowseFriendInfo.html @@ -0,0 +1,231 @@ + + + + + 查看好友信息 + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    + +
    +
    +

    +

    +
    + +
    +
    +
    +
    +
    + +
    +
    + +
    +
    顶部
    +
    底部
    +
    + + + + + \ No newline at end of file diff --git a/src/main/resources/templates/page/MyFriend.html b/src/main/resources/templates/page/MyFriend.html index 29680413121e32c9d1e008efc04c71c162587a4a..c25839dda8dd028288ff70d33de402a7569c5b82 100644 --- a/src/main/resources/templates/page/MyFriend.html +++ b/src/main/resources/templates/page/MyFriend.html @@ -4,7 +4,7 @@ lang="en"> - 用户中心 + 我的好友
      diff --git a/src/main/resources/templates/page/UserCenter.html b/src/main/resources/templates/page/UserCenter.html index 83e1c3098e16504c4b6edeb7444720244498aece..49069928a01ff66129c1954d3f2ec52ad1f9688c 100644 --- a/src/main/resources/templates/page/UserCenter.html +++ b/src/main/resources/templates/page/UserCenter.html @@ -119,6 +119,7 @@
    • 公共聊天室
    • 添加好友
    • 我的好友
    • +
    • 好友申请验证
    diff --git a/src/main/resources/templates/page/VerifyFriend.html b/src/main/resources/templates/page/VerifyFriend.html new file mode 100644 index 0000000000000000000000000000000000000000..e92c3119a9b2d238517d4a8e9eb2435a2224adc7 --- /dev/null +++ b/src/main/resources/templates/page/VerifyFriend.html @@ -0,0 +1,205 @@ + + + + + 好友申请验证 + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    + +
    +
    +

    +

    +
    +
    +
    +
    +

    好友申请待验证

    +
    +
    +
      +
    • + +
    • +
    +
    +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    顶部
    +
    底部
    +
    + + + + + \ No newline at end of file