Merge branch 'dev' of http://nonxin.cn:8090/r/product/product-server-file/V2.0.0 into dev
| | |
| | | CLUSTER_FILE_SYNC_CHECK_FAIL("集群文件同步验证失败", ModuleEnum.FILE.getValue() + "061"), |
| | | FILE_TRANSFER_BYTE_ARRAY_FAIL("文件转化为字节数组失败", ModuleEnum.FILE.getValue() + "062"), |
| | | CLUSTER_FILE_SYNC_ACCEPT_FAIL("集群文件同步方法接收失败", ModuleEnum.FILE.getValue() + "063"), |
| | | |
| | | CHECK_PREVIEW_FAIL("验证能否在线预览失败", ModuleEnum.FILE.getValue() + "064"), |
| | | ; |
| | | |
| | | private String text; |
| | |
| | | return error(FileCode.CLUSTER_FILE_SYNC_ACCEPT_FAIL.getValue(), FileCode.CLUSTER_FILE_SYNC_ACCEPT_FAIL.getText() + ":" + BaseUtil.getErrorInfo(e).substring(0, 500)); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 集群文件同步方法-接收 |
| | | * @return 结果 |
| | | */ |
| | | @RequestMapping(value = "/check-preview/{version}", method = RequestMethod.POST) |
| | | @ApiVersion(1) |
| | | public String checkPreview(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 OK(fileManagerService.checkPreview(fse)); |
| | | } 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.CHECK_PREVIEW_FAIL); |
| | | } |
| | | } |
| | | } |
| | |
| | | return false; |
| | | } |
| | | |
| | | // 存放在数据库中的文件,直接判定是否有值 |
| | | if (attachmentFse.getValue(CmnConst.FILE_CONTENT) != null) { |
| | | return true; |
| | | } |
| | | |
| | | //判断文件存放在服务器还是本地 |
| | | boolean needDownloadFromServerFlag = "1".equals(attachmentFse.getString(CmnConst.UPLOAD_SIGN)); |
| | | String dir = attachmentFse.getString(CmnConst.ATTACHMENT_URL); |
| | |
| | | return flag; |
| | | } |
| | | |
| | | /** |
| | | * 验证是否可以预览 |
| | | * @param fse |
| | | * @return |
| | | */ |
| | | public Object checkPreview(FieldSetEntity fse) { |
| | | String fileName = fse.getString("file_name"); |
| | | boolean allowPreviewFlag = Global.getPropertyToBoolean("file.view.online", "true"); |
| | | List<String> canTransferFormatList = Lists.newArrayList(Arrays.asList(Global.getSystemConfig("can.transfer.format", "").split(","))); |
| | | List<String> canDirectPreviewList = Lists.newArrayList(Arrays.asList(Global.getSystemConfig("can.direct.view.online.format", "").split(","))); |
| | | List<String> canPreviewList = Lists.newArrayList(); |
| | | canPreviewList.addAll(canTransferFormatList); |
| | | canPreviewList.addAll(canDirectPreviewList); |
| | | if (StringUtils.isEmpty(fileName)) { |
| | | if (allowPreviewFlag) { |
| | | return BaseUtil.collection2String(canPreviewList); |
| | | } else { |
| | | return ""; |
| | | } |
| | | } else { |
| | | String tail = fileName.substring(fileName.lastIndexOf(".") + 1); |
| | | return allowPreviewFlag && canPreviewList.contains(tail); |
| | | } |
| | | } |
| | | } |