system.go 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package services
  2. import (
  3. "context"
  4. "eta/eta_forum_admin/models/mgodb"
  5. "eta/eta_forum_admin/utils"
  6. "fmt"
  7. "github.com/olivere/elastic/v7"
  8. )
  9. /*func GetCompanyNameByAdmins(adminIds []int) (adminCompanyMap map[int]string, err error) {
  10. // 查询所有机构
  11. ob := new(system.EtaBusiness)
  12. companyList, er := ob.GetItemsByCondition("", make([]interface{}, 0), []string{}, "")
  13. if er != nil {
  14. err = fmt.Errorf("获取机构信息失败 %s", err.Error())
  15. return
  16. }
  17. companyMap := make(map[string]string)
  18. if len(companyList) > 0 {
  19. for _, v := range companyList {
  20. companyMap[v.BusinessCode] = v.BusinessName
  21. }
  22. }
  23. //查询机构下的用户
  24. admin := new(system.Admin)
  25. cond := ` AND admin_id in (` + utils.GetOrmInReplace(len(adminIds)) + `)`
  26. pars := make([]interface{}, 0)
  27. pars = append(pars, adminIds)
  28. adminList, err := admin.GetItemsByCondition(cond, pars, []string{}, "")
  29. if err != nil {
  30. err = fmt.Errorf("获取机构用户失败 %s", err.Error())
  31. return
  32. }
  33. adminCompanyMap = make(map[int]string)
  34. if len(adminList) > 0 {
  35. for _, v := range adminList {
  36. tmp, ok := companyMap[v.BusinessCode]
  37. if ok {
  38. adminCompanyMap[v.AdminId] = tmp
  39. }
  40. }
  41. }
  42. return
  43. }*/
  44. // 写一个初始化的方法清空所有的es数据,表数据,mongodb数据
  45. func InitDeleteData() {
  46. // 清空es数据
  47. var err error
  48. defer func() {
  49. if err != nil {
  50. fmt.Println("EsDeleteEdbInfoData Err:", err.Error())
  51. }
  52. }()
  53. client := utils.EsClient
  54. // 删除索引下的所有数据
  55. deleteQuery := elastic.NewMatchAllQuery()
  56. // 删除图表索引数据
  57. _, err = client.DeleteByQuery().
  58. Index(utils.CHART_INDEX_NAME).
  59. Query(deleteQuery).
  60. Refresh("true"). // 添加刷新使操作立即生效
  61. Do(context.Background())
  62. if err != nil {
  63. fmt.Printf("删除图表索引(%s)失败: %v\n", utils.CHART_INDEX_NAME, err)
  64. err = nil // 清空错误继续执行后续清理
  65. }
  66. // 删除指标索引数据
  67. _, err = client.DeleteByQuery().
  68. Index(utils.DATA_INDEX_NAME).
  69. Query(deleteQuery).
  70. Refresh("true").
  71. Do(context.Background())
  72. if err != nil {
  73. fmt.Printf("删除指标索引(%s)失败: %v\n", utils.DATA_INDEX_NAME, err)
  74. err = nil
  75. }
  76. // 删除收藏索引数据
  77. _, err = client.DeleteByQuery().
  78. Index(utils.CHART_COLLECT_INDEX_NAME).
  79. Query(deleteQuery).
  80. Refresh("true").
  81. Do(context.Background())
  82. if err != nil {
  83. fmt.Printf("删除收藏索引(%s)失败: %v\n", utils.CHART_COLLECT_INDEX_NAME, err)
  84. err = nil
  85. }
  86. fmt.Println("删除es数据成功")
  87. // 删除mongodb数据
  88. err = mgodb.DeleteEdbInfoBaseDataAll()
  89. if err != nil {
  90. return
  91. }
  92. err = mgodb.DeleteEdbInfoCalculateDataAll()
  93. if err != nil {
  94. return
  95. }
  96. fmt.Println("删除mongodb数据成功")
  97. }