feat(file): 添加文件浏览次数统计功能
- 在文件列表表格中新增浏览次数列显示
- 在文件详情描述中添加浏览次数信息展示
- 实现文件浏览次数自增接口 incrementView
- 前端点击文件预览时自动调用浏览次数增加功能
- 后端添加 SysFile 实体类 viewCount 字段
- 实现数据库表字段映射和更新逻辑
- 添加控制器接口 /incrementView/{fileId} 处理请求
This commit is contained in:
@@ -60,6 +60,10 @@ public class SysFile extends BaseEntity {
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
/**
|
||||
* 浏览次数
|
||||
*/
|
||||
private Long viewCount;
|
||||
/**
|
||||
* 删除标识 0正常 2删除
|
||||
*/
|
||||
|
||||
@@ -67,5 +67,9 @@ public class SysFileBo extends BaseEntity {
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 浏览次数
|
||||
*/
|
||||
private Long viewCount;
|
||||
|
||||
}
|
||||
|
||||
@@ -80,5 +80,10 @@ public class SysFileVo extends BaseEntity {
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 浏览次数
|
||||
*/
|
||||
@ExcelProperty(value = "浏览次数")
|
||||
private Long viewCount;
|
||||
|
||||
}
|
||||
|
||||
@@ -51,4 +51,9 @@ public interface ISysFileService {
|
||||
* 查询与我相关的文件(私有文件且当前用户在可见用户列表中)
|
||||
*/
|
||||
TableDataInfo<SysFileVo> queryPageListRelatedToMe(SysFileBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 文件浏览次数 +1
|
||||
*/
|
||||
void incrementViewCount(Long fileId);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.klp.common.helper.LoginHelper;
|
||||
import com.klp.common.utils.StringUtils;
|
||||
@@ -124,6 +125,16 @@ public class SysFileServiceImpl implements ISysFileService {
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文件浏览次数 +1
|
||||
*/
|
||||
@Override
|
||||
public void incrementViewCount(Long fileId) {
|
||||
baseMapper.update(null, Wrappers.<SysFile>lambdaUpdate()
|
||||
.setSql("view_count = view_count + 1")
|
||||
.eq(SysFile::getFileId, fileId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user