Skip to content

Commit 9bc768b

Browse files
committed
[app-platform] 按照团队标准刷新注释信息, UserModelPo增加createdAt参数。
1 parent 581ca3a commit 9bc768b

7 files changed

Lines changed: 114 additions & 56 deletions

File tree

app-builder/plugins/aipp-custom-model-center/src/main/java/modelengine/fit/jade/aipp/model/mapper/ModelMapper.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
package modelengine.fit.jade.aipp.model.mapper;
88

99
import modelengine.fit.jade.aipp.model.po.ModelPo;
10+
1011
import org.apache.ibatis.annotations.Mapper;
1112

1213
import java.util.List;
@@ -38,14 +39,14 @@ public interface ModelMapper {
3839
/**
3940
* 插入模型信息。
4041
*
41-
* @param model 模型对象
42+
* @param model 表示待插入的模型信息 {@link ModelPo}
4243
*/
4344
void insertModel(ModelPo model);
4445

4546
/**
4647
* 根据模型ID删除模型信息。
4748
*
48-
* @param modelId 模型ID
49+
* @param modelId 表示删除模型标识 {@link String}
4950
*/
5051
void deleteByModelId(String modelId);
5152
}

app-builder/plugins/aipp-custom-model-center/src/main/java/modelengine/fit/jade/aipp/model/mapper/UserModelMapper.java

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
package modelengine.fit.jade.aipp.model.mapper;
88

99
import modelengine.fit.jade.aipp.model.po.UserModelPo;
10+
1011
import org.apache.ibatis.annotations.Mapper;
1112
import org.apache.ibatis.annotations.Param;
1213

@@ -37,41 +38,42 @@ public interface UserModelMapper {
3738
UserModelPo getDefault(String userId);
3839

3940
/**
40-
* 判断该用户是否已有模型绑定记录
41+
* 判断指定用户是否已绑定默认模型
4142
*
42-
* @param userId 用户标识
43-
* @return true 表示已有模型,false 表示无记录
43+
* @param userId 表示用户标识 {@link String}
44+
* @return 若已绑定默认模型则返回 {@code true},否则返回 {@code false}
4445
*/
4546
boolean userHasDefaultModel(String userId);
4647

4748
/**
4849
* 插入用户模型绑定关系。
4950
*
50-
* @param userModel 用户模型关系对象
51+
* @param userModel 表示待插入的用户模型关系对象 {@link UserModelPo}
5152
*/
5253
void addUserModel(UserModelPo userModel);
5354

5455
/**
55-
* 根据模型ID删除用户模型绑定关系
56+
* 根据模型标识删除对应的用户模型绑定关系
5657
*
57-
* @param modelId 模型ID
58+
* @param modelId 表示模型标识 {@link String}
5859
*/
5960
void deleteByModelId(String modelId);
6061

6162
/**
62-
* 查找指定用户最新创建的模型记录(按 created_at 降序排序,取第一条)。
63-
* @param userId 用户标识。
63+
* 查找指定用户最新创建的模型绑定记录(按创建时间降序,取第一条)。
64+
*
65+
* @param userId 表示用户标识 {@link String}。
66+
* @return 最新的用户模型关系 {@link UserModelPo}。
6467
*/
6568
UserModelPo findLatestUserModel(String userId);
6669

6770
/**
68-
* 将指定用户所有模型记录的 is_default 状态更新,
69-
* 如果记录的 model_id 等于传入的 modelId,则设置为 1,否则设置为 0。
71+
* 更新指定用户的所有模型绑定记录的默认状态。
72+
* <p>若记录中的模型标识与传入的 {@link String modelId} 一致,则设置为默认(1),否则设为非默认(0)。</p>
7073
*
71-
* @param userId 用户ID
72-
* @param modelId 模型ID
73-
* @return 更新的记录数
74+
* @param userId 表示用户标识 {@link String}。
75+
* @param modelId 表示需设为默认的模型标识 {@link String}。
76+
* @return 成功更新的记录条数 {@code int}。
7477
*/
7578
int switchDefaultForUser(@Param("userId") String userId, @Param("modelId") String modelId);
76-
7779
}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
/*---------------------------------------------------------------------------------------------
2+
* Copyright (c) 2025 Huawei Technologies Co., Ltd. All rights reserved.
3+
* This file is a part of the ModelEngine Project.
4+
* Licensed under the MIT License. See License.txt in the project root for license information.
5+
*--------------------------------------------------------------------------------------------*/
6+
7+
package modelengine.fit.jade.aipp.model.po;
8+
9+
import lombok.AllArgsConstructor;
10+
import lombok.Data;
11+
import lombok.EqualsAndHashCode;
12+
import modelengine.jade.common.po.BasePo;
13+
14+
import java.time.LocalDateTime;
15+
16+
/**
17+
* 用户模型关系信息用于前端表单展示。
18+
*
19+
* @author lizhichao
20+
* @since 2025/4/8
21+
*/
22+
@Data
23+
@EqualsAndHashCode(callSuper = true)
24+
@AllArgsConstructor
25+
public class UserModelDetailPo extends BasePo {
26+
/**
27+
* 表示创建时间。
28+
*/
29+
private LocalDateTime createdAt;
30+
31+
/**
32+
* 模型 ID。
33+
*/
34+
private String modelId;
35+
36+
/**
37+
* 用户标识。
38+
*/
39+
private String userId;
40+
41+
/**
42+
* 模型名称。
43+
*/
44+
private String modelName;
45+
46+
/**
47+
* 模型访问地址。
48+
*/
49+
private String baseUrl;
50+
51+
/**
52+
* 是否为默认模型(1表示默认,0表示非默认)。
53+
*/
54+
private int isDefault;
55+
}

