update
This commit is contained in:
@@ -13,8 +13,13 @@ import org.jeecg.common.api.vo.Result;
|
|||||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||||
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
||||||
import org.jeecg.common.system.query.QueryGenerator;
|
import org.jeecg.common.system.query.QueryGenerator;
|
||||||
|
import org.jeecg.common.system.util.JwtUtil;
|
||||||
import org.jeecg.modules.database.entity.DocumentFavorites;
|
import org.jeecg.modules.database.entity.DocumentFavorites;
|
||||||
|
import org.jeecg.modules.database.entity.DocumentLibrary;
|
||||||
import org.jeecg.modules.database.service.IDocumentFavoritesService;
|
import org.jeecg.modules.database.service.IDocumentFavoritesService;
|
||||||
|
import org.jeecg.modules.database.service.IDocumentLibraryService;
|
||||||
|
import org.jeecg.modules.system.entity.SysUser;
|
||||||
|
import org.jeecg.modules.system.service.ISysUserService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
@@ -34,6 +39,11 @@ import java.util.Arrays;
|
|||||||
public class DocumentFavoritesController extends JeecgController<DocumentFavorites, IDocumentFavoritesService> {
|
public class DocumentFavoritesController extends JeecgController<DocumentFavorites, IDocumentFavoritesService> {
|
||||||
@Autowired
|
@Autowired
|
||||||
private IDocumentFavoritesService documentFavoritesService;
|
private IDocumentFavoritesService documentFavoritesService;
|
||||||
|
@Autowired
|
||||||
|
private IDocumentLibraryService documentLibraryService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService userService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
@@ -51,8 +61,12 @@ public class DocumentFavoritesController extends JeecgController<DocumentFavorit
|
|||||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
|
|
||||||
|
String username = JwtUtil.getUserNameByToken(req);
|
||||||
|
SysUser userByName = userService.getUserByName(username);
|
||||||
|
documentFavorites.setUserId(userByName.getId());
|
||||||
QueryWrapper<DocumentFavorites> queryWrapper = QueryGenerator.initQueryWrapper(documentFavorites, req.getParameterMap());
|
QueryWrapper<DocumentFavorites> queryWrapper = QueryGenerator.initQueryWrapper(documentFavorites, req.getParameterMap());
|
||||||
Page<DocumentFavorites> page = new Page<DocumentFavorites>(pageNo, pageSize);
|
Page<DocumentFavorites> page = new Page<>(pageNo, pageSize);
|
||||||
IPage<DocumentFavorites> pageList = documentFavoritesService.page(page, queryWrapper);
|
IPage<DocumentFavorites> pageList = documentFavoritesService.page(page, queryWrapper);
|
||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
@@ -67,7 +81,15 @@ public class DocumentFavoritesController extends JeecgController<DocumentFavorit
|
|||||||
@Operation(summary = "我的收藏文档-添加")
|
@Operation(summary = "我的收藏文档-添加")
|
||||||
@RequiresPermissions("database:document_favorites:add")
|
@RequiresPermissions("database:document_favorites:add")
|
||||||
@PostMapping(value = "/add")
|
@PostMapping(value = "/add")
|
||||||
public Result<String> add(@RequestBody DocumentFavorites documentFavorites) {
|
public Result<String> add(@RequestBody DocumentFavorites documentFavorites, HttpServletRequest request) {
|
||||||
|
String documentId = documentFavorites.getDocumentId();
|
||||||
|
DocumentLibrary documentLibrary = documentLibraryService.getById(documentId);
|
||||||
|
documentFavorites.setDocumentTitle(documentLibrary.getTitle());
|
||||||
|
|
||||||
|
String username = JwtUtil.getUserNameByToken(request);
|
||||||
|
SysUser userByName = userService.getUserByName(username);
|
||||||
|
documentFavorites.setUserId(userByName.getId());
|
||||||
|
|
||||||
documentFavoritesService.save(documentFavorites);
|
documentFavoritesService.save(documentFavorites);
|
||||||
return Result.OK("添加成功!");
|
return Result.OK("添加成功!");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,8 +14,13 @@ import org.jeecg.common.api.vo.Result;
|
|||||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||||
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
||||||
import org.jeecg.common.system.query.QueryGenerator;
|
import org.jeecg.common.system.query.QueryGenerator;
|
||||||
|
import org.jeecg.common.system.util.JwtUtil;
|
||||||
|
import org.jeecg.modules.database.entity.DocumentHome;
|
||||||
import org.jeecg.modules.database.entity.DocumentLibrary;
|
import org.jeecg.modules.database.entity.DocumentLibrary;
|
||||||
|
import org.jeecg.modules.database.service.IDocumentFavoritesService;
|
||||||
import org.jeecg.modules.database.service.IDocumentLibraryService;
|
import org.jeecg.modules.database.service.IDocumentLibraryService;
|
||||||
|
import org.jeecg.modules.system.entity.SysUser;
|
||||||
|
import org.jeecg.modules.system.service.ISysUserService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
@@ -35,7 +40,26 @@ import java.util.List;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class DocumentLibraryController extends JeecgController<DocumentLibrary, IDocumentLibraryService> {
|
public class DocumentLibraryController extends JeecgController<DocumentLibrary, IDocumentLibraryService> {
|
||||||
@Autowired
|
@Autowired
|
||||||
private IDocumentLibraryService documentLibraryService;
|
private IDocumentLibraryService documentLibraryService;
|
||||||
|
@Autowired
|
||||||
|
private IDocumentFavoritesService documentFavoritesService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService userService;
|
||||||
|
|
||||||
|
@Operation(summary = "知识库-首页查询")
|
||||||
|
@GetMapping(value = "/home")
|
||||||
|
public Result<DocumentHome> home(HttpServletRequest request) {
|
||||||
|
|
||||||
|
String username = JwtUtil.getUserNameByToken(request);
|
||||||
|
SysUser userByName = userService.getUserByName(username);
|
||||||
|
|
||||||
|
DocumentHome home = new DocumentHome();
|
||||||
|
home.setFavorite(documentFavoritesService.getTopFavoritesByUserId(userByName.getId()));
|
||||||
|
home.setLatest(documentLibraryService.getLatest());
|
||||||
|
home.setRecently(home.getLatest());
|
||||||
|
return Result.OK(home);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
|
|||||||
@@ -69,6 +69,12 @@ public class DocumentFavorites implements Serializable {
|
|||||||
@Excel(name = "文档ID", width = 15)
|
@Excel(name = "文档ID", width = 15)
|
||||||
@Schema(description = "文档ID")
|
@Schema(description = "文档ID")
|
||||||
private String documentId;
|
private String documentId;
|
||||||
|
/**
|
||||||
|
* 文档名称
|
||||||
|
*/
|
||||||
|
@Excel(name = "文档名称", width = 15)
|
||||||
|
@Schema(description = "文档名称")
|
||||||
|
private String documentTitle;
|
||||||
/**
|
/**
|
||||||
* 用户ID
|
* 用户ID
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* Ant Group
|
||||||
|
* Copyright (c) 2004-2024 All Rights Reserved.
|
||||||
|
*/
|
||||||
|
package org.jeecg.modules.database.entity;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lise
|
||||||
|
* @version DocumentHome.java, v 0.1 2024年11月14日 18:14 lise
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class DocumentHome implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private List<DocumentFavorites> favorite;
|
||||||
|
private List<DocumentLibrary> latest;
|
||||||
|
private List<DocumentLibrary> recently;
|
||||||
|
}
|
||||||
@@ -3,6 +3,8 @@ package org.jeecg.modules.database.service;
|
|||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import org.jeecg.modules.database.entity.DocumentFavorites;
|
import org.jeecg.modules.database.entity.DocumentFavorites;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 我的收藏文档
|
* @Description: 我的收藏文档
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
@@ -10,5 +12,5 @@ import org.jeecg.modules.database.entity.DocumentFavorites;
|
|||||||
* @Version: V1.0
|
* @Version: V1.0
|
||||||
*/
|
*/
|
||||||
public interface IDocumentFavoritesService extends IService<DocumentFavorites> {
|
public interface IDocumentFavoritesService extends IService<DocumentFavorites> {
|
||||||
|
List<DocumentFavorites> getTopFavoritesByUserId(String userId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package org.jeecg.modules.database.service;
|
|||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import org.jeecg.modules.database.entity.DocumentLibrary;
|
import org.jeecg.modules.database.entity.DocumentLibrary;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 知识库
|
* @Description: 知识库
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
@@ -11,4 +13,5 @@ import org.jeecg.modules.database.entity.DocumentLibrary;
|
|||||||
*/
|
*/
|
||||||
public interface IDocumentLibraryService extends IService<DocumentLibrary> {
|
public interface IDocumentLibraryService extends IService<DocumentLibrary> {
|
||||||
|
|
||||||
|
List<DocumentLibrary> getLatest();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,15 @@
|
|||||||
package org.jeecg.modules.database.service.impl;
|
package org.jeecg.modules.database.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.jeecg.modules.database.entity.DocumentFavorites;
|
import org.jeecg.modules.database.entity.DocumentFavorites;
|
||||||
import org.jeecg.modules.database.mapper.DocumentFavoritesMapper;
|
import org.jeecg.modules.database.mapper.DocumentFavoritesMapper;
|
||||||
import org.jeecg.modules.database.service.IDocumentFavoritesService;
|
import org.jeecg.modules.database.service.IDocumentFavoritesService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 我的收藏文档
|
* @Description: 我的收藏文档
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
@@ -13,6 +17,14 @@ import org.springframework.stereotype.Service;
|
|||||||
* @Version: V1.0
|
* @Version: V1.0
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class DocumentFavoritesServiceImpl extends ServiceImpl<DocumentFavoritesMapper, DocumentFavorites> implements IDocumentFavoritesService {
|
public class DocumentFavoritesServiceImpl extends ServiceImpl<DocumentFavoritesMapper, DocumentFavorites>
|
||||||
|
implements IDocumentFavoritesService {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DocumentFavorites> getTopFavoritesByUserId(String userId) {
|
||||||
|
LambdaQueryWrapper<DocumentFavorites> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(DocumentFavorites::getUserId, userId);
|
||||||
|
Page<DocumentFavorites> page = new Page<>(1, 5);
|
||||||
|
return list(page, queryWrapper);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,15 @@
|
|||||||
package org.jeecg.modules.database.service.impl;
|
package org.jeecg.modules.database.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.jeecg.modules.database.entity.DocumentLibrary;
|
import org.jeecg.modules.database.entity.DocumentLibrary;
|
||||||
import org.jeecg.modules.database.mapper.DocumentLibraryMapper;
|
import org.jeecg.modules.database.mapper.DocumentLibraryMapper;
|
||||||
import org.jeecg.modules.database.service.IDocumentLibraryService;
|
import org.jeecg.modules.database.service.IDocumentLibraryService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 知识库
|
* @Description: 知识库
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
@@ -15,4 +19,11 @@ import org.springframework.stereotype.Service;
|
|||||||
@Service
|
@Service
|
||||||
public class DocumentLibraryServiceImpl extends ServiceImpl<DocumentLibraryMapper, DocumentLibrary> implements IDocumentLibraryService {
|
public class DocumentLibraryServiceImpl extends ServiceImpl<DocumentLibraryMapper, DocumentLibrary> implements IDocumentLibraryService {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DocumentLibrary> getLatest() {
|
||||||
|
LambdaQueryWrapper<DocumentLibrary> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.orderByDesc(DocumentLibrary::getCreateTime);
|
||||||
|
Page<DocumentLibrary> page = new Page<>(1, 5);
|
||||||
|
return list(page, queryWrapper);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user