| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- package entity
- import (
- "context"
- "gorm.io/gorm"
- "yx-dataset-server/app/schema"
- )
- // GetDatasetRelationDB 获取 DatasetRelation 存储
- func GetDatasetRelationDB(ctx context.Context, defDB *gorm.DB) *gorm.DB {
- return getDBWithModel(ctx, defDB, DatasetRelation{})
- }
- // SchemaDatasetRelation DatasetRelation 对象
- type SchemaDatasetRelation schema.DatasetRelation
- // ToDatasetRelation 转换为 DatasetRelation 实体
- func (a SchemaDatasetRelation) ToDatasetRelation() *DatasetRelation {
- return &DatasetRelation{
- RecordID: a.RecordID,
- DatasetId: a.DatasetId,
- BizId: a.BizId,
- Type: a.Type,
- CreatorId: a.CreatorId,
- }
- }
- // ToSchemaDatasetRelation 转换为 DatasetRelation 对象
- func (a DatasetRelation) ToSchemaDatasetRelation() *schema.DatasetRelation {
- return &schema.DatasetRelation{
- RecordID: a.RecordID,
- DatasetId: a.DatasetId,
- BizId: a.BizId,
- Type: a.Type,
- CreatorId: a.CreatorId,
- }
- }
- // DatasetRelation 知识库关系映射(统一替代 org_dataset / user_dataset)
- type DatasetRelation struct {
- gorm.Model
- RecordID string `gorm:"column:record_id;size:32;index;"`
- DatasetId string `gorm:"column:dataset_id;size:32;index;"` // 知识库id
- BizId string `gorm:"column:biz_id;size:32;index;"` // 业务id:企业id 或 用户id
- Type int `gorm:"column:type;index;"` // 1 公共/共享 2 企业 3 个人
- CreatorId string `gorm:"column:creator_id;size:32;"` // 关联创建人
- }
- // DatasetRelations 列表
- type DatasetRelations []*DatasetRelation
- // ToSchemaDatasetRelations 批量转换
- func (a DatasetRelations) ToSchemaDatasetRelations() []*schema.DatasetRelation {
- list := make([]*schema.DatasetRelation, len(a))
- for i, item := range a {
- list[i] = item.ToSchemaDatasetRelation()
- }
- return list
- }
|