| | |
| | | import org.apache.http.impl.client.CloseableHttpClient; |
| | | import org.apache.http.impl.client.HttpClients; |
| | | import org.apache.http.util.EntityUtils; |
| | | import org.springblade.common.constant.FtpConstant; |
| | | import org.springblade.common.utils.arg; |
| | | import org.springblade.core.launch.constant.AppConstant; |
| | | import org.springblade.core.oss.model.BladeFile; |
| | |
| | | |
| | | |
| | | /** |
| | | * |
| | | * app 文件上传 |
| | | * |
| | | * @param file 图片对象 |
| | | */ |
| | | @PostMapping("put-file-app") |
| | |
| | | String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") |
| | | + fileName.substring(fileName.lastIndexOf(".")); |
| | | InputStream in = file.getInputStream(); |
| | | String[] split = newName.split("/"); |
| | | //创建头部信息 |
| | | Map<String, String> headers = new HashMap<>(1 << 2); |
| | | //添加自定义内容类型 |
| | |
| | | in, in.available(), -1) |
| | | .headers(headers) |
| | | .build()); |
| | | InputStream inputStream = file.getInputStream(); |
| | | FtpUtil.uploadFile(ftpHost_dev, ftpPort, ftpUserName, ftpPassword, ftpPath, "/", split[2], inputStream); |
| | | in.close(); |
| | | String urls = "http://223.82.109.183:2081/zhba/" + newName; |
| | | return R.data(urls); |
| | |
| | | |
| | | |
| | | /** |
| | | * |
| | | * 文件上传,自定义上传 |
| | | * |
| | | * @param file 图片对象 |
| | | */ |
| | | @PostMapping("put-files") |
| | |
| | | String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") |
| | | + fileName.substring(fileName.lastIndexOf(".")); |
| | | InputStream in = file.getInputStream(); |
| | | String[] split = newName.split("/"); |
| | | //创建头部信息 |
| | | Map<String, String> headers = new HashMap<>(1 << 2); |
| | | //添加自定义内容类型 |
| | |
| | | in, in.available(), -1) |
| | | .headers(headers) |
| | | .build()); |
| | | InputStream inputStream = file.getInputStream(); |
| | | FtpUtil.uploadFile(ftpHost_dev, ftpPort, ftpUserName, ftpPassword, ftpPath, "/", split[2], inputStream); |
| | | in.close(); |
| | | String urls = "http://223.82.109.183:2081/zhba/" + newName; |
| | | //数据封装 |
| | | Map<String, Object> map = new HashMap<>(2); |
| | | map.put("name",newName); |
| | | map.put("url",urls); |
| | | map.put("name", newName); |
| | | map.put("url", urls); |
| | | //返回 |
| | | return R.data(map); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * |
| | | * 文件上传,自定义上传 |
| | | * |
| | | * @param file 图片对象 |
| | | */ |
| | | @PostMapping("put-files-talk") |
| | |
| | | in, in.available(), -1) |
| | | .headers(headers) |
| | | .build()); |
| | | FtpUtil.uploadFile(ftpHost_dev, ftpPort, ftpUserName, ftpPassword, ftpPath, "/", split[2], in); |
| | | InputStream inputStream = file.getInputStream(); |
| | | FtpUtil.uploadFile(ftpHost_dev, ftpPort, ftpUserName, ftpPassword, ftpPath, "/", split[2], inputStream); |
| | | in.close(); |
| | | String urls = "http://223.82.109.183:2081/zhba/" + newName; |
| | | //数据封装 |
| | | Map<String, Object> map = new HashMap<>(2); |
| | | map.put("name",newName); |
| | | map.put("url",urls); |
| | | map.put("name", newName); |
| | | map.put("url", urls); |
| | | //返回 |
| | | return R.data(map); |
| | | } |
| | |
| | | */ |
| | | @SneakyThrows |
| | | @PostMapping("/put-file-attach") |
| | | public R<BladeFile> putFileAttach(@RequestParam MultipartFile file,String deptid,String type,Long noticeId,String cardid) { |
| | | public R<BladeFile> putFileAttach(@RequestParam MultipartFile file, String deptid, String type, Long noticeId, String cardid) { |
| | | String fileName = file.getOriginalFilename(); |
| | | BladeFile bladeFile = ossBuilder.template().putFile(fileName, file.getInputStream()); |
| | | Long attachId = buildAttach(fileName, file.getSize(), bladeFile,deptid,type,noticeId,cardid); |
| | | InputStream inputStream = file.getInputStream(); |
| | | Long attachId = buildAttach(fileName, file.getSize(), bladeFile, deptid, type, noticeId, cardid, inputStream); |
| | | bladeFile.setAttachId(attachId); |
| | | return R.data(bladeFile); |
| | | } |
| | |
| | | */ |
| | | @SneakyThrows |
| | | @PostMapping("/put-file-attach-by-name") |
| | | public R<BladeFile> putFileAttach(@RequestParam String fileName, @RequestParam MultipartFile file,String deptid,String type,Long noticeId,String cardid) { |
| | | public R<BladeFile> putFileAttach(@RequestParam String fileName, @RequestParam MultipartFile file, String deptid, String type, Long noticeId, String cardid) { |
| | | BladeFile bladeFile = ossBuilder.template().putFile(fileName, file.getInputStream()); |
| | | Long attachId = buildAttach(fileName, file.getSize(), bladeFile,deptid,type,noticeId,cardid); |
| | | Long attachId = buildAttach(fileName, file.getSize(), bladeFile, deptid, type, noticeId, cardid, file.getInputStream()); |
| | | bladeFile.setAttachId(attachId); |
| | | return R.data(bladeFile); |
| | | } |
| | |
| | | * @param bladeFile 对象存储文件 |
| | | * @return attachId |
| | | */ |
| | | private Long buildAttach(String fileName, Long fileSize, BladeFile bladeFile,String deptid,String type,Long noticeId,String cardid) throws Exception { |
| | | private Long buildAttach(String fileName, Long fileSize, BladeFile bladeFile, String deptid, String type, Long noticeId, String cardid, InputStream in) throws Exception { |
| | | //BladeUser user = AuthUtil.getUser(); |
| | | String fileExtension = FileUtil.getFileExtension(fileName); |
| | | Attach attach = new Attach(); |
| | |
| | | attach.setDeptid(deptid); |
| | | attach.setCardid(cardid); |
| | | attach.setType(type); |
| | | if (null!=noticeId){ |
| | | if (null != noticeId) { |
| | | attach.setNoticeId(noticeId); |
| | | } |
| | | attachService.save(attach); |
| | | String[] split = bladeFile.getName().split("/"); |
| | | String ip = FtpConstant.ip+"/zhba/picture/"; |
| | | String imgurl = ip + split[2]; |
| | | FtpUtil.uploadFile(ftpHost_dev, ftpPort, ftpUserName, ftpPassword, ftpPath, "/", split[2], in); |
| | | //数据同步 |
| | | String s1 = |
| | | "insert into blade_attach(id,tenant_id,link,domain,name,original_name,extension,attach_size,create_user,create_dept," + |
| | | "create_time,update_user,update_time,status,is_deleted,deptid,type,notice_id,cardid) " + |
| | | "create_time,update_user,update_time,status,is_deleted,type,cardid"; |
| | | if (noticeId != null) { |
| | | s1 += ",notice_id"; |
| | | } else { |
| | | s1 += ") " + |
| | | "values(" + "'" + attach.getId() + "'" + "," + |
| | | "'" + attach.getTenantId() + "'" + "," + |
| | | "'" + attach.getLink() + "'" + "," + |
| | | "'" + attach.getDomain() + "'" + "," + |
| | | "'" + attach.getName() + "'" + "," + |
| | | "'" + imgurl + "'" + "," + |
| | | "'" + ip + "'" + "," + |
| | | "'" + split[2] + "'" + "," + |
| | | "'" + attach.getOriginalName() + "'" + "," + |
| | | "'" + attach.getExtension() + "'" + "," + |
| | | "'" + attach.getAttachSize() + "'" + "," + |
| | | "'" + attach.getCreateUser() + "'" + "," + |
| | | "'" + attach.getCreateDept() + "'" + "," + |
| | | "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'" + "," + |
| | | "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'" + "," + |
| | | "'" + attach.getUpdateUser() + "'" + "," + |
| | | "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'" + "," + |
| | | "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'" + "," + |
| | | "'" + attach.getStatus() + "'" + "," + |
| | | "'" + attach.getIsDeleted() + "'" + "," + |
| | | "'" + attach.getType() + "'" + "," + |
| | | "'" + attach.getNoticeId() + "'" + "," + |
| | | "'" +attach.getCardid() + "'" + ")"; |
| | | "'" + cardid + "'"; |
| | | } |
| | | if (noticeId != null) { |
| | | s1 += "'" + noticeId + "'" + ")"; |
| | | } else { |
| | | s1 += ")"; |
| | | } |
| | | FtpUtil.sqlFileUpload(s1); |
| | | return attach.getId(); |
| | | } |