diff --git a/docs/other.md b/docs/other.md
index 9294505d6f..db3bfe63a1 100644
--- a/docs/other.md
+++ b/docs/other.md
@@ -311,6 +311,10 @@ type 为 all 时,category 参数不支持 cost 和 free
+### 问询函件(全部/主板/中小企业板/创业板)
+
+
+
## 搜狗
### 搜狗特色 LOGO
diff --git a/lib/router.js b/lib/router.js
index 358c53006e..9611b87db9 100644
--- a/lib/router.js
+++ b/lib/router.js
@@ -1756,6 +1756,7 @@ router.get('/sse/renewal/', require('./routes/sse/renewal'));
// 深圳证券交易所——上市公告
router.get('/szse/notice/', require('./routes/szse/notice'));
+router.get('/szse/inquire/:type', require('./routes/szse/inquire'));
// 前端艺术家每日整理&&飞冰早报
router.get('/jskou/:type?', require('./routes/jskou/index'));
diff --git a/lib/routes/szse/inquire.js b/lib/routes/szse/inquire.js
new file mode 100644
index 0000000000..1d616d84cb
--- /dev/null
+++ b/lib/routes/szse/inquire.js
@@ -0,0 +1,89 @@
+const got = require('@/utils/got');
+const cheerio = require('cheerio');
+
+module.exports = async (ctx) => {
+ const type = ctx.params.type;
+ const ptype = {
+ navall: { name: '主板+中小企业+创业板', tabkey: 'tab0', dataNum: 0, dataCategory: '全部', dataArr: [] },
+ nav1: { name: '主板', tabkey: 'tab1', dataNum: 0, dataCategory: '主板', dataArr: [] },
+ nav2: { name: '中小企业板', tabkey: 'tab2', dataNum: 1, dataCategory: '中小企业板', dataArr: [] },
+ nav3: { name: '创业板', tabkey: 'tab3', dataNum: 2, dataCategory: '创业板', dataArr: [] },
+ };
+ function getUrl(params) {
+ const $ = cheerio.load(params);
+ const url = $('a').attr('encode-open');
+ return url;
+ }
+ function restUrl(params) {
+ const $ = cheerio.load(params);
+ const getText = $('a').text();
+ const url = $('a').attr('encode-open');
+ const resthref = `http://reportdocs.static.szse.cn${url}`;
+ if (params !== '') {
+ params = `${getText}`;
+ } else {
+ params = '';
+ }
+ return params;
+ }
+ for (const key in ptype) {
+ if (key !== 'navall') {
+ const host = 'http://www.szse.cn/';
+ const link = `http://www.szse.cn/api/report/ShowReport/data?SHOWTYPE=JSON&CATALOGID=main_wxhj&TABKEY=${ptype[key].tabkey}&loading=first`;
+ // eslint-disable-next-line no-await-in-loop
+ const response = await got.get(link, {
+ Referer: host,
+ });
+ const datNum = ptype[key].dataNum;
+ const temp = response.data;
+ ptype[key].dataArr = temp[datNum].data;
+ for (let i = 0; i < ptype[key].dataArr.length; i++) {
+ ptype[key].dataArr[i].category = ptype[key].dataCategory;
+ }
+ } else {
+ console.log(key);
+ }
+ }
+
+ let outList;
+ switch (type) {
+ case 'nav1':
+ outList = ptype.navall.dataArr.concat(ptype.nav1.dataArr);
+ break;
+ case 'nav2':
+ outList = ptype.navall.dataArr.concat(ptype.nav2.dataArr);
+ break;
+ case 'nav3':
+ outList = ptype.navall.dataArr.concat(ptype.nav3.dataArr);
+ break;
+ default:
+ outList = ptype.navall.dataArr.concat(ptype.nav1.dataArr, ptype.nav2.dataArr, ptype.nav3.dataArr);
+ break;
+ }
+ ctx.state.data = {
+ title: `深圳证券交易所——【${ptype[type].name}】问询函件`,
+ link: `http://www.szse.cn/disclosure/supervision/inquire/index.html`,
+ description: `深圳证券交易所/信息披露/监管信息公开/问询函件`,
+ item: outList.map((item) => ({
+ title: `【${item.category}】` + item.gsjc,
+ category: item.category,
+ author: item.category,
+ description:
+ `
+
+ | 公司代码 : | ${item.gsdm} |
+ | 公司简称 : | ${item.gsjc} |
+ | 发函日期 : | ${item.fhrq} |
+ | 函件类别 : | ${item.hjlb} |
+ | 函件内容 : | ` +
+ restUrl(item.ck) +
+ ` |
+ | 公司回复 : | ` +
+ restUrl(item.hfck) +
+ ` |
+
`,
+ pubDate: new Date(item.fhrq).toUTCString(),
+ link: `http://reportdocs.static.szse.cn` + getUrl(`${item.ck}`),
+ })),
+ };
+};