fix(api): 修复 API 生成器路径配置错误
- 修复 openAPIDir 路径:../docs/api-specs → ../../docs/api-specs - 修复 outputDir 路径:../src/api → ../../src/api - 新增 article 模块 API(文章详情、收藏、列表、热门) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Showing
6 changed files
with
1163 additions
and
2 deletions
docs/api-specs/article/article_detail.md
0 → 100644
| 1 | +# 文章详情 | ||
| 2 | + | ||
| 3 | +## OpenAPI Specification | ||
| 4 | + | ||
| 5 | +```yaml | ||
| 6 | +openapi: 3.0.1 | ||
| 7 | +info: | ||
| 8 | + title: '' | ||
| 9 | + version: 1.0.0 | ||
| 10 | +paths: | ||
| 11 | + /srv/: | ||
| 12 | + get: | ||
| 13 | + summary: 文章详情 | ||
| 14 | + deprecated: false | ||
| 15 | + description: '' | ||
| 16 | + tags: | ||
| 17 | + - 文章 | ||
| 18 | + parameters: | ||
| 19 | + - name: f | ||
| 20 | + in: query | ||
| 21 | + description: '' | ||
| 22 | + required: true | ||
| 23 | + example: manulife | ||
| 24 | + schema: | ||
| 25 | + type: string | ||
| 26 | + - name: a | ||
| 27 | + in: query | ||
| 28 | + description: '' | ||
| 29 | + required: true | ||
| 30 | + example: article | ||
| 31 | + schema: | ||
| 32 | + type: string | ||
| 33 | + - name: t | ||
| 34 | + in: query | ||
| 35 | + description: '' | ||
| 36 | + required: false | ||
| 37 | + example: article_detail | ||
| 38 | + schema: | ||
| 39 | + type: string | ||
| 40 | + - name: i | ||
| 41 | + in: query | ||
| 42 | + description: '' | ||
| 43 | + required: false | ||
| 44 | + example: '2742443' | ||
| 45 | + schema: | ||
| 46 | + type: string | ||
| 47 | + responses: | ||
| 48 | + '200': | ||
| 49 | + description: '' | ||
| 50 | + content: | ||
| 51 | + application/json: | ||
| 52 | + schema: | ||
| 53 | + type: object | ||
| 54 | + properties: | ||
| 55 | + code: | ||
| 56 | + type: integer | ||
| 57 | + msg: | ||
| 58 | + type: integer | ||
| 59 | + data: | ||
| 60 | + type: object | ||
| 61 | + properties: | ||
| 62 | + id: | ||
| 63 | + type: integer | ||
| 64 | + title: 文章id | ||
| 65 | + post_title: | ||
| 66 | + type: string | ||
| 67 | + title: 标题 | ||
| 68 | + post_content: | ||
| 69 | + type: string | ||
| 70 | + title: 内容 | ||
| 71 | + post_excerpt: | ||
| 72 | + type: string | ||
| 73 | + title: 简介 | ||
| 74 | + post_link: | ||
| 75 | + type: string | ||
| 76 | + title: 外部链接 | ||
| 77 | + post_date: | ||
| 78 | + type: string | ||
| 79 | + title: 发布日期 | ||
| 80 | + post_author: | ||
| 81 | + type: integer | ||
| 82 | + title: 发布人id | ||
| 83 | + author_name: | ||
| 84 | + type: string | ||
| 85 | + title: 发布人 | ||
| 86 | + file_list: | ||
| 87 | + type: object | ||
| 88 | + properties: | ||
| 89 | + icon: | ||
| 90 | + type: object | ||
| 91 | + properties: | ||
| 92 | + meta_type: | ||
| 93 | + type: string | ||
| 94 | + id: | ||
| 95 | + type: integer | ||
| 96 | + object_id: | ||
| 97 | + type: 'null' | ||
| 98 | + name: | ||
| 99 | + type: string | ||
| 100 | + value: | ||
| 101 | + type: string | ||
| 102 | + description: | ||
| 103 | + type: 'null' | ||
| 104 | + extension: | ||
| 105 | + type: string | ||
| 106 | + post_date: | ||
| 107 | + type: string | ||
| 108 | + icon: | ||
| 109 | + type: 'null' | ||
| 110 | + master_client_id: | ||
| 111 | + type: 'null' | ||
| 112 | + hash: | ||
| 113 | + type: string | ||
| 114 | + height: | ||
| 115 | + type: string | ||
| 116 | + width: | ||
| 117 | + type: string | ||
| 118 | + author: | ||
| 119 | + type: integer | ||
| 120 | + size: | ||
| 121 | + type: 'null' | ||
| 122 | + required: | ||
| 123 | + - meta_type | ||
| 124 | + - id | ||
| 125 | + - object_id | ||
| 126 | + - name | ||
| 127 | + - value | ||
| 128 | + - description | ||
| 129 | + - extension | ||
| 130 | + - post_date | ||
| 131 | + - icon | ||
| 132 | + - master_client_id | ||
| 133 | + - hash | ||
| 134 | + - height | ||
| 135 | + - width | ||
| 136 | + - author | ||
| 137 | + - size | ||
| 138 | + x-apifox-orders: | ||
| 139 | + - meta_type | ||
| 140 | + - id | ||
| 141 | + - object_id | ||
| 142 | + - name | ||
| 143 | + - value | ||
| 144 | + - description | ||
| 145 | + - extension | ||
| 146 | + - post_date | ||
| 147 | + - icon | ||
| 148 | + - master_client_id | ||
| 149 | + - hash | ||
| 150 | + - height | ||
| 151 | + - width | ||
| 152 | + - author | ||
| 153 | + - size | ||
| 154 | + required: | ||
| 155 | + - icon | ||
| 156 | + x-apifox-orders: | ||
| 157 | + - icon | ||
| 158 | + title: 附件列表 | ||
| 159 | + is_favorite: | ||
| 160 | + type: integer | ||
| 161 | + required: | ||
| 162 | + - id | ||
| 163 | + - post_title | ||
| 164 | + - post_content | ||
| 165 | + - post_excerpt | ||
| 166 | + - post_link | ||
| 167 | + - post_date | ||
| 168 | + - post_author | ||
| 169 | + - author_name | ||
| 170 | + - file_list | ||
| 171 | + - is_favorite | ||
| 172 | + x-apifox-orders: | ||
| 173 | + - id | ||
| 174 | + - post_title | ||
| 175 | + - post_content | ||
| 176 | + - post_excerpt | ||
| 177 | + - post_link | ||
| 178 | + - post_date | ||
| 179 | + - post_author | ||
| 180 | + - author_name | ||
| 181 | + - file_list | ||
| 182 | + - is_favorite | ||
| 183 | + required: | ||
| 184 | + - code | ||
| 185 | + - msg | ||
| 186 | + - data | ||
| 187 | + x-apifox-orders: | ||
| 188 | + - code | ||
| 189 | + - msg | ||
| 190 | + - data | ||
| 191 | + example: | ||
| 192 | + code: 1 | ||
| 193 | + msg: 0 | ||
| 194 | + data: | ||
| 195 | + id: 2742443 | ||
| 196 | + post_title: 2025年8月闭关出关回顾 | 守住底线,不说他过 | ||
| 197 | + post_content: "<p style=\"text-align: center;\"><font size=\"4\" color=\"#030303\"><img src=\"https://cdn.ipadbiz.cn/space/120463/d10f31e186dcab6e9f27485253c06748.jpg\" alt=\"\" style=\"width:630px;\"></font></p><p style=\"text-align: left;\"><font color=\"#030303\" size=\"4\">随着打板声响起,东台弥陀寺2025年8月闭关圆满。</font></p><p style=\"text-align: left;\"><font color=\"#030303\" size=\"4\"><br></font></p><p style=\"text-align: center;\"><font size=\"4\" color=\"#030303\"></font></p><p style=\"text-align: left;\"><font color=\"#030303\" size=\"4\">一扇扇关房的门被轻轻推开,莲友们不畏末伏的酷热,迈着沉静的步伐排队从关房走向大雄宝殿,进行出关大回向。</font></p><p style=\"text-align: left;\"><font color=\"#030303\" size=\"4\"><br></font></p><p style=\"text-align: center;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/80c84a83d16eec0183d2eb85cbf7ea55.png\" alt=\"\" style=\"width:170px;\"></p><p style=\"text-align: center;\"><br></p><p style=\"text-align: center;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/b3a18754a8f7b40242476c7ed3f7e09e.jpg\" alt=\"\" style=\"width:630px;\"></p><p style=\"text-align: center;\"><br></p><p style=\"text-align: center;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/dc1265d5bfff331cfad1f79c7905a691.png\" alt=\"\" style=\"width:630px;\"></p><div class=\"rich_media_content js_underline_content\r\n autoTypeSetting24psection\r\n \" id=\"js_content\" style=\"-webkit-tap-highlight-color: transparent; outline: 0px; overflow: hidden; text-align: justify; position: relative; z-index: 0; user-select: text;\"><section powered-by=\"xiumi.us\" style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><section style=\"-webkit-tap-highlight-color: transparent; margin-right: 16px; margin-bottom: 40px; margin-left: 16px; outline: 0px; max-width: 100%; text-wrap-style: initial; line-height: 2em; visibility: visible; box-sizing: border-box !important; overflow-wrap: break-word !important; letter-spacing: 0.578px;\"><section style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">一位同修分享:以前闭关都还比较轻安,这次闭关妄想像潮水一样此起彼伏,平时放不下的都涌上来了,感受到这些放不下的人事物,在闭关时都会来障碍自己,真是关关难过关关过,回去继续努力,准备迎接下一次闭关。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">师父点评:在往生西方的路上,我们只有勇猛精进,没有其他选择。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">另一位同修分享:上一次闭关还可以听到自己心中念佛的声音,回去之后随境发生了退转,这次闭关三天之后开始昏沉,但意识上死死咬着自己的声音。一天半以后,又可以听到自己内心的佛号声音了,感觉很清净,希望能来参加弥陀寺11月的21天闭关。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">师父点评:要做好心理准备,每一天都是在为临终打算,而不是在为眼前打算的。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">还有一位同修分享:师父在开示中说到有些人修的一脸愁容,听了很惭愧。我就是修的很苦的,这次闭关中途还出现了障缘,但坚定的信愿让我最终留下来突破层层关卡,安住在关房和佛号里。第一次来弥陀寺,我谁也不认识,却能这样安心地闭关。不认识的师父和师兄们都细心地护持,虽然苦,但又很幸运,我相信一定会得到阿弥陀佛的救护!</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">师父点评:没关系,现在苦,明天就不苦了,修行就是转苦为乐,阿弥陀佛专门就是拔苦的。回去要多拜佛,多忏悔,苦是因为造了恶,忏悔就可以得安乐。</font></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/676a080b89e69190bbd3cbadbc9e6079.jpg\" alt=\"\" style=\"width:630px;\"></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><br></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/4c9da68472aa0a710ed2254c6984adac.png\" alt=\"\" style=\"width:630px;\"></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">大家就要回去了。你的愿望就是7天,所以7天到了一定要离开,你的愿到位了。所以你要发愿,发成佛之愿,发临终蒙阿弥陀佛接引的愿,愿力决定了你的生命。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">回去以后修行就不那么简单了,没有那么多人给你好脸色看,也没那么多人会把饭递到你的门前了。饭来张口衣来伸手的日子只有在三宝地才有,可以无私地奉献给大家,没有任何要求,唯独希望你能通过念佛变得快乐一点。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">你要往生西方,但很多世间的因缘并不是随顺你的,都是在拖你后腿,所以回去做人也很重要,做人做不好,往生西方的大愿就是扣分的。你天天在扣分,怎么往生呢?贪念、瞋念、嫉妒等等,就这样不停地扣分,如果把这些念头转变成了行为,扣分就更多了。你需要通过多少的佛号才能抵消呢?所以我们得知道,扣分项绝对不要去碰。<br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></p><ul class=\"list-paddingleft-1\" style=\"-webkit-tap-highlight-color: transparent; padding-left: 1.2em; outline: 0px; max-width: 100%; list-style-type: square; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><li style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; font-weight: bold; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">修行法宝——“不说他过”</font></p></li></ul><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">六祖慧能大师说过,“若真修道人,不见世间过。”我们总觉得他人是不对的,自己是对的,所以我们不断地轮回,因为我们见了太多的过失相。要想见而不见,需要很深的功夫。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">尽管我们见满了世间的过错,但是底线是什么?——不要出口。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">不说出口,是最低的要求。你的心里有很多愤怒、嫉妒、对他人的意见、恩怨等等,这些只是扣一分,但如果说出口,至少要扣10分。关于是非、对错,法院去裁决这个事情。我们是世间人,遵循因果的法则,我们要利用这个法则成就你的道业。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">不管你心里想什么,嘴巴不要造恶,好好在家诵经、念佛、持戒,布施、供养,这些都是加分项,加分很难得,可扣起分来很快。我们总是念佛号念得咬牙切齿,而让你甩开手机简直是要命。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">所以,对于发了菩提心的菩萨,佛陀给了一条底线,就是“不说他过”。作为一个念佛人,有很多的底线。你要清楚,哪些事情是绝对不能去做的,哪些事情是要去做的。生命的时间就这么多,搞不清楚之前,不要开口,不管是对家里人还是好朋友。</font></p></section><div style=\"text-align: center;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/feb5f4d8edb7c78ad7a5661fec7d76c0.jpg\" alt=\"\" style=\"letter-spacing: 0.578px; width: 630px;\"></div><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><section style=\"-webkit-tap-highlight-color: transparent; margin-top: 10px; outline: 0px; max-width: 100%; text-indent: 0em; letter-spacing: 0.544px; caret-color: rgba(0, 0, 0, 0); font-family: PingFangSC-light; visibility: visible; line-height: 2em; box-sizing: border-box !important; overflow-wrap: break-word !important; text-align: center;\"><font size=\"4\" color=\"#030303\"><br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></section><section style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><ul class=\"list-paddingleft-1\" style=\"-webkit-tap-highlight-color: transparent; padding-left: 1.2em; outline: 0px; max-width: 100%; list-style-type: square; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><li style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; font-weight: bold; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">修行第一步——让自己跟外境产生脱离</font></p></li></ul></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">不管什么事,他做他的,对你来说都是身外之事,修行第一步是让自己跟外境相割离,有个次第,先不要在环境里面迷失方向,所以我们要闭关,要减少攀缘,不要跟外界打成一片,要跟外境产生脱离。</font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\"><br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">我们怎么跟环境脱离呢?</font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\"><br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">不要参与他们的事情,不要去管他们,你慢慢就会脱离出来,没有人会障碍你,心就会轻松自在。事实就是这样,生命都是独立的,你完全可以依靠自己内心的功德力,依靠佛力的加持,让这一生安安稳稳地走下去。</font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\"><br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></section><section style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">苦,就是因为你参与太多,你还有所期待,有所求。我们要在因缘中生活,最后乘佛愿力而去。事情出现了随缘做,没出现就老实念佛,到临终也就自然往生了,所以修行也是很快乐。</font></section></section><br><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\"><img src=\"https://cdn.ipadbiz.cn/space/120463/15263ae2c644021310ee8de0d58d1c4b.jpg\" alt=\"\" style=\"width:630px;\"><br style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;\"></font></p><section style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><ul class=\"list-paddingleft-1\" style=\"-webkit-tap-highlight-color: transparent; padding-left: 1.2em; outline: 0px; max-width: 100%; list-style-type: square; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><li style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; font-weight: bold; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">修行第二步——把身体跟“我”产生脱离</font></p></li></ul></section><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">我们要一点点退回本来面貌,外境的好坏、是非,跟你没有关系。脱离不是说你不在外界了,而是你对外界产生了一种自我防御能力,不去管他们了,渐渐把身心收回来,收到后面,你会发现,我跟身体也没什么关系。</font></p><section style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><ul class=\"list-paddingleft-1\" style=\"-webkit-tap-highlight-color: transparent; padding-left: 1.2em; outline: 0px; max-width: 100%; list-style-type: square; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><li style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; font-weight: bold; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">让修行变得快乐</font></p></li></ul><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">这世间没有一种力量可以真正地障碍我们的佛号,外在怎么可能障碍到你?是你自己障碍了自己。你不想念了,果然就不念了。所以说,没有成功往生,要怪你自己。你必须要回光返照,而且不能急,否则会急火攻心,会出差错,必须循序渐进。即便你每次都参加闭关,也不是每次都会进步的,但只要保证总体是向上的趋势就好了。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">大家就用这样轻松欢喜愉悦的心情回去,别对他人要求太多了,多包容一点,他们打骂你,诽谤你,不满意你,都是正常的。你看一切都很正常,你就开心了,要让自己过得快乐一点。</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">修行就是这样子,每天都在进步,每天都在改错,每天都在做一个更加圆满的人。一天下来,没犯错,没扣分,就会很开心。如果说他人过,一天总结下来,你自己都不会开心。所以,让自己开心的第一点,就是不说他过。</font></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/42069c2dced35e4c69147958c173867f.jpg\" alt=\"\" style=\"width:630px;\"></p></section><section style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 24px; outline: 0px; max-width: 100%; letter-spacing: 0.578px; line-height: 2em; visibility: visible; text-indent: 0em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><ul class=\"list-paddingleft-1\" style=\"-webkit-tap-highlight-color: transparent; padding-left: 1.2em; outline: 0px; max-width: 100%; list-style-type: square; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><li style=\"-webkit-tap-highlight-color: transparent; outline: 0px; max-width: 100%; font-weight: bold; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">要发大誓愿</font></p></li></ul></section><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\">从现在开始,大家要发下一个重大的誓愿:“从现在开始到临终,直到尽未来际,我要如佛一样不说他人过。”</font></p><p style=\"-webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><font size=\"4\" color=\"#030303\"><br></font></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><img src=\"https://cdn.ipadbiz.cn/space/120463/db7c811fc18b48c33c940f8fb248f777.png\" alt=\"\" style=\"width:170px;\"></p><p style=\"text-align: center; -webkit-tap-highlight-color: transparent; margin-bottom: 40px; outline: 0px; max-width: 100%; clear: both; min-height: 1em; text-wrap-style: initial; letter-spacing: 0.578px; visibility: visible; text-indent: 0em; line-height: 1.75em; box-sizing: border-box !important; overflow-wrap: break-word !important;\"><br></p></section></section></section></div>" | ||
| 198 | + post_excerpt: 一扇扇关房的门被轻轻推开,莲友们不畏末伏的酷热,迈着沉静的步伐排队从关房走向大雄宝殿,进行出关大回向。 | ||
| 199 | + post_link: '' | ||
| 200 | + post_date: '2025-08-19 06:25:46' | ||
| 201 | + open_num: 45 | ||
| 202 | + file_sn: null | ||
| 203 | + post_author: 457235 | ||
| 204 | + article_id: null | ||
| 205 | + activity_time: null | ||
| 206 | + activity_address: null | ||
| 207 | + activity_address_link: null | ||
| 208 | + activity_link: null | ||
| 209 | + activity_tel: null | ||
| 210 | + activity_sn: null | ||
| 211 | + activity_type: null | ||
| 212 | + activity_time_lunar: null | ||
| 213 | + activity_status: null | ||
| 214 | + activity_id: null | ||
| 215 | + volunteer_sn: null | ||
| 216 | + volunteer_id: null | ||
| 217 | + icon: >- | ||
| 218 | + https://cdn.ipadbiz.cn/space_120463/合影_lkDn29eCDgz18acsrgH4LFQg632d.jpg | ||
| 219 | + author_name: 善然 | ||
| 220 | + file_list: | ||
| 221 | + icon: | ||
| 222 | + meta_type: icon | ||
| 223 | + id: 2742442 | ||
| 224 | + object_id: null | ||
| 225 | + name: 合影.jpg | ||
| 226 | + value: >- | ||
| 227 | + https://cdn.ipadbiz.cn/space_120463/合影_lkDn29eCDgz18acsrgH4LFQg632d.jpg | ||
| 228 | + description: null | ||
| 229 | + extension: jpg | ||
| 230 | + post_date: '2025-08-18 20:54:15' | ||
| 231 | + icon: null | ||
| 232 | + master_client_id: null | ||
| 233 | + hash: lkDn29eCDgz18acsrgH4LFQg632d | ||
| 234 | + height: '2633' | ||
| 235 | + width: '4408' | ||
| 236 | + author: 457235 | ||
| 237 | + size: null | ||
| 238 | + is_favorite: 0 | ||
| 239 | + headers: {} | ||
| 240 | + x-apifox-name: 成功 | ||
| 241 | + x-apifox-ordering: 0 | ||
| 242 | + security: [] | ||
| 243 | + x-apifox-folder: 文章 | ||
| 244 | + x-apifox-status: released | ||
| 245 | + x-run-in-apifox: https://app.apifox.com/web/project/7792797/apis/api-420067226-run | ||
| 246 | +components: | ||
| 247 | + schemas: {} | ||
| 248 | + responses: {} | ||
| 249 | + securitySchemes: {} | ||
| 250 | +servers: | ||
| 251 | + - url: https://manulife.onwall.cn | ||
| 252 | + description: 正式环境 | ||
| 253 | +security: [] | ||
| 254 | + | ||
| 255 | +``` |
docs/api-specs/article/favorite.md
0 → 100644
| 1 | +# 文章收藏列表 | ||
| 2 | + | ||
| 3 | +## OpenAPI Specification | ||
| 4 | + | ||
| 5 | +```yaml | ||
| 6 | +openapi: 3.0.1 | ||
| 7 | +info: | ||
| 8 | + title: '' | ||
| 9 | + version: 1.0.0 | ||
| 10 | +paths: | ||
| 11 | + /srv/: | ||
| 12 | + get: | ||
| 13 | + summary: 文章收藏列表 | ||
| 14 | + deprecated: false | ||
| 15 | + description: '' | ||
| 16 | + tags: | ||
| 17 | + - 文章 | ||
| 18 | + parameters: | ||
| 19 | + - name: f | ||
| 20 | + in: query | ||
| 21 | + description: '' | ||
| 22 | + required: true | ||
| 23 | + example: manulife | ||
| 24 | + schema: | ||
| 25 | + type: string | ||
| 26 | + - name: a | ||
| 27 | + in: query | ||
| 28 | + description: '' | ||
| 29 | + required: true | ||
| 30 | + example: article | ||
| 31 | + schema: | ||
| 32 | + type: string | ||
| 33 | + - name: t | ||
| 34 | + in: query | ||
| 35 | + description: '' | ||
| 36 | + required: false | ||
| 37 | + example: favorite | ||
| 38 | + schema: | ||
| 39 | + type: string | ||
| 40 | + - name: limit | ||
| 41 | + in: query | ||
| 42 | + description: '' | ||
| 43 | + required: false | ||
| 44 | + example: '10' | ||
| 45 | + schema: | ||
| 46 | + type: string | ||
| 47 | + - name: page | ||
| 48 | + in: query | ||
| 49 | + description: '' | ||
| 50 | + required: false | ||
| 51 | + example: '0' | ||
| 52 | + schema: | ||
| 53 | + type: string | ||
| 54 | + - name: keyword | ||
| 55 | + in: query | ||
| 56 | + description: 搜索关键词 | ||
| 57 | + required: false | ||
| 58 | + schema: | ||
| 59 | + type: string | ||
| 60 | + responses: | ||
| 61 | + '200': | ||
| 62 | + description: '' | ||
| 63 | + content: | ||
| 64 | + application/json: | ||
| 65 | + schema: | ||
| 66 | + type: object | ||
| 67 | + properties: | ||
| 68 | + code: | ||
| 69 | + type: integer | ||
| 70 | + msg: | ||
| 71 | + type: string | ||
| 72 | + data: | ||
| 73 | + type: object | ||
| 74 | + properties: | ||
| 75 | + list: | ||
| 76 | + type: array | ||
| 77 | + items: | ||
| 78 | + type: object | ||
| 79 | + properties: | ||
| 80 | + id: | ||
| 81 | + type: integer | ||
| 82 | + post_title: | ||
| 83 | + type: string | ||
| 84 | + title: 文章表头 | ||
| 85 | + post_excerpt: | ||
| 86 | + type: string | ||
| 87 | + title: 简介 | ||
| 88 | + post_link: | ||
| 89 | + type: string | ||
| 90 | + title: 外部链接 | ||
| 91 | + post_date: | ||
| 92 | + type: string | ||
| 93 | + title: 发布时间 | ||
| 94 | + favorite_time: | ||
| 95 | + type: string | ||
| 96 | + title: 收藏时间 | ||
| 97 | + x-apifox-orders: | ||
| 98 | + - id | ||
| 99 | + - post_title | ||
| 100 | + - post_excerpt | ||
| 101 | + - post_link | ||
| 102 | + - post_date | ||
| 103 | + - favorite_time | ||
| 104 | + total: | ||
| 105 | + type: integer | ||
| 106 | + required: | ||
| 107 | + - list | ||
| 108 | + - total | ||
| 109 | + x-apifox-orders: | ||
| 110 | + - list | ||
| 111 | + - total | ||
| 112 | + required: | ||
| 113 | + - code | ||
| 114 | + - msg | ||
| 115 | + - data | ||
| 116 | + x-apifox-orders: | ||
| 117 | + - code | ||
| 118 | + - msg | ||
| 119 | + - data | ||
| 120 | + example: | ||
| 121 | + code: 1 | ||
| 122 | + msg: 成功 | ||
| 123 | + data: | ||
| 124 | + list: | ||
| 125 | + - id: 2742443 | ||
| 126 | + post_title: 2025年8月闭关出关回顾 | 守住底线,不说他过 | ||
| 127 | + post_excerpt: 一扇扇关房的门被轻轻推开,莲友们不畏末伏的酷热,迈着沉静的步伐排队从关房走向大雄宝殿,进行出关大回向。 | ||
| 128 | + post_link: '' | ||
| 129 | + post_date: '2025-08-19 06:25:46' | ||
| 130 | + open_num: 47 | ||
| 131 | + file_sn: null | ||
| 132 | + favorite_time: '2026-02-26 18:29:56.688486+08' | ||
| 133 | + total: 1 | ||
| 134 | + headers: {} | ||
| 135 | + x-apifox-name: 成功 | ||
| 136 | + x-apifox-ordering: 0 | ||
| 137 | + security: [] | ||
| 138 | + x-apifox-folder: 文章 | ||
| 139 | + x-apifox-status: released | ||
| 140 | + x-run-in-apifox: https://app.apifox.com/web/project/7792797/apis/api-420078655-run | ||
| 141 | +components: | ||
| 142 | + schemas: {} | ||
| 143 | + responses: {} | ||
| 144 | + securitySchemes: {} | ||
| 145 | +servers: | ||
| 146 | + - url: https://manulife.onwall.cn | ||
| 147 | + description: 正式环境 | ||
| 148 | +security: [] | ||
| 149 | + | ||
| 150 | +``` |
docs/api-specs/article/list.md
0 → 100644
| 1 | +# 文章列表 | ||
| 2 | + | ||
| 3 | +## OpenAPI Specification | ||
| 4 | + | ||
| 5 | +```yaml | ||
| 6 | +openapi: 3.0.1 | ||
| 7 | +info: | ||
| 8 | + title: '' | ||
| 9 | + version: 1.0.0 | ||
| 10 | +paths: | ||
| 11 | + /srv/: | ||
| 12 | + get: | ||
| 13 | + summary: 文章列表 | ||
| 14 | + deprecated: false | ||
| 15 | + description: '' | ||
| 16 | + tags: | ||
| 17 | + - 文章 | ||
| 18 | + parameters: | ||
| 19 | + - name: f | ||
| 20 | + in: query | ||
| 21 | + description: '' | ||
| 22 | + required: true | ||
| 23 | + example: manulife | ||
| 24 | + schema: | ||
| 25 | + type: string | ||
| 26 | + - name: a | ||
| 27 | + in: query | ||
| 28 | + description: '' | ||
| 29 | + required: true | ||
| 30 | + example: article | ||
| 31 | + schema: | ||
| 32 | + type: string | ||
| 33 | + - name: t | ||
| 34 | + in: query | ||
| 35 | + description: '' | ||
| 36 | + required: false | ||
| 37 | + example: list | ||
| 38 | + schema: | ||
| 39 | + type: string | ||
| 40 | + - name: limit | ||
| 41 | + in: query | ||
| 42 | + description: '' | ||
| 43 | + required: false | ||
| 44 | + example: '10' | ||
| 45 | + schema: | ||
| 46 | + type: string | ||
| 47 | + - name: page | ||
| 48 | + in: query | ||
| 49 | + description: '' | ||
| 50 | + required: false | ||
| 51 | + example: '0' | ||
| 52 | + schema: | ||
| 53 | + type: string | ||
| 54 | + - name: cid | ||
| 55 | + in: query | ||
| 56 | + description: 分类id | ||
| 57 | + required: false | ||
| 58 | + example: '2768724' | ||
| 59 | + schema: | ||
| 60 | + type: string | ||
| 61 | + - name: child_id | ||
| 62 | + in: query | ||
| 63 | + description: 只有一层分类时,筛选数据用 | ||
| 64 | + required: false | ||
| 65 | + schema: | ||
| 66 | + type: string | ||
| 67 | + - name: keyword | ||
| 68 | + in: query | ||
| 69 | + description: 搜索关键词 | ||
| 70 | + required: false | ||
| 71 | + schema: | ||
| 72 | + type: string | ||
| 73 | + responses: | ||
| 74 | + '200': | ||
| 75 | + description: '' | ||
| 76 | + content: | ||
| 77 | + application/json: | ||
| 78 | + schema: | ||
| 79 | + type: object | ||
| 80 | + properties: | ||
| 81 | + code: | ||
| 82 | + type: integer | ||
| 83 | + msg: | ||
| 84 | + type: integer | ||
| 85 | + data: | ||
| 86 | + type: object | ||
| 87 | + properties: | ||
| 88 | + cate: | ||
| 89 | + type: object | ||
| 90 | + properties: | ||
| 91 | + id: | ||
| 92 | + type: integer | ||
| 93 | + title: 分类id | ||
| 94 | + category_name: | ||
| 95 | + type: string | ||
| 96 | + title: 分类名称 | ||
| 97 | + category_parent: | ||
| 98 | + type: integer | ||
| 99 | + title: 分类父级 | ||
| 100 | + category_description: | ||
| 101 | + type: 'null' | ||
| 102 | + title: 分类描述 | ||
| 103 | + required: | ||
| 104 | + - id | ||
| 105 | + - category_name | ||
| 106 | + - category_parent | ||
| 107 | + - category_description | ||
| 108 | + x-apifox-orders: | ||
| 109 | + - id | ||
| 110 | + - category_name | ||
| 111 | + - category_parent | ||
| 112 | + - category_description | ||
| 113 | + title: 当前分类 | ||
| 114 | + children: | ||
| 115 | + type: array | ||
| 116 | + items: | ||
| 117 | + type: object | ||
| 118 | + properties: | ||
| 119 | + id: | ||
| 120 | + type: integer | ||
| 121 | + title: 二级分类id | ||
| 122 | + category_name: | ||
| 123 | + type: string | ||
| 124 | + title: 二级分类名 | ||
| 125 | + category_parent: | ||
| 126 | + type: integer | ||
| 127 | + title: 二级分类名父级id | ||
| 128 | + level: | ||
| 129 | + type: integer | ||
| 130 | + category_description: | ||
| 131 | + type: 'null' | ||
| 132 | + title: 二级分类描述 | ||
| 133 | + icon: | ||
| 134 | + type: 'null' | ||
| 135 | + max_depth: | ||
| 136 | + type: integer | ||
| 137 | + list: | ||
| 138 | + type: array | ||
| 139 | + items: | ||
| 140 | + type: object | ||
| 141 | + properties: | ||
| 142 | + name: | ||
| 143 | + type: string | ||
| 144 | + title: 附件名称 | ||
| 145 | + value: | ||
| 146 | + type: string | ||
| 147 | + title: 附件地址 | ||
| 148 | + extension: | ||
| 149 | + type: string | ||
| 150 | + title: 后缀名 | ||
| 151 | + post_date: | ||
| 152 | + type: string | ||
| 153 | + title: 发布时间 | ||
| 154 | + size: | ||
| 155 | + type: string | ||
| 156 | + title: 附件大小 | ||
| 157 | + is_favorite: | ||
| 158 | + type: integer | ||
| 159 | + title: 是否收藏 | ||
| 160 | + id: | ||
| 161 | + type: string | ||
| 162 | + title: 附件id | ||
| 163 | + required: | ||
| 164 | + - name | ||
| 165 | + - value | ||
| 166 | + - extension | ||
| 167 | + - post_date | ||
| 168 | + - size | ||
| 169 | + - is_favorite | ||
| 170 | + - id | ||
| 171 | + x-apifox-orders: | ||
| 172 | + - id | ||
| 173 | + - name | ||
| 174 | + - value | ||
| 175 | + - extension | ||
| 176 | + - post_date | ||
| 177 | + - size | ||
| 178 | + - is_favorite | ||
| 179 | + title: 二级分类的附件列表 | ||
| 180 | + children: | ||
| 181 | + type: array | ||
| 182 | + items: | ||
| 183 | + type: object | ||
| 184 | + properties: | ||
| 185 | + id: | ||
| 186 | + type: integer | ||
| 187 | + title: 三级分类id | ||
| 188 | + category_name: | ||
| 189 | + type: string | ||
| 190 | + title: 三级分类名 | ||
| 191 | + category_parent: | ||
| 192 | + type: integer | ||
| 193 | + title: 三级分类名父级id | ||
| 194 | + category_description: | ||
| 195 | + type: 'null' | ||
| 196 | + title: 三级分类描述 | ||
| 197 | + icon: | ||
| 198 | + type: string | ||
| 199 | + title: 二级分类图标 | ||
| 200 | + nullable: true | ||
| 201 | + required: | ||
| 202 | + - id | ||
| 203 | + - category_name | ||
| 204 | + - category_parent | ||
| 205 | + - category_description | ||
| 206 | + - icon | ||
| 207 | + x-apifox-orders: | ||
| 208 | + - id | ||
| 209 | + - category_name | ||
| 210 | + - category_parent | ||
| 211 | + - category_description | ||
| 212 | + - icon | ||
| 213 | + title: 三级分类 | ||
| 214 | + required: | ||
| 215 | + - id | ||
| 216 | + - category_name | ||
| 217 | + - category_parent | ||
| 218 | + - level | ||
| 219 | + - category_description | ||
| 220 | + - icon | ||
| 221 | + - max_depth | ||
| 222 | + - list | ||
| 223 | + - children | ||
| 224 | + x-apifox-orders: | ||
| 225 | + - id | ||
| 226 | + - category_name | ||
| 227 | + - category_parent | ||
| 228 | + - category_description | ||
| 229 | + - icon | ||
| 230 | + - children | ||
| 231 | + - list | ||
| 232 | + - level | ||
| 233 | + - max_depth | ||
| 234 | + title: 二级分类列表 | ||
| 235 | + list: | ||
| 236 | + type: array | ||
| 237 | + items: | ||
| 238 | + type: object | ||
| 239 | + properties: | ||
| 240 | + id: | ||
| 241 | + type: integer | ||
| 242 | + post_title: | ||
| 243 | + type: string | ||
| 244 | + title: 标题 | ||
| 245 | + post_excerpt: | ||
| 246 | + type: string | ||
| 247 | + title: 简介 | ||
| 248 | + nullable: true | ||
| 249 | + post_link: | ||
| 250 | + type: string | ||
| 251 | + title: 链接 | ||
| 252 | + description: 如果有就是去外部链接 | ||
| 253 | + post_date: | ||
| 254 | + type: string | ||
| 255 | + title: 发布时间 | ||
| 256 | + is_favorite: | ||
| 257 | + type: integer | ||
| 258 | + title: 是否收藏 | ||
| 259 | + required: | ||
| 260 | + - id | ||
| 261 | + - post_title | ||
| 262 | + - post_excerpt | ||
| 263 | + - post_link | ||
| 264 | + - post_date | ||
| 265 | + - is_favorite | ||
| 266 | + x-apifox-orders: | ||
| 267 | + - id | ||
| 268 | + - post_title | ||
| 269 | + - post_excerpt | ||
| 270 | + - post_link | ||
| 271 | + - post_date | ||
| 272 | + - is_favorite | ||
| 273 | + title: 主分类的附件列表 | ||
| 274 | + total: | ||
| 275 | + type: integer | ||
| 276 | + title: 主分类文章数量 | ||
| 277 | + max_level: | ||
| 278 | + type: integer | ||
| 279 | + title: 页面需要层级 | ||
| 280 | + required: | ||
| 281 | + - cate | ||
| 282 | + - children | ||
| 283 | + - list | ||
| 284 | + - total | ||
| 285 | + - max_level | ||
| 286 | + x-apifox-orders: | ||
| 287 | + - cate | ||
| 288 | + - children | ||
| 289 | + - list | ||
| 290 | + - total | ||
| 291 | + - max_level | ||
| 292 | + required: | ||
| 293 | + - code | ||
| 294 | + - msg | ||
| 295 | + - data | ||
| 296 | + x-apifox-orders: | ||
| 297 | + - code | ||
| 298 | + - msg | ||
| 299 | + - data | ||
| 300 | + example: | ||
| 301 | + code: 1 | ||
| 302 | + msg: 0 | ||
| 303 | + data: | ||
| 304 | + cate: | ||
| 305 | + id: 281941 | ||
| 306 | + category_name: 闭关佛七 | ||
| 307 | + category_parent: 321972 | ||
| 308 | + category_description: null | ||
| 309 | + children: | ||
| 310 | + - id: 282012 | ||
| 311 | + category_name: 佛七回顾 | ||
| 312 | + category_parent: 281941 | ||
| 313 | + level: 1 | ||
| 314 | + category_description: null | ||
| 315 | + icon: null | ||
| 316 | + max_depth: 1 | ||
| 317 | + - id: 338871 | ||
| 318 | + category_name: 佛七报名 | ||
| 319 | + category_parent: 281941 | ||
| 320 | + level: 1 | ||
| 321 | + category_description: null | ||
| 322 | + icon: null | ||
| 323 | + max_depth: 1 | ||
| 324 | + - id: 338872 | ||
| 325 | + category_name: 闭关报名 | ||
| 326 | + category_parent: 281941 | ||
| 327 | + level: 1 | ||
| 328 | + category_description: null | ||
| 329 | + icon: null | ||
| 330 | + max_depth: 1 | ||
| 331 | + - id: 449119 | ||
| 332 | + category_name: 闭关回顾 | ||
| 333 | + category_parent: 281941 | ||
| 334 | + level: 1 | ||
| 335 | + category_description: null | ||
| 336 | + icon: null | ||
| 337 | + max_depth: 1 | ||
| 338 | + list: | ||
| 339 | + - id: 2767726 | ||
| 340 | + post_title: '东台弥陀寺2025年9月闭关报名公告 ' | ||
| 341 | + post_excerpt: null | ||
| 342 | + post_link: '' | ||
| 343 | + post_date: '2025-09-01 20:35:42+08' | ||
| 344 | + open_num: 49 | ||
| 345 | + is_favorite: 0 | ||
| 346 | + - id: 2767724 | ||
| 347 | + post_title: 东台弥陀寺9月连续3场佛七报名公告 | ||
| 348 | + post_excerpt: null | ||
| 349 | + post_link: '' | ||
| 350 | + post_date: '2025-09-01 20:34:58+08' | ||
| 351 | + open_num: 14 | ||
| 352 | + is_favorite: 0 | ||
| 353 | + - id: 2759648 | ||
| 354 | + post_title: '东台弥陀寺2025年9月闭关报名公告 ' | ||
| 355 | + post_excerpt: null | ||
| 356 | + post_link: '' | ||
| 357 | + post_date: '2025-08-28 08:41:31+08' | ||
| 358 | + open_num: 49 | ||
| 359 | + is_favorite: 0 | ||
| 360 | + - id: 2754588 | ||
| 361 | + post_title: 东台弥陀寺2025年9月8-14日佛七报名公告 | ||
| 362 | + post_excerpt: null | ||
| 363 | + post_link: '' | ||
| 364 | + post_date: '2025-08-25 09:05:07+08' | ||
| 365 | + open_num: 71 | ||
| 366 | + is_favorite: 0 | ||
| 367 | + - id: 2753446 | ||
| 368 | + post_title: '东台弥陀寺2025年9月闭关报名公告 ' | ||
| 369 | + post_excerpt: null | ||
| 370 | + post_link: '' | ||
| 371 | + post_date: '2025-08-24 16:11:11+08' | ||
| 372 | + open_num: 49 | ||
| 373 | + is_favorite: 0 | ||
| 374 | + - id: 2746856 | ||
| 375 | + post_title: 东台弥陀寺9月连续3场佛七报名公告 | ||
| 376 | + post_excerpt: null | ||
| 377 | + post_link: '' | ||
| 378 | + post_date: '2025-08-21 09:43:02+08' | ||
| 379 | + open_num: 14 | ||
| 380 | + is_favorite: 0 | ||
| 381 | + - id: 2742443 | ||
| 382 | + post_title: 2025年8月闭关出关回顾 | 守住底线,不说他过 | ||
| 383 | + post_excerpt: 一扇扇关房的门被轻轻推开,莲友们不畏末伏的酷热,迈着沉静的步伐排队从关房走向大雄宝殿,进行出关大回向。 | ||
| 384 | + post_link: '' | ||
| 385 | + post_date: '2025-08-19 06:25:46+08' | ||
| 386 | + open_num: 44 | ||
| 387 | + is_favorite: 0 | ||
| 388 | + - id: 2741121 | ||
| 389 | + post_title: 东台弥陀寺2025年8月19-25日佛七报名公告 | ||
| 390 | + post_excerpt: null | ||
| 391 | + post_link: '' | ||
| 392 | + post_date: '2025-08-18 08:53:05+08' | ||
| 393 | + open_num: 688 | ||
| 394 | + is_favorite: 0 | ||
| 395 | + - id: 2735164 | ||
| 396 | + post_title: '东台弥陀寺2025年9月闭关报名公告 ' | ||
| 397 | + post_excerpt: null | ||
| 398 | + post_link: '' | ||
| 399 | + post_date: '2025-08-14 08:39:17+08' | ||
| 400 | + open_num: 51 | ||
| 401 | + is_favorite: 0 | ||
| 402 | + - id: 2721290 | ||
| 403 | + post_title: 东台弥陀寺2025年8月12-18日佛七报名公告 | ||
| 404 | + post_excerpt: null | ||
| 405 | + post_link: '' | ||
| 406 | + post_date: '2025-08-06 09:49:48+08' | ||
| 407 | + open_num: 18 | ||
| 408 | + is_favorite: 0 | ||
| 409 | + total: 240 | ||
| 410 | + max_level: 2 | ||
| 411 | + headers: {} | ||
| 412 | + x-apifox-name: 成功 | ||
| 413 | + x-apifox-ordering: 0 | ||
| 414 | + security: [] | ||
| 415 | + x-apifox-folder: 文章 | ||
| 416 | + x-apifox-status: released | ||
| 417 | + x-run-in-apifox: https://app.apifox.com/web/project/7792797/apis/api-419982901-run | ||
| 418 | +components: | ||
| 419 | + schemas: {} | ||
| 420 | + responses: {} | ||
| 421 | + securitySchemes: {} | ||
| 422 | +servers: | ||
| 423 | + - url: https://manulife.onwall.cn | ||
| 424 | + description: 正式环境 | ||
| 425 | +security: [] | ||
| 426 | + | ||
| 427 | +``` |
docs/api-specs/article/week_hot.md
0 → 100644
| 1 | +# 热门文章 | ||
| 2 | + | ||
| 3 | +## OpenAPI Specification | ||
| 4 | + | ||
| 5 | +```yaml | ||
| 6 | +openapi: 3.0.1 | ||
| 7 | +info: | ||
| 8 | + title: '' | ||
| 9 | + version: 1.0.0 | ||
| 10 | +paths: | ||
| 11 | + /srv/: | ||
| 12 | + get: | ||
| 13 | + summary: 热门文章 | ||
| 14 | + deprecated: false | ||
| 15 | + description: '' | ||
| 16 | + tags: | ||
| 17 | + - 文章 | ||
| 18 | + parameters: | ||
| 19 | + - name: f | ||
| 20 | + in: query | ||
| 21 | + description: '' | ||
| 22 | + required: true | ||
| 23 | + example: manulife | ||
| 24 | + schema: | ||
| 25 | + type: string | ||
| 26 | + - name: a | ||
| 27 | + in: query | ||
| 28 | + description: '' | ||
| 29 | + required: true | ||
| 30 | + example: article | ||
| 31 | + schema: | ||
| 32 | + type: string | ||
| 33 | + - name: t | ||
| 34 | + in: query | ||
| 35 | + description: '' | ||
| 36 | + required: false | ||
| 37 | + example: week_hot | ||
| 38 | + schema: | ||
| 39 | + type: string | ||
| 40 | + - name: limit | ||
| 41 | + in: query | ||
| 42 | + description: '' | ||
| 43 | + required: false | ||
| 44 | + example: '10' | ||
| 45 | + schema: | ||
| 46 | + type: string | ||
| 47 | + - name: page | ||
| 48 | + in: query | ||
| 49 | + description: '' | ||
| 50 | + required: false | ||
| 51 | + example: '0' | ||
| 52 | + schema: | ||
| 53 | + type: string | ||
| 54 | + - name: cid | ||
| 55 | + in: query | ||
| 56 | + description: 分类id | ||
| 57 | + required: false | ||
| 58 | + example: '2768724' | ||
| 59 | + schema: | ||
| 60 | + type: string | ||
| 61 | + - name: keyword | ||
| 62 | + in: query | ||
| 63 | + description: 搜索关键词 | ||
| 64 | + required: false | ||
| 65 | + schema: | ||
| 66 | + type: string | ||
| 67 | + responses: | ||
| 68 | + '200': | ||
| 69 | + description: '' | ||
| 70 | + content: | ||
| 71 | + application/json: | ||
| 72 | + schema: | ||
| 73 | + type: object | ||
| 74 | + properties: | ||
| 75 | + code: | ||
| 76 | + type: integer | ||
| 77 | + msg: | ||
| 78 | + type: string | ||
| 79 | + data: | ||
| 80 | + type: object | ||
| 81 | + properties: | ||
| 82 | + list: | ||
| 83 | + type: array | ||
| 84 | + items: | ||
| 85 | + type: object | ||
| 86 | + properties: | ||
| 87 | + id: | ||
| 88 | + type: integer | ||
| 89 | + post_title: | ||
| 90 | + type: string | ||
| 91 | + title: 标题 | ||
| 92 | + post_excerpt: | ||
| 93 | + type: 'null' | ||
| 94 | + title: 简介 | ||
| 95 | + post_link: | ||
| 96 | + type: string | ||
| 97 | + title: 外部链接 | ||
| 98 | + post_date: | ||
| 99 | + type: string | ||
| 100 | + title: 发布日期 | ||
| 101 | + is_favorite: | ||
| 102 | + type: integer | ||
| 103 | + title: 是否收藏 | ||
| 104 | + read_people_count: | ||
| 105 | + type: string | ||
| 106 | + title: 学习人数 | ||
| 107 | + read_people_percent: | ||
| 108 | + type: string | ||
| 109 | + title: 学习人数比例 | ||
| 110 | + x-apifox-orders: | ||
| 111 | + - id | ||
| 112 | + - post_title | ||
| 113 | + - post_excerpt | ||
| 114 | + - post_link | ||
| 115 | + - post_date | ||
| 116 | + - is_favorite | ||
| 117 | + - read_people_count | ||
| 118 | + - read_people_percent | ||
| 119 | + required: | ||
| 120 | + - read_people_count | ||
| 121 | + - read_people_percent | ||
| 122 | + total: | ||
| 123 | + type: integer | ||
| 124 | + required: | ||
| 125 | + - list | ||
| 126 | + - total | ||
| 127 | + x-apifox-orders: | ||
| 128 | + - list | ||
| 129 | + - total | ||
| 130 | + required: | ||
| 131 | + - code | ||
| 132 | + - msg | ||
| 133 | + - data | ||
| 134 | + x-apifox-orders: | ||
| 135 | + - code | ||
| 136 | + - msg | ||
| 137 | + - data | ||
| 138 | + example: | ||
| 139 | + code: 1 | ||
| 140 | + msg: 成功 | ||
| 141 | + data: | ||
| 142 | + list: | ||
| 143 | + - id: 2767726 | ||
| 144 | + post_title: '东台弥陀寺2025年9月闭关报名公告 ' | ||
| 145 | + post_excerpt: null | ||
| 146 | + post_link: '' | ||
| 147 | + post_date: '2025-09-01 20:35:42+08' | ||
| 148 | + open_num: 49 | ||
| 149 | + is_favorite: 0 | ||
| 150 | + total: 1 | ||
| 151 | + headers: {} | ||
| 152 | + x-apifox-name: 成功 | ||
| 153 | + x-apifox-ordering: 0 | ||
| 154 | + security: [] | ||
| 155 | + x-apifox-folder: 文章 | ||
| 156 | + x-apifox-status: released | ||
| 157 | + x-run-in-apifox: https://app.apifox.com/web/project/7792797/apis/api-420251865-run | ||
| 158 | +components: | ||
| 159 | + schemas: {} | ||
| 160 | + responses: {} | ||
| 161 | + securitySchemes: {} | ||
| 162 | +servers: | ||
| 163 | + - url: https://manulife.onwall.cn | ||
| 164 | + description: 正式环境 | ||
| 165 | +security: [] | ||
| 166 | + | ||
| 167 | +``` |
| ... | @@ -834,8 +834,8 @@ function compareAPIChanges(openAPIDir) { | ... | @@ -834,8 +834,8 @@ function compareAPIChanges(openAPIDir) { |
| 834 | } | 834 | } |
| 835 | 835 | ||
| 836 | // 执行生成 | 836 | // 执行生成 |
| 837 | -const openAPIDir = path.resolve(__dirname, '../docs/api-specs'); | 837 | +const openAPIDir = path.resolve(__dirname, '../../docs/api-specs'); |
| 838 | -const outputDir = path.resolve(__dirname, '../src/api'); | 838 | +const outputDir = path.resolve(__dirname, '../../src/api'); |
| 839 | 839 | ||
| 840 | console.log('=== OpenAPI 转 API 文档生成器 ===\n'); | 840 | console.log('=== OpenAPI 转 API 文档生成器 ===\n'); |
| 841 | console.log(`输入目录: ${openAPIDir}`); | 841 | console.log(`输入目录: ${openAPIDir}`); | ... | ... |
src/api/article.js
0 → 100644
| 1 | +import { fn, fetch } from '@/api/fn'; | ||
| 2 | + | ||
| 3 | +const Api = { | ||
| 4 | + ArticleDetail: '/srv/?a=article&t=article_detail', | ||
| 5 | + Favorite: '/srv/?a=article&t=favorite', | ||
| 6 | + List: '/srv/?a=article&t=list', | ||
| 7 | + WeekHot: '/srv/?a=article&t=week_hot', | ||
| 8 | +} | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * @description 文章详情 | ||
| 12 | + * @remark | ||
| 13 | + * @param {Object} params 请求参数 | ||
| 14 | + * @param {string} params.i (可选) | ||
| 15 | + * @returns {Promise<{ | ||
| 16 | + * code: number; // 状态码 | ||
| 17 | + * msg: string; // 消息 | ||
| 18 | + * data: { | ||
| 19 | + id: integer; // 文章id | ||
| 20 | + post_title: string; // 标题 | ||
| 21 | + post_content: string; // 内容 | ||
| 22 | + post_excerpt: string; // 简介 | ||
| 23 | + post_link: string; // 外部链接 | ||
| 24 | + post_date: string; // 发布日期 | ||
| 25 | + post_author: integer; // 发布人id | ||
| 26 | + author_name: string; // 发布人 | ||
| 27 | + file_list: { | ||
| 28 | + icon: { | ||
| 29 | + meta_type: string; // | ||
| 30 | + id: integer; // | ||
| 31 | + object_id: null; // | ||
| 32 | + name: string; // | ||
| 33 | + value: string; // | ||
| 34 | + description: null; // | ||
| 35 | + extension: string; // | ||
| 36 | + post_date: string; // | ||
| 37 | + icon: null; // | ||
| 38 | + master_client_id: null; // | ||
| 39 | + hash: string; // | ||
| 40 | + height: string; // | ||
| 41 | + width: string; // | ||
| 42 | + author: integer; // | ||
| 43 | + size: null; // | ||
| 44 | + }; | ||
| 45 | + }; | ||
| 46 | + is_favorite: integer; // | ||
| 47 | + * }; | ||
| 48 | + * }>} | ||
| 49 | + */ | ||
| 50 | +export const articleDetailAPI = (params) => fn(fetch.get(Api.ArticleDetail, params)); | ||
| 51 | + | ||
| 52 | +/** | ||
| 53 | + * @description 文章收藏列表 | ||
| 54 | + * @remark | ||
| 55 | + * @param {Object} params 请求参数 | ||
| 56 | + * @param {string} params.limit (可选) | ||
| 57 | + * @param {string} params.page (可选) | ||
| 58 | + * @param {string} params.keyword (可选) 搜索关键词 | ||
| 59 | + * @returns {Promise<{ | ||
| 60 | + * code: number; // 状态码 | ||
| 61 | + * msg: string; // 消息 | ||
| 62 | + * data: { | ||
| 63 | + list: Array<{ | ||
| 64 | + id: integer; // | ||
| 65 | + post_title: string; // 文章表头 | ||
| 66 | + post_excerpt: string; // 简介 | ||
| 67 | + post_link: string; // 外部链接 | ||
| 68 | + post_date: string; // 发布时间 | ||
| 69 | + favorite_time: string; // 收藏时间 | ||
| 70 | + }>; | ||
| 71 | + total: integer; // | ||
| 72 | + * }; | ||
| 73 | + * }>} | ||
| 74 | + */ | ||
| 75 | +export const favoriteAPI = (params) => fn(fetch.get(Api.Favorite, params)); | ||
| 76 | + | ||
| 77 | +/** | ||
| 78 | + * @description 文章列表 | ||
| 79 | + * @remark | ||
| 80 | + * @param {Object} params 请求参数 | ||
| 81 | + * @param {string} params.limit (可选) | ||
| 82 | + * @param {string} params.page (可选) | ||
| 83 | + * @param {string} params.cid (可选) 分类id | ||
| 84 | + * @param {string} params.child_id (可选) 只有一层分类时,筛选数据用 | ||
| 85 | + * @param {string} params.keyword (可选) 搜索关键词 | ||
| 86 | + * @returns {Promise<{ | ||
| 87 | + * code: number; // 状态码 | ||
| 88 | + * msg: string; // 消息 | ||
| 89 | + * data: { | ||
| 90 | + cate: { | ||
| 91 | + id: integer; // 分类id | ||
| 92 | + category_name: string; // 分类名称 | ||
| 93 | + category_parent: integer; // 分类父级 | ||
| 94 | + category_description: null; // 分类描述 | ||
| 95 | + }; | ||
| 96 | + children: Array<{ | ||
| 97 | + id: integer; // 二级分类id | ||
| 98 | + category_name: string; // 二级分类名 | ||
| 99 | + category_parent: integer; // 二级分类名父级id | ||
| 100 | + level: integer; // | ||
| 101 | + category_description: null; // 二级分类描述 | ||
| 102 | + icon: null; // | ||
| 103 | + max_depth: integer; // | ||
| 104 | + list: Array<{ | ||
| 105 | + name: string; // 附件名称 | ||
| 106 | + value: string; // 附件地址 | ||
| 107 | + extension: string; // 后缀名 | ||
| 108 | + post_date: string; // 发布时间 | ||
| 109 | + size: string; // 附件大小 | ||
| 110 | + is_favorite: integer; // 是否收藏 | ||
| 111 | + id: string; // 附件id | ||
| 112 | + }>; | ||
| 113 | + children: Array<{ | ||
| 114 | + id: integer; // 三级分类id | ||
| 115 | + category_name: string; // 三级分类名 | ||
| 116 | + category_parent: integer; // 三级分类名父级id | ||
| 117 | + category_description: null; // 三级分类描述 | ||
| 118 | + icon: string; // 二级分类图标 | ||
| 119 | + }>; | ||
| 120 | + }>; | ||
| 121 | + list: Array<{ | ||
| 122 | + id: integer; // | ||
| 123 | + post_title: string; // 标题 | ||
| 124 | + post_excerpt: string; // 简介 | ||
| 125 | + post_link: string; // 如果有就是去外部链接 | ||
| 126 | + post_date: string; // 发布时间 | ||
| 127 | + is_favorite: integer; // 是否收藏 | ||
| 128 | + }>; | ||
| 129 | + total: integer; // 主分类文章数量 | ||
| 130 | + max_level: integer; // 页面需要层级 | ||
| 131 | + * }; | ||
| 132 | + * }>} | ||
| 133 | + */ | ||
| 134 | +export const listAPI = (params) => fn(fetch.get(Api.List, params)); | ||
| 135 | + | ||
| 136 | +/** | ||
| 137 | + * @description 热门文章 | ||
| 138 | + * @remark | ||
| 139 | + * @param {Object} params 请求参数 | ||
| 140 | + * @param {string} params.limit (可选) | ||
| 141 | + * @param {string} params.page (可选) | ||
| 142 | + * @param {string} params.cid (可选) 分类id | ||
| 143 | + * @param {string} params.keyword (可选) 搜索关键词 | ||
| 144 | + * @returns {Promise<{ | ||
| 145 | + * code: number; // 状态码 | ||
| 146 | + * msg: string; // 消息 | ||
| 147 | + * data: { | ||
| 148 | + list: Array<{ | ||
| 149 | + id: integer; // | ||
| 150 | + post_title: string; // 标题 | ||
| 151 | + post_excerpt: null; // 简介 | ||
| 152 | + post_link: string; // 外部链接 | ||
| 153 | + post_date: string; // 发布日期 | ||
| 154 | + is_favorite: integer; // 是否收藏 | ||
| 155 | + read_people_count: string; // 学习人数 | ||
| 156 | + read_people_percent: string; // 学习人数比例 | ||
| 157 | + }>; | ||
| 158 | + total: integer; // | ||
| 159 | + * }; | ||
| 160 | + * }>} | ||
| 161 | + */ | ||
| 162 | +export const weekHotAPI = (params) => fn(fetch.get(Api.WeekHot, params)); |
-
Please register or login to post a comment