houweiyu 5 tahun lalu
induk
melakukan
ffd5dfe339

+ 3 - 0
fdkanfang-dao/src/main/java/com/fdkanfang/dao/backend/HouseMapper.java

@@ -30,4 +30,7 @@ public interface HouseMapper extends IBaseMapper<HouseEntity, Long> {
 
     @SelectProvider(type = HouseProvider.class, method = "findBySearchKey")
     List<HouseResponse> findBySearchKey(String searchKey, Long userId, Long handlerId);
+
+    @SelectProvider(type = HouseProvider.class, method = "findBySearchKeyForEditOrUploader")
+    List<HouseResponse> findBySearchKeyForEditOrUploader(String searchKey, Long handlerId, Long uploadId);
 }

+ 34 - 0
fdkanfang-dao/src/main/java/com/fdkanfang/dao/backend/provider/HouseProvider.java

@@ -2,6 +2,7 @@ package com.fdkanfang.dao.backend.provider;
 
 import cn.hutool.core.util.StrUtil;
 import lombok.extern.log4j.Log4j2;
+import org.apache.commons.lang3.StringUtils;
 
 /**
  * Created by Hb_zzZ on 2020/3/3.
@@ -79,6 +80,39 @@ public class HouseProvider {
         return sql.toString();
     }
 
+    /**
+     * 只给edit、upload权限用户获取列表使用
+     *
+     * 不是很通用
+     */
+    public String findBySearchKeyForEditOrUploader(String searchKey, Long handlerId , Long uploadId){
+        StringBuffer sql = new StringBuffer(
+                "SELECT house.id, house.num, house.address, house.district_name," +
+                        " house.unit_type, house.area, house.floor, house.orientation, house.status, " +
+                        "house.requirement, house.handler, house.create_time, house.update_time, house.web_site, house.scene_code, " +
+                        "uploader.real_name as upload_name, handler.real_name as handler_name FROM " +
+                        "tb_house house left join tb_user uploader " +
+                        "ON  house.user_id = uploader.id left join tb_user handler " +
+                        "ON house.handler = handler.id where house.rec_status = 'A' ");
+        if(StrUtil.isNotBlank(searchKey)){
+            sql.append(" and (");
+            sql.append(" house.district_name like '%").append(searchKey).append("%'");
+            sql.append(" or uploader.real_name like '%").append(searchKey).append("%'");
+            sql.append( ")");
+        }
+        if (null != handlerId) {
+            sql.append(" and house.handler = ").append(handlerId);
+        }
+
+        if (null != uploadId) {
+            sql.append(" and house.user_id = ").append(uploadId);
+        }
+        sql.append(" ORDER BY house.create_time DESC");
+        log.info("sql: {}", sql.toString());
+        return sql.toString();
+
+    }
+
 
 
 }

+ 2 - 0
fdkanfang-service/src/main/java/com/fdkanfang/service/backend/HouseService2.java

@@ -14,6 +14,8 @@ public interface HouseService2 extends IBaseMapperService<HouseEntity, Long> {
 
     List<HouseResponse> findAllBySearchKey(PageDto param, Long userId, Long handlerId);
 
+    List<HouseResponse> findBySearchKeyForEditOrUploader(PageDto param, Long handlerId , Long uploadId);
+
     Integer findByMaxNum();
 
     List<HouseEntity> findByNum(String numbers);

+ 6 - 0
fdkanfang-service/src/main/java/com/fdkanfang/service/backend/impl/HouseServiceImpl2.java

@@ -36,6 +36,12 @@ public class HouseServiceImpl2 extends BaseMapperServiceImpl<HouseEntity, Long>
     }
 
     @Override
+    public List<HouseResponse> findBySearchKeyForEditOrUploader(PageDto param, Long handlerId , Long uploadId) {
+        PageHelper.startPage(param.getPageNum(), param.getPageSize());
+        return entityMapper.findBySearchKeyForEditOrUploader(param.getSearchKey(), handlerId ,uploadId);
+    }
+
+    @Override
     public Integer findByMaxNum() {
         return entityMapper.findByMaxNum();
     }

+ 2 - 2
fdkanfang-web/src/main/java/com/fdkanfang/web/backend/HouseController.java

@@ -104,12 +104,12 @@ public class HouseController extends BaseController {
                 log.info("有edit、upload权限");
                 // 有edit、upload
 //                page =  new PageInfo<>(houseService2.findAllBySearchKey(param, userId, userId));
-                page =  new PageInfo<>(houseService2.findBySearchKey(param, userId, userId));
+                page =  new PageInfo<>(houseService2.findBySearchKeyForEditOrUploader(param, null ,userId));
 
             } else {
                 // 只有edit
                 log.info("只有edit权限");
-                page =  new PageInfo<>(houseService2.findAllBySearchKey(param, null, userId));
+                page =  new PageInfo<>(houseService2.findBySearchKeyForEditOrUploader(param,  userId , null));
 
             }