123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241 |
- package com.steerinfo.ems.tfileoperate.controller;
- import com.steerinfo.auth.utils.JwtUtil;
- import com.steerinfo.ems.Utils.DateUtils;
- import com.steerinfo.ems.emssecuernode.model.EmsSecuerNode;
- import com.steerinfo.ems.emssecuernode.service.IEmsSecuerNodeService;
- import com.steerinfo.framework.controller.BaseRESTfulController;
- import com.steerinfo.framework.controller.RESTfulResult;
- import com.steerinfo.framework.service.pagehelper.PageList;
- import com.steerinfo.framework.utils.collection.ListUtils;
- import com.steerinfo.ems.tfileoperate.model.TFileOperate;
- import com.steerinfo.ems.tfileoperate.service.ITFileOperateService;
- import com.steerinfo.ftp.uploadfile.model.UploadFile;
- import com.steerinfo.ftp.uploadfile.utils.FtpFileUtil;
- import com.steerinfo.ftp.uploadfile.utils.IDutils;
- import io.swagger.annotations.ApiImplicitParam;
- import io.swagger.annotations.ApiImplicitParams;
- import io.swagger.annotations.ApiOperation;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.context.annotation.Primary;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import java.io.InputStream;
- import java.text.SimpleDateFormat;
- import java.util.*;
- import java.math.BigDecimal;
- /**
- * TFileOperate RESTful接口:
- * @author generator
- * @version 1.0-SNAPSHORT 2023-05-10 02:31
- * 类描述
- * 修订历史:
- * 日期:2023-05-10
- * 作者:generator
- * 参考:
- * 描述:TFileOperate RESTful接口
- * @see null
- * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
- */
- @RestController
- @RequestMapping("/${api.version}/tfileoperates")
- public class TFileOperateController extends BaseRESTfulController {
- @Autowired
- IEmsSecuerNodeService NodeService;
- @Autowired
- FtpFileUtil ftpFileUtil;
- @Autowired
- ITFileOperateService tFileOperateService;
- @ApiOperation(value="获取列表", notes="分页查询")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
- @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
- })
- //@RequiresPermissions("tfileoperate:view")
- @GetMapping(value = "/")
- public RESTfulResult list(@RequestParam HashMap parmas,Integer pageNum, Integer pageSize){
- PageList<TFileOperate> list = tFileOperateService.queryForPage(parmas, pageNum, pageSize);
- return success(list);
- }
- @ApiOperation(value="获取列表", notes="分页模糊查询")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
- @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
- })
- //@RequiresPermissions("tfileoperate:view")
- @GetMapping(value = "/like/")
- public RESTfulResult listLike(@RequestParam HashMap parmas,Integer pageNum, Integer pageSize){
- PageList<TFileOperate> list = tFileOperateService.queryLikeForPage(parmas, pageNum, pageSize);
- return success(list);
- }
-
- @ApiOperation(value="创建", notes="根据TFileOperate对象创建")
- @ApiImplicitParam(name = "tFileOperate", value = "详细实体tFileOperate", required = true, dataType = "TFileOperate")
- //@RequiresPermissions("tfileoperate:create")
- @PostMapping(value = "/")
- public RESTfulResult add(@ModelAttribute TFileOperate model){
- TFileOperate tFileOperate = tFileOperateService.add(model);
- return success(tFileOperate);
- }
- @ApiOperation(value="获取详细信息", notes="根据url的id来获取详细信息")
- @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String")
- //@RequiresPermissions("tfileoperate:view")
- @GetMapping(value = "/{id}")
- public RESTfulResult get(@PathVariable String id){
- TFileOperate tFileOperate = tFileOperateService.getById(id);
- return success(tFileOperate);
- }
- @ApiOperation(value="更新详细信息", notes="根据url的id来指定更新对象,并根据传过来的tFileOperate信息来更新详细信息")
- @ApiImplicitParams({
- @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String"),
- @ApiImplicitParam(name = "tFileOperate", value = "详细实体tFileOperate", required = true, dataType = "TFileOperate")
- })
- //@RequiresPermissions("tfileoperate:update")
- @PutMapping(value = "/{id}", produces = "application/json;charset=UTF-8")
- public RESTfulResult update(@PathVariable String id, @RequestBody TFileOperate model){
- model.setId(id);
- TFileOperate tFileOperate = tFileOperateService.modify(model);
- return success(tFileOperate);
- }
- @ApiOperation(value="删除", notes="根据url的id来指定删除对象")
- @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String")
- //@RequiresPermissions("tfileoperate:delete")
- @DeleteMapping(value = "/{id}")//String
- public RESTfulResult delete(@PathVariable String id){
- List<String> list = Arrays.asList(id.split(","));
- String path = null;
- if(ListUtils.isNotEmpty(list)) {
- List<String> ids = ListUtils.convertList(list);
- for (String item : ids) {
- TFileOperate t = tFileOperateService.getById(item);
- path = t.getFilePath();
- try {
- if (ftpFileUtil.deleteFile(path)){
- }else{
- return failed(null,"部分文件删除失败");
- }
- } catch (Exception e) {
- return failed(null,"删除失败");
- }
- }
- }
- return success();
- }
- @PostMapping("/fileUpload")
- public RESTfulResult fileUpload(@ModelAttribute MultipartFile[] files, String id){
- String filesid = "";
- if (files.length>0){
- for (int i = 0; i <files.length ; i++) {
- try {
- String userId = JwtUtil.getUseridByToken();
- //获取系统时间
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("/yyyy/MM/dd");
- String simpleDateFormat1 = DateUtils.getCurrentTime("yyyy-MM-dd HH:mm:ss");
- //获取文件名
- String oldName = files[i].getOriginalFilename();
- int begin = files[i].getOriginalFilename().indexOf(".");
- int last = files[i].getOriginalFilename().length();
- String type = files[i].getOriginalFilename().substring(begin, last);
- //取当前时间的长整形值包含毫秒
- String newName = IDutils.getImageName();
- //重新命名文件
- newName = newName + oldName.substring(oldName.lastIndexOf("."));
- String filePath = simpleDateFormat.format(new Date());
- //获取输入流
- InputStream inputStream = files[i].getInputStream();
- boolean result = ftpFileUtil.uploadToFtp(inputStream, filePath, newName, false);
- inputStream.close();
- if (result) {
- TFileOperate uploadFile = new TFileOperate();
- uploadFile.setFileName(oldName);
- uploadFile.setFilePath(filePath + "/" + newName);
- uploadFile.setNodeId(id);
- uploadFile.setCreateman(JwtUtil.getUseridByToken());
- uploadFile.setCreatetime(simpleDateFormat1);
- uploadFile.setFileType(type);
- uploadFile.setId("file"+UUID.randomUUID().toString().substring(1,18).trim().replace("-",""));
- uploadFile.setBz(" ");
- uploadFile.setUpdateman(" ");
- uploadFile.setUpdatetime(" ");
- TFileOperate model = tFileOperateService.add(uploadFile);
- if (model != null) {
- filesid += "," + model.getId();
- }
- } else {
- return failed(null, "上传文件失败");
- }
- } catch (Exception e) {
- e.getMessage();
- }
- }
- }
- if (!filesid.isEmpty()){
- EmsSecuerNode emsSecuerNode= new EmsSecuerNode();
- emsSecuerNode.setId(id);
- emsSecuerNode.setItemtype((short) 200);
- emsSecuerNode.setItemstatus((short) 200);
- NodeService.modify(emsSecuerNode);
- }
- return success(filesid);
- }
- @PostMapping("/fileUploa2")
- public RESTfulResult fileUpload2(@ModelAttribute MultipartFile files, String id){
- String filesid = "";
- if (!files.isEmpty()){
- try {
- String userId = JwtUtil.getUseridByToken();
- //获取系统时间
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("/yyyy/MM/dd");
- String simpleDateFormat1 = DateUtils.getCurrentTime("yyyy-MM-dd HH:mm:ss");
- //获取文件名
- String oldName = files.getOriginalFilename();
- int begin = files.getOriginalFilename().indexOf(".");
- int last = files.getOriginalFilename().length();
- String type = files.getOriginalFilename().substring(begin, last);
- //取当前时间的长整形值包含毫秒
- String newName = IDutils.getImageName();
- //重新命名文件
- newName = newName + oldName.substring(oldName.lastIndexOf("."));
- String filePath = simpleDateFormat.format(new Date());
- //获取输入流
- InputStream inputStream = files.getInputStream();
- boolean result = ftpFileUtil.uploadToFtp(inputStream, filePath, newName, false);
- inputStream.close();
- if (result) {
- TFileOperate uploadFile = new TFileOperate();
- uploadFile.setFileName(oldName);
- uploadFile.setFilePath(filePath + "/" + newName);
- uploadFile.setId(id);
- uploadFile.setFileType(type);
- uploadFile.setBz(" ");
- uploadFile.setUpdateman(JwtUtil.getUseridByToken());
- uploadFile.setUpdatetime(simpleDateFormat1);
- TFileOperate model = tFileOperateService.modify(uploadFile);
- if (model != null) {
- filesid += "," + model.getId();
- }
- } else {
- return failed(null, "上传文件失败");
- }
- } catch (Exception e) {
- e.getMessage();
- }
- }
- return success(filesid);
- }
- }
|