report_selection_log.go 6.1 KB

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