package com.huiju.estateagents.property.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.huiju.estateagents.property.model.TpRoomNo;
import org.apache.ibatis.annotations.*;
import java.util.List;
/**
*
* 户号信息表 Mapper 接口
*
*
* @author jobob
* @since 2019-04-09
*/
@Mapper
public interface TpRoomNoMapper extends BaseMapper {
/**
* 根据 小区,期,栋,单元,楼层,房间 查询房间信息
* @param orgId
* @param phaseName
* @param buildingName
* @param unitName
* @param levelName
* @param roomNoName
* @return
*/
@ResultType(TpRoomNo.class)
// @Select("select * from tp_room_no " +
// "where org_id = #{orgId} " +
// "and phase_name = #{phaseName} " +
// "and building_name = #{buildingName} " +
// "and unit_name = #{unitName} " +
// "and level_name = #{levelName} " +
// "and name = #{roomNoName}")
TpRoomNo selectCommunityIdAndAddressName(@Param("orgId") Integer orgId, @Param("phaseName") String phaseName, @Param("buildingName") String buildingName, @Param("unitName") String unitName, @Param("levelName") String levelName, @Param("roomNoName") String roomNoName);
/**
* 查询数据,分页
* @param pageNum
* @param pageSize
* @return
*/
@ResultType(TpRoomNo.class)
// @Select("select * from tp_room_no where org_id = #{orgId} limit #{pageNum},#{pageSize}")
List selectCommunityIdList(@Param("orgId") Integer orgId, @Param("communityId") Integer communityId, @Param("pageNum") Integer pageNum, @Param("pageSize") Integer pageSize);
/**
* 查询数据,分页
* @param orgId
* @return
*/
@ResultType(Long.class)
// @Select("select count(1) from tp_room_no where org_id = #{orgId}")
Long selectCommunityIdCount(@Param("orgId") Integer orgId, @Param("communityId") Integer communityId);
@ResultType(TpRoomNo.class)
// @Select("select * from tp_room_no where org_id=#{orgId} " +
// "and phase_id=#{phaseId} " +
// "and building_id=#{buildingId} " +
// "and unit_id=#{unitId} " +
// "and level_id=#{levelId}")
List selectByAddress(Integer orgId, Integer phaseId, Integer buildingId, Integer unitId, Integer levelId);
List selectComunityList(@Param("orgId") Integer orgId, @Param("communityId") Integer communityId, @Param("phaseId") String phaseId, @Param("buildingId") String buildingId, @Param("pageNum") Integer pageNum, @Param("pageSize") Integer pageSize);
IPage getRoomList(IPage page, @Param("orgId") Integer orgId,@Param("phaseId") Integer phaseId,@Param("buildingId") Integer buildingId,@Param("unitId") Integer unitId,@Param("levelId") Integer levelId,@Param("roomNoId") Integer roomNoId);
@Update("update tp_room_no set `name` = #{name} where id = #{id}")
int updateName(@Param("orgId") Integer orgId, @Param("id") Integer id, @Param("name") String name);
@Update("update tp_room_no set phase_name = #{phaseName} where org_id=#{orgId} and phase_id=#{phaseId}")
int updatePhaseName(@Param("orgId") Integer orgId, @Param("phaseId") Integer phaseId, @Param("phaseName") String phaseName);
@Update("update tp_room_no set building_name = #{buildingName} where org_id=#{orgId} and building_id=#{buildingId}")
int updateBuildingName(@Param("orgId") Integer orgId, @Param("buildingId") Integer buildingId, @Param("buildingName") String buildingName);
@Update("update tp_room_no set unit_name = #{unitName} where org_id=#{orgId} and unit_id=#{unitId}")
int updateUnitName(@Param("orgId") Integer orgId, @Param("unitId") Integer unitId, @Param("unitName") String unitName);
@Update("update tp_room_no set level_name = #{levelName} where org_id=#{orgId} and level_id=#{levelId}")
int updateLevelName(@Param("orgId") Integer orgId, @Param("levelId") Integer levelId, @Param("levelName") String levelName);
int getRoomNum(Integer orgId);
}