Browse Source

公司标签列表增加入参并分页

Long 3 months ago
parent
commit
9d4ce4c8b3

+ 14 - 5
fs-company-app/src/main/java/com/fs/app/controller/CompanyTagController.java

@@ -8,6 +8,8 @@ import com.fs.company.domain.CompanyTag;
 import com.fs.company.service.ICompanyTagService;
 import com.fs.company.service.ICompanyTagUserService;
 import com.fs.company.vo.CompanyTagUserVO;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
@@ -34,11 +36,18 @@ public class CompanyTagController extends AppBaseController {
     @Login
     @GetMapping("/list")
     @ApiOperation("查询公司标签列表")
-    public R list() {
-        CompanyTag companyTag = new CompanyTag();
-        companyTag.setCompanyId(getCompanyId());
-        List<CompanyTag> list = companyTagService.selectCompanyTagList(companyTag);
-        return R.ok().put("data", list);
+    public R list(@RequestParam(required = false) String keyword,
+                  @RequestParam(required = false, defaultValue = "1") Integer pageNum,
+                  @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
+        log.debug("查询公司标签列表 keyword: {}, pageNum: {}, pageSize: {}", keyword, pageNum, pageSize);
+
+        Map<String, Object> params = new HashMap<>();
+        params.put("keyword", keyword);
+        params.put("companyId", getCompanyId());
+
+        PageHelper.startPage(pageNum, pageSize);
+        List<CompanyTag> list = companyTagService.selectCompanyTagListByMap(params);
+        return R.ok().put("data", new PageInfo<>(list));
     }
 
     /**

+ 10 - 0
fs-service-system/src/main/java/com/fs/company/mapper/CompanyTagMapper.java

@@ -1,7 +1,10 @@
 package com.fs.company.mapper;
 
 import java.util.List;
+import java.util.Map;
+
 import com.fs.company.domain.CompanyTag;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * companyMapper接口
@@ -58,4 +61,11 @@ public interface CompanyTagMapper
      * @return 结果
      */
     public int deleteCompanyTagByIds(Long[] tagIds);
+
+    /**
+     * 查询标签列表
+     * @param params 条件
+     * @return list
+     */
+    List<CompanyTag> selectCompanyTagListByMap(@Param("params") Map<String, Object> params);
 }

+ 9 - 0
fs-service-system/src/main/java/com/fs/company/service/ICompanyTagService.java

@@ -1,6 +1,8 @@
 package com.fs.company.service;
 
 import java.util.List;
+import java.util.Map;
+
 import com.fs.company.domain.CompanyTag;
 
 /**
@@ -64,4 +66,11 @@ public interface ICompanyTagService
      * @param tagIds 标签ID
      */
     void deleteCompanyTagByTagIds(List<Long> tagIds);
+
+    /**
+     * 查询标签列表
+     * @param params 条件
+     * @return list
+     */
+    List<CompanyTag> selectCompanyTagListByMap(Map<String, Object> params);
 }

+ 13 - 0
fs-service-system/src/main/java/com/fs/company/service/impl/CompanyTagServiceImpl.java

@@ -1,6 +1,9 @@
 package com.fs.company.service.impl;
 
+import java.util.Collections;
 import java.util.List;
+import java.util.Map;
+
 import com.fs.common.utils.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -104,4 +107,14 @@ public class CompanyTagServiceImpl implements ICompanyTagService
         }
         companyTagMapper.deleteCompanyTagByIds(tagIds.toArray(new Long[0]));
     }
+
+    /**
+     * 查询标签列表
+     * @param params 条件
+     * @return list
+     */
+    @Override
+    public List<CompanyTag> selectCompanyTagListByMap(Map<String, Object> params) {
+        return companyTagMapper.selectCompanyTagListByMap(params);
+    }
 }

+ 13 - 1
fs-service-system/src/main/resources/mapper/company/CompanyTagMapper.xml

@@ -27,7 +27,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectCompanyTagVo"/>
         where tag_id = #{tagId}
     </select>
-        
+
+    <select id="selectCompanyTagListByMap" resultType="com.fs.company.domain.CompanyTag">
+        select ct.* from company_tag ct
+        <where>
+            <if test="params.keyword != null and params.keyword != ''">
+                ct.tab like concat('%', #{params.keyword}, '%')
+            </if>
+            <if test="params.companyId != null">
+                and ct.company_id = #{params.companyId}
+            </if>
+        </where>
+    </select>
+
     <insert id="insertCompanyTag" parameterType="CompanyTag" useGeneratedKeys="true" keyProperty="tagId">
         insert into company_tag
         <trim prefix="(" suffix=")" suffixOverrides=",">