Browse Source

信息中心V1.3.9

kaick 1 year ago
parent
commit
3e80e733fd

+ 1 - 1
src/main/java/com/caimei365/commodity/components/SearchOpenService.java

@@ -199,7 +199,7 @@ public class SearchOpenService {
         if (StringUtils.isNotEmpty(sortField)) {
             // 创建sort对象,并设置二维排序
             Sort sorter = new Sort();
-            Order order = (1 == sortType) ? Order.DECREASE : Order.INCREASE;
+            Order order = (null == sortType||1 == sortType) ? Order.DECREASE : Order.INCREASE;
             // 设置排序字段
             sorter.addToSortFields(new SortField(sortField, order));
             //添加Sort对象参数

+ 5 - 3
src/main/java/com/caimei365/commodity/controller/SearchQueryApi.java

@@ -184,14 +184,16 @@ public class SearchQueryApi {
     @ApiImplicitParams({
         @ApiImplicitParam(required = false, name = "id", value = "分类id"),
         @ApiImplicitParam(required = false, name = "pageNum", value = "页码"),
-        @ApiImplicitParam(required = false, name = "pageSize", value = "每页数量")
+        @ApiImplicitParam(required = false, name = "pageSize", value = "每页数量"),
+        @ApiImplicitParam(required = false, name = "sortType", value = "列表排序:1最新时间,2最早时间")
     })
     @IpSave(saveName = "根据分类搜索文章",saveParams = true)
     @GetMapping("/article/type")
     public ResponseJson<String> queryArticleByType(Integer id,
                                         @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
-                                        @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
-        return searchQueryService.queryArticleByType(id, pageNum, pageSize);
+                                        @RequestParam(value = "pageSize", defaultValue = "20") int pageSize,
+                                        @RequestParam(value = "sortType", required = false) Integer sortType) {
+        return searchQueryService.queryArticleByType(id, pageNum, pageSize,sortType);
     }
 
     /**

+ 1 - 1
src/main/java/com/caimei365/commodity/mapper/SearchMapper.java

@@ -186,7 +186,7 @@ public interface SearchMapper {
      * @param keyword 关键词
      * @return list
      */
-    List<ArticleListVo> queryArticleByProDate(@Param("keyword") String keyword, @Param("articleId") Integer articleId, @Param("typeId") Integer typeId, @Param("labelText") String labelText);
+    List<ArticleListVo> queryArticleByProDate(@Param("keyword") String keyword, @Param("articleId") Integer articleId, @Param("typeId") Integer typeId, @Param("labelText") String labelText,@Param("sortType")Integer sortType);
 
     /**
      * 根据用户ID查找历史记录

+ 4 - 0
src/main/java/com/caimei365/commodity/model/vo/ArchiveContentVo.java

@@ -45,6 +45,10 @@ public class ArchiveContentVo implements Serializable {
      * 资料标题
      */
     private String title;
+    /**
+     * 内容
+     */
+    private String content;
     /**
      * 添加时间
      */

+ 1 - 1
src/main/java/com/caimei365/commodity/service/SearchQueryService.java

@@ -92,7 +92,7 @@ public interface SearchQueryService {
      * @param pageSize  每页数量
      * @return JsonStr(list)
      */
-    ResponseJson<String> queryArticleByType(Integer id, int pageNum, int pageSize);
+    ResponseJson<String> queryArticleByType(Integer id, int pageNum, int pageSize,Integer sortType);
 
     /**
      * 根据标签搜索文章

+ 14 - 7
src/main/java/com/caimei365/commodity/service/impl/SearchQueryServiceImpl.java

@@ -357,7 +357,7 @@ public class SearchQueryServiceImpl implements SearchQueryService {
                 return queryArticleFromDatabase(pageNum, pageSize, keyword, null, null, null);
             } else {
                 //根据时间排序
-                return queryArticleFromDatabaseByProDate(pageNum, pageSize, keyword, null, null, null);
+                return queryArticleFromDatabaseByProDate(pageNum, pageSize, keyword, null, null, null,1);
             }
 
         }
@@ -392,16 +392,23 @@ public class SearchQueryServiceImpl implements SearchQueryService {
      * @return JsonStr(list)
      */
     @Override
-    public ResponseJson<String> queryArticleByType(Integer id, int pageNum, int pageSize) {
+    public ResponseJson<String> queryArticleByType(Integer id, int pageNum, int pageSize,Integer sortType) {
         String queryStr = "a_type:'" + id + "'";
         ArrayList<String> fetchFields = Lists.newArrayList("id", "a_id", "a_title", "a_image", "a_publisher", "a_publish_date", "a_intro", "a_pv", "a_type_id", "a_type_text", "a_label_ids", "a_label_text");
         // 阿里云搜索
-        ResponseJson<String> result = scrollArticleForParams(queryStr, fetchFields, pageNum, pageSize, "a_id", 1);
+        String sort = null == sortType ?"a_id": "a_publish_date" ;
+        ResponseJson<String> result = scrollArticleForParams(queryStr, fetchFields, pageNum, pageSize, sort,  sortType);
         if (0 == result.getCode()) {
             return result;
         } else {
-            // 阿里云搜索失败,再次从数据库搜索
-            return queryArticleFromDatabase(pageNum, pageSize, null, null, id, null);
+            if (sortType == null) {
+                //综合排序
+                // 阿里云搜索失败,再次从数据库搜索
+                return queryArticleFromDatabase(pageNum, pageSize, null, null, id, null);
+            } else {
+                //根据时间排序
+                return queryArticleFromDatabaseByProDate(pageNum, pageSize, null, null, null, null,sortType);
+            }
         }
     }
 
@@ -485,13 +492,13 @@ public class SearchQueryServiceImpl implements SearchQueryService {
      * @param num       页码
      * @param size      每页数量
      */
-    private ResponseJson<String> queryArticleFromDatabaseByProDate(int num, int size, String keyword, Integer articleId, Integer typeId, Integer labelId) {
+    private ResponseJson<String> queryArticleFromDatabaseByProDate(int num, int size, String keyword, Integer articleId, Integer typeId, Integer labelId,Integer sortType) {
         String labelText = null;
         if (null != labelId) {
             labelText = searchMapper.findLabelNameById(labelId);
         }
         PageHelper.startPage(num, size);
-        List<ArticleListVo> articleList = searchMapper.queryArticleByProDate(keyword, articleId, typeId, labelText);
+        List<ArticleListVo> articleList = searchMapper.queryArticleByProDate(keyword, articleId, typeId, labelText,sortType);
         articleList.forEach(article -> {
             String imagePath = ImageUtils.getImageURL("", article.getImage(), 0, domain);
             article.setImage(imagePath);

+ 1 - 1
src/main/resources/mapper/PageMapper.xml

@@ -664,7 +664,7 @@
     </select>
 
     <select id="getFileArchiveList" resultType="com.caimei365.commodity.model.vo.ArchiveContentVo">
-        select id as archiveContentId, title, addTime
+        select id as archiveContentId, title,content, addTime
         from cm_product_archive_content
         where productArchiveId = #{archiveId}
           and type = 3

+ 9 - 1
src/main/resources/mapper/SearchMapper.xml

@@ -436,7 +436,15 @@
             </if>
         </where>
 
-        order by a.pubdate desc
+        order by a.pubdate
+        <if test="sortType != null">
+            <if test="sortType == 1">
+                desc
+            </if>
+            <if test="sortType != 1">
+                asc
+            </if>
+        </if>
 
     </select>
     <select id="getHistoryList" resultType="com.caimei365.commodity.model.po.SearchHistoryPo">