|
@@ -1059,23 +1059,57 @@ func addExcelResource(req *knowledge.AddReq, sysUser *system.Admin) (err error,
|
|
|
}
|
|
|
|
|
|
func GetKnowledgeResourceTmpList(dashboardDetailId, resourceType, adminId int) (resp *knowledge.BiDashboardResourceAddResp, msg string, err error) {
|
|
|
- data, err := utils.Rc.RedisBytes(utils.CACHE_KEY_BI_DASHBOARD_PREPARE_RESOURCE + strconv.Itoa(adminId))
|
|
|
- resp = new(knowledge.BiDashboardResourceAddResp)
|
|
|
- if err != nil {
|
|
|
- if err == redis.Nil {
|
|
|
+ if dashboardDetailId <= 0 {
|
|
|
+ data, er := utils.Rc.RedisBytes(utils.CACHE_KEY_BI_DASHBOARD_PREPARE_RESOURCE + strconv.Itoa(adminId))
|
|
|
+ req := new(knowledge.BiDashboardResourceAddReq)
|
|
|
+ if er != nil {
|
|
|
+ if er == redis.Nil {
|
|
|
+ msg = "暂无知识库"
|
|
|
+ err = nil
|
|
|
+ return
|
|
|
+ }
|
|
|
+ msg = "获取知识库模板列表失败"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if err = json.Unmarshal(data, &req); err != nil {
|
|
|
+ msg = "获取知识库模板列表失败"
|
|
|
+ }
|
|
|
+
|
|
|
+ selectedIds := make([]int, 0)
|
|
|
+ for _, item := range req.KnowledgeResourceList {
|
|
|
+ if item.ResourceType == resourceType {
|
|
|
+ selectedIds = append(selectedIds, item.KnowledgeResourceId)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ knowledgeList, er := knowledge.GetKnowledgeResourceByIds(selectedIds)
|
|
|
+ if er != nil {
|
|
|
+ msg = "获取知识库模板列表失败"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp = new(knowledge.BiDashboardResourceAddResp)
|
|
|
+ resp.KnowledgeResourceList = toKnowledgeResourceList(knowledgeList)
|
|
|
+ } else {
|
|
|
+ condition := ` AND bi_dashboard_detail_id = ? AND knowledge_resource_type = ? `
|
|
|
+ pars := []interface{}{dashboardDetailId, resourceType}
|
|
|
+ resourceIds, er := knowledge.GetKnowledgeResourceIdsByCondition(condition, pars)
|
|
|
+ if er != nil {
|
|
|
+ msg = "获取知识库模板列表失败"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(resourceIds) == 0 {
|
|
|
msg = "暂无知识库"
|
|
|
- err = nil
|
|
|
return
|
|
|
}
|
|
|
- msg = "获取知识库模板列表失败"
|
|
|
- return
|
|
|
- }
|
|
|
- if err = json.Unmarshal(data, &resp); err != nil {
|
|
|
- msg = "获取知识库模板列表失败"
|
|
|
+ resp = new(knowledge.BiDashboardResourceAddResp)
|
|
|
+ knowledgeList, er := knowledge.GetKnowledgeResourceByIds(resourceIds)
|
|
|
+ if er != nil {
|
|
|
+ msg = "获取知识库模板列表失败"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp.BiDashboardDetailId = dashboardDetailId
|
|
|
+ resp.KnowledgeResourceList = toKnowledgeResourceList(knowledgeList)
|
|
|
}
|
|
|
-
|
|
|
return
|
|
|
-
|
|
|
}
|
|
|
|
|
|
func GetKnowledgeResourceList(dashboardDetailId, resourceType, currentIndex, pageSize int) (resp *knowledge.KnowledgeResourceListResp, msg string, err error) {
|