| | |
| | | import cc.mrbird.febs.common.core.utils.FebsUtil; |
| | | import cc.mrbird.febs.common.core.utils.MyUtil; |
| | | import cc.mrbird.febs.common.core.utils.SequenceUtil; |
| | | import cc.mrbird.febs.server.hr.entity.EmpAccessory; |
| | | import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; |
| | | import cc.mrbird.febs.server.hr.entity.FilesUpload; |
| | | import cc.mrbird.febs.server.hr.entity.Folder; |
| | | import cc.mrbird.febs.server.hr.mapper.FilesUploadMapper; |
| | | import cc.mrbird.febs.server.hr.properties.FebsServerHrProperties; |
| | | import cc.mrbird.febs.server.hr.service.IEmpBaseInfoService; |
| | | import cc.mrbird.febs.server.hr.service.IFilesUploadService; |
| | | import cc.mrbird.febs.server.hr.service.IFolderService; |
| | | import cn.hutool.core.io.FileUtil; |
| | |
| | | |
| | | private final IFolderService iFolderService; |
| | | private final FebsServerHrProperties properties; |
| | | private final IEmpBaseInfoService empBaseInfoService; |
| | | private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) |
| | | .map(u -> u.getUserId().toString()) |
| | | .orElse("1"); |
| | |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void updateFilesUpload(FilesUpload filesUpload) { |
| | | this.saveOrUpdate(filesUpload); |
| | | public void updateFilesUpload(FilesUpload filesUpload) throws FebsException { |
| | | if ( filesUpload.getFilesname().indexOf(".")<=0){ |
| | | throw new FebsException("文件名格式错误"); |
| | | } |
| | | LambdaUpdateWrapper<FilesUpload> wrapper = new LambdaUpdateWrapper<>(); |
| | | wrapper.eq(FilesUpload::getFilesid,filesUpload.getFilesid()) |
| | | .set(FilesUpload::getFilesname,filesUpload.getFilesname()).set(FilesUpload::getFilesformat, filesUpload.getFilesname().substring( filesUpload.getFilesname().indexOf(".")+1)); |
| | | this.update(wrapper); |
| | | } |
| | | |
| | | @Override |
| | |
| | | String[] arr = fileids.split(","); |
| | | LambdaUpdateWrapper<FilesUpload> wapper = new LambdaUpdateWrapper<>(); |
| | | wapper.in(FilesUpload::getFilesid, arr); |
| | | wapper.set(FilesUpload::getDelFlag,1); |
| | | wapper.set(FilesUpload::getModifier,operatorId); |
| | | wapper.set(FilesUpload::getModifytime,new Date()); |
| | | wapper.set(FilesUpload::getDelFlag, 1); |
| | | wapper.set(FilesUpload::getModifier, operatorId); |
| | | wapper.set(FilesUpload::getModifytime, new Date()); |
| | | this.update(wapper); |
| | | |
| | | LambdaQueryWrapper<FilesUpload> queryWrapper = new LambdaQueryWrapper<>(); |
| | |
| | | FilesUpload filesUpload = this.getById(i); |
| | | Folder folder = iFolderService.getById(filesUpload.getFolderid()); |
| | | files.add(new File(properties.getUploadCommonPath() + folder.getFoldername() + "/" + filesUpload.getFilesaddress())); |
| | | if ( fileName.parallelStream().filter(filter->StrUtil.equals(filesUpload.getFilesname(),filter)).count()==0){ |
| | | if (fileName.parallelStream().filter(filter -> StrUtil.equals(filesUpload.getFilesname(), filter)).count() == 0) { |
| | | fileName.add(filesUpload.getFilesname()); |
| | | }else{ |
| | | fileName.add(filesUpload.getFilesname()+fileName.parallelStream().filter(filter->StrUtil.equals(filesUpload.getFilesname(),filter)).count()+1); |
| | | } else { |
| | | fileName.add(filesUpload.getFilesname() + fileName.parallelStream().filter(filter -> StrUtil.equals(filesUpload.getFilesname(), filter)).count() + 1); |
| | | } |
| | | |
| | | }); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public void mvFiles(String fileids,Long folderid) { |
| | | public void mvFiles(String fileids, Long folderid) { |
| | | String[] arr = fileids.split(","); |
| | | |
| | | LambdaQueryWrapper<FilesUpload> queryWrapper = new LambdaQueryWrapper<>(); |
| | |
| | | Folder newfolder = iFolderService.getById(folderid); |
| | | File oldfile = new File(properties.getUploadCommonPath() + folder.getFoldername() + "/" + i.getFilesaddress()); |
| | | File newfile = new File(properties.getUploadCommonPath() + newfolder.getFoldername() + "/" + i.getFilesaddress()); |
| | | FileUtil.move(oldfile,newfile,true); |
| | | FileUtil.move(oldfile, newfile, true); |
| | | }); |
| | | |
| | | LambdaUpdateWrapper<FilesUpload> wapper = new LambdaUpdateWrapper<>(); |
| | | wapper.in(FilesUpload::getFilesid, arr); |
| | | wapper.set(FilesUpload::getFolderid,fileids); |
| | | wapper.set(FilesUpload::getModifier,operatorId); |
| | | wapper.set(FilesUpload::getModifytime,new Date()); |
| | | wapper.set(FilesUpload::getFolderid, fileids); |
| | | wapper.set(FilesUpload::getModifier, operatorId); |
| | | wapper.set(FilesUpload::getModifytime, new Date()); |
| | | this.update(wapper); |
| | | |
| | | } |
| | | @Override |
| | | public void getImage(String filesid, HttpServletResponse response) throws Exception { |
| | | FilesUpload filesUpload = this.getById(filesid); |
| | | if (StrUtil.isBlank(filesUpload.getFilesaddress())) { |
| | | return; |
| | | } |
| | | Folder folder = iFolderService.getById(filesUpload.getFolderid()); |
| | | String path = properties.getUploadCommonPath() + folder.getFoldername() + "/" + filesUpload.getFilesaddress(); |
| | | try (InputStream inputStream = new FileInputStream(path); OutputStream out = response.getOutputStream()) { |
| | | //byte数组用于存放图片字节数据 |
| | | byte[] buff = new byte[inputStream.available()]; |
| | | inputStream.read(buff); |
| | | inputStream.close(); |
| | | if (filesUpload.getFilesformat().equals("tif")){ |
| | | //设置发送到客户端的响应内容类型 |
| | | response.setContentType("image/tiff"); |
| | | }else if (filesUpload.getFilesformat().equals("bmp")){ |
| | | response.setContentType("application/x-bmp"); |
| | | }else if (filesUpload.getFilesformat().equals("jpg")){ |
| | | response.setContentType("image/jpeg"); |
| | | }else if (filesUpload.getFilesformat().equals("png")){ |
| | | response.setContentType("image/png"); |
| | | }else if (filesUpload.getFilesformat().equals("gif")){ |
| | | response.setContentType("image/gif"); |
| | | } |
| | | out.write(buff); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |