更新 llms-full.txt

This commit is contained in:
oyo
2025-06-25 15:23:05 +08:00
parent 417abbbae5
commit 1699cc611f

View File

@@ -323,7 +323,7 @@ DateTime endTime //会议结束时间
MeetingRoomWithMeetingVo{
Long id;// 会议室id
String name;// 会议室名称
List<MeetingVo> meetingList{ //反向注入的用该会议室的会议信息TOCO自动生成的内部VO派生自MeetingBaseDTo
List<MeetingVo> meetingList{ //反向注入的用该会议室的会议信息TOCO自动生成的内部VO派生自MeetingBaseDto
Long id;// 会议id
String title; //会议标题
DateTime startTime //会议开始时间
@@ -331,9 +331,30 @@ DateTime endTime //会议结束时间
}
}
```
- **TOCO中json结构描述:** 在TOCO中VO使用一个json结构表示该结构可用于理解VO的含义或作为创建、更新VO工具的参数。部分字段的含义为expandList为正向替换reverseExpandList为反向注入extendFieldList为来自派生源DTO的字段customFieldList为自定义字段。expandListList中field为正向替换对应的本表外键字段的名字fieldName为正向替换之后给该字段的起的新名字reverseExpandList中field为反向注入对应的他表外键字段的名字fieldName为反向注入之后给该字段的起的新名字customFieldList中uuid为自定义字段特有的UUID创建DTO的时候不需要填入因为TOCO会自动为其分配UUID更新DTO的时候需要传入用于定位需要更新的自定义字段typeUuid参数对应类结构的UUID当type为List且innerType=Enum、Eo时会包含该字段extendFieldList中name为继承字段的名称如果DTO中的字段为DTO或List<DTO>类型,则extendFieldList中会有一个vo结构用来表示该字段DTO类型派生出的VO定义
- **TOCO中json结构描述:** 在TOCO中VO使用一个json结构表示该结构可用于理解VO的含义或作为创建、更新VO工具的参数。部分字段的含义为expandList为正向替换reverseExpandList为反向注入extendFieldList为来自派生源DTO的字段customFieldList为自定义字段。expandListList中field为正向替换对应的本表外键字段的名字fieldName为正向替换之后给该字段的起的新名字reverseExpandList中field为反向注入对应的他表外键字段的名字fieldName为反向注入之后给该字段的起的新名字customFieldList中uuid为自定义字段特有的UUID创建DTO的时候不需要填入因为TOCO会自动为其分配UUID更新DTO的时候需要传入用于定位需要更新的自定义字段typeUuid参数对应类结构的UUID当type为List且innerType=Enum、Eo时会包含该字段extendFieldList中name为继承字段的名称如果要继承的DTO字段不是DTO类型则VO中的字段类型将与DTO字段一致如果DTO中的字段为DTO或List<DTO>类型由于VO中的字段类型不能为DTO**必须**将该DTO转换为VO才可作为VO字段使用所以extendFieldList中会有**一个vo结构**用来表示该字段DTO类型派生出的VO定义
示例如下:
- meeting_with_room_vo
系统中存在meeting_detail_dto
```json
{
"uuid": "cd55c96b-aa67-bfb2-7614-70b503a8f8bf",
"name": "meeting_detail_dto",
"fromEntity": "meeting",
"description": "会议详情",
"expandList": [
{
"field": "create_user_id",
"fieldName": "create_user",
"dto": {
"uuid": "53bb59cf-1ed2-6fb3-9f61-895b638903d8",
"name": "user_base_dto",
"fromEntity": "user",
"description": "用户基本信息"
}
}
]
}
```
- meeting_with_room_vo由meeting_detail_dto派生并继承了id和create_user字段
```json
{
"vo": {
@@ -445,7 +466,7 @@ DateTime endTime //会议结束时间
}
```
示例中meeting_with_room_vo为根VO但没有uuid为待创建的根VO。meeting_room_with_meetings_vo和meeting_base_vo为meeting_with_room_vo的子VO无法被其他根VO引用且没有uuid。
示例中meeting_with_room_vo为根VO但没有uuid为待创建的根VO。meeting_room_with_meetings_vo和meeting_base_vo为meeting_with_room_vo的子VO无法被其他根VO引用且没有uuid。另外特别注意metting_with_room_vo的extendFieldList中create_user结构含有一个vo是因为在派生源meeting_detail_dto中create_user字段为user_base_dto类型所以在metting_with_room_vo中该继承字段类型需要变为由user_base_dto派生出的VO结构。
- **派生源默认使用BaseDTO:** 除非用户指定了VO的派生源DTO否则创建VO时只可以用**BaseDTO**为派生源。
- **与DTO的转换关系:** 在创建一个**有派生源的**VO后TOCO会在生成代码时自动生成2种convert方法1.基础convert方法从DTO转换为VO仅转换结构以及基本类型字段的get/set方法命名为convertTo${VoName}、convertTo${VoName}List、convertTo${VoName}Map其中**Map转换方法**为底层批量方法通常也是自定义字段逻辑编写的位置复用性好会被其他convert方法调用单个和列表convert方法都通过**调用Map方法**来实现;2.带数据拼装逻辑的convert方法内部会**自动**调用基础convert方法从DTO转换为VO并设置基本类型字段数据然后再根据外键**自动**获取**扩展字段**的数据以拼装最终数据方法命名为convertAndAssembleData、convertAndAssembleDataList也就是说这两个方法已经**自动**获取了所有**继承字段**和**扩展字段**的数据)。这2种方法对应的代码会生成在VO对应的Converter类中