保留从main分支暂存的所有修改

# Conflicts:
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/controller/ModelController.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/mapper/ModelMapper.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/pojo/ModelDTO.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/service/Impl/ModelServiceImpl.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/service/ModelService.java
#	src/main/resources/mapper/ModelMapper.xml

# Conflicts:
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/controller/ModelController.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/mapper/ModelMapper.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/pojo/ModelDTO.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/service/Impl/ModelServiceImpl.java
#	src/main/java/com/bipt/intelligentapplicationorchestrationservice/service/ModelService.java
#	src/main/resources/mapper/ModelMapper.xml
This commit is contained in:
2025-05-20 17:14:09 +08:00
parent 56bfdad0c0
commit 999fd82ccc
7 changed files with 169 additions and 0 deletions

View File

@ -0,0 +1,35 @@
package com.bipt.intelligentapplicationorchestrationservice.controller;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelDTO;
import com.bipt.intelligentapplicationorchestrationservice.pojo.OptResult;
import com.bipt.intelligentapplicationorchestrationservice.service.ModelService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Slf4j
@RestController
@RequestMapping("/model")
@Tag(name = "模型部分相关接口")
public class ModelController {
@Autowired
private ModelService modelService;
@Operation(summary = "创建模型")
@PostMapping("/createModel")
public OptResult creatModel(@RequestBody ModelDTO dto){
log.info("创建模型");
modelService.createModel(dto);
return OptResult.success();
}
@Operation(summary = "新增模型版本")
@PostMapping("/createModelVersion")
public OptResult createModelVersion(@RequestBody ModelDTO dto){
log.info("新增模型版本");
modelService.createModelVersion(dto);
return OptResult.success();
}
}

View File

@ -0,0 +1,24 @@
package com.bipt.intelligentapplicationorchestrationservice.mapper;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelInfo;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelVersion;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Options;
public interface ModelMapper {
/**
* 插入模型基本信息
* @param modelInfo
*/
@Options(useGeneratedKeys = true, keyProperty = "id") //能够拿到主键值并设置给modelInfo对象
@Insert("insert into model_info(model_name) values(#{modelName})")
void insertModelInfo(ModelInfo modelInfo);
/**
* 插入模型版本信息
* @param modelVersion
*/
void insertModelVersion(ModelVersion modelVersion);
}

View File

@ -0,0 +1,20 @@
package com.bipt.intelligentapplicationorchestrationservice.pojo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ModelDTO {
private Long id; // 模型id
private String modelName; // 模型名称
private Integer datasetId; // 数据集id
private Integer modelSize; // 模型大小
private String dataPreHandleFile; // 数据预处理文件存储路
private String version; //模型版本
}

View File

@ -24,5 +24,17 @@ public class ModelVersion implements Serializable {
private String modelPath; // 模型存储路径 private String modelPath; // 模型存储路径
private Integer status; // 模型状态1代表上线0代表不上线 private Integer status; // 模型状态1代表上线0代表不上线
private LocalDateTime createTime; // 创建时间 private LocalDateTime createTime; // 创建时间
//补充更新时间字段
private LocalDateTime updateTime; // 更新时间
//创建模型部分补充的字段
private Integer modelSize; // 模型大小
private String dataPreHandleFile; // 数据预处理文件存储路径
//模型信息管理部分补充的字段
private String modelSuperArgs; // 模型超参数
private String modelArgsSize; // 模型参数量
private String modelSourceCodeUrl; // 模型源代码路径
private String modelFile; // 模型文件存储路径
private String modelDesignDocument; // 模型设计文档存储路径
private String lifeCycle; // 模型生命周期
} }

View File

@ -0,0 +1,58 @@
package com.bipt.intelligentapplicationorchestrationservice.service.Impl;
import com.bipt.intelligentapplicationorchestrationservice.mapper.ModelMapper;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelDTO;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelInfo;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelVersion;
import com.bipt.intelligentapplicationorchestrationservice.service.ModelService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
@Slf4j
@Service
public class ModelServiceImpl implements ModelService {
@Autowired
private ModelMapper modelMapper;
/**
* 创建模型
* @param dto
*/
@Transactional //事务注解
@Override
public void createModel(ModelDTO dto) {
log.info("创建模型");
//1.插入模型基本信息
ModelInfo modelInfo = new ModelInfo();
BeanUtils.copyProperties(dto, modelInfo, "id");
modelMapper.insertModelInfo(modelInfo);
log.info("模型id: {}", modelInfo.getId());
//2.插入模型版本信息
ModelVersion modelVersion = new ModelVersion();
//使用工具类将dto属性复制给modelVersion
BeanUtils.copyProperties(dto, modelVersion, "id");
modelVersion.setModelId(modelInfo.getId());
modelVersion.setCreateTime(LocalDateTime.now());
modelVersion.setUpdateTime(LocalDateTime.now());
modelMapper.insertModelVersion(modelVersion);
}
/**
* 新增模型版本
* @param dto
*/
@Override
public void createModelVersion(ModelDTO dto) {
log.info("新增模型版本");
ModelVersion modelVersion = new ModelVersion();
BeanUtils.copyProperties(dto, modelVersion, "id");
modelVersion.setModelId(dto.getId());
modelVersion.setCreateTime(LocalDateTime.now());
modelVersion.setUpdateTime(LocalDateTime.now());
modelMapper.insertModelVersion(modelVersion);
}
}

View File

@ -0,0 +1,10 @@
package com.bipt.intelligentapplicationorchestrationservice.service;
import com.bipt.intelligentapplicationorchestrationservice.pojo.ModelDTO;
public interface ModelService {
void createModel(ModelDTO dto);
void createModelVersion(ModelDTO dto);
}

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bipt.intelligentapplicationorchestrationservice.mapper.ModelMapper">
<!--插入模型版本信息-->
<insert id="insertModelVersion">
insert into model_version (model_id, dataset_id, model_size, data_pre_handle_file, create_time, update_time, version)
values (#{modelId}, #{datasetId}, #{modelSize}, #{dataPreHandleFile}, #{createTime}, #{updateTime}, #{version})
</insert>
</mapper>