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

feat: 創建個數攔截

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