Commit c61b5817 authored by alex yao's avatar alex yao

feat:新增接口猜你想问

parent 3931d7f7
...@@ -3,6 +3,7 @@ package cn.com.poc.ai_dialogues.aggregate; ...@@ -3,6 +3,7 @@ package cn.com.poc.ai_dialogues.aggregate;
import cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum; import cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum;
import cn.com.poc.ai_dialogues.dto.AiDialoguesRecordDto; import cn.com.poc.ai_dialogues.dto.AiDialoguesRecordDto;
import cn.com.poc.expose.dto.DialoguesContextDto; import cn.com.poc.expose.dto.DialoguesContextDto;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
...@@ -76,4 +77,11 @@ public interface AiDialoguesService { ...@@ -76,4 +77,11 @@ public interface AiDialoguesService {
*/ */
List<String> questionAssociation(String dialogueId, String question); List<String> questionAssociation(String dialogueId, String question);
/**
* 猜你想问
*
* @param type 对话类型
*/
List<String> guessYouAsk(String type) throws Exception;
} }
...@@ -6,7 +6,9 @@ import cn.com.poc.ai_dialogues.aggregate.AiDialoguesService; ...@@ -6,7 +6,9 @@ import cn.com.poc.ai_dialogues.aggregate.AiDialoguesService;
import cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum; import cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum;
import cn.com.poc.ai_dialogues.dto.AiDialoguesRecordDto; import cn.com.poc.ai_dialogues.dto.AiDialoguesRecordDto;
import cn.com.poc.ai_dialogues.entity.BizAiDialoguesEntity; import cn.com.poc.ai_dialogues.entity.BizAiDialoguesEntity;
import cn.com.poc.ai_dialogues.entity.BizAiDialoguesGuessYouAskEntity;
import cn.com.poc.ai_dialogues.query.ProblemAssociationQueryItem; import cn.com.poc.ai_dialogues.query.ProblemAssociationQueryItem;
import cn.com.poc.ai_dialogues.service.BizAiDialoguesGuessYouAskService;
import cn.com.poc.ai_dialogues.service.BizAiDialoguesProblemAssociationService; import cn.com.poc.ai_dialogues.service.BizAiDialoguesProblemAssociationService;
import cn.com.poc.ai_dialogues.service.BizAiDialoguesService; import cn.com.poc.ai_dialogues.service.BizAiDialoguesService;
import cn.com.poc.common.constant.CommonConstant; import cn.com.poc.common.constant.CommonConstant;
...@@ -41,6 +43,8 @@ public class AiDialoguesServiceImpl implements AiDialoguesService { ...@@ -41,6 +43,8 @@ public class AiDialoguesServiceImpl implements AiDialoguesService {
@Resource @Resource
private BizFileUploadRecordService bizFileUploadRecordService; private BizFileUploadRecordService bizFileUploadRecordService;
@Resource
private BizAiDialoguesGuessYouAskService bizAiDialoguesGuessYouAskService;
@Resource @Resource
private BizAgentApplicationDialoguesRecordService bizAgentApplicationDialoguesRecordService; private BizAgentApplicationDialoguesRecordService bizAgentApplicationDialoguesRecordService;
...@@ -168,4 +172,18 @@ public class AiDialoguesServiceImpl implements AiDialoguesService { ...@@ -168,4 +172,18 @@ public class AiDialoguesServiceImpl implements AiDialoguesService {
} }
return Collections.emptyList(); return Collections.emptyList();
} }
@Override
public List<String> guessYouAsk(String type) throws Exception {
List<BizAiDialoguesGuessYouAskEntity> entities = bizAiDialoguesGuessYouAskService.findByExample(new BizAiDialoguesGuessYouAskEntity(), null);
// 新增随机逻辑
if (CollectionUtils.isNotEmpty(entities)) {
Collections.shuffle(entities); // 打乱顺序
return entities.stream()
.limit(3) // 取前三个
.map(BizAiDialoguesGuessYouAskEntity::getQuestion)
.collect(Collectors.toList());
}
return Collections.emptyList();
}
} }
package cn.com.poc.ai_dialogues.convert;
import cn.com.poc.ai_dialogues.model.BizAiDialoguesGuessYouAskModel;
import cn.com.poc.ai_dialogues.entity.BizAiDialoguesGuessYouAskEntity;
import cn.com.poc.ai_dialogues.dto.BizAiDialoguesGuessYouAskDto;
public class BizAiDialoguesGuessYouAskConvert {
public static BizAiDialoguesGuessYouAskEntity modelToEntity(BizAiDialoguesGuessYouAskModel model){
BizAiDialoguesGuessYouAskEntity entity = new BizAiDialoguesGuessYouAskEntity();
entity.setId(model.getId());
entity.setQuestion(model.getQuestion());
return entity;
}
public static BizAiDialoguesGuessYouAskModel entityToModel(BizAiDialoguesGuessYouAskEntity entity){
BizAiDialoguesGuessYouAskModel model = new BizAiDialoguesGuessYouAskModel();
model.setId(entity.getId());
model.setQuestion(entity.getQuestion());
return model;
}
public static BizAiDialoguesGuessYouAskDto entityToDto(BizAiDialoguesGuessYouAskEntity entity){
BizAiDialoguesGuessYouAskDto dto = new BizAiDialoguesGuessYouAskDto();
dto.setId(entity.getId());
dto.setQuestion(entity.getQuestion());
return dto;
}
public static BizAiDialoguesGuessYouAskEntity dtoToEntity(BizAiDialoguesGuessYouAskDto dto){
BizAiDialoguesGuessYouAskEntity entity = new BizAiDialoguesGuessYouAskEntity();
entity.setId(dto.getId());
entity.setQuestion(dto.getQuestion());
return entity;
}
}
\ No newline at end of file
package cn.com.poc.ai_dialogues.entity;
public class BizAiDialoguesGuessYouAskEntity {
private static final long serialVersionUID = 1L;
/** id
*
*/
private java.lang.Long id;
public java.lang.Long getId(){
return this.id;
}
public void setId(java.lang.Long id){
this.id = id;
}
/** question
*
*/
private java.lang.String question;
public java.lang.String getQuestion(){
return this.question;
}
public void setQuestion(java.lang.String question){
this.question = question;
}
}
\ No newline at end of file
package cn.com.poc.ai_dialogues.model;
import java.io.Serializable;
import cn.com.yict.framemax.data.model.BaseModelClass;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Id;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
/**
* Model class for biz_ai_dialogues_guess_you_ask
* 猜你想问
*/
@Entity
@Table(name = "biz_ai_dialogues_guess_you_ask")
@DynamicInsert
@DynamicUpdate
public class BizAiDialoguesGuessYouAskModel extends BaseModelClass implements Serializable {
private static final long serialVersionUID = 1L;
/** id
*
*/
private java.lang.Long id;
@Column(name = "id",length = 19)
@Id @GeneratedValue(strategy = GenerationType.AUTO)
public java.lang.Long getId(){
return this.id;
}
public void setId(java.lang.Long id){
this.id = id;
super.addValidField("id");
}
/** question
*
*/
private java.lang.String question;
@Column(name = "question",length = 2147483647)
public java.lang.String getQuestion(){
return this.question;
}
public void setQuestion(java.lang.String question){
this.question = question;
super.addValidField("question");
}
}
\ No newline at end of file
package cn.com.poc.ai_dialogues.repository;
import cn.com.yict.framemax.data.repository.Repository;
import cn.com.poc.ai_dialogues.model.BizAiDialoguesGuessYouAskModel;
public interface BizAiDialoguesGuessYouAskRepository extends Repository<BizAiDialoguesGuessYouAskModel,java.lang.Long> {
}
\ No newline at end of file
...@@ -61,4 +61,10 @@ public interface AiDialoguesRest extends BaseRest { ...@@ -61,4 +61,10 @@ public interface AiDialoguesRest extends BaseRest {
*/ */
List<String> questionAssociation(@RequestParam(required = false) String dialogueId, @RequestParam String question); List<String> questionAssociation(@RequestParam(required = false) String dialogueId, @RequestParam String question);
/**
* 猜你想问
*/
List<String> guessYouAsk(@RequestParam(required = false) String type) throws Exception;
} }
...@@ -75,6 +75,11 @@ public class AiDialoguesRestImpl implements AiDialoguesRest { ...@@ -75,6 +75,11 @@ public class AiDialoguesRestImpl implements AiDialoguesRest {
@Override @Override
public List<String> questionAssociation(String dialogueId, String question) { public List<String> questionAssociation(String dialogueId, String question) {
return aiDialoguesService.questionAssociation(dialogueId,question); return aiDialoguesService.questionAssociation(dialogueId, question);
}
@Override
public List<String> guessYouAsk(String type) throws Exception {
return aiDialoguesService.guessYouAsk(type);
} }
} }
\ No newline at end of file
package cn.com.poc.ai_dialogues.service;
import cn.com.yict.framemax.core.service.BaseService;
import cn.com.poc.ai_dialogues.entity.BizAiDialoguesGuessYouAskEntity;
import cn.com.yict.framemax.data.model.PagingInfo;
import java.util.Collection;
import java.util.List;
public interface BizAiDialoguesGuessYouAskService extends BaseService {
BizAiDialoguesGuessYouAskEntity get(java.lang.Long id) throws Exception;
List<BizAiDialoguesGuessYouAskEntity> findByExample(BizAiDialoguesGuessYouAskEntity example,PagingInfo pagingInfo) throws Exception;
BizAiDialoguesGuessYouAskEntity save(BizAiDialoguesGuessYouAskEntity entity) throws Exception;
BizAiDialoguesGuessYouAskEntity update(BizAiDialoguesGuessYouAskEntity entity) throws Exception;
void deletedById(java.lang.Long id) throws Exception;
}
\ No newline at end of file
package cn.com.poc.ai_dialogues.service.impl;
import cn.com.yict.framemax.core.service.impl.BaseServiceImpl;
import cn.com.poc.ai_dialogues.service.BizAiDialoguesGuessYouAskService;
import cn.com.poc.ai_dialogues.model.BizAiDialoguesGuessYouAskModel;
import cn.com.poc.ai_dialogues.entity.BizAiDialoguesGuessYouAskEntity;
import cn.com.poc.ai_dialogues.convert.BizAiDialoguesGuessYouAskConvert;
import cn.com.poc.ai_dialogues.repository.BizAiDialoguesGuessYouAskRepository;
import cn.com.yict.framemax.data.model.PagingInfo;
import org.springframework.stereotype.Service;
import org.apache.commons.collections4.CollectionUtils;
import java.util.ArrayList;
import java.util.stream.Collectors;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.util.Assert;
@Service
public class BizAiDialoguesGuessYouAskServiceImpl extends BaseServiceImpl
implements BizAiDialoguesGuessYouAskService {
@Resource
private BizAiDialoguesGuessYouAskRepository repository;
public BizAiDialoguesGuessYouAskEntity get(java.lang.Long id) throws Exception{
Assert.notNull(id);
BizAiDialoguesGuessYouAskModel model = this.repository.get(id);
if (model == null){
return null;
}
return BizAiDialoguesGuessYouAskConvert.modelToEntity(model);
}
public List<BizAiDialoguesGuessYouAskEntity> findByExample(BizAiDialoguesGuessYouAskEntity example,PagingInfo pagingInfo) throws Exception{
List<BizAiDialoguesGuessYouAskEntity> result = new ArrayList<BizAiDialoguesGuessYouAskEntity>();
BizAiDialoguesGuessYouAskModel model = new BizAiDialoguesGuessYouAskModel();
if (example != null){
model = BizAiDialoguesGuessYouAskConvert.entityToModel(example);
}
List<BizAiDialoguesGuessYouAskModel> models = this.repository.findByExample(model,pagingInfo);
if (CollectionUtils.isNotEmpty(models)) {
result = models.stream().map(BizAiDialoguesGuessYouAskConvert::modelToEntity).collect(Collectors.toList());
}
return result;
}
public BizAiDialoguesGuessYouAskEntity save(BizAiDialoguesGuessYouAskEntity entity) throws Exception{
Assert.notNull(entity);
entity.setId(null);
BizAiDialoguesGuessYouAskModel model = BizAiDialoguesGuessYouAskConvert.entityToModel(entity);
BizAiDialoguesGuessYouAskModel saveModel = this.repository.save(model);
return BizAiDialoguesGuessYouAskConvert.modelToEntity(saveModel);
}
public BizAiDialoguesGuessYouAskEntity update(BizAiDialoguesGuessYouAskEntity entity) throws Exception{
Assert.notNull(entity);
Assert.notNull(entity.getId(),"update pk can not be null");
BizAiDialoguesGuessYouAskModel model = this.repository.get(entity.getId());
if (entity.getQuestion() != null){
model.setQuestion(entity.getQuestion());
}
BizAiDialoguesGuessYouAskModel saveModel = this.repository.save(model);
return BizAiDialoguesGuessYouAskConvert.modelToEntity(saveModel);
}
public void deletedById(java.lang.Long id) throws Exception{
Assert.notNull(id);
BizAiDialoguesGuessYouAskModel model = this.repository.get(id);
if (model != null){
}
}
}
\ 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