app-builder/plugins/aipp-custom-model-center/src/main/java/modelengine/fit/jade/aipp/model/po/UserModelPo.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
import lombok.EqualsAndHashCode;
1212
import modelengine.jade.common.po.BasePo;
1313

14+
import java.time.LocalDateTime;
15+
1416
/**
1517
* 用户模型关系信息 ORM 对象。
1618
*
@@ -21,6 +23,10 @@
2123
@EqualsAndHashCode(callSuper = true)
2224
@AllArgsConstructor
2325
public class UserModelPo extends BasePo {
26+
/**
27+
* 表示创建时间。
28+
*/
29+
private LocalDateTime createdAt;
2430
private String userId;
2531
private String modelId;
2632
private String apiKey;

app-builder/plugins/aipp-custom-model-center/src/main/java/modelengine/fit/jade/aipp/model/repository/UserModelPluginRepo.java

Lines changed: 21 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,58 +17,53 @@
1717
@Group(name = "User_Model_Tool")
1818
public interface UserModelPluginRepo {
1919
/**
20-
* 根据用户标识来查询该用户可用的用戶模型列表
20+
* 根据用户标识来查询该用户可用的用户模型列表
2121
*
22-
* @param userId 表示用户标识。
23-
* @return 表示该用户可用的用戶模型列表 {@link List}{@code <}{@link UserModelDetailPo}{@code >}。
22+
* @param userId 表示用户标识 {@link String}
23+
* @return 表示该用户可用的用户模型列表 {@link List}{@code <}{@link UserModelDetailPo}{@code >}。
2424
*/
2525
@ToolMethod(name = "get_user_model_list", description = "根据用户标识来查询该用户可用的用戶模型列表")
2626
@Genericable(id = "modelengine.fit.jade.aipp.model.getUserModelList")
2727
List<UserModelDetailPo> getUserModelList(@Property(description = "用户id", required = true) String userId);
2828

2929
/**
3030
* 为用户添加模型。
31+
* <p>插入模型名称、访问地址与密钥等信息,并与指定用户进行绑定。</p>
3132
*
32-
* @param userId 表示用户标识
33-
* @param apiKey 表示该用户访问模型所需的 API Key。
34-
* @param modelName 表示模型名称。
35-
* @param baseUrl 表示模型访问的地址
36-
* @return 添加结果提示信息。
33+
* @param userId 表示用户标识 {@link String}
34+
* @param apiKey 表示该用户访问模型所需的 API Key {@link String}
35+
* @param modelName 表示模型名称 {@link String}
36+
* @param baseUrl 表示模型访问的地址 {@link String}
37+
* @return 添加结果提示信息 {@link String}
3738
*/
3839
@ToolMethod(name = "add_user_model", description = "为用户添加可用的模型信息")
3940
@Genericable(id = "modelengine.fit.jade.userModel.addUserModel")
40-
String addUserModel(
41-
@Property(description = "用户id", required = true) String userId,
41+
String addUserModel(@Property(description = "用户id", required = true) String userId,
4242
@Property(description = "模型访问的 API Key", required = true) String apiKey,
4343
@Property(description = "模型名称", required = true) String modelName,
44-
@Property(description = "模型访问地址", required = true) String baseUrl
45-
);
44+
@Property(description = "模型访问地址", required = true) String baseUrl);
4645

4746
/**
4847
* 删除用户绑定的模型信息。
4948
*
50-
* @param userId 表示用户标识。
51-
* @param modelId 表示待删除的模型标识。
52-
* @return 删除结果提示信息。
49+
* @param userId 表示用户标识 {@link String}
50+
* @param modelId 表示待删除的模型标识 {@link String}
51+
* @return 删除结果提示信息 {@link String}
5352
*/
5453
@ToolMethod(name = "delete_user_model", description = "删除用户绑定的模型信息")
5554
@Genericable(id = "modelengine.fit.jade.userModel.deleteUserModel")
56-
String deleteUserModel(
57-
@Property(description = "用户id", required = true) String userId,
58-
@Property(description = "模型id", required = true) String modelId
59-
);
55+
String deleteUserModel(@Property(description = "用户id", required = true) String userId,
56+
@Property(description = "模型id", required = true) String modelId);
6057

6158
/**
6259
* 将指定模型设置为该用户的默认模型。
6360
*
64-
* @param userId 表示用户标识。
65-
* @param modelId 表示要设为默认的模型标识。
66-
* @return 切换默认模型的提示信息。
61+
* @param userId 表示用户标识 {@link String}
62+
* @param modelId 表示要设为默认的模型标识 {@link String}
63+
* @return 切换默认模型的提示信息 {@link String}
6764
*/
6865
@ToolMethod(name = "switch_default_model", description = "将指定模型设置为用户的默认模型")
6966
@Genericable(id = "modelengine.fit.jade.userModel.switchDefaultModel")
70-
String switchDefaultModel(
71-
@Property(description = "用户id", required = true) String userId,
72-
@Property(description = "默认模型id", required = true) String modelId
73-
);
67+
String switchDefaultModel(@Property(description = "用户id", required = true) String userId,
68+
@Property(description = "默认模型id", required = true) String modelId);
7469
}

