文件记录流程优化

This commit is contained in:
YBP
2026-03-31 18:13:02 +08:00
parent 630ce302de
commit c18eaae2be
4 changed files with 113 additions and 56 deletions

View File

@@ -6,6 +6,7 @@ import com.zt.plat.framework.business.controller.AbstractFileUploadController;
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
import com.zt.plat.framework.common.enums.UserTypeEnum;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.datapermission.core.annotation.DeptDataPermissionIgnore;
import com.zt.plat.framework.security.core.LoginUser;
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
import com.zt.plat.framework.tenant.core.aop.TenantIgnore;
@@ -17,8 +18,8 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.annotation.security.PermitAll;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -32,7 +33,7 @@ import static com.zt.plat.framework.common.pojo.CommonResult.success;
@RestController
@RequestMapping("/qms/common/only-office")
@Validated
//@DeptDataPermissionIgnore(enable = "true")
@DeptDataPermissionIgnore(enable = "true")
@FileUploadController(source = "qms.only-office", codeKey = "data.fileUploadBusinessCode")
public class OnlyOfficeController extends AbstractFileUploadController implements BusinessControllerMarker {
@@ -53,6 +54,15 @@ public class OnlyOfficeController extends AbstractFileUploadController implement
return success(onlyOfficeService.getEditorConfig(id));
}
@GetMapping("/file-content")
@Operation(summary = "获取文档文件内容")
@PermitAll
public void getFileContent(@RequestParam("fileId") Long fileId,
@RequestParam("token") String token,
HttpServletResponse response) {
onlyOfficeService.getDocFileContent(fileId, token, response);
}
@PostMapping("/callback")
@Operation(summary = "OnlyOffice 回调接口")
@PermitAll

View File

@@ -1,8 +1,11 @@
package com.zt.plat.module.qms.resource.record.controller.admin.onlyOffice.service;
import com.zt.plat.module.qms.resource.record.controller.admin.onlyOffice.controller.vo.OnlyOfficeEditorConfigRespVO;
import jakarta.servlet.http.HttpServletResponse;
public interface OnlyOfficeService {
OnlyOfficeEditorConfigRespVO getEditorConfig(Long id);
void getDocFileContent(Long fileId, String token, HttpServletResponse response);
}

View File

@@ -299,6 +299,9 @@ public class RecordApplyServiceImpl implements RecordApplyService, BMPCallbackIn
for (RecordApplyDetailSaveReqVO item : detailList) {
RecordApplyDetailDO recordApplyDetailDO = new RecordApplyDetailDO();
recordApplyDetailDO.setApplyId(recordApplyDO.getId());
recordApplyDetailDO.setTargetId(SecurityFrameworkUtils.getLoginUserId());
recordApplyDetailDO.setTargetType(RecordConstants.TargetType.USER);
recordApplyDetailDO.setTargetName(SecurityFrameworkUtils.getLoginUserNickname());
recordApplyDetailDO.setDocumentId(item.getDocumentId());
recordApplyDetailDO.setIsModify(item.getIsModify());
recordApplyDetailDO.setModifyCause(item.getModifyCause());
@@ -328,6 +331,9 @@ public class RecordApplyServiceImpl implements RecordApplyService, BMPCallbackIn
List<RecordApplyDetailDO> detailDOList = BeanUtils.toBean(detailList, RecordApplyDetailDO.class);
for (RecordApplyDetailDO item : detailDOList) {
item.setApplyId(recordApplyDO.getId());
item.setTargetId(SecurityFrameworkUtils.getLoginUserId());
item.setTargetType(RecordConstants.TargetType.USER);
item.setTargetName(SecurityFrameworkUtils.getLoginUserNickname());
detailSaveReqVOList.add(item);
}
return detailSaveReqVOList;
@@ -343,6 +349,9 @@ public class RecordApplyServiceImpl implements RecordApplyService, BMPCallbackIn
recordApplyDetailDO.setIsModify(item.getIsModify());
recordApplyDetailDO.setModifyCause(item.getModifyCause());
recordApplyDetailDO.setFormData(item.getFormData());
recordApplyDetailDO.setTargetId(SecurityFrameworkUtils.getLoginUserId());
recordApplyDetailDO.setTargetType(RecordConstants.TargetType.USER);
recordApplyDetailDO.setTargetName(SecurityFrameworkUtils.getLoginUserNickname());
detailSaveReqVOList.add(recordApplyDetailDO);
}
return detailSaveReqVOList;
@@ -702,12 +711,15 @@ public class RecordApplyServiceImpl implements RecordApplyService, BMPCallbackIn
Long documentId = applyDetailDO.getDocumentId();
detailDO.setDocumentId(documentId);
detailDO.setIsModify(1);
detailDO.setTargetId(applyDetailDO.getTargetId());
detailDO.setTargetType(applyDetailDO.getTargetType());
detailDO.setTargetName(applyDetailDO.getTargetName());
detailDO.setModifyCause(applyDetailDO.getModifyCause());
detailDO.setApplyStartDate(LocalDateTime.now());
// detailDO.setApplyStartDate(LocalDateTime.now());
String formData = applyDetailDO.getFormData();
JSONObject formDataJson = JSONObject.parseObject(formData);
// 把documentId 存到 formDataJson 中key = id 的里面
formDataJson.put("id", documentId);
formDataJson.put("id", documentId.toString());
// detailDO.setFormData(formDataJson.toJSONString());
detailDOList.add(detailDO);
// 创建更改申请
@@ -717,6 +729,7 @@ public class RecordApplyServiceImpl implements RecordApplyService, BMPCallbackIn
recordApplyRespVO.setApplyContent(applyDetailDO.getModifyCause()); // 修改原因
recordApplyRespVO.setFormData(formDataJson.toJSONString());
recordApplyRespVO.setDetailList(detailDOList);
recordApplyRespVO.setApplyStartDate(LocalDateTime.now());
createApplyData(recordApplyRespVO);
}