| | |
| | | import com.product.core.entity.RequestParameterEntity; |
| | | import com.product.core.exception.BaseException; |
| | | import com.product.core.spring.context.SpringMVCContextHolder; |
| | | import com.product.file.config.CmnConst; |
| | | import com.product.file.config.FileCode; |
| | | import com.product.file.service.FileManagerService; |
| | | import com.product.module.sys.version.ApiVersion; |
| | |
| | | @RestController |
| | | public class FileManagerController extends AbstractBaseController { |
| | | |
| | | @Autowired |
| | | public FileManagerService fileManagerService; |
| | | |
| | | /** |
| | | * @param uuid |
| | | * @param response |
| | | * @return |
| | | */ |
| | | @GetMapping("/get-static-file/{version}") |
| | | @ApiVersion(1) |
| | | public String getStaticFile(@RequestParam("uuid") String uuid, HttpServletResponse response) { |
| | | try { |
| | | // 没有登录,白名单中 该接口中不能获取 token 和 当前用户 |
| | | fileManagerService.getStaticFile(uuid, response); |
| | | return OK(); |
| | | } catch (BaseException e) { |
| | | e.printStackTrace(); |
| | | return error(e); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return error(FileCode.GET_FILE_FAIL); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 文件记录-新增 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/add-file-record-plan/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String addFileRecordPlan(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | FieldSetEntity fs = fileManagerService.addFileRecordPlan(fse); |
| | | return fs != null ? this.OK_List(fs) : this.error(FileCode.ADD_FILE_RECORD_FAIL.getValue(), FileCode.ADD_FILE_RECORD_FAIL.getText()); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.ADD_FILE_RECORD_FAIL.getValue(), FileCode.ADD_FILE_RECORD_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 文件记录-文件新增结果回调 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/add-file-callback/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String addFileCallback(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | JSONObject data = fileManagerService.addFileCallback(fse); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.ADD_FILE_CALLBACK_FAIL.getValue(), FileCode.ADD_FILE_CALLBACK_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 文件记录-删除准备(状态修改) |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/del-file-record-plan/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String delFileRecordPlan(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | FieldSetEntity fs = fileManagerService.delFileRecordPlan(fse); |
| | | |
| | | return fs != null ? this.OK_List(fs) : this.error(FileCode.DELETE_FILE_PLAN_FIAL.getValue(), FileCode.DELETE_FILE_PLAN_FIAL.getText()); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.DELETE_FILE_PLAN_FIAL.getValue(), FileCode.DELETE_FILE_PLAN_FIAL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 文件记录-文件新增结果回调 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/del-file-callback/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String delFileCallback(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | JSONObject data = fileManagerService.delFileCallback(fse); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.DELETE_FILE_CALLBACK_FIAL.getValue(), FileCode.DELETE_FILE_CALLBACK_FIAL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取客户上传的文件总大小 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-client-file-uesd-capacity/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findClientFileUsedCapacity(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | long usedCapacity = fileManagerService.findClientFileUsedCapacity(fse.getString("client_uuid")); |
| | | JSONObject data = new JSONObject(); |
| | | data.put("used_capacity", String.valueOf(usedCapacity)); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取客户剩余的文件总大小 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-client-file-residue-capacity/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findClientFileResidueCapacity(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | long residueCapacity = fileManagerService.findClientFileResidueCapacity(fse.getString("client_uuid")); |
| | | JSONObject data = new JSONObject(); |
| | | data.put("residue_capacity", String.valueOf(residueCapacity)); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 验证是否允许上传的文件类型 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/check-is-allowed-file-type/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String checkIsAllowedFileType(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | boolean f = fileManagerService.checkIsAllowedFileType(fse.getString("attachment_name")); |
| | | return f ? this.OK() : this.error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText()); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取原始域名 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-source-domain/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findSourceDomain() { |
| | | try { |
| | | String sourceDomain = fileManagerService.findSourceDomain(); |
| | | |
| | | JSONObject data = new JSONObject(); |
| | | data.put("source_domain", sourceDomain); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (Exception e) { |
| | | |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.FIND_SOURCE_DOMAIN_FAIL.getValue(), FileCode.FIND_SOURCE_DOMAIN_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 手动触发无用数据清空 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/clear-no-used-data/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String clearNoUsedData() { |
| | | try { |
| | | boolean reuslt = fileManagerService.autoClearNoUsedData(); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", reuslt); |
| | | return result.toString(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取文件记录信息 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/get-file-info/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String getFileInfo(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | return BaseUtil.success(fileManagerService.getFileInfo(fse), null); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 文件刪除 |
| | | * |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/delete-file/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String deleteFile(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | return BaseUtil.success(fileManagerService.delFiles(fse), null); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | @Autowired |
| | | public FileManagerService fileManagerService; |
| | | |
| | | |
| | | /** |
| | | * 上传文件 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/upload-file/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String uploadFile(HttpServletRequest request) { |
| | | try { |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | FieldSetEntity fieldSetEntity = fileManagerService.uploadFile(rpe); |
| | | return OK_List(fieldSetEntity); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(e.getCode(), e.getMessage()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.UPLOAD_FILE_FAIL.getValue(), FileCode.UPLOAD_FILE_FAIL.getText()); |
| | | } |
| | | } |
| | | /** |
| | | * @param uuid |
| | | * @param response |
| | | * @return |
| | | */ |
| | | @GetMapping("/get-static-file/{version}") |
| | | @ApiVersion(1) |
| | | public String getStaticFile(@RequestParam("uuid") String uuid, HttpServletResponse response) { |
| | | try { |
| | | // 没有登录,白名单中 该接口中不能获取 token 和 当前用户 |
| | | fileManagerService.getStaticFile(uuid, response); |
| | | return OK(); |
| | | } catch (BaseException e) { |
| | | e.printStackTrace(); |
| | | return error(e); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return error(FileCode.GET_FILE_FAIL); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 下载文件或者在线预览 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String getFileContent(HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | // 正式代码 |
| | | fileManagerService.getFileContent(fse, response); |
| | | /*===test-start===*/ |
| | | |
| | | /** |
| | | * 获取客户上传的文件总大小 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-client-file-uesd-capacity/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findClientFileUsedCapacity(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | long usedCapacity = fileManagerService.findClientFileUsedCapacity(fse.getString("client_uuid")); |
| | | JSONObject data = new JSONObject(); |
| | | data.put("used_capacity", String.valueOf(usedCapacity)); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取客户剩余的文件总大小 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-client-file-residue-capacity/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findClientFileResidueCapacity(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | long residueCapacity = fileManagerService.findClientFileResidueCapacity(fse.getString("client_uuid")); |
| | | JSONObject data = new JSONObject(); |
| | | data.put("residue_capacity", String.valueOf(residueCapacity)); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 验证是否允许上传的文件类型 |
| | | * |
| | | * @param request 请求 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/check-is-allowed-file-type/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String checkIsAllowedFileType(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | boolean f = fileManagerService.checkIsAllowedFileType(fse.getString("attachment_name")); |
| | | return f ? this.OK() : this.error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText()); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | return this.error(e.getCode(), e.getMessageInfo()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取原始域名 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/find-source-domain/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String findSourceDomain() { |
| | | try { |
| | | String sourceDomain = fileManagerService.findSourceDomain(); |
| | | |
| | | JSONObject data = new JSONObject(); |
| | | data.put("source_domain", sourceDomain); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("data", data); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", "success"); |
| | | return result.toString(); |
| | | } catch (Exception e) { |
| | | |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.FIND_SOURCE_DOMAIN_FAIL.getValue(), FileCode.FIND_SOURCE_DOMAIN_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 手动触发无用数据清空 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/clear-no-used-data/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String clearNoUsedData() { |
| | | try { |
| | | boolean reuslt = fileManagerService.autoClearNoUsedData(); |
| | | JSONObject result = new JSONObject(); |
| | | result.put("msg", FileCode.SUCCESS.getText()); |
| | | result.put("code", "200"); |
| | | result.put("status", reuslt); |
| | | return result.toString(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 文件刪除 |
| | | * |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/delete-file/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String deleteFile(HttpServletRequest request) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | return BaseUtil.success(fileManagerService.delFiles(fse), null); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 上传文件 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/upload-file/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String uploadFile(HttpServletRequest request) { |
| | | try { |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | FieldSetEntity fieldSetEntity = fileManagerService.uploadFile(rpe); |
| | | return OK_List(fieldSetEntity); |
| | | } catch (BaseException e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(e.getCode(), e.getMessage()); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.UPLOAD_FILE_FAIL.getValue(), FileCode.UPLOAD_FILE_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 下载文件或者在线预览 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.GET) |
| | | @ApiVersion(1) |
| | | public String getFileContents(HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | SpringMVCContextHolder.getSystemLogger().info("通过GET请求获取附件内容"); |
| | | // 正式代码 |
| | | fileManagerService.getFileContent(fse, response); |
| | | return OK(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 下载文件或者在线预览 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String getFileContent(HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | // 正式代码 |
| | | fileManagerService.getFileContent(fse, response); |
| | | /*===test-start===*/ |
| | | // String tempPath = fse.getString("tempPath"); |
| | | // File file = new File(tempPath); |
| | | // OutputStream sos = new FileOutputStream(file); |
| | | // fileManagerService.getFileContent(fse, sos); |
| | | // sos.close(); |
| | | /*===test-start===*/ |
| | | return OK(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText()); |
| | | } |
| | | } |
| | | /*===test-start===*/ |
| | | return OK(); |
| | | } catch (BaseException e) { |
| | | e.printStackTrace(); |
| | | return error(e); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 批量打包下载 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/download-file-zip/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String downLoadFileZip(HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | /** |
| | | * 批量打包下载 |
| | | * |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/download-file-zip/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String downLoadFileZip(HttpServletRequest request, HttpServletResponse response) { |
| | | try { |
| | | FieldSetEntity fse = null; |
| | | Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); |
| | | RequestParameterEntity rpe = (RequestParameterEntity) bean; |
| | | if (null != rpe && null != rpe.getFormData()) { |
| | | fse = rpe.getFormData(); |
| | | } |
| | | if (fse == null) { |
| | | SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText()); |
| | | } |
| | | |
| | | response.setContentType("multipart/form-data"); |
| | | // 正式代码 |
| | | fileManagerService.downLoadFileZip(fse, response); |
| | | response.setContentType("multipart/form-data"); |
| | | // 正式代码 |
| | | fileManagerService.downLoadFileZip(fse, response); |
| | | |
| | | /*===test-start===*/ |
| | | /*===test-start===*/ |
| | | // String tempPath ="D:\\Desktop\\ccc.zip"; |
| | | // File file = new File(tempPath); |
| | | // OutputStream sssos = new FileOutputStream(file); |
| | | // fileManagerService.downLoadFileZip(fse, sssos); |
| | | // sssos.close(); |
| | | /*===test-start===*/ |
| | | return OK(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText()); |
| | | } |
| | | } |
| | | /*===test-start===*/ |
| | | return OK(); |
| | | } catch (Exception e) { |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | e.printStackTrace(); |
| | | return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText()); |
| | | } |
| | | } |
| | | } |