package logic import ( "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/internal/service" "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/internal/svc" "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/knowledgeclient" "context" "github.com/zeromicro/go-zero/core/logx" ) type KnowledgeListLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewKnowledgeListLogic(ctx context.Context, svcCtx *svc.ServiceContext) *KnowledgeListLogic { return &KnowledgeListLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } // KnowledgeList 知识列表 func (l *KnowledgeListLogic) KnowledgeList(in *knowledgeclient.ListRequest) (*knowledgeclient.ListResponse, error) { // todo: add your logic here and delete this line result := &knowledgeclient.ListResponse{} /*var knowledgeList knowledgeclient.ListData var data []*knowledgeclient.KnowledgeEntity countSql := "SELECT COUNT(b.id) FROM " + util.KNOWLEDGE + " a LEFT JOIN " + util.ANSWER + " b ON a.id = b.knowledge_id LEFT JOIN " + util.QUESTION + " c ON b.id = c.answer_id WHERE b.`status` =1 and a.ent_id=?" count := Mysql.CountBySql(countSql, in.EntId) log.Println("总数:", count) if count > 0 { //列表数据 sql := "SELECT b.content as answer,c.content as question,b.id,b.knowledge_id FROM " + util.KNOWLEDGE + " a LEFT JOIN " + util.ANSWER + " b ON a.id = b.knowledge_id LEFT JOIN " + util.QUESTION + " c ON b.id = c.answer_id WHERE b.`status` =1 and a.ent_id=? order by b.update_time desc limit ?,?" log.Println(sql, in.EntId, (in.PageIndex-1)*in.PageSize, in.PageSize) datalist := Mysql.SelectBySql(sql, in.EntId, (in.PageIndex-1)*in.PageSize, in.PageSize) if datalist != nil && *datalist != nil && len(*datalist) > 0 { for _, value := range *datalist { knowledge := knowledgeclient.KnowledgeEntity{} knowledge.Answer = cm.ObjToString(value["answer"]) knowledge.Question = cm.ObjToString(value["question"]) knowledge.AnswerId = cm.Int64All(value["id"]) knowledge.KnowledgeId = cm.Int64All(value["knowledge_id"]) data = append(data, &knowledge) } } //log.Println("数据:", data) knowledgeList.Total = count knowledgeList.Data = data }*/ k := service.KnowledgeService{} knowledgeList := k.KnowledgeList(in) result.ErrorCode = 0 result.Data = knowledgeList return result, nil }