Merge remote-tracking branch 'ztcloud/test' into dev

This commit is contained in:
yangchaojin
2026-01-28 19:00:36 +08:00
43 changed files with 1524 additions and 89 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -340,7 +340,8 @@ CREATE TABLE infra_file (
updater varchar(64) DEFAULT '' NULL, updater varchar(64) DEFAULT '' NULL,
update_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL, update_time datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
deleted bit DEFAULT '0' NOT NULL, deleted bit DEFAULT '0' NOT NULL,
DOWNLOAD_COUNT INT DEFAULT 0 NOT NULL DOWNLOAD_COUNT INT DEFAULT 0 NOT NULL,
DOWNLOADABLE SMALLINT DEFAULT 1 NOT NULL
); );
COMMENT ON COLUMN infra_file.id IS '文件编号'; COMMENT ON COLUMN infra_file.id IS '文件编号';
@@ -358,6 +359,7 @@ COMMENT ON COLUMN infra_file.updater IS '更新者';
COMMENT ON COLUMN infra_file.update_time IS '更新时间'; COMMENT ON COLUMN infra_file.update_time IS '更新时间';
COMMENT ON COLUMN infra_file.deleted IS '是否删除'; COMMENT ON COLUMN infra_file.deleted IS '是否删除';
COMMENT ON COLUMN INFRA_FILE.DOWNLOAD_COUNT IS '下载次数'; COMMENT ON COLUMN INFRA_FILE.DOWNLOAD_COUNT IS '下载次数';
COMMENT ON COLUMN INFRA_FILE.DOWNLOADABLE IS '是否可下载1是0否';
COMMENT ON TABLE infra_file IS '文件表'; COMMENT ON TABLE infra_file IS '文件表';
CREATE INDEX idx_infra_file_hash ON infra_file(hash); CREATE INDEX idx_infra_file_hash ON infra_file(hash);

View File

@@ -0,0 +1,43 @@
-- iWork 用印回调日志DM8
-- 表system_iwork_seal_log
-- 序列system_iwork_seal_log_seq
-- 清理旧对象(若存在)
DROP TABLE IF EXISTS system_iwork_seal_log;
CREATE TABLE system_iwork_seal_log (
id BIGINT NOT NULL,
request_id VARCHAR(128) NOT NULL,
business_code VARCHAR(128),
biz_callback_key VARCHAR(255),
status INTEGER,
retry_count INTEGER DEFAULT 0,
max_retry INTEGER,
last_error_message VARCHAR(512),
raw_callback VARCHAR(2000),
last_callback_time DATETIME,
creator VARCHAR(64),
create_time DATETIME DEFAULT SYSDATE,
updater VARCHAR(64),
update_time DATETIME DEFAULT SYSDATE,
deleted SMALLINT DEFAULT 0 NOT NULL,
PRIMARY KEY (id),
UNIQUE (request_id)
);
COMMENT ON TABLE system_iwork_seal_log IS 'iWork 用印回调日志';
COMMENT ON COLUMN system_iwork_seal_log.id IS '主键';
COMMENT ON COLUMN system_iwork_seal_log.request_id IS 'iWork requestId 唯一标识';
COMMENT ON COLUMN system_iwork_seal_log.business_code IS '业务单号';
COMMENT ON COLUMN system_iwork_seal_log.biz_callback_key IS '业务回调标识';
COMMENT ON COLUMN system_iwork_seal_log.status IS '状态枚举';
COMMENT ON COLUMN system_iwork_seal_log.retry_count IS '已重试次数';
COMMENT ON COLUMN system_iwork_seal_log.max_retry IS '最大重试次数快照';
COMMENT ON COLUMN system_iwork_seal_log.last_error_message IS '最后错误信息';
COMMENT ON COLUMN system_iwork_seal_log.raw_callback IS '回调原文截断';
COMMENT ON COLUMN system_iwork_seal_log.last_callback_time IS '最近回调时间';
COMMENT ON COLUMN system_iwork_seal_log.creator IS '创建者';
COMMENT ON COLUMN system_iwork_seal_log.create_time IS '创建时间';
COMMENT ON COLUMN system_iwork_seal_log.updater IS '更新者';
COMMENT ON COLUMN system_iwork_seal_log.update_time IS '最后更新时间';
COMMENT ON COLUMN system_iwork_seal_log.deleted IS '是否删除';

View File

@@ -0,0 +1,9 @@
package com.zt.plat.framework.common.enums;
/**
* 验证码发送方式
*/
public enum VerifyCodeSendType {
SMS, // 短信验证码
E_OFFICE // e办消息推送
}

View File

@@ -21,4 +21,6 @@ public class FileCreateReqDTO {
@NotEmpty(message = "文件内容不能为空") @NotEmpty(message = "文件内容不能为空")
private byte[] content; private byte[] content;
@Schema(description = "是否可下载true是false否", example = "true")
private Boolean downloadable;
} }

View File

@@ -37,4 +37,7 @@ public class FileRespDTO {
@Schema(description = "文件下载次数") @Schema(description = "文件下载次数")
private Integer downloadCount; private Integer downloadCount;
@Schema(description = "是否可下载true是false否")
private Boolean downloadable;
} }

View File

@@ -23,8 +23,8 @@ import java.util.Date;
@Accessors(chain = true) @Accessors(chain = true)
public class FileRespVO { public class FileRespVO {
public String getUrl() { public String getUrl() {
// 加密附件不返回 url // 不可下载 或 加密附件不返回 url
if (Boolean.TRUE.equals(this.isEncrypted)) { if (Boolean.FALSE.equals(this.downloadable) || Boolean.TRUE.equals(this.isEncrypted)) {
return null; return null;
} }
// 如果 url 已经是临时下载地址(如预签名 URL直接返回 // 如果 url 已经是临时下载地址(如预签名 URL直接返回
@@ -62,8 +62,8 @@ public class FileRespVO {
private String previewUrl; private String previewUrl;
public String getPreviewUrl() { public String getPreviewUrl() {
// 加密附件不返回 previewUrl // 不可下载不返回 previewUrl
if (Boolean.TRUE.equals(this.isEncrypted)) { if (Boolean.FALSE.equals(this.downloadable) ) {
return null; return null;
} }
// 仅当 url 不为空时生成 // 仅当 url 不为空时生成
@@ -75,7 +75,15 @@ public class FileRespVO {
if (onlinePreview == null || onlinePreview.isEmpty()) { if (onlinePreview == null || onlinePreview.isEmpty()) {
return null; return null;
} }
String presignedUrl = this.getUrl(); // 添加加密文件预览逻辑
String presignedUrl = null;
if (Boolean.TRUE.equals(this.isEncrypted)) {
if (url != null && (url.startsWith("http://") || url.startsWith("https://"))) {
presignedUrl = url;
}
}else{
presignedUrl = this.getUrl();
}
if (presignedUrl == null || presignedUrl.isEmpty()) { if (presignedUrl == null || presignedUrl.isEmpty()) {
return null; return null;
} }
@@ -102,4 +110,6 @@ public class FileRespVO {
@Schema(description = "下载次数") @Schema(description = "下载次数")
private Integer downloadCount; private Integer downloadCount;
@Schema(description = "是否可下载true是false否")
private Boolean downloadable;
} }

View File

@@ -70,6 +70,11 @@ public class FileDO extends BaseDO {
*/ */
private Integer downloadCount; private Integer downloadCount;
/**
* 是否可下载true是false否
*/
private Boolean downloadable;
/** /**
* 是否加密 * 是否加密
* <p> * <p>

Some files were not shown because too many files have changed in this diff Show More