report_selection_log.go 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. package cygx
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "time"
  5. )
  6. type CygxReportSelectionLog struct {
  7. ArticleSunId int `orm:"column(article_sun_id);pk"description:"子级报告id"`
  8. ArticleId int `description:"父级报告Id"`
  9. ChartPermissionId int `description:"行业ID"`
  10. CreateTime time.Time `description:"创建时间"`
  11. Body string `description:"内容"`
  12. IndustrialSubjectId string `description:"标的ID"`
  13. SubjectName string `description:"标的名称"`
  14. IndustrialManagementId string `description:"产业资源包Id 多个用 , 隔开"`
  15. CompanyLabel string `description:"公司标签多个用{|}隔开"`
  16. OverviewArticleId int `description:"关联的综述报告ID"`
  17. IsNew int `description:"是否为New标签"`
  18. SubjectSort int `description:"标的排序"`
  19. ChartPermissionSort int `description:"品种排序"`
  20. }
  21. type CygxReportSelectionLogRep struct {
  22. Sort string `description:"排序"`
  23. ChartPermissionId int `description:"行业ID"`
  24. ChartPermissionName string `description:"行业名称"`
  25. ChartPermissionSort string `description:"行业排序"`
  26. Body string `description:"内容"`
  27. ReportLink string `description:"报告链接"`
  28. IcoLink string `description:"图标链接"`
  29. }
  30. type AddCygxReportSelectionLog struct {
  31. ChartPermissionId int `description:"行业ID"`
  32. IndustrialSubjectId string `description:"标的ID"`
  33. SubjectName string `description:"标的名称"`
  34. IndustrialSubjectName string `description:"标的ID"`
  35. Body string `description:"内容"`
  36. IndustrialManagementId string `description:"产业资源包Id 多个用 , 隔开"`
  37. IndustrialManagementName string `description:"产业资源包Id 多个用 , 隔开"`
  38. CompanyLabel []string `description:"公司标签"`
  39. Label string `description:"公司标签"`
  40. OverviewArticleId int `description:"综述报告Id"`
  41. IsNew int `description:"是否为New标签"`
  42. }
  43. type CygxReportSelectionLogResp struct {
  44. ChartPermissionId int `description:"行业ID"`
  45. IndustrialSubjectId string `description:"标的ID"`
  46. SubjectName string `description:"标的名称"`
  47. IndustrialSubjectName string `description:"标的ID"`
  48. Body string `description:"内容"`
  49. IndustrialManagementId string `description:"产业资源包Id 多个用 , 隔开"`
  50. IndustrialManagementName string `description:"产业资源包Id 多个用 , 隔开"`
  51. CompanyLabel []string `description:"公司标签"`
  52. Label string `description:"公司标签"`
  53. OverviewArticleId int `description:"综述报告Id"`
  54. OverviewArticleTitle string `description:"综述报告标题"`
  55. IsNew int `description:"是否为New标签"`
  56. SubjectSort int `description:"标的排序"`
  57. ChartPermissionSort int `description:"品种排序"`
  58. }
  59. type CygxReportSelectionChart struct {
  60. ChartPermissionId int `description:"行业ID"`
  61. ChartPermissionName string `description:"行业名称"`
  62. List []*CygxReportSelectionLogResp `description:"列表内容’"`
  63. BodyChartSummary string `description:"行业核心逻辑汇总"`
  64. }
  65. func GetCygxReportSelectionLogRepList(articleId int, typeStr string) (items []*CygxReportSelectionLogRep, err error) {
  66. o := orm.NewOrm()
  67. sql := `SELECT l.*,c.chart_permission_name,c.image_url as ico_link
  68. FROM cygx_report_selection_log AS l
  69. LEFT JOIN chart_permission as c ON c.chart_permission_id = l.chart_permission_id
  70. WHERE 1= 1 AND article_id=? GROUP BY l.chart_permission_id `
  71. _, err = o.Raw(sql, articleId, typeStr).QueryRows(&items)
  72. return
  73. }
  74. func GetCygxReportSelectionLogRepListSon(articleId, chartPermissionId int) (items []*CygxReportSelectionLogResp, err error) {
  75. o := orm.NewOrm()
  76. sql := `SELECT
  77. l.*, l.company_label as label,
  78. l.subject_name as industrial_subject_name,
  79. ( SELECT GROUP_CONCAT( DISTINCT m.industry_name SEPARATOR ',' ) AS sellerName FROM cygx_industrial_management AS m WHERE m.industrial_management_id IN ( l.industrial_management_id ) ) AS industrial_management_name
  80. FROM
  81. cygx_report_selection_log AS l
  82. LEFT JOIN cygx_industrial_subject AS s ON s.industrial_subject_id = l.industrial_subject_id
  83. WHERE 1= 1 AND l.article_id=? AND l.chart_permission_id =? `
  84. _, err = o.Raw(sql, articleId, chartPermissionId).QueryRows(&items)
  85. return
  86. }
  87. func GetCygxReportSelectionSjdpList(articleId int, typeStr string) (items []*CygxReportSelectionLogRep, err error) {
  88. o := orm.NewOrm()
  89. sql := `SELECT l.* FROM cygx_research_summary_log AS l
  90. WHERE 1= 1 AND l.article_id=? AND l.type =? `
  91. _, err = o.Raw(sql, articleId, typeStr).QueryRows(&items)
  92. return
  93. }
  94. type CygxReportSelectionLoglist struct {
  95. ArticleSunId int `description:"子级报告id"`
  96. ArticleId int `description:"父级报告Id"`
  97. ChartPermissionId int `description:"行业ID"`
  98. PermissionName string `description:"行业ID"`
  99. CreateTime time.Time `description:"创建时间"`
  100. Body string `description:"内容"`
  101. IndustrialSubjectId string `description:"标的ID"`
  102. IndustrialManagementId string `description:"产业资源包Id 多个用 , 隔开"`
  103. SubjectName string `description:"标的名称"`
  104. IcoLink string `orm:"column(image_url)"description:"图标链接"`
  105. OverviewArticleId int `description:"关联的综述报告ID"`
  106. }
  107. // 列表
  108. func GetReportSelectionlogListAll(articleId int) (items []*CygxReportSelectionLoglist, err error) {
  109. o := orm.NewOrm()
  110. sql := `SELECT c.permission_name ,c.image_url,s.subject_name , l.*
  111. FROM
  112. cygx_report_selection_log AS l
  113. INNER JOIN chart_permission AS c ON c.chart_permission_id = l.chart_permission_id
  114. INNER JOIN cygx_industrial_subject AS s ON s.industrial_subject_id = l.industrial_subject_id
  115. WHERE l.article_id = ? `
  116. _, err = o.Raw(sql, articleId).QueryRows(&items)
  117. return
  118. }