<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.stylefeng.guns.modular.system.dao.HouseResourceMapper">
|
|
|
|
<select id="searchHouseResource" resultType="com.stylefeng.guns.modular.system.warpper.res.SearchHouseResourceListRes">
|
select
|
hr.id,
|
IFNULL(au.user_type,0)as houseResource,
|
hr.house_photo as imgUrl,
|
hr.title,
|
hr.house_area as houseArea,
|
hr.house_model as houseModel,
|
concat(rp.`name`, rc.`name`) as address,
|
hr.longitude,
|
hr.latitude,
|
hr.headImg,
|
hr.platform,
|
hr.sale_amount as saleAmount,
|
IFNULL(au.nickname,su.`name`) as nickname,
|
IFNULL(au.profile_photo,su.avatar) as profilePhoto,
|
au.profile_photo as profilePhoto,
|
hr.drying_area as dryingArea,
|
hr.garden,
|
hr.carport,
|
hr.air,
|
hr.balcony,
|
hr.is_manage as isManage,
|
hr.leaseTime,
|
tp.name as houseTypeName,
|
hr.keep_pet as keepPet,
|
hr.insert_time as insertTime
|
from t_house_resource hr
|
left join t_app_user au on (hr.app_user_id = au.id)
|
LEFT JOIN sys_user su ON hr.insert_user_id = su.id AND hr.is_manage = 1
|
left join t_region rc on (hr.district_id = rc.id)
|
left join t_region rp on (rp.id = rc.parent_id)
|
left join t_house_type tp on hr.house_type_id = tp.id
|
where hr.is_delete = 0 and hr.`status` = 1 and hr.auth_status = 2 and hr.type=2
|
<if test="null != req.type and req.type == 1">
|
and (hr.data_type = #{req.type})
|
</if>
|
<if test="null != req.type and req.type == 2">
|
and hr.data_type = #{req.type}
|
</if>
|
<if test="null != req.userType and 2 == req.userType">
|
and au.user_type = 2
|
</if>
|
<if test="null != req.userType and 3 == req.userType">
|
and au.user_type = 3
|
</if>
|
<if test="null == req.userType">
|
and hr.firm_house != 1
|
</if>
|
<if test="null != req.userType and 4 == req.userType">
|
and hr.firm_house = 1
|
</if>
|
<if test="null != req.content and '' != req.content">
|
and hr.title like CONCAT('%', #{req.content}, '%')
|
</if>
|
<if test="null != cityIds and cityIds.size()>0" >
|
and hr.district_id in
|
<foreach collection="cityIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != districtIds and districtIds.size()>0">
|
and hr.city_id in
|
<foreach collection="districtIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="req.type!=null and req.type==2 and null != saleAmountStart and null != saleAmountEnd">
|
and hr.sale_amount >= #{saleAmountStart} and hr.sale_amount < #{saleAmountEnd}
|
</if>
|
<if test="null != houseModels">
|
and hr.house_model in
|
<foreach collection="houseModels" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.elevator">
|
and hr.elevator = #{req.elevator}
|
</if>
|
<if test="null != houseTypeIds">
|
and hr.house_type_id in
|
<foreach collection="houseTypeIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.rentalDuration">
|
and hr.rental_duration = #{req.rentalDuration}
|
</if>
|
<if test="null != req.balcony">
|
and hr.balcony = #{req.balcony}
|
</if>
|
<if test="null != req.keepPet">
|
and hr.keep_pet = #{req.keepPet}
|
</if>
|
<if test="null != req.createTime and req.createTime == 3">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 7">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 7 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 30">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 1 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 60">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 2 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 90">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 MONTH)
|
</if>
|
<if test="null != req.dataType and req.dataType == 1">
|
and hr.good_house = 1
|
</if>
|
<if test="null != req.dataType and req.dataType == 2">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 21 day)
|
</if>
|
order by au.user_type desc
|
<if test="null != req.sort and req.sort == 1">
|
,hr.insert_time desc
|
</if>
|
<if test="null != req.sort and req.sort == 2">
|
, hr.views_number desc
|
</if>
|
<if test="null != req.sort and req.sort == 3">
|
, hr.sale_amount
|
</if>
|
<if test="null != req.sort and req.sort == 4">
|
, hr.sale_amount desc
|
</if>
|
limit #{req.pageNum}, #{req.pageSize}
|
</select>
|
<select id="searchHouseResource1" resultType="com.stylefeng.guns.modular.system.warpper.res.SearchHouseResourceListRes">
|
select
|
hr.id,
|
au.user_type as houseResource,
|
hr.house_photo as imgUrl,
|
hr.title,
|
hr.house_area as houseArea,
|
hr.house_model as houseModel,
|
concat(rp.`name`, rc.`name`) as address,
|
hr.longitude,
|
hr.latitude,
|
hr.platform,
|
hr.sale_amount as saleAmount,
|
IFNULL(au.nickname,su.`name`) as nickname,
|
IFNULL(au.profile_photo,su.avatar) as profilePhoto,
|
au.profile_photo as profilePhoto,
|
hr.drying_area as dryingArea,
|
hr.garden,
|
hr.carport,
|
hr.air,
|
hr.balcony,
|
hr.is_manage as isManage,
|
hr.leaseTime,
|
tp.name as houseTypeName,
|
hr.keep_pet as keepPet,
|
hr.insert_time as insertTime
|
from t_house_resource hr
|
left join t_app_user au on (hr.app_user_id = au.id)
|
LEFT JOIN sys_user su ON hr.insert_user_id = su.id AND hr.is_manage = 1
|
left join t_region rc on (hr.district_id = rc.id)
|
left join t_region rp on (rp.id = rc.parent_id)
|
left join t_house_type tp on hr.house_type_id = tp.id
|
where hr.is_delete = 0 and hr.`status` = 1 and hr.auth_status = 2 and hr.type=2
|
<if test="null != req.type and req.type == 1">
|
and (hr.data_type = #{req.type})
|
</if>
|
<if test="null != req.type and req.type == 2">
|
and hr.data_type = #{req.type}
|
</if>
|
<if test="null != req.userType and 2 == req.userType">
|
and au.user_type = 2
|
</if>
|
<if test="null != req.userType and 3 == req.userType">
|
and au.user_type = 3
|
</if>
|
<if test="null == req.userType">
|
and hr.firm_house != 1
|
</if>
|
<if test="null != req.userType and 4 == req.userType">
|
and hr.firm_house = 1
|
</if>
|
<if test="null != req.content and '' != req.content">
|
and hr.title like CONCAT('%', #{req.content}, '%')
|
</if>
|
<if test="null != cityIds and cityIds.size()>0" >
|
and hr.district_id in
|
<foreach collection="cityIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != districtIds and districtIds.size()>0">
|
and hr.city_id in
|
<foreach collection="districtIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="req.type!=null and req.type==2 and null != saleAmountStart and null != saleAmountEnd">
|
and hr.sale_amount >= #{saleAmountStart} and hr.sale_amount < #{saleAmountEnd}
|
</if>
|
<if test="null != houseModels">
|
and hr.house_model in
|
<foreach collection="houseModels" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.elevator">
|
and hr.elevator = #{req.elevator}
|
</if>
|
<if test="null != houseTypeIds">
|
and hr.house_type_id in
|
<foreach collection="houseTypeIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.rentalDuration">
|
and hr.rental_duration = #{req.rentalDuration}
|
</if>
|
<if test="null != req.balcony">
|
and hr.balcony = #{req.balcony}
|
</if>
|
<if test="null != req.keepPet">
|
and hr.keep_pet = #{req.keepPet}
|
</if>
|
<if test="null != req.createTime and req.createTime == 3">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 7">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 7 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 30">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 1 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 60">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 2 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 90">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 MONTH)
|
</if>
|
<if test="null != req.dataType and req.dataType == 1">
|
and hr.good_house = 1
|
</if>
|
<if test="null != req.dataType and req.dataType == 2">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 21 day)
|
</if>
|
order by au.user_type desc
|
<if test="null != req.sort and req.sort == 1">
|
,hr.insert_time desc
|
</if>
|
<if test="null != req.sort and req.sort == 2">
|
, hr.views_number desc
|
</if>
|
<if test="null != req.sort and req.sort == 3">
|
, hr.sale_amount
|
</if>
|
<if test="null != req.sort and req.sort == 4">
|
, hr.sale_amount desc
|
</if>
|
</select>
|
|
<select id="searchHouseResourceCount" resultType="int">
|
select
|
hr.id,
|
au.user_type as houseResource,
|
hr.house_photo as imgUrl,
|
hr.title,
|
hr.house_area as houseArea,
|
hr.house_model as houseModel,
|
concat(rp.`name`, rc.`name`) as address,
|
hr.longitude,
|
hr.latitude,
|
hr.platform,
|
hr.sale_amount as saleAmount,
|
au.profile_photo as profilePhoto,
|
au.nickname,
|
hr.elevator,
|
hr.drying_area as dryingArea,
|
hr.garden,
|
hr.carport,
|
hr.air,
|
hr.balcony,
|
hr.leaseTime,
|
hr.keep_pet as keepPet
|
from t_house_resource hr
|
left join t_app_user au on (hr.app_user_id = au.id)
|
left join t_region rc on (hr.district_id = rc.id)
|
left join t_region rp on (rp.id = rc.parent_id)
|
where hr.is_delete = 0 and hr.`status` = 1 and hr.auth_status = 2 and hr.type=2
|
<if test="null != req.type">
|
and hr.data_type = #{req.type}
|
</if>
|
<if test="null != req.userType and 2 == req.userType">
|
and hr.is_manage != 1
|
</if>
|
<if test="null != req.userType and 4 != req.userType and 5 != req.userType">
|
and au.user_type = #{req.userType}
|
</if>
|
<if test="null != req.userType and 4 == req.userType">
|
and hr.firm_house = 1
|
</if>
|
<if test="null != req.userType and 5 == req.userType">
|
and hr.firm_house = 0
|
</if>
|
<if test="null != req.content and '' != req.content">
|
and hr.title like CONCAT('%', #{req.content}, '%')
|
</if>
|
<if test="null != cityIds and cityIds.size()>0" >
|
and hr.district_id in
|
<foreach collection="cityIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != districtIds and districtIds.size()>0">
|
and hr.city_id in
|
<foreach collection="districtIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != saleAmountStart and null != saleAmountEnd">
|
and hr.sale_amount >= #{saleAmountStart} and hr.sale_amount < #{saleAmountEnd}
|
</if>
|
<if test="null != houseModels">
|
and hr.house_model in
|
<foreach collection="houseModels" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.elevator">
|
and hr.elevator = #{req.elevator}
|
</if>
|
<if test="null != houseTypeIds">
|
and hr.house_type_id in
|
<foreach collection="houseTypeIds" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
<if test="null != req.rentalDuration">
|
and hr.rental_duration = #{req.rentalDuration}
|
</if>
|
<if test="null != req.balcony">
|
and hr.balcony = #{req.balcony}
|
</if>
|
<if test="null != req.keepPet">
|
and hr.keep_pet = #{req.keepPet}
|
</if>
|
<if test="null != req.createTime and req.createTime == 3">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 7">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 7 day)
|
</if>
|
<if test="null != req.createTime and req.createTime == 30">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 1 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 60">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 2 MONTH)
|
</if>
|
<if test="null != req.createTime and req.createTime == 90">
|
and now() <= DATE_ADD(hr.insert_time,INTERVAL 3 MONTH)
|
</if>
|
<if test="null != req.dataType and req.dataType == 1">
|
and hr.good_house = 1
|
</if>
|
<if test="null != req.dataType and req.dataType == 2">
|
order by hr.insert_time desc
|
<if test="null != req.sort and req.sort == 1">
|
, hr.insert_time desc
|
</if>
|
<if test="null != req.sort and req.sort == 2">
|
, hr.good_house desc
|
</if>
|
<if test="null != req.sort and req.sort == 3">
|
,hr.sale_amount
|
</if>
|
<if test="null != req.sort and req.sort == 4">
|
, hr.sale_amount desc
|
</if>
|
,hr.insert_time desc, au.user_type desc
|
</if>
|
<if test="null == req.dataType">
|
order by au.user_type desc, hr.insert_time desc
|
<if test="null != req.sort and req.sort == 1">
|
, hr.insert_time desc
|
</if>
|
<if test="null != req.sort and req.sort == 2">
|
, hr.good_house desc
|
</if>
|
<if test="null != req.sort and req.sort == 3">
|
,hr.sale_amount
|
</if>
|
<if test="null != req.sort and req.sort == 4">
|
, hr.sale_amount desc
|
</if>
|
</if>
|
</select>
|
|
|
|
<select id="getDistrictHouseResourceNumber" resultType="com.stylefeng.guns.modular.system.warpper.res.DistrictHouseResourceNumberRes">
|
select
|
r.name,
|
r.id as districtId,
|
pr.id as cityId,
|
dn.number,
|
r.longitude,
|
r.latitude
|
from (
|
select
|
hr.district_id,
|
count(hr.id) as number
|
from t_house_resource hr
|
left join t_app_user au on (hr.app_user_id = au.id)
|
where hr.is_delete = 0 and hr.`status` = 1 and hr.auth_status = 2
|
and hr.type=2
|
<if test="null != userType and 2 == userType">
|
and au.user_type = 2
|
</if>
|
<if test="null != userType and 3 == userType">
|
and au.user_type = 3
|
</if>
|
<if test="null != userType and 4 == userType">
|
and hr.firm_house = 1
|
</if>
|
<if test="null != dataType">
|
and hr.data_type = #{dataType}
|
</if>
|
group by hr.district_id
|
) as dn
|
left join t_region r on (dn.district_id = r.id)
|
left join t_region pr on (pr.id = r.parent_id)
|
</select>
|
<select id="listHouse"
|
resultType="com.stylefeng.guns.modular.system.warpper.res.SearchHouseResourceListRes">
|
select
|
hr.id,
|
hr.house_photo as imgUrl,
|
hr.title,
|
hr.house_area as houseArea,
|
hr.house_model as houseModel,
|
concat(rp.`name`, rc.`name`) as address,
|
hr.longitude,
|
hr.latitude,
|
hr.sale_amount as saleAmount,
|
hr.elevator,
|
hr.drying_area as dryingArea,
|
hr.garden,
|
hr.carport,
|
hr.balcony,
|
hr.keep_pet as keepPet
|
from t_house_resource hr
|
left join t_region rc on (hr.district_id = rc.id)
|
left join t_region rp on (rp.id = rc.parent_id)
|
where hr.is_delete = 0 and hr.`status` = 1 and hr.auth_status = 2
|
and hr.type=2
|
and hr.app_user_id = #{query.id}
|
and hr.data_type = #{query.type}
|
</select>
|
<select id="collect" resultType="com.stylefeng.guns.modular.system.warpper.res.CollectListRes">
|
select
|
hr.id,
|
hr.title,
|
hr.sale_amount as saleAmount,
|
hr.elevator as elevator,
|
hr.house_model as houseModel,
|
hr.house_type_id as houseTypeId,
|
hr.drying_area as dryingArea,
|
hr.garden as garden,
|
hr.carport as carport,
|
hr.balcony as balcony,
|
|
|
hr.app_user_id as appuserId,
|
hr.city_id as cityId,
|
hr.district_id as districtId,
|
hr.keep_pet as keepPet,
|
hr.views_number as viewsNumber,
|
hr.code as code,
|
hr.leaseTime as leaseTime,
|
hr.data_type as dataType,
|
hr.insert_time as insertTime,
|
hr.auth_status as authStatus,
|
hr.type as `type`,
|
hr.upTime as upTime,
|
tp.name as houseTypeName,
|
2 as `data`,
|
hr.status as status
|
from t_house_resource hr
|
left join t_house_type tp on hr.house_type_id = tp.id
|
where hr.is_delete = 0
|
and hr.app_user_id = #{id}
|
</select>
|
<select id="release" resultType="com.stylefeng.guns.modular.system.warpper.res.CollectListRes">
|
select
|
hr.id,
|
hr.title,
|
hr.sale_amount as saleAmount,
|
hr.elevator,
|
hr.drying_area as dryingArea,
|
hr.garden,
|
hr.carport,
|
hr.balcony,
|
|
hr.app_user_id as appUserId,
|
hr.city_id as cityId,
|
hr.district_id as districtId,
|
hr.keep_pet as keepPet,
|
hr.views_number as viewsNumber,
|
hr.code as code,
|
hr.leaseTime as leaseTime,
|
hr.data_type as dataType,
|
hr.house_photo as housePhoto,
|
hr.house_video as houseVideo,
|
hr.insert_time as insertTime,hr.type as `type`,
|
hr.status as status,
|
2 as `data`,
|
tp.name as houseTypeName,
|
au.profile_photo as profilePhoto,
|
au.nickname as nickname,
|
au.user_type as userType
|
from t_house_resource hr
|
left join t_app_user au on hr.app_user_id = au.id
|
left join t_house_type tp on hr.house_type_id = tp.id
|
where hr.is_delete = 0 and hr.`status` = 1
|
<if test="null != ids and ids.size()>0">
|
and hr.id in
|
<foreach collection="ids" item="item" index="index" separator="," open="(" close=")">
|
#{item}
|
</foreach>
|
</if>
|
</select>
|
</mapper>
|