docsUpdateClass.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package service
  2. import (
  3. "app.yhyue.com/moapp/jy_docs/rpc/partnerlib/entity"
  4. jyDocRpcUtil "app.yhyue.com/moapp/jy_docs/services/util"
  5. "fmt"
  6. "log"
  7. )
  8. type Result struct {
  9. Code string
  10. Name string
  11. }
  12. // 获取分类详情
  13. func GetClassInfo() (results []*Result) {
  14. var (
  15. jydb = jyDocRpcUtil.GetJyDocsDB()
  16. )
  17. err := jydb.Raw(fmt.Sprintf("SELECT dcs.code,dc.name FROM %s dcs LEFT JOIN %s dc ON dcs.code = dc.code AND dcs.state = dc.state ", entity.DocClassStatisticsTable, entity.DocClassTable)).Find(&results).Error
  18. if err != nil {
  19. log.Println("获取分类信息异常:", err.Error())
  20. }
  21. return
  22. }
  23. // 更新分类文档数据量
  24. func UpdateDocsSize(classInfo *Result) {
  25. var (
  26. jydb = jyDocRpcUtil.GetJyDocsDB()
  27. count int64
  28. )
  29. err := jydb.Table(entity.DocTable).Where(" FIND_IN_SET(?,docTags)", classInfo.Name).Count(&count).Error
  30. if err != nil {
  31. log.Println(fmt.Sprintf("获取%s分类的文档量异常:%s", classInfo.Name, err.Error()))
  32. } else if count > 0 {
  33. err = jydb.Table(entity.DocClassStatisticsTable).Where("code=?", classInfo.Code).UpdateColumn("total", count).Error
  34. if err != nil {
  35. log.Println(fmt.Sprintf("获取%s分类的文档量异常:%s", classInfo.Name, err.Error()))
  36. }
  37. }
  38. }