app-builder/plugins/aipp-custom-model-center/src/main/java/modelengine/fit/jade/aipp/model/repository/impl/UserModelPluginRepoImpl.java

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import modelengine.jade.carver.tool.annotation.Group;
1717
import modelengine.jade.carver.tool.annotation.ToolMethod;
1818

19+
import java.time.LocalDateTime;
1920
import java.util.*;
2021
import java.util.stream.Collectors;
2122

@@ -37,8 +38,8 @@ public class UserModelPluginRepoImpl implements UserModelPluginRepo {
3738
/**
3839
* 构造方法。
3940
*
40-
* @param modelMapper 模型信息表的 MyBatis 映射接口,用于处理模型增删查改
41-
* @param userModelMapper 用户与模型绑定关系的 MyBatis 映射接口,用于管理用户模型映射数据。
41+
* @param modelMapper 表示模型信息表的 MyBatis 映射接口 {@link ModelMapper},用于处理模型的增删查改操作
42+
* @param userModelMapper 表示用户与模型绑定关系的 MyBatis 映射接口 {@link UserModelMapper},用于管理用户模型映射数据。
4243
*/
4344
public UserModelPluginRepoImpl(ModelMapper modelMapper, UserModelMapper userModelMapper) {
4445
this.modelMapper = modelMapper;
@@ -73,14 +74,12 @@ public List<UserModelDetailPo> getUserModelList(String userId) {
7374
));
7475
return userModelPos.stream().map(userModel -> {
7576
ModelPo model = modelMap.get(userModel.getModelId());
76-
return new UserModelDetailPo(
77-
userModel.getCreatedAt(),
77+
return new UserModelDetailPo(userModel.getCreatedAt(),
7878
userModel.getModelId(),
7979
userModel.getUserId(),
8080
model != null ? model.getName() : null,
8181
model != null ? model.getBaseUrl() : null,
82-
userModel.getIsDefault()
83-
);
82+
userModel.getIsDefault());
8483
}).collect(Collectors.toList());
8584
}
8685

