Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
ac252344eb
@ -1,5 +1,8 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.datarefluxconfig;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
|
||||
import cn.iocoder.yudao.module.llm.service.basemodel.BaseModelService;
|
||||
import cn.iocoder.yudao.module.llm.service.modelservice.ModelServiceService;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -37,6 +40,10 @@ public class DataRefluxConfigController {
|
||||
|
||||
@Resource
|
||||
private DataRefluxConfigService dataRefluxConfigService;
|
||||
@Resource
|
||||
private ModelServiceService modelServiceService;
|
||||
@Resource
|
||||
private BaseModelService baseModelService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建数据回流配置")
|
||||
@ -68,7 +75,13 @@ public class DataRefluxConfigController {
|
||||
@PreAuthorize("@ss.hasPermission('llm:data-reflux-config:query')")
|
||||
public CommonResult<DataRefluxConfigRespVO> getDataRefluxConfig(@RequestParam("id") Long id) {
|
||||
DataRefluxConfigDO dataRefluxConfig = dataRefluxConfigService.getDataRefluxConfig(id);
|
||||
return success(BeanUtils.toBean(dataRefluxConfig, DataRefluxConfigRespVO.class));
|
||||
DataRefluxConfigRespVO bean = BeanUtils.toBean(dataRefluxConfig, DataRefluxConfigRespVO.class);
|
||||
if (bean.getModelType()==0){
|
||||
bean.setModelServiceName(modelServiceService.getModelService(bean.getModelServiceId()).getServiceName());
|
||||
}else if (bean.getModelType()==1){
|
||||
bean.setModelServiceName(baseModelService.getBaseModel(bean.getModelServiceId()).getModelName());
|
||||
}
|
||||
return success(bean);
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@ -76,7 +89,19 @@ public class DataRefluxConfigController {
|
||||
@PreAuthorize("@ss.hasPermission('llm:data-reflux-config:query')")
|
||||
public CommonResult<PageResult<DataRefluxConfigRespVO>> getDataRefluxConfigPage(@Valid DataRefluxConfigPageReqVO pageReqVO) {
|
||||
PageResult<DataRefluxConfigDO> pageResult = dataRefluxConfigService.getDataRefluxConfigPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, DataRefluxConfigRespVO.class));
|
||||
if (pageResult==null){
|
||||
return success(PageResult.empty());
|
||||
}
|
||||
PageResult<DataRefluxConfigRespVO> bean = BeanUtils.toBean(pageResult, DataRefluxConfigRespVO.class);
|
||||
for (DataRefluxConfigRespVO dataRefluxConfigRespVO : bean.getList()){
|
||||
if (dataRefluxConfigRespVO.getModelType()==0){
|
||||
dataRefluxConfigRespVO.setModelServiceName(modelServiceService.getModelService(dataRefluxConfigRespVO.getModelServiceId()).getServiceName());
|
||||
}else if (dataRefluxConfigRespVO.getModelType()==1){
|
||||
dataRefluxConfigRespVO.setModelServiceName(baseModelService.getBaseModel(dataRefluxConfigRespVO.getModelServiceId()).getModelName());
|
||||
}
|
||||
}
|
||||
// PageResult<DataRefluxConfigRespVO> result = bean.setList(bean.getList());
|
||||
return success(bean);
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@ -92,4 +117,4 @@ public class DataRefluxConfigController {
|
||||
BeanUtils.toBean(list, DataRefluxConfigRespVO.class));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,11 @@ public class DataRefluxConfigPageReqVO extends PageParam {
|
||||
@Schema(description = "模型服务ID", example = "2475")
|
||||
private Long modelServiceId;
|
||||
|
||||
@Schema(description = "模型服务", example = "0")
|
||||
private String modelServiceName;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -20,8 +20,14 @@ public class DataRefluxConfigRespVO {
|
||||
@ExcelProperty("模型服务ID")
|
||||
private Long modelServiceId;
|
||||
|
||||
@Schema(description = "模型服务", example = "0")
|
||||
private String modelServiceName;
|
||||
|
||||
@Schema(description = "是否预知模型(0普通 1官方)", example = "0")
|
||||
private Long modelType;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -16,4 +16,7 @@ public class DataRefluxConfigSaveReqVO {
|
||||
@NotNull(message = "模型服务ID不能为空")
|
||||
private Long modelServiceId;
|
||||
|
||||
}
|
||||
@Schema(description = "是否预知模型(0普通 1官方)", example = "0")
|
||||
private Long modelType;
|
||||
|
||||
}
|
||||
|
@ -16,6 +16,13 @@ public class DataRefluxDataSaveReqVO {
|
||||
@NotNull(message = "模型服务ID不能为空")
|
||||
private Long modelServiceId;
|
||||
|
||||
@Schema(description = "数据回流ID", example = "31011")
|
||||
private Long configId;
|
||||
|
||||
@Schema(description = "是否预知模型(0普通 1官方)", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
|
||||
@NotNull(message = "是否预知模型(0普通 1官方)不能为空")
|
||||
private Long modelType;
|
||||
|
||||
@Schema(description = "system")
|
||||
private String system;
|
||||
|
||||
@ -25,4 +32,4 @@ public class DataRefluxDataSaveReqVO {
|
||||
@Schema(description = "Response")
|
||||
private String response;
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -31,5 +31,9 @@ public class DataRefluxConfigDO extends BaseDO {
|
||||
* 模型服务ID
|
||||
*/
|
||||
private Long modelServiceId;
|
||||
/**
|
||||
* 是否预知模型(0普通 1官方)
|
||||
*/
|
||||
private Long modelType;
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -31,6 +31,14 @@ public class DataRefluxDataDO extends BaseDO {
|
||||
* 模型服务ID
|
||||
*/
|
||||
private Long modelServiceId;
|
||||
/**
|
||||
* 数据回流ID
|
||||
*/
|
||||
private Long configId;
|
||||
/**
|
||||
* 是否预知模型(0普通 1官方)
|
||||
*/
|
||||
private Long modelType;
|
||||
/**
|
||||
* system
|
||||
*/
|
||||
@ -44,4 +52,4 @@ public class DataRefluxDataDO extends BaseDO {
|
||||
*/
|
||||
private String response;
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,20 @@
|
||||
package cn.iocoder.yudao.module.llm.service.datarefluxconfig;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.basemodel.BaseModelDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelservice.ModelServiceDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.basemodel.BaseModelMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.datarefluxconfig.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.datarefluxconfig.DataRefluxConfigDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
@ -28,6 +37,10 @@ public class DataRefluxConfigServiceImpl implements DataRefluxConfigService {
|
||||
|
||||
@Resource
|
||||
private DataRefluxConfigMapper dataRefluxConfigMapper;
|
||||
@Resource
|
||||
private ModelServiceMapper modelServiceMapper;
|
||||
@Resource
|
||||
private BaseModelMapper baseModelMapper;
|
||||
|
||||
@Override
|
||||
public Long createDataRefluxConfig(DataRefluxConfigSaveReqVO createReqVO) {
|
||||
@ -68,7 +81,30 @@ public class DataRefluxConfigServiceImpl implements DataRefluxConfigService {
|
||||
|
||||
@Override
|
||||
public PageResult<DataRefluxConfigDO> getDataRefluxConfigPage(DataRefluxConfigPageReqVO pageReqVO) {
|
||||
return dataRefluxConfigMapper.selectPage(pageReqVO);
|
||||
LambdaQueryWrapper<ModelServiceDO> like = new LambdaQueryWrapper<ModelServiceDO>().like(ModelServiceDO::getServiceName, pageReqVO.getModelServiceName());
|
||||
List<ModelServiceDO> modelServiceDOS = modelServiceMapper.selectList(like);
|
||||
List<Long> collect = modelServiceDOS.stream().map(ModelServiceDO::getId).collect(Collectors.toList());
|
||||
LambdaQueryWrapper<BaseModelDO> wrapper = new LambdaQueryWrapper<BaseModelDO>().like(BaseModelDO::getModelName, pageReqVO.getModelServiceName());
|
||||
List<BaseModelDO> baseModelDOS = baseModelMapper.selectList(wrapper);
|
||||
List<Long> collect1 = baseModelDOS.stream().map(BaseModelDO::getId).collect(Collectors.toList());
|
||||
LambdaQueryWrapperX<DataRefluxConfigDO> wrapperX = new LambdaQueryWrapperX<DataRefluxConfigDO>()
|
||||
.eqIfPresent(DataRefluxConfigDO::getModelServiceId, pageReqVO.getModelServiceId())
|
||||
.betweenIfPresent(DataRefluxConfigDO::getCreateTime, pageReqVO.getCreateTime())
|
||||
.orderByDesc(DataRefluxConfigDO::getId);
|
||||
if (collect.size()==0&&collect1.size()==0&&pageReqVO.getModelServiceName()!=null){
|
||||
return null;
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(collect) || ObjectUtil.isNotEmpty(collect1)) {
|
||||
wrapperX.and(w -> {
|
||||
if (ObjectUtil.isNotEmpty(collect)) {
|
||||
w.or().in(DataRefluxConfigDO::getModelServiceId, collect).eq(DataRefluxConfigDO::getModelType, 0);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(collect1)) {
|
||||
w.or().in(DataRefluxConfigDO::getModelServiceId, collect1).eq(DataRefluxConfigDO::getModelType, 1);
|
||||
}
|
||||
});
|
||||
}
|
||||
return dataRefluxConfigMapper.selectPage(pageReqVO,wrapperX);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user