aa
This commit is contained in:
29
business/jxstore/knowledge/knowledge.go
Normal file
29
business/jxstore/knowledge/knowledge.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package knowledge
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
)
|
||||
|
||||
func GetKnowledgeDepot(ctx *jxcontext.Context, keyword string, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
return dao.GetKnowledgeDepot(dao.GetDB(), keyword, offset, pageSize)
|
||||
}
|
||||
|
||||
func UpdateKnowledgeDepot(ctx *jxcontext.Context, id int, content string, isDel bool) (err error) {
|
||||
var (
|
||||
db = dao.GetDB()
|
||||
know = &model.KnowledgeDepot{}
|
||||
)
|
||||
know.ID = id
|
||||
err = dao.GetEntity(db, know)
|
||||
if isDel {
|
||||
dao.DeleteEntity(db, know)
|
||||
} else {
|
||||
if content != know.Content {
|
||||
know.Content = content
|
||||
dao.UpdateEntity(db, know, "Content")
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
35
business/model/dao/knowledge.go
Normal file
35
business/model/dao/knowledge.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package dao
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
)
|
||||
|
||||
func GetKnowledgeDepot(db *DaoDB, keyword string, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
var (
|
||||
knows []*model.KnowledgeDepot
|
||||
)
|
||||
sql := `
|
||||
SELECT SQL_CALC_FOUND_ROWS *
|
||||
FROM knowledge_depot
|
||||
WHERE 1 = 1
|
||||
`
|
||||
sqlParams := []interface{}{}
|
||||
if keyword != "" {
|
||||
sql += " AND (content LIKE ? OR title LIKE ?)"
|
||||
sqlParams = append(sqlParams, "%"+keyword+"%", "%"+keyword+"%")
|
||||
}
|
||||
sql += " LIMIT ? OFFSET ?"
|
||||
pageSize = jxutils.FormalizePageSize(pageSize)
|
||||
offset = jxutils.FormalizePageOffset(offset)
|
||||
sqlParams = append(sqlParams, pageSize, offset)
|
||||
txDB, _ := Begin(db)
|
||||
defer Commit(db, txDB)
|
||||
if err = GetRowsTx(txDB, &knows, sql, sqlParams...); err == nil {
|
||||
page = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: knows,
|
||||
}
|
||||
}
|
||||
return page, err
|
||||
}
|
||||
Reference in New Issue
Block a user