inleft
2022-02-21 504927efd3bd35f12714cd6367e6f2a9c5d2d1dc
commit | author | age
9bcb19 1 /*
I 2 Copyright [2020] [https://www.xiaonuo.vip]
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8   http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16 Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
17
18 1.请不要删除和修改根目录下的LICENSE文件。
19 2.请不要删除和修改Snowy源码头部的版权声明。
20 3.请保留源码和相关描述文件的项目出处,作者声明等。
21 4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
22 5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
23 6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
24  */
25 package vip.xiaonuo.sys.modular.file.service;
26
27 import com.baomidou.mybatisplus.extension.service.IService;
28 import org.springframework.web.multipart.MultipartFile;
29 import vip.xiaonuo.core.pojo.page.PageResult;
30 import vip.xiaonuo.sys.modular.file.entity.SysFileInfo;
31 import vip.xiaonuo.sys.modular.file.param.SysFileInfoParam;
32 import vip.xiaonuo.sys.modular.file.result.SysFileInfoResult;
33 import vip.xiaonuo.sys.modular.file.result.SysOnlineFileInfoResult;
34
35 import javax.servlet.http.HttpServletResponse;
36 import java.util.List;
37
38 /**
39  * 文件信息表 服务类
40  *
41  * @author yubaoshan
42  * @date 2020/6/7 22:15
43  */
44 public interface SysFileInfoService extends IService<SysFileInfo> {
45
46     /**
47      * 分页查询文件信息表
48      *
49      * @param sysFileInfoParam 查询参数
50      * @return 查询分页结果
51      * @author yubaoshan
52      * @date 2020/6/7 22:15
53      */
54     PageResult<SysFileInfo> page(SysFileInfoParam sysFileInfoParam);
55
56     /**
57      * 查询所有文件信息表
58      *
59      * @param sysFileInfoParam 查询参数
60      * @return 文件信息列表
61      * @author yubaoshan
62      * @date 2020/6/7 22:15
63      */
64     List<SysFileInfo> list(SysFileInfoParam sysFileInfoParam);
65
66     /**
67      * 添加文件信息表
68      *
69      * @param sysFileInfoParam 添加参数
70      * @author yubaoshan
71      * @date 2020/6/7 22:15
72      */
73     void add(SysFileInfoParam sysFileInfoParam);
74
75     /**
76      * 删除文件信息表
77      *
78      * @param sysFileInfoParam 删除参数
79      * @author yubaoshan
80      * @date 2020/6/7 22:15
81      */
82     void delete(SysFileInfoParam sysFileInfoParam);
83
84     /**
85      * 编辑文件信息表
86      *
87      * @param sysFileInfoParam 编辑参数
88      * @author yubaoshan
89      * @date 2020/6/7 22:15
90      */
91     void edit(SysFileInfoParam sysFileInfoParam);
92
93     /**
94      * 查看详情文件信息表
95      *
96      * @param sysFileInfoParam 查看参数
97      * @return 文件信息
98      * @author yubaoshan
99      * @date 2020/6/7 22:15
100      */
101     SysFileInfo detail(SysFileInfoParam sysFileInfoParam);
102
103     /**
104      * 上传文件,返回文件的唯一标识
105      *
106      * @param file 要上传的文件
107      * @return 文件id
108      * @author yubaoshan
109      * @date 2020/6/9 21:21
110      */
111     Long uploadFile(MultipartFile file);
112
113     /**
114      * 获取文件信息结果集
115      *
116      * @param fileId 文件id
117      * @return 文件信息结果集
118      * @author yubaoshan
119      * @date 2020/6/9 21:56
120      */
121     SysFileInfoResult getFileInfoResult(Long fileId);
122
123     /**
124      * 判断文件是否存在
125      *
126      * @param field 文件id
127      * @author xuyuxiang
128      * @date 2020/6/28 15:55
129      */
130     void assertFile(Long field);
131
132     /**
133      * 文件预览
134      *
135      * @param sysFileInfoParam 文件预览参数
136      * @param response         响应结果
137      * @author xuyuxiang
138      * @date 2020/7/7 11:23
139      */
140     void preview(SysFileInfoParam sysFileInfoParam, HttpServletResponse response);
141
142     /**
143      * 文件下载
144      *
145      * @param sysFileInfoParam 文件下载参数
146      * @param response         响应结果
147      * @author xuyuxiang
148      * @date 2020/7/7 12:09
149      */
150     void download(SysFileInfoParam sysFileInfoParam, HttpServletResponse response);
151
152     /**
153      * 新增或编辑在线文档
154      *
155      * @param sysFileInfoParam 新增或编辑参数
156      * @author xuyuxiang
157      * @date 2021/3/24 10:02
158      */
159     SysOnlineFileInfoResult onlineAddOrUpdate(SysFileInfoParam sysFileInfoParam);
160
161     /**
162      * 在线文档编辑回调
163      *
164      * @author xuyuxiang
165      * @date 2021/3/25 15:48
166      */
167     void track();
168 }