@@ -135,8 +135,13 @@ exports.getArticleList = (req, res) => {
135135 let likes = req . query . likes || '' ;
136136 let tag_id = req . query . tag_id || '' ;
137137 let category_id = req . query . category_id || '' ;
138+ let article = req . query . article || '' ;
138139 let pageNum = parseInt ( req . query . pageNum ) || 1 ;
139140 let pageSize = parseInt ( req . query . pageSize ) || 10 ;
141+ // 如果是文章归档 返回全部文章
142+ if ( article ) {
143+ pageSize = 1000 ;
144+ }
140145 let conditions = { } ;
141146 if ( ! state ) {
142147 if ( keyword ) {
@@ -179,22 +184,19 @@ exports.getArticleList = (req, res) => {
179184 // 待返回的字段
180185 let fields = {
181186 title : 1 ,
182- // author: 1,
183- // keyword: 1,
184- // content: 1,
185187 desc : 1 ,
186188 img_url : 1 ,
187189 tags : 1 ,
188190 category : 1 ,
189- // state: 1,
190- // type: 1,
191- // origin: 1,
192- // comments: 1,
193- // like_User_id: 1,
194191 meta : 1 ,
195192 create_time : 1 ,
196- // update_time: 1,
197193 } ;
194+ if ( article ) {
195+ fields = {
196+ title : 1 ,
197+ create_time : 1 ,
198+ } ;
199+ }
198200 let options = {
199201 skip : skip ,
200202 limit : pageSize ,
@@ -213,7 +215,7 @@ exports.getArticleList = (req, res) => {
213215 } ) ;
214216 responseData . list = result ;
215217 } else if ( category_id ) {
216- console . log ( 'category_id :' , category_id )
218+ // console.log('category_id :', category_id);
217219 // 根据 分类 id 返回数据
218220 result . forEach ( item => {
219221 if ( item . category . indexOf ( category_id ) > - 1 ) {
@@ -224,7 +226,7 @@ exports.getArticleList = (req, res) => {
224226 responseData . count = len ;
225227 responseData . list = newList ;
226228 } else if ( tag_id ) {
227- console . log ( 'tag_id :' , tag_id )
229+ // console.log('tag_id :', tag_id);
228230 // 根据标签 id 返回数据
229231 result . forEach ( item => {
230232 if ( item . tags . indexOf ( tag_id ) > - 1 ) {
@@ -234,7 +236,35 @@ exports.getArticleList = (req, res) => {
234236 let len = newList . length ;
235237 responseData . count = len ;
236238 responseData . list = newList ;
237- } else {
239+ } else if ( article ) {
240+ const archiveList = [ ]
241+ let obj = { }
242+ // 按年份归档 文章数组
243+ result . forEach ( ( e ) => {
244+ let year = e . create_time . getFullYear ( )
245+ // let month = e.create_time.getMonth()
246+ if ( ! obj [ year ] ) {
247+ obj [ year ] = [ ]
248+ obj [ year ] . push ( e )
249+ } else {
250+ obj [ year ] . push ( e )
251+ }
252+ } )
253+ for ( const key in obj ) {
254+ if ( obj . hasOwnProperty ( key ) ) {
255+ const element = obj [ key ] ;
256+ let item = { }
257+ item . year = key
258+ item . list = element
259+ archiveList . push ( item )
260+ }
261+ }
262+ archiveList . sort ( ( a , b ) => {
263+ return b . year - a . year ;
264+ } ) ;
265+ responseData . list = archiveList ;
266+ }
267+ else {
238268 responseData . list = result ;
239269 }
240270 responseClient ( res , 200 , 0 , '操作成功!' , responseData ) ;
0 commit comments