| package com.panzhihua.service_community.dao; | 
|   | 
| import org.apache.ibatis.annotations.Mapper; | 
| import org.apache.ibatis.annotations.Param; | 
| import org.apache.ibatis.annotations.Select; | 
|   | 
| import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
| import com.baomidou.mybatisplus.core.metadata.IPage; | 
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 
| import com.panzhihua.common.model.dtos.community.PageComOpsHouseDTO; | 
| import com.panzhihua.common.model.vos.LoginUserInfoVO; | 
| import com.panzhihua.common.model.vos.community.ComOpsHouseVO; | 
| import com.panzhihua.service_community.model.dos.ComOpsHouseDO; | 
|   | 
| /** | 
|  * @program: springcloud_k8s_panzhihuazhihuishequ | 
|  * @description: 房屋租售 | 
|  * @author: huang.hongfa weixin hhf9596 qq 959656820 | 
|  * @create: 2021-01-22 14:49 | 
|  **/ | 
| @Mapper | 
| public interface ComOpsHouseDAO extends BaseMapper<ComOpsHouseDO> { | 
|   | 
|     @Select("select type,name,phone,image_url from sys_user where user_id=#{userId}") | 
|     LoginUserInfoVO selectUserByUserId(Long userId); | 
|   | 
|     @Select("select user_id from sys_user where name like concat('%',#{name},'%')  limit 1") | 
|     Long selectUserIdByName(String name); | 
|   | 
|     @Select("<script> " + "SELECT d.*,\n" + "u.name userName,u.type as userType\n" + "FROM\n" + "com_ops_house d\n" | 
|         + " LEFT JOIN sys_user u ON d.user_id = u.user_id\n" | 
|         + " LEFT JOIN com_act ca ON d.community_id = ca.community_id\n" | 
|         + " LEFT JOIN com_mng_struct_area sa ON d.house_community_id = sa.id \n" + "where 1=1 " | 
|         + "<if test='pageComOpsHouseDTO.communityId != null '>" | 
|         + "AND ( d.community_id = ${pageComOpsHouseDTO.communityId} or sa.community_id = ${pageComOpsHouseDTO.communityId} )\n" | 
|         + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.areaCode != null '>" | 
|         + "AND ca.area_code = #{pageComOpsHouseDTO.areaCode}" | 
|         + " </if> " + | 
|         "<if test='pageComOpsHouseDTO.userId != null '>" + "AND d.user_id=#{pageComOpsHouseDTO.userId} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.orient != null '>" + "AND d.orient=#{pageComOpsHouseDTO.orient} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.houseType != null '>" + "AND d.house_type=#{pageComOpsHouseDTO.houseType} \n" | 
|         + " </if> " + "<if test='pageComOpsHouseDTO.rentType != null '>" | 
|         + "AND d.rent_type=#{pageComOpsHouseDTO.rentType} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.brn != null and pageComOpsHouseDTO.brn !=4 '>" | 
|         + "AND d.brn=#{pageComOpsHouseDTO.brn} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.brn != null and pageComOpsHouseDTO.brn ==4 '>" | 
|         + "AND d.brn <![CDATA[ >= ]]> 4 \n" + " </if> " + | 
|   | 
|         "<if test='pageComOpsHouseDTO.houseCommunityId != null '>" | 
|         + "AND d.house_community_id = ${pageComOpsHouseDTO.houseCommunityId} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.status != null and pageComOpsHouseDTO.status < 4 '>" | 
|         + "AND d.status=#{pageComOpsHouseDTO.status} \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.status != null and pageComOpsHouseDTO.status ==4 '>" | 
|         + "AND d.status in (0,2) \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.status != null and pageComOpsHouseDTO.status ==5 '>" | 
|         + "AND d.status in (1,3) \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.houseCommunityName != null and pageComOpsHouseDTO.houseCommunityName.trim() != ""'>" | 
|         + " and (" + " d.`house_community_name` LIKE concat( '%', #{pageComOpsHouseDTO.houseCommunityName}, '%' ) " | 
|         + " or d.title like concat( '%', #{pageComOpsHouseDTO.houseCommunityName}, '%' ) " + "    )  \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.mobile != null and pageComOpsHouseDTO.mobile.trim() != ""'>" | 
|         + " and d.`mobile` LIKE concat( #{pageComOpsHouseDTO.mobile}, '%' ) \n" + " </if> " | 
|         + "<if test='pageComOpsHouseDTO.begin != null '>" + "AND d.create_at BETWEEN #{pageComOpsHouseDTO.begin} \n" | 
|         + "AND #{pageComOpsHouseDTO.end} \n" + " </if> " + " order by " | 
|         + "<if test='pageComOpsHouseDTO.priceOrder != null and pageComOpsHouseDTO.priceOrder ==1 '>" + "d.amount asc," | 
|         + " </if> " + "<if test='pageComOpsHouseDTO.priceOrder != null and pageComOpsHouseDTO.priceOrder ==2 '>" | 
|         + "d.amount desc," + " </if> " + "d.id desc " + "</script>") | 
|     IPage<ComOpsHouseVO> pageHouse(Page page, @Param("pageComOpsHouseDTO") PageComOpsHouseDTO pageComOpsHouseDTO); | 
|   | 
| } |