Browse Source

fix:知识资源详情

zqbao 3 months ago
parent
commit
69d1c26edd
2 changed files with 55 additions and 14 deletions
  1. 34 13
      controllers/knowledge/resource.go
  2. 21 1
      models/knowledge/knowledge_resource.go

+ 34 - 13
controllers/knowledge/resource.go

@@ -748,24 +748,45 @@ func (this *ResourceController) Detail() {
 		br.Msg = "事件类型错误"
 		return
 	}
-	if item.IsFile == 1 && item.FileUrl == "" {
-		fileObj := new(knowledge.KnowledgeResourceFile)
-		fileItem, err := fileObj.GetByResourceId(item.KnowledgeResourceId)
-		if err != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = "获取失败,Err:" + err.Error()
-			return
-		}
-		var urls []string
-		for _, v := range fileItem {
-			urls = append(urls, v.FileUrl)
+	knowledgeItem := new(knowledge.KnowledgeResourceDetail)
+	var urls []string
+	if item.IsFile == 1 {
+		if item.FileUrl == "" {
+			fileObj := new(knowledge.KnowledgeResourceFile)
+			fileItem, err := fileObj.GetByResourceId(item.KnowledgeResourceId)
+			if err != nil {
+				br.Msg = "获取失败"
+				br.ErrMsg = "获取失败,Err:" + err.Error()
+				return
+			}
+			for _, v := range fileItem {
+				urls = append(urls, v.FileUrl)
+			}
+		} else {
+			urls = append(urls, item.FileUrl)
 		}
-		item.FileUrl = strings.Join(urls, ",")
 	}
 	item.Content = html.UnescapeString(item.Content)
+	knowledgeItem.KnowledgeResourceId = item.KnowledgeResourceId
+	knowledgeItem.ResourceType = item.ResourceType
+	knowledgeItem.ClassifyId = item.ClassifyId
+	knowledgeItem.Title = item.Title
+	knowledgeItem.CreateTime = item.CreateTime
+	knowledgeItem.ModifyTime = item.ModifyTime
+	knowledgeItem.State = item.State
+	knowledgeItem.Content = item.Content
+	knowledgeItem.ResourceCode = item.ResourceCode
+	knowledgeItem.AdminId = item.AdminId
+	knowledgeItem.AdminRealName = item.AdminRealName
+	knowledgeItem.SourceFrom = item.SourceFrom
+	knowledgeItem.TagId = item.TagId
+	knowledgeItem.StartTime = item.StartTime
+	knowledgeItem.EndTime = item.EndTime
+	knowledgeItem.IsFile = item.IsFile
+	knowledgeItem.FileUrl = urls
 
 	resp := &knowledge.KnowledgeResourceDetailView{
-		KnowledgeResource: item,
+		KnowledgeResourceDetail: knowledgeItem,
 	}
 	br.Ret = 200
 	br.Success = true

+ 21 - 1
models/knowledge/knowledge_resource.go

@@ -35,6 +35,26 @@ const (
 	KnowledgeResourceStatePassed
 )
 
+type KnowledgeResourceDetail struct {
+	KnowledgeResourceId int        `gorm:"column:knowledge_resource_id;;primaryKey;autoIncrement"`
+	ResourceType        int        `gorm:"column:resource_type;"`
+	ClassifyId          int        `gorm:"column:classify_id"`
+	Title               string     `gorm:"column:title;"`
+	CreateTime          time.Time  `gorm:"column:create_time" description:"创建时间"`
+	ModifyTime          time.Time  `gorm:"column:modify_time;autoUpdateTime" description:"修改时间"`
+	State               int        `gorm:"column:state" description:"状态:0:未发布;1:已发布;2:待审核;3:已驳回;4:已通过"`
+	Content             string     `gorm:"column:content"`
+	ResourceCode        string     `gorm:"column:resource_code"`
+	AdminId             int        `gorm:"column:admin_id" description:"创建者账号"`
+	AdminRealName       string     `gorm:"column:admin_real_name" description:"创建者姓名"`
+	SourceFrom          string     `gorm:"column:source_from"`
+	TagId               int        `gorm:"column:tag_id;default:0;NOT NULL"`
+	StartTime           *time.Time `gorm:"column:start_time"`
+	EndTime             *time.Time `gorm:"column:end_time"`
+	IsFile              int        `gorm:"column:is_file;default:0;NOT NULL"`
+	FileUrl             []string   `gorm:"column:file_url"`
+}
+
 type KnowledgeResource struct {
 	KnowledgeResourceId int        `gorm:"column:knowledge_resource_id;;primaryKey;autoIncrement"`
 	ResourceType        int        `gorm:"column:resource_type;"`
@@ -288,7 +308,7 @@ func (m *KnowledgeResource) GetSourceFrom(keyword string, resourceType int) (ite
 }
 
 type KnowledgeResourceDetailView struct {
-	*KnowledgeResource
+	*KnowledgeResourceDetail
 }
 
 type ResourceImportData struct {