1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package logic
- import (
- quitl "app.yhyue.com/moapp/jybase/common"
- "context"
- "github.com/zeromicro/go-zero/core/logx"
- . "knowledgeBase/rpc/knowledge/init"
- "knowledgeBase/rpc/knowledge/internal/svc"
- "knowledgeBase/rpc/knowledge/knowledgeclient"
- "knowledgeBase/rpc/knowledge/util"
- )
- 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),
- }
- }
- // 知识列表
- func (l *KnowledgeListLogic) KnowledgeList(in *knowledgeclient.ListRequest) (*knowledgeclient.ListResponse, error) {
- // todo: add your logic here and delete this line
- result := &knowledgeclient.ListResponse{}
- knowledgeList := []*knowledgeclient.KnowledgeEntity{}
- //列表数据
- sql := "SELECT b.content as answer ,c.content as question ,b.id FROM ? a LEFT JOIN ? b ON a.id = b.knowledge_id LEFT JOIN ? c ON b.id = c.answer_id WHERE b.`status` =1 and a.tenant_id=? limit ?,?"
- datalist := Mysql.SelectBySql(sql, util.KNOWLEDGE, util.ANSWER, util.QUESTION, in.TenantId, in.PageIndex, in.PageSize)
- if datalist != nil && *datalist != nil && len(*datalist) > 0 {
- for _, value := range *datalist {
- knowledge := knowledgeclient.KnowledgeEntity{}
- knowledge.Answer = quitl.ObjToString(value["answer"])
- knowledge.Question = quitl.ObjToString(value["question"])
- knowledge.AnswerId = quitl.Int64All(value["id"])
- knowledgeList = append(knowledgeList, &knowledge)
- }
- }
- result.ErrorCode = 0
- result.Data = knowledgeList
- return result, nil
- }
|