diff --git a/app_common.go b/app_common.go
index 14351ec..c557435 100644
--- a/app_common.go
+++ b/app_common.go
@@ -14,6 +14,6 @@ func (a *App) LongTigerRank(date string) *[]models.LongTigerRankData {
return data.NewMarketNewsApi().LongTiger(date)
}
-func (a *App) StockResearchReport() []any {
- return data.NewMarketNewsApi().StockResearchReport(7)
+func (a *App) StockResearchReport(stockCode string) []any {
+ return data.NewMarketNewsApi().StockResearchReport(stockCode, 7)
}
diff --git a/backend/data/market_news_api.go b/backend/data/market_news_api.go
index 4a47212..b90fd6f 100644
--- a/backend/data/market_news_api.go
+++ b/backend/data/market_news_api.go
@@ -378,7 +378,15 @@ func (m MarketNewsApi) LongTiger(date string) *[]models.LongTigerRankData {
return ranks
}
-func (m MarketNewsApi) StockResearchReport(days int) []any {
+func (m MarketNewsApi) StockResearchReport(stockCode string, days int) []any {
+ beginDate := time.Now().Add(-time.Duration(days) * 24 * time.Hour).Format("2006-01-02")
+ endDate := time.Now().Format("2006-01-02")
+ if strutil.ContainsAny(stockCode, []string{"."}) {
+ stockCode = strings.Split(stockCode, ".")[0]
+ beginDate = time.Now().Add(-time.Duration(days) * 365 * time.Hour).Format("2006-01-02")
+ }
+
+ logger.SugaredLogger.Infof("StockResearchReport-stockCode:%s", stockCode)
type Req struct {
BeginTime string `json:"beginTime"`
@@ -397,8 +405,7 @@ func (m MarketNewsApi) StockResearchReport(days int) []any {
}
url := "https://reportapi.eastmoney.com/report/list2"
- beginDate := time.Now().Add(-time.Duration(days) * 24 * time.Hour).Format("2006-01-02")
- endDate := time.Now().Format("2006-01-02")
+
logger.SugaredLogger.Infof("beginDate:%s endDate:%s", beginDate, endDate)
resp, err := resty.New().SetTimeout(time.Duration(15)*time.Second).R().
SetHeader("Host", "reportapi.eastmoney.com").
@@ -407,13 +414,15 @@ func (m MarketNewsApi) StockResearchReport(days int) []any {
SetHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0").
SetHeader("Content-Type", "application/json").
SetBody(&Req{
- BeginTime: beginDate,
- EndTime: endDate,
- PageNo: 1,
- PageSize: 50,
- P: 1,
- PageNum: 1,
- PageNumber: 1,
+ Code: stockCode,
+ IndustryCode: "*",
+ BeginTime: beginDate,
+ EndTime: endDate,
+ PageNo: 1,
+ PageSize: 50,
+ P: 1,
+ PageNum: 1,
+ PageNumber: 1,
}).Post(url)
respMap := map[string]any{}
diff --git a/backend/data/market_news_api_test.go b/backend/data/market_news_api_test.go
index bfa0069..032aa6e 100644
--- a/backend/data/market_news_api_test.go
+++ b/backend/data/market_news_api_test.go
@@ -67,7 +67,7 @@ func TestLongTiger(t *testing.T) {
func TestStockResearchReport(t *testing.T) {
db.Init("../../data/stock.db")
- resp := NewMarketNewsApi().StockResearchReport(7)
+ resp := NewMarketNewsApi().StockResearchReport("600584.sh", 7)
for _, a := range resp {
logger.SugaredLogger.Debugf("value: %+v", a)
}
diff --git a/frontend/src/components/StockResearchReportList.vue b/frontend/src/components/StockResearchReportList.vue
index 4645ed4..2365483 100644
--- a/frontend/src/components/StockResearchReportList.vue
+++ b/frontend/src/components/StockResearchReportList.vue
@@ -1,24 +1,27 @@
+
+
+
diff --git a/frontend/wailsjs/go/main/App.d.ts b/frontend/wailsjs/go/main/App.d.ts
index a71e540..73251c0 100644
--- a/frontend/wailsjs/go/main/App.d.ts
+++ b/frontend/wailsjs/go/main/App.d.ts
@@ -89,7 +89,7 @@ export function SetStockSort(arg1:number,arg2:string):Promise;
export function ShareAnalysis(arg1:string,arg2:string):Promise;
-export function StockResearchReport():Promise>;
+export function StockResearchReport(arg1:string):Promise>;
export function SummaryStockNews(arg1:string,arg2:any):Promise;
diff --git a/frontend/wailsjs/go/main/App.js b/frontend/wailsjs/go/main/App.js
index dfb00a2..fc55fb7 100644
--- a/frontend/wailsjs/go/main/App.js
+++ b/frontend/wailsjs/go/main/App.js
@@ -174,8 +174,8 @@ export function ShareAnalysis(arg1, arg2) {
return window['go']['main']['App']['ShareAnalysis'](arg1, arg2);
}
-export function StockResearchReport() {
- return window['go']['main']['App']['StockResearchReport']();
+export function StockResearchReport(arg1) {
+ return window['go']['main']['App']['StockResearchReport'](arg1);
}
export function SummaryStockNews(arg1, arg2) {