Commit 28d29468 authored by alex yao's avatar alex yao

feat: 創建個數攔截

parent cf49e421
......@@ -13,6 +13,8 @@ import cn.com.poc.common.constant.CommonConstant;
import cn.com.poc.common.utils.Assert;
import cn.com.poc.common.utils.BlContext;
import cn.com.poc.common.utils.JsonUtils;
import cn.com.poc.equity.aggregate.MemberEquityService;
import cn.com.poc.equity.domain.MemberEquityInfo;
import cn.com.poc.knowledge.entity.BizKnowledgeDocumentEntity;
import cn.com.poc.knowledge.service.BizKnowledgeDocumentService;
import cn.com.poc.support.security.oauth.entity.UserBaseEntity;
......@@ -95,9 +97,9 @@ public class AgentApplicationInfoServiceImpl implements AgentApplicationInfoServ
@Resource
private BizAgentApplicationDialoguesRecordService bizAgentApplicationDialoguesRecordService;
@Override
public BizAgentApplicationInfoEntity saveOrUpdate(BizAgentApplicationInfoEntity entity) throws Exception {
//todo 次数检查
// 如果存在agentId,则判断变量结构是否有变化,如果有变化,则删除redis中的数据
if (StringUtils.isNotBlank(entity.getAgentId())) {
......
......@@ -19,6 +19,7 @@ import cn.com.poc.equity.aggregate.MemberEquityService;
import cn.com.poc.equity.aggregate.PointDeductionRulesService;
import cn.com.poc.equity.constants.ModifyEventEnum;
import cn.com.poc.equity.constants.RuleType;
import cn.com.poc.equity.domain.MemberEquityInfo;
import cn.com.poc.equity.domain.modifyEquityInfo.AgentUseModifyEventInfo;
import cn.com.poc.equity.entity.BizPointDeductionRulesEntity;
import cn.com.poc.equity.service.BizPointDeductionRulesService;
......@@ -172,7 +173,13 @@ public class AgentApplicationInfoRestImpl implements AgentApplicationInfoRest {
Long userId = userBaseEntity.getUserId();
dto.getBaseInfo().setMemberId(userId.intValue());
BizAgentApplicationInfoEntity entity = AgentApplicationInfoConvert.dtoToEntity(dto);
//次数检查
if (StringUtils.isBlank(entity.getAgentId())) {
MemberEquityInfo equityInfo = memberEquityService.getEquityInfo(userId);
if (equityInfo.getAgentNum() <= equityInfo.getUsedAgentNum()) {
throw new I18nMessageException("exception/create.num.limit");
}
}
return AgentApplicationInfoConvert.entityToDto(agentApplicationInfoService.saveOrUpdate(entity));
}
......@@ -473,7 +480,8 @@ public class AgentApplicationInfoRestImpl implements AgentApplicationInfoRest {
LongMemory.clean(agentId);
}
private void dataReport(AgentApplicationPreviewDto dto, UserBaseEntity userBaseEntity, String agentId, Long pointDeductionNum) {
private void dataReport(AgentApplicationPreviewDto dto, UserBaseEntity userBaseEntity, String agentId, Long
pointDeductionNum) {
if (StringUtils.isBlank(dto.getChannel())) {
dto.setChannel(DataAnalyzeChannelEnum.preview.getChannel());
}
......
......@@ -4,6 +4,8 @@ import cn.com.poc.common.constant.CommonConstant;
import cn.com.poc.common.utils.BlContext;
import cn.com.poc.common.utils.FileUtils;
import cn.com.poc.common.utils.JsonUtils;
import cn.com.poc.equity.aggregate.MemberEquityService;
import cn.com.poc.equity.domain.MemberEquityInfo;
import cn.com.poc.knowledge.aggregate.KnowledgeService;
import cn.com.poc.knowledge.constant.KnowledgeConstant;
import cn.com.poc.knowledge.convert.BizKnowledgeInfoConvert;
......@@ -14,11 +16,9 @@ import cn.com.poc.knowledge.entity.BizKnowledgeInfoEntity;
import cn.com.poc.knowledge.query.KnowledgeInfosQueryCondition;
import cn.com.poc.knowledge.query.KnowledgeInfosQueryItem;
import cn.com.poc.knowledge.rest.KnowledgeRest;
import cn.com.poc.knowledge.service.BizKnowledgeDocumentService;
import cn.com.poc.knowledge.service.BizKnowledgeInfoService;
import cn.com.poc.support.security.oauth.entity.UserBaseEntity;
import cn.com.poc.thirdparty.resource.demand.ai.entity.knowledge.GetKnowledgeChunkInfoResult;
import cn.com.yict.framemax.core.context.Context;
import cn.com.yict.framemax.core.i18n.I18nMessageException;
import cn.com.yict.framemax.core.i18n.I18nUtils;
import cn.com.yict.framemax.data.model.PagingInfo;
......@@ -31,7 +31,6 @@ import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.swing.text.AbstractDocument;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
......@@ -45,6 +44,9 @@ public class KnowledgeRestImpl implements KnowledgeRest {
@Resource
private BizKnowledgeInfoService bizKnowledgeInfoService;
@Resource
private MemberEquityService memberEquityService;
@Override
public List<BizKnowledgeDocumentDto> uploadDocument(MultipartFile[] documentFiles) throws Exception {
Assert.notEmpty(documentFiles);
......@@ -242,8 +244,8 @@ public class KnowledgeRestImpl implements KnowledgeRest {
public BizKnowledgeInfoDto createKnowledge(BizKnowledgeInfoDto dto) throws Exception {
Assert.notNull(dto.getKnowledgeName(), I18nUtils.message("assert/knowledge.name.null"));
UserBaseEntity userBaseEntity = BlContext.getCurrentUserNotException();
//todo 次数检查
//次数检查
checkEquity(userBaseEntity);
BizKnowledgeInfoEntity bizKnowledgeInfoEntity = new BizKnowledgeInfoEntity();
bizKnowledgeInfoEntity.setKnowledgeName(dto.getKnowledgeName());
bizKnowledgeInfoEntity.setMemberId(userBaseEntity.getUserId().toString());
......@@ -320,4 +322,13 @@ public class KnowledgeRestImpl implements KnowledgeRest {
Assert.notEmpty(kdIds);
return knowledgeService.getChunkInfo(kdIds, query, pagingInfo);
}
private void checkEquity(UserBaseEntity userBaseEntity) throws Exception {
MemberEquityInfo equityInfo = memberEquityService.getEquityInfo(userBaseEntity.getUserId());
if (equityInfo.getUsedKnowledgeNum() >= equityInfo.getKnowledgeNum()) {
throw new I18nMessageException("exception/create.num.limit");
}
}
}
......@@ -80,3 +80,4 @@ remark.max.len=Remark content too long
file.content.empty=The file content cannot be empty
payment.package.configuration.not.exist=The equity packet configuration does not exist
no.permission=No permission
create.num.limit=Creating has reached its maximum limit
\ No newline at end of file
......@@ -80,3 +80,4 @@ remark.max.len=\u5185\u5BB9\u8FC7\u957F
file.content.empty=\u6587\u6863\u5185\u5BB9\u4E0D\u80FD\u4E3A\u7A7A
payment.package.configuration.not.exist=\u6743\u76CA\u5305\u914D\u7F6E\u4E0D\u5B58\u5728
no.permission=\u6682\u65E0\u6743\u9650
create.num.limit=\u521B\u5EFA\u5DF2\u8FBE\u6700\u5927\u4E0A\u9650
\ No newline at end of file
......@@ -80,3 +80,4 @@ remark.max.len=\u5185\u5BB9\u904E\u9577
file.content.empty=\u6587\u4EF6\u5185\u5BB9\u4E0D\u80FD\u7232\u7A7A
payment.package.configuration.not.exist=\u6B0A\u76CA\u5305\u914D\u7F6E\u4E0D\u5B58\u5728
no.permission=\u66AB\u7121\u6B0A\u9650
create.num.limit=\u5275\u5EFA\u5DF2\u9054\u6700\u5927\u4E0A\u9650
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment