|
@@ -56,66 +56,68 @@ public class ContractDocumentServiceImpl extends ServiceImpl<ContractDocumentMap
|
|
|
* @param request
|
|
|
* @param ContractId
|
|
|
* @param folderId
|
|
|
- * @param file
|
|
|
+ * @param files
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public HttpRespMsg fileUpload(HttpServletRequest request, @RequestParam Integer ContractId, @RequestParam(required=false) Integer folderId, @RequestParam("file") MultipartFile file) {
|
|
|
+ public HttpRespMsg fileUpload(HttpServletRequest request, @RequestParam Integer ContractId, @RequestParam(required=false) Integer folderId, @RequestParam("file") MultipartFile[] files) {
|
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
|
User user = userMapper.selectById(request.getHeader("token"));
|
|
|
- List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "编辑合同");
|
|
|
+ List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "管理全部合同");
|
|
|
if(functionContractList.size() <= 0){
|
|
|
msg.setError(MessageUtils.message("access.operationError"));
|
|
|
return msg;
|
|
|
}
|
|
|
- ContractDocument record = new ContractDocument();
|
|
|
- record.setCreatorId(user.getId());
|
|
|
- record.setCreatorName(user.getName());
|
|
|
- record.setDocumentName(file.getOriginalFilename());
|
|
|
- record.setFolderId(folderId);
|
|
|
- record.setContractId(ContractId);
|
|
|
- if (file != null && !file.isEmpty()) {
|
|
|
- //截取文件后缀
|
|
|
- String fileSuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
|
|
|
- record.setDocumentType(DocumentTypeUtil.DocumentType(fileSuffix));
|
|
|
- //处理文件
|
|
|
- File dir = new File(path);
|
|
|
- if (!dir.exists()) {
|
|
|
- dir.mkdir();
|
|
|
- }
|
|
|
- String fileName= "";
|
|
|
- if (file!=null && !file.isEmpty()) {
|
|
|
- fileName = file.getOriginalFilename();
|
|
|
+ for (MultipartFile file : files) {
|
|
|
+ ContractDocument record = new ContractDocument();
|
|
|
+ record.setCreatorId(user.getId());
|
|
|
+ record.setCreatorName(user.getName());
|
|
|
+ record.setDocumentName(file.getOriginalFilename());
|
|
|
+ record.setFolderId(folderId);
|
|
|
+ record.setContractId(ContractId);
|
|
|
+ if (file != null && !file.isEmpty()) {
|
|
|
+ //截取文件后缀
|
|
|
+ String fileSuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
|
|
|
+ record.setDocumentType(DocumentTypeUtil.DocumentType(fileSuffix));
|
|
|
+ //处理文件
|
|
|
+ File dir = new File(path);
|
|
|
+ if (!dir.exists()) {
|
|
|
+ dir.mkdir();
|
|
|
+ }
|
|
|
+ String fileName= "";
|
|
|
+ if (file!=null && !file.isEmpty()) {
|
|
|
+ fileName = file.getOriginalFilename();
|
|
|
|
|
|
- int pos = fileName.lastIndexOf(".");
|
|
|
- String suffix = fileName.substring(pos).toLowerCase();
|
|
|
- //用uuid替换原始的文件名
|
|
|
- String purFName = UUID.randomUUID().toString().replaceAll("-", "");
|
|
|
- fileName = purFName + suffix;
|
|
|
- File saveFile = new File(dir, fileName);
|
|
|
- try {
|
|
|
- saveFile.createNewFile();
|
|
|
- file.transferTo(saveFile);
|
|
|
- //计算文件大小
|
|
|
- long fileSize = saveFile.length();
|
|
|
- String fileLength = FileUtil.getReadableFileSize(fileSize);
|
|
|
- record.setServerName(path + fileName);
|
|
|
- record.setSize(fileLength);
|
|
|
- String pathPrefix = "/upload/";
|
|
|
- record.setUrl(pathPrefix + fileName);
|
|
|
- contractDocumentMapper.insert(record);
|
|
|
- msg.data = record;
|
|
|
- } catch (IOException e) {
|
|
|
- e.printStackTrace();
|
|
|
- fileName = null;
|
|
|
- msg.setError(e.getMessage()+", path="+dir.getAbsolutePath());
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- fileName = null;
|
|
|
- msg.setError(e.getMessage()+", path="+dir.getAbsolutePath());
|
|
|
+ int pos = fileName.lastIndexOf(".");
|
|
|
+ String suffix = fileName.substring(pos).toLowerCase();
|
|
|
+ //用uuid替换原始的文件名
|
|
|
+ String purFName = UUID.randomUUID().toString().replaceAll("-", "");
|
|
|
+ fileName = purFName + suffix;
|
|
|
+ File saveFile = new File(dir, fileName);
|
|
|
+ try {
|
|
|
+ saveFile.createNewFile();
|
|
|
+ file.transferTo(saveFile);
|
|
|
+ //计算文件大小
|
|
|
+ long fileSize = saveFile.length();
|
|
|
+ String fileLength = FileUtil.getReadableFileSize(fileSize);
|
|
|
+ record.setServerName(path + fileName);
|
|
|
+ record.setSize(fileLength);
|
|
|
+ String pathPrefix = "/upload/";
|
|
|
+ record.setUrl(pathPrefix + fileName);
|
|
|
+ contractDocumentMapper.insert(record);
|
|
|
+ msg.data = record;
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ fileName = null;
|
|
|
+ msg.setError(e.getMessage()+", path="+dir.getAbsolutePath());
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ fileName = null;
|
|
|
+ msg.setError(e.getMessage()+", path="+dir.getAbsolutePath());
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ msg.setError(MessageUtils.message("file.nonExistentError"));
|
|
|
}
|
|
|
- } else {
|
|
|
- msg.setError(MessageUtils.message("file.nonExistentError"));
|
|
|
}
|
|
|
}
|
|
|
return msg;
|
|
@@ -134,7 +136,7 @@ public class ContractDocumentServiceImpl extends ServiceImpl<ContractDocumentMap
|
|
|
public HttpRespMsg fileDown(HttpServletRequest request, HttpServletResponse response, Integer folderId, Integer contractId,Integer fileId) {
|
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
|
User user = userMapper.selectById(request.getHeader("token"));
|
|
|
- List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "查看合同");
|
|
|
+ List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "查看全部合同");
|
|
|
if(functionContractList.size() <= 0){
|
|
|
msg.setError(MessageUtils.message("access.viewError"));
|
|
|
return msg;
|
|
@@ -203,7 +205,7 @@ public class ContractDocumentServiceImpl extends ServiceImpl<ContractDocumentMap
|
|
|
public HttpRespMsg fileDelete(HttpServletRequest request, ContractFileDelVO contractFileDelVo) {
|
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
|
User user = userMapper.selectById(request.getHeader("Token"));
|
|
|
- List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "编辑合同");
|
|
|
+ List<SysRichFunction> functionContractList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "管理全部合同");
|
|
|
if(functionContractList.size() <= 0){
|
|
|
msg.setError(MessageUtils.message("access.deleteError"));
|
|
|
return msg;
|