WebOfficeController.java 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package cn.com.lzt.message.wps.controller;
  2. import cn.com.lzt.common.entity.TSysFileEntity;
  3. import cn.com.lzt.message.wps.util.WpsUtils;
  4. import org.apache.commons.io.IOUtils;
  5. import org.jeecgframework.core.constant.Globals;
  6. import org.jeecgframework.core.util.ResourceUtil;
  7. import org.jeecgframework.web.system.pojo.base.TSUser;
  8. import org.jeecgframework.web.system.service.SystemService;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.stereotype.Controller;
  11. import org.springframework.web.bind.annotation.*;
  12. import javax.servlet.http.HttpServletRequest;
  13. import java.io.*;
  14. import java.net.HttpURLConnection;
  15. import java.net.MalformedURLException;
  16. import java.net.URL;
  17. import java.util.HashMap;
  18. import java.util.Map;
  19. @Controller
  20. public class WebOfficeController {
  21. @Autowired
  22. private SystemService systemService;
  23. @RequestMapping(value ="/weboffice/wps",params="url", method = RequestMethod.GET)
  24. @ResponseBody
  25. public Object getapp_Token(@RequestParam("fileId") String fileId,@RequestParam("_w_fname") String filename) throws UnsupportedEncodingException {
  26. return WpsUtils.getapp_Token(fileId,filename);
  27. }
  28. @RequestMapping(value="/v1/3rd/file/info", method = RequestMethod.GET)
  29. @ResponseBody
  30. public Object fileInfo(@RequestParam("_w_fname") String filename, HttpServletRequest req) {
  31. TSysFileEntity entity = systemService.getEntity(TSysFileEntity.class,filename);
  32. Map<String,Object> obj = new HashMap<String,Object>();
  33. Map<String,Object> file = new HashMap<String,Object>();
  34. Map<String,Object> user = new HashMap<String,Object>();
  35. String showAndDownUrl = ResourceUtil.getConfigByName("showAndDownUrl");
  36. String host = ResourceUtil.getConfigByName(Globals.SERVER_WXMSG);
  37. String netFile = host+"/"+ showAndDownUrl+ entity.getFileUrl();
  38. file.put("id", entity.getId());
  39. file.put("name", entity.getFileName());
  40. file.put("version", 1);
  41. file.put("size", getFileSize(netFile));
  42. file.put("creator", entity.getCreateBy());
  43. // file.put("modifier", "id1");
  44. file.put("download_url", netFile);
  45. file.put("create_time", entity.getCreateDate().getTime()/1000);
  46. // file.put("modify_time", System.currentTimeMillis()/1000);
  47. obj.put("file", file);
  48. user.put("id", entity.getCreateBy());
  49. user.put("name","");
  50. user.put("permission", "read");
  51. user.put("avatar_url","");
  52. obj.put("code",200);
  53. obj.put("msg","success");
  54. obj.put("user", user);
  55. System.out.println(obj);
  56. return obj;
  57. }
  58. public int getFileSize(String url) {
  59. InputStream inputStream=null;
  60. ByteArrayOutputStream out = null;
  61. try {
  62. inputStream= new URL(url).openStream();
  63. out = new ByteArrayOutputStream();
  64. IOUtils.copy(inputStream, out);
  65. return out.size();
  66. }catch (Exception e){
  67. e.printStackTrace();
  68. }finally {
  69. IOUtils.closeQuietly(inputStream);
  70. IOUtils.closeQuietly(out);
  71. }
  72. return -1;
  73. }
  74. }