提交 30c18aa6 编写于 作者: 喷火的神灵's avatar 喷火的神灵 🎱

粉丝关注功能实现

上级 78caf0e8
......@@ -156,7 +156,7 @@ export function categoryVideo(params) {
export function getNotice(params) {
return request({
method: "get",
url: "/user/notice/list",
url: "/social/notice/list",
data: params
})
}
......@@ -166,7 +166,7 @@ export function getNotice(params) {
export function postNoticeDelete(params) {
return request({
method: "post",
url: "/admin/notice/notifyDelete",
url: "/social/notice/notifyDelete",
data: params
})
}
......@@ -219,14 +219,16 @@ export function deleteCollection(params) {
//删除粉丝
export function deletefan(params) {
return deletefan({
method: 'post',
url: '/user/fans/{id}/deletefan',
method: 'get',
// url: '/user/fans/{id}/deletefan',
url: '/user/fans/{followID}/deletefan',
data: params
})
}
//加载粉丝列表
//加载粉丝列表-
export function fanlist(params) {
return fanlist({
method: 'get',
......@@ -236,26 +238,27 @@ export function fanlist(params) {
}
//添加粉丝
//添加粉丝-
export function addfan(params) {
return addfan({
method: 'get',
url: '/user/fans/{userID}/listfan',
url: '/user/follow/{userID}/addfollow',
data: params
})
}
//取消关注
//取消关注-
export function followDelete(params) {
return request({
method: 'post',
url: '/user/fans/{followeID}/deletefan',
method: 'get',
// url: '/user/fans/{followeID}/deletefan',
url: '/user/follow/{followID}/deletefollow',
data: params
})
}
//加载关注列表
//加载关注列表-
export function followList(params) {
return request({
method: 'post',
......
......@@ -136,16 +136,27 @@ export default {
// }
},
created() {
getNotice().then(res=>{
if(res.success){
// alert("成功")
this.tableData =res.data;
}else {
alert(res.message)
}
})
getNotice().then (res => {
if (res.success){
this.$notify.error({
title:'错误',
position: 'bottom-right'
})
}
})
// getNotice().then(res=>{
// if(res.success){
// // alert("成功")
// this.tableData =res.data;
// }else {
// alert(res.message)
// }
//
// })
},
......
......@@ -13,11 +13,11 @@ import lombok.Data;
* @param <T>
*/
@Data
public class RestBean<T> {
public class RestBean<T> { //list<Object>
private Integer status;
private boolean success;
private String message;
private T data;
private T data; //list<>OBjet
private RestBean(Integer status, String message,boolean success, T data) {
this.status = status;
......
......@@ -9,7 +9,11 @@ import org.springframework.context.annotation.Configuration;
{
"cn.tedu.youbiliprojectbackend.modules.user.register.dao.mapper",
"cn.tedu.youbiliprojectbackend.modules.user.account.dao.mapper",
"cn.tedu.youbiliprojectbackend.modules.user.favorite.dao.persist.mapper"
"cn.tedu.youbiliprojectbackend.modules.user.favorite.dao.persist.mapper",
"cn.tedu.youbiliprojectbackend.modules.orders.dao.mapper",
"cn.tedu.youbiliprojectbackend.modules.recommend.dao.persist.mapper",
"cn.tedu.youbiliprojectbackend.modules.user.follow.dao.persist.mapper",
"cn.tedu.youbiliprojectbackend.modules.user.fan.dao.persist.mapper",
})
public class MybatisConfig {
}
package cn.tedu.youbiliprojectbackend.modules.recommend.dao.persist.mapper;
import cn.tedu.youbiliprojectbackend.modules.recommend.pojo.sum.videoSum;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
@Repository
public interface thermaMapper extends BaseMapper<videoSum> {
videoSum selectByID(Long videoID);
}
package cn.tedu.youbiliprojectbackend.modules.recommend.pojo.sum;
import lombok.Data;
import java.io.Serializable;
/**
* 用于查询计算 计算字段值
*/
@Data
public class videoSum implements Serializable {
private Integer viewCount;
private Integer likeCount;
private Integer favoriteCount;
private Integer dislikeCount;
private Integer barrageCount;
private Integer commentCount;
}
......@@ -7,9 +7,12 @@ package cn.tedu.youbiliprojectbackend.modules.recommend.score;
public class ThermalValue {
public Integer Strom(){
return 1;
/**
* 通过计算每个视频的 点赞数,收藏数,观看数,弹幕数,评论数 ; 点踩数 ; 以及每个视频上传时间的衰减因子来获取每个视频的热力值;
*
* @return
*/
public Double Strom(){
return 1.0;
}
}
package cn.tedu.youbiliprojectbackend.modules.user.follow.controller;
package cn.tedu.youbiliprojectbackend.modules.social;
import cn.tedu.youbiliprojectbackend.common.security.CurrentPrincipal;
import cn.tedu.youbiliprojectbackend.common.web.response.RestBean;
......@@ -8,28 +9,15 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
@RequestMapping("/user/follow")
public class FollowController {
FollowController(){
log.debug("创建控制器类: FollowController ");
}
/**
* 加载当前登录用户的关注列表
* @param principal 当事人ID
* @return 返回当前用户关注的人
*/
@GetMapping("/followlist")
public RestBean<Object> followList(@AuthenticationPrincipal CurrentPrincipal principal){
log.debug("开始处理请求 followlist");
@RequestMapping("/social/notice")
@Slf4j
public class controller {
return null;
@GetMapping("list")
public RestBean<Object> getNoticeList(@AuthenticationPrincipal CurrentPrincipal principal){
log.debug("开始处理获取通知列表请求 : {}" ,principal.getUsername());
return RestBean.success();
}
}
### 社交互动模块
\ No newline at end of file
### 社交互动模块
### 动态
### 通知
package cn.tedu.youbiliprojectbackend.modules.user.follow.pojo.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class FollowListVO implements Serializable {
private Long followID;
private Long userID;
private String nickname;
private Integer fansCount;
private Integer followCount;
private String imgUrl;
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.tedu.youbiliprojectbackend.modules.recommend.dao.persist.mapper.thermaMapper">
<select id="selectByID" resultType="cn.tedu.youbiliprojectbackend.modules.recommend.pojo.sum.videoSum">
SELECT viewCount,
likeCount,
favoriteCount,
dislikeCount,
barrageCount,
commentCount
FROM favorite
WHERE videoID=#{videoID}
</select>
</mapper>
\ No newline at end of file
package cn.tedu.youbiliprojectbackend.thermalValue;
import cn.tedu.youbiliprojectbackend.modules.recommend.dao.persist.mapper.thermaMapper;
import cn.tedu.youbiliprojectbackend.modules.recommend.pojo.sum.videoSum;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class Strom {
Double ViewX;
Double LikeX;
Double FavoriteX;
Double DisLikeX;
Double BarrageX;
Double CommentX;
@Autowired
thermaMapper thermaMapper;
@Test
Double View(){
videoSum videoSum = thermaMapper.selectByID(1L);
Double View = ViewX * videoSum.getViewCount();
Double Like = LikeX * videoSum.getLikeCount();
Double favorite = FavoriteX * videoSum.getFavoriteCount();
Double dislike = DisLikeX * videoSum.getDislikeCount();
Double barrage = BarrageX * videoSum.getBarrageCount();
Double comment = CommentX * videoSum.getCommentCount();
Double Thred = View + Like + favorite + dislike + barrage + comment;
return Thred;
}
@Test
void apper(){
System.out.println(thermaMapper.selectByID(1L));
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册