report_selection_log.go 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  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. }
  55. type CygxReportSelectionChart struct {
  56. ChartPermissionId int `description:"行业ID"`
  57. ChartPermissionName string `description:"行业名称"`
  58. List []*CygxReportSelectionLogResp `description:"列表内容’"`
  59. BodyChartSummary string `description:"行业核心逻辑汇总"`
  60. }
  61. func GetCygxReportSelectionLogRepList(articleId int, typeStr string) (items []*CygxReportSelectionLogRep, err error) {
  62. o := orm.NewOrm()
  63. sql := `SELECT l.*,c.chart_permission_name,c.image_url as ico_link
  64. FROM cygx_report_selection_log AS l
  65. LEFT JOIN chart_permission as c ON c.chart_permission_id = l.chart_permission_id
  66. WHERE 1= 1 AND article_id=? GROUP BY l.chart_permission_id `
  67. _, err = o.Raw(sql, articleId, typeStr).QueryRows(&items)
  68. return
  69. }
  70. func GetCygxReportSelectionLogRepListSon(articleId, chartPermissionId int) (items []*CygxReportSelectionLogResp, err error) {
  71. o := orm.NewOrm()
  72. sql := `SELECT
  73. l.*, l.company_label as label,
  74. l.subject_name as industrial_subject_name,
  75. ( 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
  76. FROM
  77. cygx_report_selection_log AS l
  78. LEFT JOIN cygx_industrial_subject AS s ON s.industrial_subject_id = l.industrial_subject_id
  79. WHERE 1= 1 AND l.article_id=? AND l.chart_permission_id =? `
  80. _, err = o.Raw(sql, articleId, chartPermissionId).QueryRows(&items)
  81. return
  82. }
  83. func GetCygxReportSelectionSjdpList(articleId int, typeStr string) (items []*CygxReportSelectionLogRep, err error) {
  84. o := orm.NewOrm()
  85. sql := `SELECT l.* FROM cygx_research_summary_log AS l
  86. WHERE 1= 1 AND l.article_id=? AND l.type =? `
  87. _, err = o.Raw(sql, articleId, typeStr).QueryRows(&items)
  88. return
  89. }
  90. type CygxReportSelectionLoglist struct {
  91. ArticleSunId int `description:"子级报告id"`
  92. ArticleId int `description:"父级报告Id"`
  93. ChartPermissionId int `description:"行业ID"`
  94. PermissionName string `description:"行业ID"`
  95. CreateTime time.Time `description:"创建时间"`
  96. Body string `description:"内容"`
  97. IndustrialSubjectId string `description:"标的ID"`
  98. IndustrialManagementId string `description:"产业资源包Id 多个用 , 隔开"`
  99. SubjectName string `description:"标的名称"`
  100. IcoLink string `orm:"column(image_url)"description:"图标链接"`
  101. OverviewArticleId int `description:"关联的综述报告ID"`
  102. }
  103. // 列表
  104. func GetReportSelectionlogListAll(articleId int) (items []*CygxReportSelectionLoglist, err error) {
  105. o := orm.NewOrm()
  106. sql := `SELECT c.permission_name ,c.image_url,s.subject_name , l.*
  107. FROM
  108. cygx_report_selection_log AS l
  109. INNER JOIN chart_permission AS c ON c.chart_permission_id = l.chart_permission_id
  110. INNER JOIN cygx_industrial_subject AS s ON s.industrial_subject_id = l.industrial_subject_id
  111. WHERE l.article_id = ? `
  112. _, err = o.Raw(sql, articleId).QueryRows(&items)
  113. return
  114. }