REQ-3540: 只有年费类型才有过期时间

This commit is contained in:
yanglin 2025-03-31 11:51:01 +08:00
parent cb56ef42b2
commit 483e23ecf4
2 changed files with 10 additions and 4 deletions

View File

@ -1,6 +1,8 @@
package cn.axzo.nanopart.doc.entity;
import cn.axzo.nanopart.doc.api.enums.FileFeeType;
import cn.axzo.nanopart.doc.api.enums.FileTemplateFeeType;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
@ -56,6 +58,10 @@ public class TemplateDatabase extends BaseEntity<TemplateDatabase> implements In
@TableField(typeHandler = FastjsonTypeHandler.class)
private DatabaseAccessConfig accessConfig;
public FileTemplateFeeType getFeeType() {
return feeConfig == null ? null : feeConfig.getFeeType();
}
@Override
public String indexNodeCode() {
return code;

View File

@ -14,8 +14,6 @@ import java.util.concurrent.Future;
import javax.annotation.Nullable;
import cn.axzo.nanopart.doc.api.enums.FileTemplateFeeType;
import cn.axzo.nanopart.doc.api.enums.IndexNodeContext;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component;
@ -35,6 +33,8 @@ import cn.axzo.nanopart.doc.api.domain.IndexNodeScope;
import cn.axzo.nanopart.doc.api.enums.DatabaseScope;
import cn.axzo.nanopart.doc.api.enums.DatabaseType;
import cn.axzo.nanopart.doc.api.enums.FileDatabaseState;
import cn.axzo.nanopart.doc.api.enums.FileTemplateFeeType;
import cn.axzo.nanopart.doc.api.enums.IndexNodeContext;
import cn.axzo.nanopart.doc.api.enums.IndexNodeType;
import cn.axzo.nanopart.doc.api.filedb.request.FileDatabaseAbortRequest;
import cn.axzo.nanopart.doc.api.filedb.request.FileDatabaseActiveRequest;
@ -109,7 +109,7 @@ public class FileDatabaseService {
db.setScopeUniqueCode(scopeUniqueCode);
db.setWorkspaceId(request.getWorkspaceId());
db.setState(FileDatabaseState.ACTIVATING);
if (request.getExpiredDateMs() != null)
if (templateDb.getFeeType() == FileTemplateFeeType.ANNUAL && request.getExpiredDateMs() != null)
db.setExpireDate(new Date(request.getExpiredDateMs()));
db.setAllowedCapacity(request.getAllowedCapacity());
db.setUsedCapacity(BigDecimal.ZERO);
@ -223,7 +223,7 @@ public class FileDatabaseService {
.eq(FileDatabase::getCode, request.getCode()) //
.set(FileDatabase::getAllowedCapacity, request.getAllowedCapacity()) //
.set(FileDatabase::getPurchaseDate, new Date()) //
.set(expireDate != null && templateDb.getFeeConfig().getFeeType() == FileTemplateFeeType.ANNUAL,
.set(templateDb.getFeeType() == FileTemplateFeeType.ANNUAL && expireDate != null,
FileDatabase::getExpireDate, expireDate);
}