Quellcode durchsuchen

fix(日度点评浏览记录):浏览记录新增手机号、邮箱、用户实际姓名

Roc vor 4 Jahren
Ursprung
Commit
50801870f1

+ 88 - 0
binlog/binlog.log

@@ -0,0 +1,88 @@
+2021/02/25 16:51:46.993 [I]   -[Queries/rddp] - [  OK /    db.Query /    18.3ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 16:51:47.021 [I]   -[Queries/default] - [  OK /    db.Query /    27.6ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 16:51:47.040 [I]   -[Queries/rddp] - [  OK /    db.Query /    18.3ms] - [SELECT * FROM report WHERE id=?] - `260`
+2021/02/25 16:51:47.069 [I]   -[Queries/default] - [  OK /    db.Query /    28.6ms] - [ SELECT a.*,b.status FROM company AS a
+			INNER JOIN company_product AS b ON a.company_id=b.company_id
+			WHERE a.company_id=? AND b.product_id=? ] - `16`, `1`
+2021/02/25 16:51:47.097 [I]   -[Queries/default] - [  OK /    db.Query /    28.0ms] - [SELECT cpcm.report_chapter_type_id
+            FROM company_report_permission crp
+            INNER JOIN  chart_permission_chapter_mapping cpcm ON crp.chart_permission_id = cpcm.chart_permission_id
+            INNER JOIN wx_user wu ON wu.company_id = crp.company_id
+            WHERE wu.user_id = ?
+            AND cpcm.research_type = ?
+            GROUP BY cpcm.report_chapter_type_id] - `12018`, `rddp`
+2021/02/25 16:51:47.119 [I]   -[Queries/rddp] - [  OK /     db.Exec /    21.7ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 16:51:47.097741 +0800 CST`
+2021/02/25 16:51:47.141 [I]   -[Queries/rddp] - [  OK /    db.Query /    22.0ms] - [SELECT * FROM report WHERE state=2 AND id<>?  AND classify_name_first<>'权益研报'  ORDER BY publish_time DESC LIMIT 3] - `260`
+2021/02/25 16:51:47.154 [I]   -[Queries/default] - [  OK /     db.Exec /    34.4ms] - [UPDATE wx_user SET report_last_view_time=NOW() WHERE user_id=? ] - `12018`
+2021/02/25 16:51:47.222 [I]   -[Queries/default] - [  OK /    db.Query /    70.4ms] - [ SELECT COUNT(1) AS count
+            FROM company_report_permission AS crp
+            INNER JOIN  chart_permission_chapter_mapping AS cpcm ON crp.chart_permission_id = cpcm.chart_permission_id
+            INNER JOIN chart_permission_search_key_word_mapping AS cskwm ON cskwm.chart_permission_id=crp.chart_permission_id
+            INNER JOIN wx_user wu ON wu.company_id = crp.company_id
+            WHERE wu.user_id = ?
+            AND cpcm.research_type = 'rddp'
+			AND cskwm.from='rddp'
+			AND cskwm.key_word=? ] - `12018`, `宏观商品复盘`
+2021/02/25 16:51:47.231 [I]   -[Queries/default] - [  OK /    db.Query /     8.2ms] - [ SELECT COUNT(1) AS count
+            FROM company_report_permission AS crp
+            INNER JOIN  chart_permission_chapter_mapping AS cpcm ON crp.chart_permission_id = cpcm.chart_permission_id
+            INNER JOIN chart_permission_search_key_word_mapping AS cskwm ON cskwm.chart_permission_id=crp.chart_permission_id
+            INNER JOIN wx_user wu ON wu.company_id = crp.company_id
+            WHERE wu.user_id = ?
+            AND cpcm.research_type = 'rddp'
+			AND cskwm.from='rddp'
+			AND cskwm.key_word=? ] - `12018`, `化里化外日评`
+2021/02/25 16:51:47.245 [I]   -[Queries/default] - [  OK /    db.Query /    13.9ms] - [ SELECT COUNT(1) AS count
+            FROM company_report_permission AS crp
+            INNER JOIN  chart_permission_chapter_mapping AS cpcm ON crp.chart_permission_id = cpcm.chart_permission_id
+            INNER JOIN chart_permission_search_key_word_mapping AS cskwm ON cskwm.chart_permission_id=crp.chart_permission_id
+            INNER JOIN wx_user wu ON wu.company_id = crp.company_id
+            WHERE wu.user_id = ?
+            AND cpcm.research_type = 'rddp'
+			AND cskwm.from='rddp'
+			AND cskwm.key_word=? ] - `12018`, `化里化外日评`
+2021/02/25 16:51:47.263 [I]   -[Queries/rddp] - [  OK /    db.Query /    18.5ms] - [ SELECT id AS classify_id,classify_name,sort,parent_id,create_time,modify_time,abstract,descript,report_author,author_descript,report_img_url,head_img_url,avatar_img_url,column_img_url FROM classify WHERE id = ?  ] - `24`
+2021/02/25 16:51:47.306 [I]   -[Queries/default] - [  OK /     db.Exec /    42.3ms] - [INSERT INTO `user_access_record` (`id`, `uid`, `token`, `report_id`, `create_time`, `remark`) VALUES (?, ?, ?, ?, ?, ?)] - `0`, `12018`, `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`, `260`, `2021-02-25 16:51:47.264037 +0800 CST`, `0`
+2021/02/25 16:55:00.913 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.3ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 16:55:00.932 [I]   -[Queries/default] - [  OK /    db.Query /    17.8ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 16:56:00.527 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 16:56:00.556 [I]   -[Queries/default] - [  OK /    db.Query /    18.5ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 16:59:41.137 [I]   -[Queries/rddp] - [  OK /    db.Query /    16.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 16:59:41.166 [I]   -[Queries/default] - [  OK /    db.Query /    29.5ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:00:19.725 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.6ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:00:19.748 [I]   -[Queries/default] - [  OK /    db.Query /    23.2ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:01:03.520 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.1ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:01:03.534 [I]   -[Queries/default] - [  OK /    db.Query /    13.7ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:01:09.174 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.1ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:01:09.195 [I]   -[Queries/default] - [  OK /    db.Query /    21.0ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:01:14.278 [I]   -[Queries/rddp] - [  OK /    db.Query /    43.3ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:01:14.617 [I]   -[Queries/default] - [  OK /    db.Query /    14.5ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:01:23.738 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:01:23.754 [I]   -[Queries/default] - [  OK /    db.Query /    15.7ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:02:52.592 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.9ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:02:52.614 [I]   -[Queries/default] - [  OK /    db.Query /    14.2ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:03:38.516 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.6ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:03:38.531 [I]   -[Queries/default] - [  OK /    db.Query /    13.6ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:03:44.037 [I]   -[Queries/rddp] - [  OK /    db.Query /    21.6ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:03:44.052 [I]   -[Queries/default] - [  OK /    db.Query /    15.3ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:04:26.331 [I]   -[Queries/rddp] - [  OK /    db.Query /    16.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:04:26.354 [I]   -[Queries/default] - [  OK /    db.Query /    22.9ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:04:35.690 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:04:35.704 [I]   -[Queries/default] - [  OK /    db.Query /    11.5ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:04:45.795 [I]   -[Queries/rddp] - [  OK /    db.Query /     9.4ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:04:45.820 [I]   -[Queries/default] - [  OK /    db.Query /    24.9ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:04:56.158 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.6ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:04:56.170 [I]   -[Queries/default] - [  OK /    db.Query /    11.6ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:04:56.190 [I]   -[Queries/rddp] - [  OK /     db.Exec /    20.0ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 17:04:56.170195 +0800 CST`
+2021/02/25 17:06:49.269 [I]   -[Queries/rddp] - [  OK /    db.Query /    16.7ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:06:49.288 [I]   -[Queries/default] - [  OK /    db.Query /    19.1ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:06:49.309 [I]   -[Queries/rddp] - [  OK /     db.Exec /    20.6ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 17:06:49.28879 +0800 CST`
+2021/02/25 17:07:02.812 [I]   -[Queries/rddp] - [  OK /    db.Query /    28.1ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:07:02.844 [I]   -[Queries/default] - [  OK /    db.Query /    32.2ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:07:02.866 [I]   -[Queries/rddp] - [  OK /     db.Exec /    21.6ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 17:07:02.844857 +0800 CST`
+2021/02/25 17:07:08.894 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.0ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:07:08.914 [I]   -[Queries/default] - [  OK /    db.Query /    11.4ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:07:08.929 [I]   -[Queries/rddp] - [  OK /     db.Exec /    12.7ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 17:07:08.916219 +0800 CST`
+2021/02/25 17:07:15.228 [I]   -[Queries/rddp] - [  OK /    db.Query /     8.8ms] - [SELECT * FROM session WHERE access_token=? AND expire_time> NOW() ORDER BY session_id DESC LIMIT 1 ] - `66ef61e290a84099441f2a95ebfce8d5803aee773ab08ceac408bb1875230fe7`
+2021/02/25 17:07:15.240 [I]   -[Queries/default] - [  OK /    db.Query /    11.8ms] - [SELECT * FROM wx_user WHERE user_id=? ] - `12018`
+2021/02/25 17:07:15.252 [I]   -[Queries/rddp] - [  OK /     db.Exec /    12.2ms] - [INSERT INTO `report_view_record` (`id`, `user_id`, `report_id`, `mobile`, `email`, `real_name`, `create_time`) VALUES (?, ?, ?, ?, ?, ?, ?)] - `0`, `12018`, `260`, `18170239278`, ``, `Roc`, `2021-02-25 17:07:15.240546 +0800 CST`

+ 6 - 0
controllers/report.go

@@ -190,6 +190,9 @@ func (this *ReportController) Detail() {
 		record := new(models.ReportViewRecord)
 		record.UserId = user.UserId
 		record.ReportId = reportId
+		record.Mobile = user.Mobile
+		record.Email = user.Email
+		record.RealName = user.RealName
 		record.CreateTime = time.Now()
 		err = models.AddReportViewRecord(record)
 		if err != nil {
@@ -477,6 +480,9 @@ func (this *ReportController) AddViewRecordReport() {
 	record := new(models.ReportViewRecord)
 	record.UserId = user.UserId
 	record.ReportId = req.ReportId
+	record.Mobile = user.Mobile
+	record.Email = user.Email
+	record.RealName = user.RealName
 	record.CreateTime = time.Now()
 	err = models.AddReportViewRecord(record)
 	if err != nil {

+ 3 - 0
models/report_view_record.go

@@ -9,6 +9,9 @@ type ReportViewRecord struct {
 	Id         int       `orm:"column(id);pk"`
 	UserId     int       `description:"用户id"`
 	ReportId   int       `description:"报告id"`
+	Mobile	   string	 `description:"手机号"`
+	Email	   string	 `description:"邮箱"`
+	RealName   string	 `description:"用户实际姓名"`
 	CreateTime time.Time `description:"创建时间"`
 }
 

+ 2 - 0
rdlucklog/202102/20210221.api.log

@@ -0,0 +1,2 @@
+2021/02/21 14:01:01 log.go:45: [请求地址: /api/home/list Authorization:  RequestBody:  ResponseBody {"Ret":408,"Msg":"请重新授权!","ErrMsg":"请重新授权:Token is empty or account is empty","ErrCode":"","Data":null,"Success":false} IP: 127.0.0.1] 
+

+ 0 - 0
rdlucklog/202102/20210221.http.log


+ 2 - 0
rdlucklog/202102/20210222.api.log

@@ -0,0 +1,2 @@
+2021/02/22 09:32:28 log.go:45: [请求地址: /api/home/list Authorization:  RequestBody:  ResponseBody {"Ret":408,"Msg":"请重新授权!","ErrMsg":"请重新授权:Token is empty or account is empty","ErrCode":"","Data":null,"Success":false} IP: 127.0.0.1] 
+

+ 0 - 0
rdlucklog/202102/20210222.http.log


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
rdlucklog/202102/20210225.api.log


+ 0 - 0
rdlucklog/202102/20210225.http.log


+ 1 - 0
rdlucklog/hongze_api.2021-02-22.001.log

@@ -0,0 +1 @@
+2021/02/21 14:01:01.093 [I]  authorization:,cookie:

+ 2 - 0
rdlucklog/hongze_api.log

@@ -0,0 +1,2 @@
+2021/02/22 09:32:28.728 [I]  authorization:,cookie:
+2021/02/25 16:51:47.040 [I]  report.detail 16,1

BIN
swagger/favicon-16x16.png


BIN
swagger/favicon-32x32.png


+ 93 - 0
swagger/index.html

@@ -0,0 +1,93 @@
+<!-- HTML for static distribution bundle build -->
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>Swagger UI</title>
+  <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700" rel="stylesheet">
+  <link rel="stylesheet" type="text/css" href="./swagger-ui.css" >
+  <link rel="icon" type="image/png" href="./favicon-32x32.png" sizes="32x32" />
+  <link rel="icon" type="image/png" href="./favicon-16x16.png" sizes="16x16" />
+  <style>
+    html
+    {
+        box-sizing: border-box;
+        overflow: -moz-scrollbars-vertical;
+        overflow-y: scroll;
+    }
+    *,
+    *:before,
+    *:after
+    {
+        box-sizing: inherit;
+    }
+
+    body {
+      margin:0;
+      background: #fafafa;
+    }
+  </style>
+</head>
+
+<body>
+
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute;width:0;height:0">
+  <defs>
+    <symbol viewBox="0 0 20 20" id="unlocked">
+          <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path>
+    </symbol>
+
+    <symbol viewBox="0 0 20 20" id="locked">
+      <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"/>
+    </symbol>
+
+    <symbol viewBox="0 0 20 20" id="close">
+      <path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"/>
+    </symbol>
+
+    <symbol viewBox="0 0 20 20" id="large-arrow">
+      <path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"/>
+    </symbol>
+
+    <symbol viewBox="0 0 20 20" id="large-arrow-down">
+      <path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"/>
+    </symbol>
+
+
+    <symbol viewBox="0 0 24 24" id="jump-to">
+      <path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z"/>
+    </symbol>
+
+    <symbol viewBox="0 0 24 24" id="expand">
+      <path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"/>
+    </symbol>
+
+  </defs>
+</svg>
+
+<div id="swagger-ui"></div>
+
+<script src="./swagger-ui-bundle.js"> </script>
+<script src="./swagger-ui-standalone-preset.js"> </script>
+<script>
+window.onload = function() {
+  // Build a system
+  const ui = SwaggerUIBundle({
+    url: "swagger.json",
+    dom_id: '#swagger-ui',
+    presets: [
+      SwaggerUIBundle.presets.apis,
+      SwaggerUIStandalonePreset
+    ],
+    plugins: [
+      SwaggerUIBundle.plugins.DownloadUrl
+    ],
+    layout: "StandaloneLayout"
+  })
+
+  window.ui = ui
+}
+</script>
+</body>
+
+</html>

+ 53 - 0
swagger/oauth2-redirect.html

@@ -0,0 +1,53 @@
+<!doctype html>
+<html lang="en-US">
+<body onload="run()">
+</body>
+</html>
+<script>
+    'use strict';
+    function run () {
+        var oauth2 = window.opener.swaggerUIRedirectOauth2;
+        var sentState = oauth2.state;
+        var isValid, qp, arr;
+
+        qp = (window.location.hash || location.search).substring(1);
+
+        arr = qp.split("&")
+        arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';})
+        qp = qp ? JSON.parse('{' + arr.join() + '}',
+                function (key, value) {
+                    return key === "" ? value : decodeURIComponent(value)
+                }
+        ) : {}
+
+        isValid = qp.state === sentState
+
+        if (oauth2.auth.schema.get("flow") === "accessCode" && !oauth2.auth.code) {
+            if (!isValid) {
+                oauth2.errCb({
+                    authId: oauth2.auth.name,
+                    source: "auth",
+                    level: "warning",
+                    message: "Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server"
+                });
+            }
+
+            if (qp.code) {
+                delete oauth2.state;
+                oauth2.auth.code = qp.code;
+                oauth2.callback(oauth2.auth);
+            } else {
+                oauth2.errCb({
+                    authId: oauth2.auth.name,
+                    source: "auth",
+                    level: "error",
+                    message: "Authorization failed: no accessCode received from the server"
+                });
+            }
+        } else {
+            oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid});
+        }
+        window.close();
+    }
+
+</script>

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
swagger/swagger-ui-bundle.js


+ 1 - 0
swagger/swagger-ui-bundle.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"swagger-ui-bundle.js","sources":["webpack:///swagger-ui-bundle.js"],"mappings":"AAAA;AAu/FA;AA6+FA;;;;;;;;;;;;;;;;;;;;;;;;;;AAyTA;;;;;;AAoIA;AAi7FA;AAmtCA;AAi0IA;AA0oJA;AAgwFA;AAyrGA;AA0lFA;AA4nFA;AA+9CA;AA+gDA;AAwrCA;AA60EA;;;;;AA6oCA;AAsyJA;;;;;;;;;;;;;;AA64EA;AA4mIA;AAquJA;AA2qHA;AA2mGA;AAiiEA;AAq4DA;AAg3DA;AAoPA;;;;;;AAk7FA;AA07FA;;;;;AAi8CA;AAgsFA;AAs2CA;AAglCA;AAu9CA;AAy8EA;AAsiCA;AA+yFA;;;;;;;;;AAgkDA;AA2zIA;AAu7FA;AAmrFA;AAu0EA","sourceRoot":""}

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
swagger/swagger-ui-standalone-preset.js


+ 1 - 0
swagger/swagger-ui-standalone-preset.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"swagger-ui-standalone-preset.js","sources":["webpack:///swagger-ui-standalone-preset.js"],"mappings":"AAAA;;;;;AA8QA;AAmvGA;AAuxFA;;;;;;AAocA;AAkvFA;AAu+CA;AAo+CA;AAgrCA;AAuyEA","sourceRoot":""}

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
swagger/swagger-ui.css


+ 1 - 0
swagger/swagger-ui.css.map

@@ -0,0 +1 @@
+{"version":3,"file":"swagger-ui.css","sources":[],"mappings":"","sourceRoot":""}

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
swagger/swagger-ui.js


+ 1 - 0
swagger/swagger-ui.js.map

@@ -0,0 +1 @@
+{"version":3,"file":"swagger-ui.js","sources":["webpack:///swagger-ui.js"],"mappings":"AAAA;;;;;;AA0yCA;AAoyHA;AAmyHA;AAykGA;AA+9BA;AA6iCA;AAojCA;AAu5BA","sourceRoot":""}

+ 2642 - 0
swagger/swagger.json

@@ -0,0 +1,2642 @@
+{
+    "swagger": "2.0",
+    "info": {
+        "title": "beego Test API",
+        "description": "beego has a very cool tools to autogenerate documents for your API",
+        "version": "1.0.0",
+        "termsOfService": "http://beego.me/",
+        "contact": {
+            "email": "astaxie@gmail.com"
+        },
+        "license": {
+            "name": "Apache 2.0",
+            "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
+        }
+    },
+    "basePath": "/api",
+    "paths": {
+        "/bill/detail": {
+            "get": {
+                "tags": [
+                    "bill"
+                ],
+                "description": "年度账单接口",
+                "operationId": "BillController.年度账单接口",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.BillDetailResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/classify/detail": {
+            "get": {
+                "tags": [
+                    "classify"
+                ],
+                "description": "获取分类详情信息接口",
+                "operationId": "ClassifyController.获取分类详情信息",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ClassifyId",
+                        "description": "分类id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ClassifyDetail"
+                        }
+                    }
+                }
+            }
+        },
+        "/classify/pc/list": {
+            "get": {
+                "tags": [
+                    "classify"
+                ],
+                "description": "获取一级分类列表接口",
+                "operationId": "ClassifyCommonController.获取一级分类列表",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.Classify"
+                        }
+                    }
+                }
+            }
+        },
+        "/classify/pc/second/list": {
+            "get": {
+                "tags": [
+                    "classify"
+                ],
+                "description": "获取二级分类列表接口",
+                "operationId": "ClassifyCommonController.获取二级分类列表",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ClassifyId",
+                        "description": "分类id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ClassifyDetail"
+                        }
+                    }
+                }
+            }
+        },
+        "/home/banner": {
+            "get": {
+                "tags": [
+                    "home"
+                ],
+                "description": "首页列表接口",
+                "operationId": "HomeController.首页列表接口",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.Banner"
+                        }
+                    }
+                }
+            }
+        },
+        "/home/list": {
+            "get": {
+                "tags": [
+                    "home"
+                ],
+                "description": "首页列表接口",
+                "operationId": "HomeController.首页列表接口",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.HomeList"
+                        }
+                    }
+                }
+            }
+        },
+        "/home/pc/banner": {
+            "get": {
+                "tags": [
+                    "home"
+                ],
+                "description": "首页banner接口",
+                "operationId": "HomeCommonController.首页banner接口",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.Banner"
+                        }
+                    }
+                }
+            }
+        },
+        "/home/pc/column/list": {
+            "get": {
+                "tags": [
+                    "home"
+                ],
+                "description": "首页专栏接口",
+                "operationId": "HomeCommonController.首页专栏接口",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.Classify"
+                        }
+                    }
+                }
+            }
+        },
+        "/home/pc/list": {
+            "get": {
+                "tags": [
+                    "home"
+                ],
+                "description": "pc-首页列表接口",
+                "operationId": "HomeCommonController.pc-首页列表接口",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "PageSize",
+                        "description": "每页数据条数",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "CurrentIndex",
+                        "description": "当前页页码,从1开始",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "ClassifyId",
+                        "description": "分类id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.PcListHomeResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/addAudioRecord": {
+            "post": {
+                "tags": [
+                    "report"
+                ],
+                "description": "新增音频阅读记录接口",
+                "operationId": "ReportController.新增音频阅读记录",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportRecordReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "新增成功"
+                    }
+                }
+            }
+        },
+        "/report/addUpdateLabel": {
+            "post": {
+                "tags": [
+                    "report"
+                ],
+                "description": "新增报告浏览记录接口",
+                "operationId": "ReportController.新增报告浏览记录",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportRecordReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "新增成功"
+                    }
+                }
+            }
+        },
+        "/report/addViewRecord": {
+            "post": {
+                "tags": [
+                    "report"
+                ],
+                "description": "新增报告浏览记录接口",
+                "operationId": "ReportController.新增报告浏览记录",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportRecordReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "新增成功"
+                    }
+                }
+            }
+        },
+        "/report/author/detail": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "description": "获取报告作者详情",
+                "operationId": "ReportController.获取报告作者详情",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ReportAuthor",
+                        "description": "作者名称",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportDetailResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/detail": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "description": "日评详情接口",
+                "operationId": "ReportController.日评详情",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ReportId",
+                        "description": "报告id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportDetailResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/list": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "description": "日评列表接口",
+                "operationId": "ReportController.日评列表",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "PageSize",
+                        "description": "每页数据条数",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "CurrentIndex",
+                        "description": "当前页页码,从1开始",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "ClassifyId",
+                        "description": "分类id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportListResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/pc/research/report/list": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "description": "研报列表接口",
+                "operationId": "ReportCommonController.研报列表",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ClassifyId",
+                        "description": "分类id",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ResearchReportListResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/pc/search/report/list": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "operationId": "ReportCommonController.研报PC端搜索接口",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "KeyWord",
+                        "description": "搜索关键词",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.PcSearchReportListResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/report/share/detail": {
+            "get": {
+                "tags": [
+                    "report"
+                ],
+                "description": "日评详情接口",
+                "operationId": "ReportShareController.日评详情",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "ReportCode",
+                        "description": "报告唯一编码",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.ReportShareDetailResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/apply": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "申请试用接口",
+                "operationId": "UserController.申请试用",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.ApplyReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "申请成功"
+                    }
+                }
+            }
+        },
+        "/user/checkEmailCode": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "校验邮箱验证码接口",
+                "operationId": "UserCommonController.校验邮箱验证码",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.CheckEmailCodeReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "校验成功"
+                    }
+                }
+            }
+        },
+        "/user/checkSmsCode": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "校验短信验证码接口",
+                "operationId": "UserCommonController.校验短信验证码",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.CheckSmsCodeReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "校验成功"
+                    }
+                }
+            }
+        },
+        "/user/detail": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "获取用户详情接口",
+                "operationId": "UserController.获取用户详情",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.UserDetail"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/getEmailCode": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "获取邮件验证码接口",
+                "operationId": "UserCommonController.获取邮件验证码",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Email",
+                        "description": "邮箱",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "获取成功"
+                    }
+                }
+            }
+        },
+        "/user/getSmsCode": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "获取短信验证码接口",
+                "operationId": "UserCommonController.获取短信验证码",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Mobile",
+                        "description": "手机号码",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "AreaNum",
+                        "description": "地区编码",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "获取成功"
+                    }
+                }
+            }
+        },
+        "/user/login": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "登录接口",
+                "operationId": "UserController.登录",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.LoginReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.LoginResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/pc/bind": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "绑定手机号或邮箱",
+                "operationId": "UserController.绑定手机号或邮箱",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.BindReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "绑定成功"
+                    }
+                }
+            }
+        },
+        "/user/pc/check/login": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "校验免登陆",
+                "operationId": "UserController.校验免登陆",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.CheckLoginResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/pc/getGraphicVerifyCode": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "获取图形验证码",
+                "operationId": "UserCommonController.获取图形验证码",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.GraphicVerifyCodeResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/pc/getSmsCode": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "pc端获取短信验证码接口",
+                "operationId": "UserCommonController.pc端获取短信验证码",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Mobile",
+                        "description": "手机号码",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "AreaNum",
+                        "description": "地区编码",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "VerifyId",
+                        "description": "图形验证码id",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "VerifyCode",
+                        "description": "图形验证码code",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "Ret=200": {
+                        "description": "获取成功"
+                    }
+                }
+            }
+        },
+        "/user/pc/login": {
+            "post": {
+                "tags": [
+                    "user"
+                ],
+                "description": "登录接口",
+                "operationId": "UserCommonController.登录",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "request",
+                        "description": "type json string",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/models.LoginReq"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.LoginResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/user/smallLimit": {
+            "get": {
+                "tags": [
+                    "user"
+                ],
+                "description": "是否小套餐客户接口",
+                "operationId": "UserController.是否小套餐客户",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.SmallLimitResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/video/list": {
+            "get": {
+                "tags": [
+                    "video"
+                ],
+                "description": "视频列表接口",
+                "operationId": "VideoController.视频列表",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "PageSize",
+                        "description": "每页数据条数",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "CurrentIndex",
+                        "description": "当前页页码,从1开始",
+                        "required": true,
+                        "type": "integer",
+                        "format": "int64"
+                    },
+                    {
+                        "in": "query",
+                        "name": "KeyWord",
+                        "description": "搜索关键词",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "DateType",
+                        "description": "时间筛选组合:1:近一个月,2:近三个月,3:近半年,4:全部",
+                        "required": true,
+                        "type": "string"
+                    },
+                    {
+                        "in": "query",
+                        "name": "Tags",
+                        "description": "标签名称",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/video.VideoListResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/video/tags/list": {
+            "get": {
+                "tags": [
+                    "video"
+                ],
+                "description": "获取视频标签列表接口",
+                "operationId": "VideoController.获取视频标签列表",
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/video.VideoTagsListResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/wechat/getWxSign": {
+            "get": {
+                "tags": [
+                    "wechat"
+                ],
+                "description": "微信获取签名接口",
+                "operationId": "WechatController.微信获取签名接口",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Url",
+                        "description": "url地址",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.WechatSign"
+                        }
+                    }
+                }
+            }
+        },
+        "/wechat/login": {
+            "get": {
+                "tags": [
+                    "wechat"
+                ],
+                "description": "微信登录接口",
+                "operationId": "WechatCommonController.微信登录接口",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Code",
+                        "description": "微信唯一编码code",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.WxLoginResp"
+                        }
+                    }
+                }
+            }
+        },
+        "/wechat/pc/login": {
+            "get": {
+                "tags": [
+                    "wechat"
+                ],
+                "description": "pc端微信登录接口",
+                "operationId": "WechatCommonController.pc端微信登录接口",
+                "parameters": [
+                    {
+                        "in": "query",
+                        "name": "Code",
+                        "description": "微信唯一编码code",
+                        "required": true,
+                        "type": "string"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "schema": {
+                            "$ref": "#/definitions/models.WxLoginResp"
+                        }
+                    }
+                }
+            }
+        }
+    },
+    "definitions": {
+        "models.ApplyReq": {
+            "title": "ApplyReq",
+            "type": "object",
+            "properties": {
+                "ApplyMethod": {
+                    "description": "申请方式:",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "CompanyName": {
+                    "description": "公司名称",
+                    "type": "string"
+                },
+                "RealName": {
+                    "description": "姓名",
+                    "type": "string"
+                }
+            }
+        },
+        "models.Banner": {
+            "title": "Banner",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "栏目简介",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "BannerType": {
+                    "description": "类型 1:轮播图,2:头部海报",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyId": {
+                    "description": "分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "Id": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ImageUrl": {
+                    "description": "图片路径",
+                    "type": "string"
+                },
+                "JumpUrl": {
+                    "description": "跳转地址",
+                    "type": "string"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                },
+                "ReportImgUrl": {
+                    "description": "报告配图",
+                    "type": "string"
+                }
+            }
+        },
+        "models.BillDetailResp": {
+            "title": "BillDetailResp",
+            "type": "object",
+            "properties": {
+                "CreateDate": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "FirstReadReportTitle": {
+                    "description": "首次阅读报告标题",
+                    "type": "string"
+                },
+                "FirstReadReportType": {
+                    "description": "首次阅读报告类型",
+                    "type": "string"
+                },
+                "LatestReadReportDate": {
+                    "description": "阅读报告时间最晚的一天",
+                    "type": "string"
+                },
+                "LatestReadReportDateDuration": {
+                    "description": "阅读报告时间最晚的一天,总共阅读报告的时长",
+                    "type": "number",
+                    "format": "double"
+                },
+                "LatestReadReportTime": {
+                    "description": "阅读报告时间最晚的一天,最晚的时间",
+                    "type": "string"
+                },
+                "LearnDay": {
+                    "description": "连续学习天数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ListenReportCount": {
+                    "description": "收听报告次数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ListenReportDuration": {
+                    "description": "收听报告时长",
+                    "type": "number",
+                    "format": "double"
+                },
+                "MaxOpenReportClassify": {
+                    "description": "打开次数最多报告的栏目",
+                    "type": "string"
+                },
+                "MaxOpenReportCount": {
+                    "description": "打开次数最多报告的栏目下,用户阅读的报告数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "MaxReadReportCount": {
+                    "description": "阅读报告最多的一天,报告数量",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "MaxReadReportDate": {
+                    "description": "阅读报告最多的一天",
+                    "type": "string"
+                },
+                "RealName": {
+                    "description": "用户实际名称",
+                    "type": "string"
+                },
+                "TogetherDay": {
+                    "description": "相伴天数",
+                    "type": "string"
+                },
+                "TotalReadDuration": {
+                    "description": "总阅读时长",
+                    "type": "number",
+                    "format": "double"
+                },
+                "TotalReport": {
+                    "description": "总阅读报告数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "TotalReportDayCount": {
+                    "description": "总阅读晨报数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "TotalReportMonthCount": {
+                    "description": "总阅读月报数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "TotalReportRddpCount": {
+                    "description": "总阅读点评数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "TotalReportTwoWeekCount": {
+                    "description": "总阅读双周报数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "TotalReportWeekCount": {
+                    "description": "总阅读周报数",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.BindReq": {
+            "title": "BindReq",
+            "type": "object",
+            "properties": {
+                "BindType": {
+                    "description": "绑定方式:1:手机,2:邮箱",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "Mobile": {
+                    "description": "手机号",
+                    "type": "string"
+                },
+                "VerifyCode": {
+                    "description": "短信/邮箱 验证码",
+                    "type": "string"
+                }
+            }
+        },
+        "models.CheckEmailCodeReq": {
+            "title": "CheckEmailCodeReq",
+            "type": "object",
+            "properties": {
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "SmsCode": {
+                    "description": "验证码",
+                    "type": "string"
+                }
+            }
+        },
+        "models.CheckLoginResp": {
+            "title": "CheckLoginResp",
+            "type": "object",
+            "properties": {
+                "IsBind": {
+                    "description": "true:需要绑定邮箱或验证码,false:不需要绑定邮箱或验证码",
+                    "type": "boolean"
+                },
+                "IsTips": {
+                    "description": "true:需要提示,false:不需要提示",
+                    "type": "boolean"
+                }
+            }
+        },
+        "models.CheckSmsCodeReq": {
+            "title": "CheckSmsCodeReq",
+            "type": "object",
+            "properties": {
+                "Mobile": {
+                    "description": "手机号",
+                    "type": "string"
+                },
+                "SmsCode": {
+                    "description": "验证码",
+                    "type": "string"
+                }
+            }
+        },
+        "models.Classify": {
+            "title": "Classify",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "栏目简介",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "HomeImgUrl": {
+                    "description": "首页配图",
+                    "type": "string"
+                },
+                "Id": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "ParentId": {
+                    "description": "父级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                },
+                "ReportImgUrl": {
+                    "description": "报告配图",
+                    "type": "string"
+                }
+            }
+        },
+        "models.ClassifyDetail": {
+            "title": "ClassifyDetail",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "栏目简介",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "ClassifyId": {
+                    "description": "分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CommentList": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.CustomerComment"
+                    }
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "HomeImgUrl": {
+                    "description": "首页配图",
+                    "type": "string"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "ParentId": {
+                    "description": "父级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                },
+                "ReportImgUrl": {
+                    "description": "报告配图",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "最新期数",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.CustomerComment": {
+            "title": "CustomerComment",
+            "type": "object",
+            "properties": {
+                "Comment": {
+                    "type": "string"
+                },
+                "CompanyName": {
+                    "type": "string"
+                },
+                "CustomerName": {
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "type": "string"
+                },
+                "Id": {
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.GraphicVerifyCodeResp": {
+            "title": "GraphicVerifyCodeResp",
+            "type": "object",
+            "properties": {
+                "VerifyCode": {
+                    "type": "string"
+                },
+                "VerifyId": {
+                    "type": "string"
+                }
+            }
+        },
+        "models.HomeClassifyItem": {
+            "title": "HomeClassifyItem",
+            "type": "object",
+            "properties": {
+                "Child": {
+                    "$ref": "#/definitions/models.Report"
+                },
+                "ClassifyId": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                }
+            }
+        },
+        "models.HomeList": {
+            "title": "HomeList",
+            "type": "object",
+            "properties": {
+                "Child": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.HomeClassifyItem"
+                    }
+                },
+                "ClassifyId": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                }
+            }
+        },
+        "models.LoginReq": {
+            "title": "LoginReq",
+            "type": "object",
+            "properties": {
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "LoginType": {
+                    "description": "登录方式:1:手机,2:邮箱",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Mobile": {
+                    "description": "手机号",
+                    "type": "string"
+                }
+            }
+        },
+        "models.LoginResp": {
+            "title": "LoginResp",
+            "type": "object",
+            "properties": {
+                "Authorization": {
+                    "description": "Token",
+                    "type": "string"
+                },
+                "CompanyName": {
+                    "description": "客户名称",
+                    "type": "string"
+                },
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "EndDate": {
+                    "description": "到期日期",
+                    "type": "string"
+                },
+                "Headimgurl": {
+                    "description": "用户头像",
+                    "type": "string"
+                },
+                "Mobile": {
+                    "description": "手机号",
+                    "type": "string"
+                },
+                "ProductName": {
+                    "description": "客户类型名称",
+                    "type": "string"
+                },
+                "Status": {
+                    "description": "状态",
+                    "type": "string"
+                },
+                "UserId": {
+                    "description": "用户id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "UserPermission": {
+                    "description": "权限",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.PagingItem": {
+            "title": "PagingItem",
+            "type": "object",
+            "properties": {
+                "CurrentIndex": {
+                    "description": "当前页页码",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsEnd": {
+                    "description": "是否最后一页",
+                    "type": "boolean"
+                },
+                "IsStart": {
+                    "description": "是否首页",
+                    "type": "boolean"
+                },
+                "NextIndex": {
+                    "description": "下一页页码",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PageSize": {
+                    "description": "每页数据条数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Pages": {
+                    "description": "总页数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PreviousIndex": {
+                    "description": "上一页页码",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Totals": {
+                    "description": "总数据量",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.PcHomeClassifyItem": {
+            "title": "PcHomeClassifyItem",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "摘要",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "ClassifyId": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "HomeImgUrl": {
+                    "description": "首页配图",
+                    "type": "string"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsCurrentDate": {
+                    "description": "是否当前日期:1是,0不是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsShowNewLabel": {
+                    "description": "是否显示新标签,等于0不显示,大于0显示",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                },
+                "ReportImgUrl": {
+                    "description": "报告配图",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.PcListHomeResp": {
+            "title": "PcListHomeResp",
+            "type": "object",
+            "properties": {
+                "List": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.PcHomeClassifyItem"
+                    }
+                },
+                "Paging": {
+                    "$ref": "#/definitions/paging.PagingItem"
+                }
+            }
+        },
+        "models.PcReport": {
+            "title": "PcReport",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "摘要",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsCurrentDate": {
+                    "description": "是否当前日期:1是,0不是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsShowNewLabel": {
+                    "description": "是否显示新标签,等于0不显示,大于0显示",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.PcSearchReportListResp": {
+            "title": "PcSearchReportListResp",
+            "type": "object",
+            "properties": {
+                "List": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.ReportList"
+                    }
+                },
+                "Paging": {
+                    "$ref": "#/definitions/paging.PagingItem"
+                }
+            }
+        },
+        "models.RecommendReport": {
+            "title": "RecommendReport",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "摘要",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "Content": {
+                    "description": "内容",
+                    "type": "string"
+                },
+                "ContentSub": {
+                    "description": "内容前两个章节",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "HasPermission": {
+                    "description": "报告权限:0:无权限,1:有权限",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.Report": {
+            "title": "Report",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "摘要",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "Content": {
+                    "description": "内容",
+                    "type": "string"
+                },
+                "ContentSub": {
+                    "description": "内容前两个章节",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsCurrentDate": {
+                    "description": "是否当前日期",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsShowNewLabel": {
+                    "description": "是否显示新标签",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.ReportDetail": {
+            "title": "ReportDetail",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "摘要",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "Content": {
+                    "description": "内容",
+                    "type": "string"
+                },
+                "ContentSub": {
+                    "description": "内容前两个章节",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsCurrentDate": {
+                    "description": "是否当前日期",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsShowNewLabel": {
+                    "description": "是否显示新标签",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.ReportDetailResp": {
+            "title": "ReportDetailResp",
+            "type": "object",
+            "properties": {
+                "Classify": {
+                    "$ref": "#/definitions/models.ClassifyDetail",
+                    "description": "对应专栏"
+                },
+                "Msg": {
+                    "description": "提示信息",
+                    "type": "string"
+                },
+                "RecommendList": {
+                    "description": "推荐报告列表",
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.RecommendReport"
+                    }
+                },
+                "Report": {
+                    "$ref": "#/definitions/models.ReportDetail",
+                    "description": "报告"
+                },
+                "Status": {
+                    "description": "状态:0:正常展示,1:报告不存在,2:无权限",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.ReportList": {
+            "title": "ReportList",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "栏目简介",
+                    "type": "string"
+                },
+                "AddType": {
+                    "description": "新增方式:1:新增报告,2:继承报告",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Author": {
+                    "description": "作者",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "ClassifyId": {
+                    "description": "分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdFirst": {
+                    "description": "一级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyIdSecond": {
+                    "description": "二级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameFirst": {
+                    "description": "一级分类名称",
+                    "type": "string"
+                },
+                "ClassifyNameSecond": {
+                    "description": "二级分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CommentList": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.CustomerComment"
+                    }
+                },
+                "Content": {
+                    "description": "内容",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "Frequency": {
+                    "description": "频度",
+                    "type": "string"
+                },
+                "HasPermission": {
+                    "description": "是否拥有报告权限,1:拥有,0:没有",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "HomeImgUrl": {
+                    "description": "首页配图",
+                    "type": "string"
+                },
+                "Id": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "IsCurrentDate": {
+                    "description": "是否当前日期:1是,0不是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "MsgIsSend": {
+                    "description": "消息是否已发送,0:否,1:是",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ParentId": {
+                    "description": "父级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "PublishTime": {
+                    "description": "发布时间",
+                    "type": "string"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                },
+                "ReportImgUrl": {
+                    "description": "报告配图",
+                    "type": "string"
+                },
+                "Stage": {
+                    "description": "最新期数",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "State": {
+                    "description": "1:未发布,2:已发布",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Title": {
+                    "description": "标题",
+                    "type": "string"
+                },
+                "TitleType": {
+                    "description": "标题类型,FICC或者权益",
+                    "type": "string"
+                },
+                "VideoName": {
+                    "description": "音频文件名称",
+                    "type": "string"
+                },
+                "VideoPlaySeconds": {
+                    "description": "音频播放时长",
+                    "type": "string"
+                },
+                "VideoSize": {
+                    "description": "音频文件大小,单位M",
+                    "type": "string"
+                },
+                "VideoUrl": {
+                    "description": "音频文件URL",
+                    "type": "string"
+                }
+            }
+        },
+        "models.ReportListResp": {
+            "title": "ReportListResp",
+            "type": "object",
+            "properties": {
+                "List": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.ReportList"
+                    }
+                },
+                "Paging": {
+                    "$ref": "#/definitions/models.PagingItem",
+                    "description": "分页数据"
+                }
+            }
+        },
+        "models.ReportRecordReq": {
+            "title": "ReportRecordReq",
+            "type": "object",
+            "properties": {
+                "ReportId": {
+                    "description": "报告Id",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.ReportShareDetailResp": {
+            "title": "ReportShareDetailResp",
+            "type": "object",
+            "properties": {
+                "Report": {
+                    "$ref": "#/definitions/models.Report",
+                    "description": "报告"
+                }
+            }
+        },
+        "models.ResearchReportList": {
+            "title": "ResearchReportList",
+            "type": "object",
+            "properties": {
+                "Abstract": {
+                    "description": "栏目简介",
+                    "type": "string"
+                },
+                "AuthorDescript": {
+                    "description": "作者简介",
+                    "type": "string"
+                },
+                "AvatarImgUrl": {
+                    "description": "头像",
+                    "type": "string"
+                },
+                "ClassifyName": {
+                    "description": "分类名称",
+                    "type": "string"
+                },
+                "ColumnImgUrl": {
+                    "description": "栏目配图",
+                    "type": "string"
+                },
+                "CreateTime": {
+                    "description": "创建时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "Descript": {
+                    "description": "分享描述",
+                    "type": "string"
+                },
+                "HeadImgUrl": {
+                    "description": "头部banner",
+                    "type": "string"
+                },
+                "Id": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ModifyTime": {
+                    "description": "修改时间",
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "ParentId": {
+                    "description": "父级分类id",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "ReportAuthor": {
+                    "description": "栏目作者",
+                    "type": "string"
+                }
+            }
+        },
+        "models.ResearchReportListResp": {
+            "title": "ResearchReportListResp",
+            "type": "object",
+            "properties": {
+                "List": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.ResearchReportList"
+                    }
+                }
+            }
+        },
+        "models.SmallLimitResp": {
+            "title": "SmallLimitResp",
+            "type": "object",
+            "properties": {
+                "IsMaxPermission": {
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.UserDetail": {
+            "title": "UserDetail",
+            "type": "object",
+            "properties": {
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "FirstLogin": {
+                    "description": "是否第一次登陆",
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Headimgurl": {
+                    "description": "用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空",
+                    "type": "string"
+                },
+                "Mobile": {
+                    "description": "手机号码",
+                    "type": "string"
+                },
+                "UserPermission": {
+                    "description": "用户权限状态:0:付费用户,可正常查看报告,40001:获取用户信息失败,40002:非付费用户",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "models.WechatSign": {
+            "title": "WechatSign",
+            "type": "object",
+            "properties": {
+                "AppId": {
+                    "type": "string"
+                },
+                "NonceStr": {
+                    "type": "string"
+                },
+                "RawString": {
+                    "type": "string"
+                },
+                "Signature": {
+                    "type": "string"
+                },
+                "Timestamp": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Url": {
+                    "type": "string"
+                }
+            }
+        },
+        "models.WxLoginResp": {
+            "title": "WxLoginResp",
+            "type": "object",
+            "properties": {
+                "Authorization": {
+                    "type": "string"
+                },
+                "Code": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "CompanyName": {
+                    "description": "客户名称",
+                    "type": "string"
+                },
+                "Email": {
+                    "description": "邮箱",
+                    "type": "string"
+                },
+                "EndDate": {
+                    "description": "到期日期",
+                    "type": "string"
+                },
+                "Expires": {
+                    "type": "string",
+                    "format": "datetime"
+                },
+                "FirstLogin": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "Headimgurl": {
+                    "description": "用户头像",
+                    "type": "string"
+                },
+                "Mobile": {
+                    "description": "手机号",
+                    "type": "string"
+                },
+                "ProductName": {
+                    "description": "客户类型名称",
+                    "type": "string"
+                },
+                "Status": {
+                    "description": "状态",
+                    "type": "string"
+                },
+                "UserId": {
+                    "type": "integer",
+                    "format": "int64"
+                },
+                "UserPermission": {
+                    "description": "状态码",
+                    "type": "integer",
+                    "format": "int64"
+                }
+            }
+        },
+        "paging.PagingItem": {
+            "title": "PagingItem",
+            "type": "object"
+        },
+        "video.VideoListResp": {
+            "title": "VideoListResp",
+            "type": "object"
+        },
+        "video.VideoTagsListResp": {
+            "title": "VideoTagsListResp",
+            "type": "object"
+        }
+    },
+    "tags": [
+        {
+            "name": "home",
+            "description": "首页\n"
+        },
+        {
+            "name": "report",
+            "description": "报告\n"
+        },
+        {
+            "name": "report",
+            "description": "报告分享\n"
+        },
+        {
+            "name": "report",
+            "description": "报告\n"
+        },
+        {
+            "name": "user",
+            "description": "用户\n"
+        },
+        {
+            "name": "user",
+            "description": "用户\n"
+        },
+        {
+            "name": "video",
+            "description": "视频\n"
+        },
+        {
+            "name": "bill",
+            "description": "年度账单\n"
+        }
+    ]
+}

+ 1897 - 0
swagger/swagger.yml

@@ -0,0 +1,1897 @@
+swagger: "2.0"
+info:
+  title: beego Test API
+  description: beego has a very cool tools to autogenerate documents for your API
+  version: 1.0.0
+  termsOfService: http://beego.me/
+  contact:
+    email: astaxie@gmail.com
+  license:
+    name: Apache 2.0
+    url: http://www.apache.org/licenses/LICENSE-2.0.html
+basePath: /api
+paths:
+  /bill/detail:
+    get:
+      tags:
+      - bill
+      description: 年度账单接口
+      operationId: BillController.年度账单接口
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.BillDetailResp'
+  /classify/detail:
+    get:
+      tags:
+      - classify
+      description: 获取分类详情信息接口
+      operationId: ClassifyController.获取分类详情信息
+      parameters:
+      - in: query
+        name: ClassifyId
+        description: 分类id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ClassifyDetail'
+  /classify/pc/list:
+    get:
+      tags:
+      - classify
+      description: 获取一级分类列表接口
+      operationId: ClassifyCommonController.获取一级分类列表
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.Classify'
+  /classify/pc/second/list:
+    get:
+      tags:
+      - classify
+      description: 获取二级分类列表接口
+      operationId: ClassifyCommonController.获取二级分类列表
+      parameters:
+      - in: query
+        name: ClassifyId
+        description: 分类id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ClassifyDetail'
+  /home/banner:
+    get:
+      tags:
+      - home
+      description: 首页列表接口
+      operationId: HomeController.首页列表接口
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.Banner'
+  /home/list:
+    get:
+      tags:
+      - home
+      description: 首页列表接口
+      operationId: HomeController.首页列表接口
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.HomeList'
+  /home/pc/banner:
+    get:
+      tags:
+      - home
+      description: 首页banner接口
+      operationId: HomeCommonController.首页banner接口
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.Banner'
+  /home/pc/column/list:
+    get:
+      tags:
+      - home
+      description: 首页专栏接口
+      operationId: HomeCommonController.首页专栏接口
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.Classify'
+  /home/pc/list:
+    get:
+      tags:
+      - home
+      description: pc-首页列表接口
+      operationId: HomeCommonController.pc-首页列表接口
+      parameters:
+      - in: query
+        name: PageSize
+        description: 每页数据条数
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: CurrentIndex
+        description: 当前页页码,从1开始
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: ClassifyId
+        description: 分类id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.PcListHomeResp'
+  /report/addAudioRecord:
+    post:
+      tags:
+      - report
+      description: 新增音频阅读记录接口
+      operationId: ReportController.新增音频阅读记录
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.ReportRecordReq'
+      responses:
+        "200":
+          description: 新增成功
+  /report/addUpdateLabel:
+    post:
+      tags:
+      - report
+      description: 新增报告浏览记录接口
+      operationId: ReportController.新增报告浏览记录
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.ReportRecordReq'
+      responses:
+        "200":
+          description: 新增成功
+  /report/addViewRecord:
+    post:
+      tags:
+      - report
+      description: 新增报告浏览记录接口
+      operationId: ReportController.新增报告浏览记录
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.ReportRecordReq'
+      responses:
+        "200":
+          description: 新增成功
+  /report/author/detail:
+    get:
+      tags:
+      - report
+      description: 获取报告作者详情
+      operationId: ReportController.获取报告作者详情
+      parameters:
+      - in: query
+        name: ReportAuthor
+        description: 作者名称
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ReportDetailResp'
+  /report/detail:
+    get:
+      tags:
+      - report
+      description: 日评详情接口
+      operationId: ReportController.日评详情
+      parameters:
+      - in: query
+        name: ReportId
+        description: 报告id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ReportDetailResp'
+  /report/list:
+    get:
+      tags:
+      - report
+      description: 日评列表接口
+      operationId: ReportController.日评列表
+      parameters:
+      - in: query
+        name: PageSize
+        description: 每页数据条数
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: CurrentIndex
+        description: 当前页页码,从1开始
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: ClassifyId
+        description: 分类id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ReportListResp'
+  /report/pc/research/report/list:
+    get:
+      tags:
+      - report
+      description: 研报列表接口
+      operationId: ReportCommonController.研报列表
+      parameters:
+      - in: query
+        name: ClassifyId
+        description: 分类id
+        required: true
+        type: integer
+        format: int64
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ResearchReportListResp'
+  /report/pc/search/report/list:
+    get:
+      tags:
+      - report
+      operationId: ReportCommonController.研报PC端搜索接口
+      parameters:
+      - in: query
+        name: KeyWord
+        description: 搜索关键词
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.PcSearchReportListResp'
+  /report/share/detail:
+    get:
+      tags:
+      - report
+      description: 日评详情接口
+      operationId: ReportShareController.日评详情
+      parameters:
+      - in: query
+        name: ReportCode
+        description: 报告唯一编码
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.ReportShareDetailResp'
+  /user/apply:
+    post:
+      tags:
+      - user
+      description: 申请试用接口
+      operationId: UserController.申请试用
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.ApplyReq'
+      responses:
+        Ret=200:
+          description: 申请成功
+  /user/checkEmailCode:
+    post:
+      tags:
+      - user
+      description: 校验邮箱验证码接口
+      operationId: UserCommonController.校验邮箱验证码
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.CheckEmailCodeReq'
+      responses:
+        Ret=200:
+          description: 校验成功
+  /user/checkSmsCode:
+    post:
+      tags:
+      - user
+      description: 校验短信验证码接口
+      operationId: UserCommonController.校验短信验证码
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.CheckSmsCodeReq'
+      responses:
+        Ret=200:
+          description: 校验成功
+  /user/detail:
+    get:
+      tags:
+      - user
+      description: 获取用户详情接口
+      operationId: UserController.获取用户详情
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.UserDetail'
+  /user/getEmailCode:
+    get:
+      tags:
+      - user
+      description: 获取邮件验证码接口
+      operationId: UserCommonController.获取邮件验证码
+      parameters:
+      - in: query
+        name: Email
+        description: 邮箱
+        required: true
+        type: string
+      responses:
+        Ret=200:
+          description: 获取成功
+  /user/getSmsCode:
+    get:
+      tags:
+      - user
+      description: 获取短信验证码接口
+      operationId: UserCommonController.获取短信验证码
+      parameters:
+      - in: query
+        name: Mobile
+        description: 手机号码
+        required: true
+        type: string
+      - in: query
+        name: AreaNum
+        description: 地区编码
+        required: true
+        type: string
+      responses:
+        Ret=200:
+          description: 获取成功
+  /user/login:
+    post:
+      tags:
+      - user
+      description: 登录接口
+      operationId: UserController.登录
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.LoginReq'
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.LoginResp'
+  /user/pc/bind:
+    post:
+      tags:
+      - user
+      description: 绑定手机号或邮箱
+      operationId: UserController.绑定手机号或邮箱
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.BindReq'
+      responses:
+        Ret=200:
+          description: 绑定成功
+  /user/pc/check/login:
+    get:
+      tags:
+      - user
+      description: 校验免登陆
+      operationId: UserController.校验免登陆
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.CheckLoginResp'
+  /user/pc/getGraphicVerifyCode:
+    get:
+      tags:
+      - user
+      description: 获取图形验证码
+      operationId: UserCommonController.获取图形验证码
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.GraphicVerifyCodeResp'
+  /user/pc/getSmsCode:
+    get:
+      tags:
+      - user
+      description: pc端获取短信验证码接口
+      operationId: UserCommonController.pc端获取短信验证码
+      parameters:
+      - in: query
+        name: Mobile
+        description: 手机号码
+        required: true
+        type: string
+      - in: query
+        name: AreaNum
+        description: 地区编码
+        required: true
+        type: string
+      - in: query
+        name: VerifyId
+        description: 图形验证码id
+        required: true
+        type: string
+      - in: query
+        name: VerifyCode
+        description: 图形验证码code
+        required: true
+        type: string
+      responses:
+        Ret=200:
+          description: 获取成功
+  /user/pc/login:
+    post:
+      tags:
+      - user
+      description: 登录接口
+      operationId: UserCommonController.登录
+      parameters:
+      - in: body
+        name: request
+        description: type json string
+        required: true
+        schema:
+          $ref: '#/definitions/models.LoginReq'
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.LoginResp'
+  /user/smallLimit:
+    get:
+      tags:
+      - user
+      description: 是否小套餐客户接口
+      operationId: UserController.是否小套餐客户
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.SmallLimitResp'
+  /video/list:
+    get:
+      tags:
+      - video
+      description: 视频列表接口
+      operationId: VideoController.视频列表
+      parameters:
+      - in: query
+        name: PageSize
+        description: 每页数据条数
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: CurrentIndex
+        description: 当前页页码,从1开始
+        required: true
+        type: integer
+        format: int64
+      - in: query
+        name: KeyWord
+        description: 搜索关键词
+        required: true
+        type: string
+      - in: query
+        name: DateType
+        description: 时间筛选组合:1:近一个月,2:近三个月,3:近半年,4:全部
+        required: true
+        type: string
+      - in: query
+        name: Tags
+        description: 标签名称
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/video.VideoListResp'
+  /video/tags/list:
+    get:
+      tags:
+      - video
+      description: 获取视频标签列表接口
+      operationId: VideoController.获取视频标签列表
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/video.VideoTagsListResp'
+  /wechat/getWxSign:
+    get:
+      tags:
+      - wechat
+      description: 微信获取签名接口
+      operationId: WechatController.微信获取签名接口
+      parameters:
+      - in: query
+        name: Url
+        description: url地址
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.WechatSign'
+  /wechat/login:
+    get:
+      tags:
+      - wechat
+      description: 微信登录接口
+      operationId: WechatCommonController.微信登录接口
+      parameters:
+      - in: query
+        name: Code
+        description: 微信唯一编码code
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.WxLoginResp'
+  /wechat/pc/login:
+    get:
+      tags:
+      - wechat
+      description: pc端微信登录接口
+      operationId: WechatCommonController.pc端微信登录接口
+      parameters:
+      - in: query
+        name: Code
+        description: 微信唯一编码code
+        required: true
+        type: string
+      responses:
+        "200":
+          description: ""
+          schema:
+            $ref: '#/definitions/models.WxLoginResp'
+definitions:
+  models.ApplyReq:
+    title: ApplyReq
+    type: object
+    properties:
+      ApplyMethod:
+        description: '申请方式:'
+        type: integer
+        format: int64
+      CompanyName:
+        description: 公司名称
+        type: string
+      RealName:
+        description: 姓名
+        type: string
+  models.Banner:
+    title: Banner
+    type: object
+    properties:
+      Abstract:
+        description: 栏目简介
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      BannerType:
+        description: 类型 1:轮播图,2:头部海报
+        type: integer
+        format: int64
+      ClassifyId:
+        description: 分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+        format: datetime
+      Descript:
+        description: 分享描述
+        type: string
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      Id:
+        type: integer
+        format: int64
+      ImageUrl:
+        description: 图片路径
+        type: string
+      JumpUrl:
+        description: 跳转地址
+        type: string
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+      ReportImgUrl:
+        description: 报告配图
+        type: string
+  models.BillDetailResp:
+    title: BillDetailResp
+    type: object
+    properties:
+      CreateDate:
+        description: 创建时间
+        type: string
+      FirstReadReportTitle:
+        description: 首次阅读报告标题
+        type: string
+      FirstReadReportType:
+        description: 首次阅读报告类型
+        type: string
+      LatestReadReportDate:
+        description: 阅读报告时间最晚的一天
+        type: string
+      LatestReadReportDateDuration:
+        description: 阅读报告时间最晚的一天,总共阅读报告的时长
+        type: number
+        format: double
+      LatestReadReportTime:
+        description: 阅读报告时间最晚的一天,最晚的时间
+        type: string
+      LearnDay:
+        description: 连续学习天数
+        type: integer
+        format: int64
+      ListenReportCount:
+        description: 收听报告次数
+        type: integer
+        format: int64
+      ListenReportDuration:
+        description: 收听报告时长
+        type: number
+        format: double
+      MaxOpenReportClassify:
+        description: 打开次数最多报告的栏目
+        type: string
+      MaxOpenReportCount:
+        description: 打开次数最多报告的栏目下,用户阅读的报告数
+        type: integer
+        format: int64
+      MaxReadReportCount:
+        description: 阅读报告最多的一天,报告数量
+        type: integer
+        format: int64
+      MaxReadReportDate:
+        description: 阅读报告最多的一天
+        type: string
+      RealName:
+        description: 用户实际名称
+        type: string
+      TogetherDay:
+        description: 相伴天数
+        type: string
+      TotalReadDuration:
+        description: 总阅读时长
+        type: number
+        format: double
+      TotalReport:
+        description: 总阅读报告数
+        type: integer
+        format: int64
+      TotalReportDayCount:
+        description: 总阅读晨报数
+        type: integer
+        format: int64
+      TotalReportMonthCount:
+        description: 总阅读月报数
+        type: integer
+        format: int64
+      TotalReportRddpCount:
+        description: 总阅读点评数
+        type: integer
+        format: int64
+      TotalReportTwoWeekCount:
+        description: 总阅读双周报数
+        type: integer
+        format: int64
+      TotalReportWeekCount:
+        description: 总阅读周报数
+        type: integer
+        format: int64
+  models.BindReq:
+    title: BindReq
+    type: object
+    properties:
+      BindType:
+        description: 绑定方式:1:手机,2:邮箱
+        type: integer
+        format: int64
+      Email:
+        description: 邮箱
+        type: string
+      Mobile:
+        description: 手机号
+        type: string
+      VerifyCode:
+        description: 短信/邮箱 验证码
+        type: string
+  models.CheckEmailCodeReq:
+    title: CheckEmailCodeReq
+    type: object
+    properties:
+      Email:
+        description: 邮箱
+        type: string
+      SmsCode:
+        description: 验证码
+        type: string
+  models.CheckLoginResp:
+    title: CheckLoginResp
+    type: object
+    properties:
+      IsBind:
+        description: true:需要绑定邮箱或验证码,false:不需要绑定邮箱或验证码
+        type: boolean
+      IsTips:
+        description: true:需要提示,false:不需要提示
+        type: boolean
+  models.CheckSmsCodeReq:
+    title: CheckSmsCodeReq
+    type: object
+    properties:
+      Mobile:
+        description: 手机号
+        type: string
+      SmsCode:
+        description: 验证码
+        type: string
+  models.Classify:
+    title: Classify
+    type: object
+    properties:
+      Abstract:
+        description: 栏目简介
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+        format: datetime
+      Descript:
+        description: 分享描述
+        type: string
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      HomeImgUrl:
+        description: 首页配图
+        type: string
+      Id:
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      ParentId:
+        description: 父级分类id
+        type: integer
+        format: int64
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+      ReportImgUrl:
+        description: 报告配图
+        type: string
+  models.ClassifyDetail:
+    title: ClassifyDetail
+    type: object
+    properties:
+      Abstract:
+        description: 栏目简介
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      ClassifyId:
+        description: 分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CommentList:
+        type: array
+        items:
+          $ref: '#/definitions/models.CustomerComment'
+      CreateTime:
+        description: 创建时间
+        type: string
+        format: datetime
+      Descript:
+        description: 分享描述
+        type: string
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      HomeImgUrl:
+        description: 首页配图
+        type: string
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      ParentId:
+        description: 父级分类id
+        type: integer
+        format: int64
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+      ReportImgUrl:
+        description: 报告配图
+        type: string
+      Stage:
+        description: 最新期数
+        type: integer
+        format: int64
+  models.CustomerComment:
+    title: CustomerComment
+    type: object
+    properties:
+      Comment:
+        type: string
+      CompanyName:
+        type: string
+      CustomerName:
+        type: string
+      HeadImgUrl:
+        type: string
+      Id:
+        type: integer
+        format: int64
+  models.GraphicVerifyCodeResp:
+    title: GraphicVerifyCodeResp
+    type: object
+    properties:
+      VerifyCode:
+        type: string
+      VerifyId:
+        type: string
+  models.HomeClassifyItem:
+    title: HomeClassifyItem
+    type: object
+    properties:
+      Child:
+        $ref: '#/definitions/models.Report'
+      ClassifyId:
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+  models.HomeList:
+    title: HomeList
+    type: object
+    properties:
+      Child:
+        type: array
+        items:
+          $ref: '#/definitions/models.HomeClassifyItem'
+      ClassifyId:
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+  models.LoginReq:
+    title: LoginReq
+    type: object
+    properties:
+      Email:
+        description: 邮箱
+        type: string
+      LoginType:
+        description: 登录方式:1:手机,2:邮箱
+        type: integer
+        format: int64
+      Mobile:
+        description: 手机号
+        type: string
+  models.LoginResp:
+    title: LoginResp
+    type: object
+    properties:
+      Authorization:
+        description: Token
+        type: string
+      CompanyName:
+        description: 客户名称
+        type: string
+      Email:
+        description: 邮箱
+        type: string
+      EndDate:
+        description: 到期日期
+        type: string
+      Headimgurl:
+        description: 用户头像
+        type: string
+      Mobile:
+        description: 手机号
+        type: string
+      ProductName:
+        description: 客户类型名称
+        type: string
+      Status:
+        description: 状态
+        type: string
+      UserId:
+        description: 用户id
+        type: integer
+        format: int64
+      UserPermission:
+        description: 权限
+        type: integer
+        format: int64
+  models.PagingItem:
+    title: PagingItem
+    type: object
+    properties:
+      CurrentIndex:
+        description: 当前页页码
+        type: integer
+        format: int64
+      IsEnd:
+        description: 是否最后一页
+        type: boolean
+      IsStart:
+        description: 是否首页
+        type: boolean
+      NextIndex:
+        description: 下一页页码
+        type: integer
+        format: int64
+      PageSize:
+        description: 每页数据条数
+        type: integer
+        format: int64
+      Pages:
+        description: 总页数
+        type: integer
+        format: int64
+      PreviousIndex:
+        description: 上一页页码
+        type: integer
+        format: int64
+      Totals:
+        description: 总数据量
+        type: integer
+        format: int64
+  models.PcHomeClassifyItem:
+    title: PcHomeClassifyItem
+    type: object
+    properties:
+      Abstract:
+        description: 摘要
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      ClassifyId:
+        type: integer
+        format: int64
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+      Descript:
+        description: 分享描述
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      HomeImgUrl:
+        description: 首页配图
+        type: string
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      IsCurrentDate:
+        description: 是否当前日期:1是,0不是
+        type: integer
+        format: int64
+      IsShowNewLabel:
+        description: 是否显示新标签,等于0不显示,大于0显示
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+      ReportImgUrl:
+        description: 报告配图
+        type: string
+      Stage:
+        description: 期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.PcListHomeResp:
+    title: PcListHomeResp
+    type: object
+    properties:
+      List:
+        type: array
+        items:
+          $ref: '#/definitions/models.PcHomeClassifyItem'
+      Paging:
+        $ref: '#/definitions/paging.PagingItem'
+  models.PcReport:
+    title: PcReport
+    type: object
+    properties:
+      Abstract:
+        description: 摘要
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      IsCurrentDate:
+        description: 是否当前日期:1是,0不是
+        type: integer
+        format: int64
+      IsShowNewLabel:
+        description: 是否显示新标签,等于0不显示,大于0显示
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      Stage:
+        description: 期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.PcSearchReportListResp:
+    title: PcSearchReportListResp
+    type: object
+    properties:
+      List:
+        type: array
+        items:
+          $ref: '#/definitions/models.ReportList'
+      Paging:
+        $ref: '#/definitions/paging.PagingItem'
+  models.RecommendReport:
+    title: RecommendReport
+    type: object
+    properties:
+      Abstract:
+        description: 摘要
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      Content:
+        description: 内容
+        type: string
+      ContentSub:
+        description: 内容前两个章节
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      HasPermission:
+        description: 报告权限:0:无权限,1:有权限
+        type: integer
+        format: int64
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      Stage:
+        description: 期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.Report:
+    title: Report
+    type: object
+    properties:
+      Abstract:
+        description: 摘要
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      Content:
+        description: 内容
+        type: string
+      ContentSub:
+        description: 内容前两个章节
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      IsCurrentDate:
+        description: 是否当前日期
+        type: integer
+        format: int64
+      IsShowNewLabel:
+        description: 是否显示新标签
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      Stage:
+        description: 期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.ReportDetail:
+    title: ReportDetail
+    type: object
+    properties:
+      Abstract:
+        description: 摘要
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      Content:
+        description: 内容
+        type: string
+      ContentSub:
+        description: 内容前两个章节
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      IsCurrentDate:
+        description: 是否当前日期
+        type: integer
+        format: int64
+      IsShowNewLabel:
+        description: 是否显示新标签
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      Stage:
+        description: 期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.ReportDetailResp:
+    title: ReportDetailResp
+    type: object
+    properties:
+      Classify:
+        $ref: '#/definitions/models.ClassifyDetail'
+        description: 对应专栏
+      Msg:
+        description: 提示信息
+        type: string
+      RecommendList:
+        description: 推荐报告列表
+        type: array
+        items:
+          $ref: '#/definitions/models.RecommendReport'
+      Report:
+        $ref: '#/definitions/models.ReportDetail'
+        description: 报告
+      Status:
+        description: 状态:0:正常展示,1:报告不存在,2:无权限
+        type: integer
+        format: int64
+  models.ReportList:
+    title: ReportList
+    type: object
+    properties:
+      Abstract:
+        description: 栏目简介
+        type: string
+      AddType:
+        description: 新增方式:1:新增报告,2:继承报告
+        type: integer
+        format: int64
+      Author:
+        description: 作者
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      ClassifyId:
+        description: 分类id
+        type: integer
+        format: int64
+      ClassifyIdFirst:
+        description: 一级分类id
+        type: integer
+        format: int64
+      ClassifyIdSecond:
+        description: 二级分类id
+        type: integer
+        format: int64
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ClassifyNameFirst:
+        description: 一级分类名称
+        type: string
+      ClassifyNameSecond:
+        description: 二级分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CommentList:
+        type: array
+        items:
+          $ref: '#/definitions/models.CustomerComment'
+      Content:
+        description: 内容
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+        format: datetime
+      Descript:
+        description: 分享描述
+        type: string
+      Frequency:
+        description: 频度
+        type: string
+      HasPermission:
+        description: 是否拥有报告权限,1:拥有,0:没有
+        type: integer
+        format: int64
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      HomeImgUrl:
+        description: 首页配图
+        type: string
+      Id:
+        description: 报告Id
+        type: integer
+        format: int64
+      IsCurrentDate:
+        description: 是否当前日期:1是,0不是
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      MsgIsSend:
+        description: 消息是否已发送,0:否,1:是
+        type: integer
+        format: int64
+      ParentId:
+        description: 父级分类id
+        type: integer
+        format: int64
+      PublishTime:
+        description: 发布时间
+        type: string
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+      ReportImgUrl:
+        description: 报告配图
+        type: string
+      Stage:
+        description: 最新期数
+        type: integer
+        format: int64
+      State:
+        description: 1:未发布,2:已发布
+        type: integer
+        format: int64
+      Title:
+        description: 标题
+        type: string
+      TitleType:
+        description: 标题类型,FICC或者权益
+        type: string
+      VideoName:
+        description: 音频文件名称
+        type: string
+      VideoPlaySeconds:
+        description: 音频播放时长
+        type: string
+      VideoSize:
+        description: 音频文件大小,单位M
+        type: string
+      VideoUrl:
+        description: 音频文件URL
+        type: string
+  models.ReportListResp:
+    title: ReportListResp
+    type: object
+    properties:
+      List:
+        type: array
+        items:
+          $ref: '#/definitions/models.ReportList'
+      Paging:
+        $ref: '#/definitions/models.PagingItem'
+        description: 分页数据
+  models.ReportRecordReq:
+    title: ReportRecordReq
+    type: object
+    properties:
+      ReportId:
+        description: 报告Id
+        type: integer
+        format: int64
+  models.ReportShareDetailResp:
+    title: ReportShareDetailResp
+    type: object
+    properties:
+      Report:
+        $ref: '#/definitions/models.Report'
+        description: 报告
+  models.ResearchReportList:
+    title: ResearchReportList
+    type: object
+    properties:
+      Abstract:
+        description: 栏目简介
+        type: string
+      AuthorDescript:
+        description: 作者简介
+        type: string
+      AvatarImgUrl:
+        description: 头像
+        type: string
+      ClassifyName:
+        description: 分类名称
+        type: string
+      ColumnImgUrl:
+        description: 栏目配图
+        type: string
+      CreateTime:
+        description: 创建时间
+        type: string
+        format: datetime
+      Descript:
+        description: 分享描述
+        type: string
+      HeadImgUrl:
+        description: 头部banner
+        type: string
+      Id:
+        type: integer
+        format: int64
+      ModifyTime:
+        description: 修改时间
+        type: string
+        format: datetime
+      ParentId:
+        description: 父级分类id
+        type: integer
+        format: int64
+      ReportAuthor:
+        description: 栏目作者
+        type: string
+  models.ResearchReportListResp:
+    title: ResearchReportListResp
+    type: object
+    properties:
+      List:
+        type: array
+        items:
+          $ref: '#/definitions/models.ResearchReportList'
+  models.SmallLimitResp:
+    title: SmallLimitResp
+    type: object
+    properties:
+      IsMaxPermission:
+        type: integer
+        format: int64
+  models.UserDetail:
+    title: UserDetail
+    type: object
+    properties:
+      Email:
+        description: 邮箱
+        type: string
+      FirstLogin:
+        description: 是否第一次登陆
+        type: integer
+        format: int64
+      Headimgurl:
+        description: 用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空
+        type: string
+      Mobile:
+        description: 手机号码
+        type: string
+      UserPermission:
+        description: 用户权限状态:0:付费用户,可正常查看报告,40001:获取用户信息失败,40002:非付费用户
+        type: integer
+        format: int64
+  models.WechatSign:
+    title: WechatSign
+    type: object
+    properties:
+      AppId:
+        type: string
+      NonceStr:
+        type: string
+      RawString:
+        type: string
+      Signature:
+        type: string
+      Timestamp:
+        type: integer
+        format: int64
+      Url:
+        type: string
+  models.WxLoginResp:
+    title: WxLoginResp
+    type: object
+    properties:
+      Authorization:
+        type: string
+      Code:
+        type: integer
+        format: int64
+      CompanyName:
+        description: 客户名称
+        type: string
+      Email:
+        description: 邮箱
+        type: string
+      EndDate:
+        description: 到期日期
+        type: string
+      Expires:
+        type: string
+        format: datetime
+      FirstLogin:
+        type: integer
+        format: int64
+      Headimgurl:
+        description: 用户头像
+        type: string
+      Mobile:
+        description: 手机号
+        type: string
+      ProductName:
+        description: 客户类型名称
+        type: string
+      Status:
+        description: 状态
+        type: string
+      UserId:
+        type: integer
+        format: int64
+      UserPermission:
+        description: 状态码
+        type: integer
+        format: int64
+  paging.PagingItem:
+    title: PagingItem
+    type: object
+  video.VideoListResp:
+    title: VideoListResp
+    type: object
+  video.VideoTagsListResp:
+    title: VideoTagsListResp
+    type: object
+tags:
+- name: home
+  description: |
+    首页
+- name: report
+  description: |
+    报告
+- name: report
+  description: |
+    报告分享
+- name: report
+  description: |
+    报告
+- name: user
+  description: |
+    用户
+- name: user
+  description: |
+    用户
+- name: video
+  description: |
+    视频
+- name: bill
+  description: |
+    年度账单

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.