Ver código fonte

作者:张哲
时间:2022/11/23
类型:开发
描述:首页banner列表

ZizgZh 2 anos atrás
pai
commit
b8a94cadc0

+ 1 - 1
src/main/java/com/redxun/JpaasKnowledgeApp.java

@@ -23,8 +23,8 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
 @EnableFeignClients(basePackages = {"com.redxun"})
 @EnableDiscoveryClient
 @SpringBootApplication(scanBasePackages = {"com.redxun"})
-@EnableSwagger2
 @EnableBinding({ LogOutput.class,ErrLogOutput.class})
+@EnableSwagger2
 public class JpaasKnowledgeApp {
 
     public static void main(String[]args) {

+ 72 - 17
src/main/java/com/redxun/config/ClientSwagger.java

@@ -1,17 +1,72 @@
-package com.redxun.config;
-
-import com.redxun.common.swagger2.Swagger2Configuration;
-import org.springframework.context.annotation.Configuration;
-
-/**
- * 文件名: ClientSwagger
- * 作者: Zizg
- * 时间: 2022/11/23
- * 描述:
- * 修改人:
- * 修改时间:
- * 修改内容:
- */
-@Configuration
-public class ClientSwagger extends Swagger2Configuration {
-}
+//package com.redxun.config;
+//
+//import com.google.common.base.Predicates;
+//import org.springframework.context.annotation.Bean;
+//import org.springframework.context.annotation.Configuration;
+//import springfox.documentation.builders.ApiInfoBuilder;
+//import springfox.documentation.builders.PathSelectors;
+//import springfox.documentation.service.ApiInfo;
+//import springfox.documentation.service.Contact;
+//import springfox.documentation.spi.DocumentationType;
+//import springfox.documentation.spring.web.plugins.Docket;
+//import springfox.documentation.swagger2.annotations.EnableSwagger2;
+//
+///**
+// * 文件名: ClientSwagger
+// * 作者: Zizg
+// * 时间: 2022/11/23
+// * 描述:
+// * 修改人:
+// * 修改时间:
+// * 修改内容:
+// */
+//@Configuration
+//@EnableSwagger2  //开启swagger2
+//public class ClientSwagger {
+//    @Bean
+//    public Docket knowledgeApiConfig(){
+//
+//        return new Docket(DocumentationType.SWAGGER_2)
+//                .groupName("knowledgeApi")
+//                .apiInfo(knowledgeApiInfo())
+//                .select()
+//                //只显示admin路径下的页面
+//                .paths(Predicates.and(PathSelectors.regex("/knowledge/.*")))
+//                .build();
+//                //.securityContexts(Arrays.asList(securityContexts()))
+//                //.securitySchemes(unifiedAuth());
+//
+//    }
+//
+//    private ApiInfo knowledgeApiInfo(){
+//        return new ApiInfoBuilder()
+//                .title("知识管理系统-API文档")
+//                .description("本文档描述了知识管理系统接口定义")
+//                .version("1.0")
+//                .contact(new Contact("Zizg", "", "1719571740@qq.com"))
+//                .build();
+//    }
+//
+//    //// 添加配置全局token
+//    //private static List<ApiKey> unifiedAuth() {
+//    //    List<ApiKey> arrayList = new ArrayList<>();
+//    //    arrayList.add(new ApiKey("token", "token", "header"));
+//    //    return arrayList;
+//    //}
+//    //
+//    //private SecurityContext securityContexts() {
+//    //    return SecurityContext.builder()
+//    //            .securityReferences(defaultAuth())
+//    //            .forPaths(PathSelectors.any())
+//    //            .build();
+//    //}
+//    //
+//    //private List<SecurityReference> defaultAuth() {
+//    //    AuthorizationScope authorizationScope = new AuthorizationScope("global", "全局token");
+//    //    AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
+//    //    authorizationScopes[0] = authorizationScope;
+//    //    return Arrays.asList(new SecurityReference("token", authorizationScopes));
+//    //}
+//
+//
+//}

+ 1 - 1
src/main/java/com/redxun/config/ClientWebsecurityConfigurer.java

@@ -39,7 +39,7 @@ public class ClientWebsecurityConfigurer extends WebSecurityConfigurerAdapter {
                 .authorizeRequests()
                 .antMatchers("/", "/login", "/demo/**","/certificate/**","/knowledge/**",
                         "/actuator/**",
-                        "/restApi/**","/global/**", "/druid/**", "/v2/api-docs/**").permitAll()
+                        "/restApi/**","/global/**", "/druid/**", "/v2/api-docs/**","/swagger*").permitAll()
                 .anyRequest().authenticated()
                 .withObjectPostProcessor(urlObjectPostProcessor());
 

+ 38 - 11
src/main/java/com/redxun/knowledge/controller/BannerController.java

@@ -1,8 +1,16 @@
 
 package com.redxun.knowledge.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.redxun.common.annotation.ClassDefine;
 import com.redxun.common.base.db.BaseService;
+import com.redxun.common.base.entity.JsonPage;
+import com.redxun.common.base.entity.JsonPageResult;
+import com.redxun.common.base.entity.QueryData;
+import com.redxun.common.base.search.QueryFilter;
+import com.redxun.common.base.search.QueryFilterBuilder;
+import com.redxun.common.utils.ExceptionUtil;
 import com.redxun.knowledge.entity.dao.Banner;
 import com.redxun.knowledge.service.BannerServiceImpl;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -10,10 +18,12 @@ import com.redxun.common.base.entity.JsonResult;
 import com.redxun.common.tool.StringUtils;
 import com.redxun.web.controller.BaseController;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
 import java.util.Arrays;
 import java.util.List;
 
@@ -21,22 +31,39 @@ import java.util.List;
 @RestController
 @RequestMapping("/knowledge/banner")
 @Api(tags = "业务--首页banner表")
-@ClassDefine(title = "业务--首页banner表",alias = "BannerController",path = "/knowledge/banner",packages = "",packageName = "子系统名称")
+@ClassDefine(title = "业务--首页banner表", alias = "BannerController", path = "/knowledge/banner", packages = "", packageName = "子系统名称")
 public class BannerController extends BaseController<Banner> {
 
-@Autowired
-BannerServiceImpl bannerService;
+    @Autowired
+    BannerServiceImpl bannerService;
 
 
-@Override
-public BaseService getBaseService() {
-return bannerService;
-}
+    @Override
+    public BaseService getBaseService() {
+        return bannerService;
+    }
 
-@Override
-public String getComment() {
-return "业务--首页banner表";
-}
+    @Override
+    public String getComment() {
+        return "业务--首页banner表";
+    }
 
+    @ApiOperation(value = "Banner列表")
+    @ApiImplicitParam(name = "queryData", value = "查询条件")
+    @PostMapping("findAllBanner")
+    public JsonPageResult findAllBanner(@RequestBody QueryData queryData) {
+        JsonPageResult jsonResult = JsonPageResult.getSuccess("返回数据成功!");
+        try {
+            QueryFilter filter = QueryFilterBuilder.createQueryFilter(queryData);
+            IPage page = bannerService.findAllBanner(filter);
+            this.handlePage(page);
+            jsonResult.setPageData(page);
+        } catch (Exception e) {
+            jsonResult.setSuccess(false);
+            this.logger.error(ExceptionUtil.getExceptionMessage(e));
+            jsonResult.setMessage(ExceptionUtil.getExceptionMessage(e));
+        }
+        return jsonResult;
+    }
 }
 

+ 2 - 21
src/main/java/com/redxun/knowledge/entity/dao/Banner.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -62,24 +59,8 @@ public class Banner  extends BaseExtEntity<java.lang.String> {
     private Integer enabled;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
-    //公司ID
-    //@TableField(value = "COMPANY_ID_")
-    //private String companyId;
-    //创建人
-    //@TableField(value = "CREATED_BY_")
-    //private String createdBy;
-    ////创建时间
-    //@TableField(value = "CREATED_TIME_")
-    //private java.util.Date createdTime;
-    ////更新人
-    //@TableField(value = "UPDATED_BY_")
-    //private String updatedBy;
-    ////更新时间
-    //@TableField(value = "UPDATED_TIME_")
-    //private java.util.Date updatedTime;
-
-
 
     @Override
     public String getPkId() {

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/Knowledge.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -80,6 +77,7 @@ public class Knowledge  extends BaseExtEntity<java.lang.String> {
     private String organizationId;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/KnowledgeApprovalNode.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -53,6 +50,7 @@ public class KnowledgeApprovalNode  extends BaseExtEntity<java.lang.String> {
     private Integer isFinal;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/KnowledgeApprove.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -71,6 +68,7 @@ public class KnowledgeApprove  extends BaseExtEntity<java.lang.String> {
     private Integer isFinal;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/KnowledgeCategory.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -53,6 +50,7 @@ public class KnowledgeCategory  extends BaseExtEntity<java.lang.String> {
     private Integer isSys;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/KnowledgeLabel.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -47,6 +44,7 @@ public class KnowledgeLabel  extends BaseExtEntity<java.lang.String> {
     private Integer sort;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 2 - 4
src/main/java/com/redxun/knowledge/entity/dao/News.java

@@ -12,10 +12,7 @@
  */
 package com.redxun.knowledge.entity.dao;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
@@ -65,6 +62,7 @@ public class News  extends BaseExtEntity<java.lang.String> {
     private Integer enabled;
     //删除标记
     @TableField(value = "IS_DEL")
+    @TableLogic
     private Integer isDel;
     ////公司ID
     //@TableField(value = "COMPANY_ID_")

+ 30 - 0
src/main/java/com/redxun/knowledge/entity/vo/BannerPcVo.java

@@ -0,0 +1,30 @@
+package com.redxun.knowledge.entity.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 文件名: BannerPcVo
+ * 作者: Zizg
+ * 时间: 2022/11/23
+ * 描述:
+ * 修改人:
+ * 修改时间:
+ * 修改内容:
+ */
+@Data
+public class BannerPcVo implements Serializable {
+    //主键
+    private String pkId;
+    //Banner名称
+    private String name;
+    //简介
+    private String summary;
+    //Banner类型;1-展示 2-维基知识
+    private Integer type;
+    //Banner图片附件ID
+    private String bannerFile;
+    //知识ID
+    private String knowledgeId;
+}

+ 5 - 0
src/main/java/com/redxun/knowledge/mapper/BannerMapper.java

@@ -1,8 +1,12 @@
 package com.redxun.knowledge.mapper;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.redxun.knowledge.entity.dao.Banner;
 import org.apache.ibatis.annotations.Mapper;
 import com.redxun.common.base.db.BaseDao;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Map;
 
 /**
 * 业务--首页banner表数据库访问层
@@ -10,4 +14,5 @@ import com.redxun.common.base.db.BaseDao;
 @Mapper
 public interface BannerMapper extends BaseDao<Banner> {
 
+    IPage findAllBanner(IPage<Banner> var1, @Param("w") Map<String, Object> var2);
 }

+ 22 - 0
src/main/java/com/redxun/knowledge/service/BannerServiceImpl.java

@@ -3,8 +3,11 @@ package com.redxun.knowledge.service;
 
 import cn.hutool.core.bean.BeanUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.redxun.common.base.db.BaseDao;
 import com.redxun.common.base.db.BaseService;
+import com.redxun.common.base.db.PageHelper;
+import com.redxun.common.base.search.QueryFilter;
 import com.redxun.common.tool.IdGenerator;
 import com.redxun.common.service.impl.SuperServiceImpl;
 import com.redxun.knowledge.entity.dao.Banner;
@@ -13,6 +16,8 @@ import com.redxun.knowledge.mapper.BannerMapper;
 import org.springframework.stereotype.Service;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 import javax.annotation.Resource;
 
 /**
@@ -29,4 +34,21 @@ public class BannerServiceImpl extends SuperServiceImpl<BannerMapper, Banner> im
         return bannerMapper;
     }
 
+    public IPage findAllBanner(QueryFilter filter) {
+        Map<String, Object> params = PageHelper.constructParams(filter);
+        return bannerMapper.findAllBanner(filter.getPage(), params);
+    }
+
+    ///**
+    // * 查询全部banner展示(默认展示10张)
+    // * @return
+    // */
+    //@Override
+    //public List<Banner> getAll() {
+    //    QueryWrapper<Banner> queryWrapper = new QueryWrapper<>();
+    //    queryWrapper.orderByDesc("CREATE_TIME_");
+    //    List<Banner> bannersList = bannerMapper.selectList(queryWrapper);
+    //    List<Banner> result = bannersList.parallelStream().limit(10).collect(Collectors.toList());
+    //    return result;
+    //}
 }

+ 1 - 0
src/main/resources/application.properties

@@ -45,6 +45,7 @@ mybatis-plus.global-config.db-config.logic-not-delete-value=0
 # Ô­ÉúÅäÖÃ
 mybatis-plus.configuration.map-underscore-to-camel-case=true
 mybatis-plus.configuration.cache-enabled=false
+mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
 mybatis-plus.configuration.jdbc-type-for-null='null'
 
 

+ 1 - 3
src/main/resources/application.yml

@@ -32,12 +32,10 @@ redxun:
     title: 测试应用
     description: 应用文档
     version: 1.0
-    base-package: com.redxun.demo.core.controller
+    base-package: com.redxun.knowledge.controller
     contact:
       name: zizg
-      url: http://localhost:9001
       email: 1110s
-    te
   cache-manager:
     configs:
       - key: form

+ 14 - 0
src/main/resources/mapper/knowledge/BannerMapper.xml

@@ -37,6 +37,20 @@
         </if>
     </select>
 
+    <select id="findAllBanner" resultType="com.redxun.knowledge.entity.vo.BannerPcVo">
+        SELECT *
+        FROM KM_BANNER
+        <where>
+            <if test="@rx.Ognl@isNotEmpty(w.whereSql)">
+                ${w.whereSql}
+            </if>
+            and ENABLED = 1
+        </where>
+        <if test="@rx.Ognl@isNotEmpty(w.orderBySql)">
+            ORDER BY ${w.orderBySql}
+        </if>
+    </select>
+
 </mapper>