@@ -90,8 +89,7 @@ public List<UserModelDetailPo> getUserModelList(String userId) {
9089
@Attribute(key = "tags", value = "FIT"), @Attribute(key = "tags", value = "MODEL")
9190
})
9291
@Property(description = "为用户添加可用的模型信息")
93-
public String addUserModel(String userId, String apiKey,
94-
String modelName, String baseUrl) {
92+
public String addUserModel(String userId, String apiKey, String modelName, String baseUrl) {
9593
log.info("start add user model for {}.", userId);
9694
String modelId = UUID.randomUUID().toString().replace("-", "");
9795
int isDefault = this.userModelMapper.userHasDefaultModel(userId) ? 0 : 1;
@@ -101,7 +99,7 @@ public String addUserModel(String userId, String apiKey,
10199
modelPo.setUpdatedBy(userId);
102100
this.modelMapper.insertModel(modelPo);
103101

104-
UserModelPo userModelPo = new UserModelPo(userId, modelId, apiKey, isDefault);
102+
UserModelPo userModelPo = new UserModelPo(LocalDateTime.now(), userId, modelId, apiKey, isDefault);
105103
userModelPo.setCreatedBy(userId);
106104
userModelPo.setUpdatedBy(userId);
107105
this.userModelMapper.addUserModel(userModelPo);
@@ -141,7 +139,8 @@ public String deleteUserModel(String userId, String modelId) {
141139
.max(Comparator.comparing(UserModelPo::getCreatedAt))
142140
.orElse(null);
143141
this.userModelMapper.switchDefaultForUser(userId, latest.getModelId());
144-
return String.format("删除默认模型成功,添加%s为默认模型。", this.modelMapper.get(latest.getModelId()).getName());
142+
return String.format("删除默认模型成功,添加%s为默认模型。",
143+
this.modelMapper.get(latest.getModelId()).getName());
145144
}
146145
return "删除模型成功,当前无默认模型。";
147146
}

app-builder/plugins/aipp-custom-model-center/src/main/resources/mapper/UserModelMapper.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
<mapper namespace="modelengine.fit.jade.aipp.model.mapper.UserModelMapper">
44
<resultMap id="BaseResultMap" type="modelengine.fit.jade.aipp.model.po.UserModelPo">
55
<id property="id" column="id"/>
6+
<result property="createdAt" column="created_at"/>
67
<result property="userId" column="user_id"/>
78
<result property="modelId" column="model_id"/>
89
<result property="apiKey" column="api_key"/>
910
<result property="isDefault" column="is_default"/>
1011
</resultMap>
1112

1213
<sql id="Base_Column_List">
13-
user_id, model_id, api_key, is_default
14+
created_at, user_id, model_id, api_key, is_default
1415
</sql>
1516

1617
<select id="listUserModels" resultType="modelengine.fit.jade.aipp.model.po.UserModelPo" resultMap="BaseResultMap">
@@ -48,11 +49,10 @@
4849
</delete>
4950

5051
<select id="findLatestUserModel" resultType="modelengine.fit.jade.aipp.model.po.UserModelPo">
51-
SELECT user_id, model_id, api_key, is_default
52+
SELECT created_at, user_id, model_id, api_key, is_default
5253
FROM t_app_engine_user_model
5354
WHERE user_id = #{userId}
54-
ORDER BY created_at DESC
55-
LIMIT 1
55+
ORDER BY created_at DESC LIMIT 1
5656
</select>
5757

5858
<update id="switchDefaultForUser" parameterType="map">

0 commit comments

Comments
 (0)