新增启用接口

This commit is contained in:
潘荣晟
2025-09-29 15:49:53 +08:00
parent 9cdd7db87a
commit 7b304c1529
6 changed files with 24 additions and 6 deletions

View File

@@ -7,7 +7,8 @@ public enum DeleteStatusEnum {
STATUS_DRF(TmplStsEnum.DRAFT.getCode(), new HashSet<>() {{add(TmplStsEnum.DRAFT.getCode());}}),
STATUS_PUB(TmplStsEnum.PUBLISHED.getCode(), new HashSet<>()),
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>(){{add(TmplStsEnum.STOPPED.getCode());}});
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>(){{add(TmplStsEnum.STOPPED.getCode());}}),
STATUS_START(TmplStsEnum.START.getCode(), new HashSet<>());
private final String code;

View File

@@ -10,7 +10,8 @@ public enum PublishStatusEnum {
STATUS_DRF(TmplStsEnum.DRAFT.getCode(), new HashSet<>() {{add(TmplStsEnum.DRAFT.getCode());}}),
STATUS_PUB(TmplStsEnum.PUBLISHED.getCode(), new HashSet<>()),
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>() );
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>() ),
STATUS_START(TmplStsEnum.START.getCode(), new HashSet<>() {{add(TmplStsEnum.START.getCode());}});
private final String code;

View File

@@ -9,7 +9,8 @@ public enum TmplStsEnum {
// 已发布状态
PUBLISHED("PUB", "已发布"),
// 已停用状态
STOPPED("STOP", "已停用");
STOPPED("STOP", "已停用"),
START("START", "已启用");
// 获取状态编码
private final String code;

View File

@@ -10,10 +10,11 @@ public enum UpdateStatusEnum {
add(TmplStsEnum.STOPPED.getCode());
}}),
STATUS_PUB(TmplStsEnum.PUBLISHED.getCode(), new HashSet<>()),
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>(){{
STATUS_STOP(TmplStsEnum.STOPPED.getCode(), new HashSet<>() {{
add(TmplStsEnum.DRAFT.getCode());
add(TmplStsEnum.STOPPED.getCode());
}});
}}),
STATUS_START(TmplStsEnum.START.getCode(), new HashSet<>());
private final String code;

View File

@@ -75,4 +75,9 @@ public class TemplateInstanceRespVO {
@ExcelProperty("模版分类名称")
private String tpName;
@Schema(description = "创建人", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建人")
private String creator;
}

View File

@@ -224,6 +224,9 @@ public class TemplateInstanceServiceImpl implements TemplateInstanceService {
boolean transitionAllowed = false;
if (status != null) {
transitionAllowed = status.isTransitionAllowed(TmplStsEnum.DRAFT.getCode());
if (!transitionAllowed){
transitionAllowed = status.isTransitionAllowed(TmplStsEnum.START.getCode());
}
}
if (!transitionAllowed) {
throw exception(STATUS_OPERATION_FAIL);
@@ -253,7 +256,7 @@ public class TemplateInstanceServiceImpl implements TemplateInstanceService {
code = TmplStsEnum.STOPPED.getCode();
} else if (reqVO.getType().equals("enable")) {
// 启用
code = TmplStsEnum.PUBLISHED.getCode();
code = TmplStsEnum.START.getCode();
}
if (code.isEmpty()) {
throw exception(ILLEGAL_OPERATION_TYPE);
@@ -269,8 +272,14 @@ public class TemplateInstanceServiceImpl implements TemplateInstanceService {
public TemplateInstanceRespVO createVersion(String id) {
validateTemplateInstanceExists(Long.valueOf(id));
TemplateInstanceDO templateInstanceDO = templateInstanceMapper.selectById(id);
//如果当前状态不是草稿或者是已启用则不能创建新版本
log.info("当前状态【{}】", templateInstanceDO.getSts());
if (!TmplStsEnum.DRAFT.getCode().equals(templateInstanceDO.getSts()) && !TmplStsEnum.START.getCode().equals(templateInstanceDO.getSts())) {
throw exception(STATUS_OPERATION_FAIL);
}
TemplateInstanceDO newTpInstanceDO = BeanUtils.toBean(templateInstanceDO, TemplateInstanceDO.class);
newTpInstanceDO.setId(null);
newTpInstanceDO.setTenantId(templateInstanceDO.getTenantId());
newTpInstanceDO.setVer(incrementVersion(templateInstanceDO.getVer()));
newTpInstanceDO.setPublishTime(LocalDateTime.now());
newTpInstanceDO.setOrigCntt(templateInstanceDO.getCntt()!=null?templateInstanceDO.getCntt():templateInstanceDO.getOrigCntt());//模板实例内容,默认为上一个版本的当前文件内容