fix: 特批附件下载新增路径式文件名端点支持前端预览识别
前端附件组件按url路径后缀判断可否预览,query携带的pdf后缀不识别导致提示仅能下载;新增GET /hcs/attachment/download/{name} 端点(路径携带文件名含后缀,行为与原接口一致),特批附件展示行url改路径式;nacos放行改 /** 通配同时覆盖两种形式
This commit is contained in:
+14
@@ -280,6 +280,20 @@ public class HcsSyncController {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 合同附件下载(路径式文件名,url 以 .pdf 等后缀结尾):前端附件组件按 url 路径后缀识别可否预览,
|
||||
* query 传 fdId 与 inline;行为与 /attachment/download 完全一致
|
||||
*/
|
||||
@GetMapping("/attachment/download/{name}")
|
||||
@ApiOperationSupport(order = 12)
|
||||
@Operation(summary = "合规附件下载(路径式文件名)", description = "C103-5 代理:路径携带文件名(含后缀,前端预览识别用),fdId 必传,inline=true 时内嵌预览")
|
||||
public void downloadAttachmentWithPath(@Parameter(description = "下载文件名(含后缀)", required = true) @PathVariable String name,
|
||||
@Parameter(description = "合规附件ID", required = true) @RequestParam String fdId,
|
||||
@Parameter(description = "内嵌预览(可选,pdf 在线查看)") @RequestParam(required = false) Boolean inline,
|
||||
HttpServletResponse response) throws Exception {
|
||||
this.downloadAttachment(fdId, name, inline, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 合同特批结果人工确认(§6-U1 过渡方案:与合规推送等效)
|
||||
*/
|
||||
|
||||
+5
-3
@@ -610,9 +610,11 @@ public class PaymentApplicationServiceImpl extends BaseServiceImpl<PaymentApplic
|
||||
Map<String, Object> specRow = new LinkedHashMap<>();
|
||||
specRow.put("name", HcsSyncConstant.PAYMENT_SPEC_ATTACH_NAME + ".pdf");
|
||||
specRow.put("attachmentType", HcsSyncConstant.PAYMENT_ATTACH_TYPE_SPEC_RESULT);
|
||||
// 网关按服务名前缀路由(口径同 nacos skip-url);inline 内嵌预览 pdf,浏览器可直接查看/另存
|
||||
specRow.put("url", "/blade-transport/hcs/attachment/download?fdId=" + vo.getHcsSpecAttachFdId()
|
||||
+ "&inline=true&name=" + URLEncoder.encode(HcsSyncConstant.PAYMENT_SPEC_ATTACH_NAME + ".pdf", StandardCharsets.UTF_8));
|
||||
// 网关按服务名前缀路由(口径同 nacos skip-url);url 路径以 .pdf 结尾供前端预览组件识别后缀,
|
||||
// inline 内嵌预览,浏览器可直接查看/另存
|
||||
specRow.put("url", "/blade-transport/hcs/attachment/download/"
|
||||
+ URLEncoder.encode(HcsSyncConstant.PAYMENT_SPEC_ATTACH_NAME + ".pdf", StandardCharsets.UTF_8)
|
||||
+ "?fdId=" + vo.getHcsSpecAttachFdId() + "&inline=true");
|
||||
rows.add(specRow);
|
||||
vo.setAttachmentsJson(JsonUtil.toJson(rows));
|
||||
} catch (Exception exception) {
|
||||
|
||||
@@ -247,8 +247,8 @@ blade:
|
||||
- /blade-transport/hcs/contractKingdee/result
|
||||
- /hcs/contractKingdee/result
|
||||
# HCS 合规附件下载(C103-5 代理):前端附件面板凭合规附件ID 查看/下载,fdId 32位随机不可枚举,免登免授权
|
||||
- /blade-transport/hcs/attachment/download
|
||||
- /hcs/attachment/download
|
||||
- /blade-transport/hcs/attachment/download/**
|
||||
- /hcs/attachment/download/**
|
||||
#授权认证配置
|
||||
auth:
|
||||
- method: ALL
|
||||
@@ -303,10 +303,10 @@ blade:
|
||||
expression: "permitAll()"
|
||||
# HCS 合规附件下载(C103-5 代理):前端附件面板凭合规附件ID 查看/下载,fdId 32位随机不可枚举,免登免授权
|
||||
- method: GET
|
||||
pattern: /blade-transport/hcs/attachment/download
|
||||
pattern: /blade-transport/hcs/attachment/download/**
|
||||
expression: "permitAll()"
|
||||
- method: GET
|
||||
pattern: /hcs/attachment/download
|
||||
pattern: /hcs/attachment/download/**
|
||||
expression: "permitAll()"
|
||||
#基础认证配置
|
||||
basic:
|
||||
|
||||
Reference in New Issue
Block a user