数据回流--保存数据
This commit is contained in:
parent
3f8965e885
commit
93333d885e
@ -129,8 +129,8 @@ public class DataRefluxConfigController {
|
||||
|
||||
@GetMapping("/review-the-data")
|
||||
@Operation(summary = "数据回流配置查看数据")
|
||||
public CommonResult<List<DataRefluxDataRespVO>> reviewTheData(@Valid DataRefluxConfigPageReqVO pageReqVO) {
|
||||
List<DataRefluxDataDO> list = dataRefluxDataService.getTheDetails(pageReqVO);
|
||||
public CommonResult<PageResult<DataRefluxDataRespVO>> reviewTheData(@Valid DataRefluxConfigPageReqVO pageReqVO) {
|
||||
PageResult<DataRefluxDataDO> list = dataRefluxDataService.getTheDetails(pageReqVO);
|
||||
return success(BeanUtils.toBean(list, DataRefluxDataRespVO.class));
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.datarefluxdata;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.datarefluxconfig.vo.DataRefluxConfigPageReqVO;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -13,6 +14,8 @@ import javax.validation.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
@ -83,16 +86,21 @@ public class DataRefluxDataController {
|
||||
@GetMapping("/review-the-data")
|
||||
@Operation(summary = "数据回流配置保存数据")
|
||||
public void saveTheData(@Valid DataRefluxDataReqVO pageReqVO){
|
||||
if (pageReqVO.getId() != null){
|
||||
pageReqVO.setIds(Collections.singletonList(pageReqVO.getId()));
|
||||
if (pageReqVO.getDataid() != null){
|
||||
pageReqVO.setDataids(Collections.singletonList(pageReqVO.getDataid()));
|
||||
}
|
||||
//TODO 数据回流配置保存数据
|
||||
dataRefluxDataService.getDataRefluxDataIDs(pageReqVO);
|
||||
}
|
||||
|
||||
@GetMapping("/save-all-the-data")
|
||||
@Operation(summary = "数据回流配置保存全部数据")
|
||||
public void saveAllTheData(@Valid DataRefluxDataReqVO pageReqVO){
|
||||
//TODO 全部保存数据
|
||||
public void saveAllTheData(@Valid DataRefluxDataReqVO pageReqVO, DataRefluxConfigPageReqVO page){
|
||||
page.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
PageResult<DataRefluxDataDO> list = dataRefluxDataService.getTheDetails(page);
|
||||
List<DataRefluxDataDO> doList = list.getList();
|
||||
List<Long> collect = doList.stream().map(DataRefluxDataDO::getId).collect(Collectors.toList());
|
||||
pageReqVO.setDataids(collect);
|
||||
dataRefluxDataService.getDataRefluxDataIDs(pageReqVO);
|
||||
}
|
||||
|
||||
|
||||
|
@ -9,8 +9,21 @@ import java.util.List;
|
||||
@Data
|
||||
public class DataRefluxDataReqVO {
|
||||
@Schema(description = "配置ID",example = "16823")
|
||||
private Long id;
|
||||
private Long dataid;
|
||||
|
||||
@Schema(description = "多个配置ID",example = "16823")
|
||||
private List<Long> ids;
|
||||
private List<Long> dataids;
|
||||
|
||||
@Schema(description = "数据集类型",example = "16823")
|
||||
private Long datasetType;
|
||||
|
||||
@Schema(description = "数据集名称",example = "16823")
|
||||
private String datasetName;
|
||||
|
||||
@Schema(description = "数据集描述",example = "16823")
|
||||
private String datasetIntro;
|
||||
|
||||
@Schema(description = "保存字段",example = "16823")
|
||||
private Long saveField;
|
||||
|
||||
}
|
||||
|
@ -54,7 +54,10 @@ public interface DataRefluxDataService {
|
||||
*/
|
||||
PageResult<DataRefluxDataDO> getDataRefluxDataPage(DataRefluxDataPageReqVO pageReqVO);
|
||||
|
||||
List<DataRefluxDataDO> getTheDetails(DataRefluxConfigPageReqVO pageReqVO);
|
||||
PageResult<DataRefluxDataDO> getTheDetails(DataRefluxConfigPageReqVO pageReqVO);
|
||||
|
||||
Long saveDataRefluxData(DataRefluxDataSaveReqVO createReqVO);
|
||||
|
||||
void getDataRefluxDataIDs(DataRefluxDataReqVO pageReqVO);
|
||||
|
||||
}
|
||||
|
@ -1,9 +1,17 @@
|
||||
package cn.iocoder.yudao.module.llm.service.datarefluxdata;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.iocoder.yudao.framework.common.exception.ServiceException;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.datarefluxconfig.vo.DataRefluxConfigPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.datarefluxconfig.DataRefluxConfigDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetQuestionDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.datarefluxconfig.DataRefluxConfigMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetAnswerMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetQuestionMapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
@ -37,6 +45,12 @@ public class DataRefluxDataServiceImpl implements DataRefluxDataService {
|
||||
private DataRefluxDataMapper dataRefluxDataMapper;
|
||||
@Resource
|
||||
private DataRefluxConfigMapper dataRefluxConfigMapper;
|
||||
@Resource
|
||||
private DatasetMapper datasetMapper;
|
||||
@Resource
|
||||
private DatasetQuestionMapper datasetQuestionMapper;
|
||||
@Resource
|
||||
private DatasetAnswerMapper datasetAnswerMapper;
|
||||
|
||||
@Override
|
||||
public Long createDataRefluxData(DataRefluxDataSaveReqVO createReqVO) {
|
||||
@ -87,7 +101,7 @@ public class DataRefluxDataServiceImpl implements DataRefluxDataService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataRefluxDataDO> getTheDetails(DataRefluxConfigPageReqVO pageReqVO) {
|
||||
public PageResult<DataRefluxDataDO> getTheDetails(DataRefluxConfigPageReqVO pageReqVO) {
|
||||
// DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
// 解析字符串为 LocalDate
|
||||
@ -105,7 +119,7 @@ public class DataRefluxDataServiceImpl implements DataRefluxDataService {
|
||||
.eq(ObjectUtil.isNotNull(pageReqVO.getId()),DataRefluxDataDO::getConfigId, pageReqVO.getId())
|
||||
.ge(ObjectUtil.isNotNull(startDate),DataRefluxDataDO::getCreateTime, startDate)
|
||||
.le(ObjectUtil.isNotNull(endDate),DataRefluxDataDO::getCreateTime,endDate);
|
||||
return dataRefluxDataMapper.selectList(eq);
|
||||
return dataRefluxDataMapper.selectPage(pageReqVO, eq);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -124,4 +138,34 @@ public class DataRefluxDataServiceImpl implements DataRefluxDataService {
|
||||
}
|
||||
return 0L;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getDataRefluxDataIDs(DataRefluxDataReqVO pageReqVO) {
|
||||
LambdaQueryWrapper<DataRefluxDataDO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(pageReqVO.getDataids().size()>0,DataRefluxDataDO::getId, pageReqVO.getDataids());
|
||||
List<DataRefluxDataDO> dataRefluxDataDOS = dataRefluxDataMapper.selectList(wrapper);
|
||||
DatasetDO dataRespVO = BeanUtils.toBean(pageReqVO, DatasetDO.class);
|
||||
dataRespVO.setId(null);
|
||||
DatasetDO datasetDO = datasetMapper.selectOne(new LambdaQueryWrapper<DatasetDO>().eq(DatasetDO::getDatasetName, dataRespVO.getDatasetName()));
|
||||
if (datasetDO!=null){
|
||||
throw new RuntimeException("数据集名称重复");
|
||||
}
|
||||
datasetMapper.insert(dataRespVO);
|
||||
for (DataRefluxDataDO dataRefluxDataDO : dataRefluxDataDOS){
|
||||
DatasetQuestionDO datasetQuestionDO = new DatasetQuestionDO();
|
||||
datasetQuestionDO.setDatasetId(dataRespVO.getId());
|
||||
datasetQuestionDO.setQuestion(dataRefluxDataDO.getPrompt());
|
||||
datasetQuestionDO.setSystem(dataRefluxDataDO.getSystem());
|
||||
datasetQuestionMapper.insert(datasetQuestionDO);
|
||||
if (pageReqVO.getSaveField()==1) {
|
||||
DatasetAnswerDO datasetAnswerDO = new DatasetAnswerDO();
|
||||
datasetAnswerDO.setDatasetId(dataRespVO.getId());
|
||||
datasetAnswerDO.setQuestionId(datasetQuestionDO.getId());
|
||||
datasetAnswerDO.setAnswer(dataRefluxDataDO.getResponse());
|
||||
datasetAnswerMapper.insert(datasetAnswerDO);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user