From 8b7258c9427882bb1798f1502eaa35184c6e374e Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 09 Aug 2024 14:29:18 +0800
Subject: [PATCH] 短信指定楼栋发送
---
src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml | 1942 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 1,445 insertions(+), 497 deletions(-)
diff --git a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
index 0bd181a..ee42f01 100644
--- a/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
+++ b/src/main/java/org/springblade/modules/house/mapper/HouseholdMapper.xml
@@ -4,41 +4,53 @@
<!-- 通用查询映射结果 -->
<resultMap id="householdResultMap" type="org.springblade.modules.house.entity.HouseholdEntity">
- <result column="id" property="id"/>
- <result column="house_code" property="houseCode"/>
- <result column="name" property="name"/>
- <result column="phone_number" property="phoneNumber"/>
- <result column="associated_user_id" property="associatedUserId"/>
- <result column="associated_user_name" property="associatedUserName"/>
- <result column="relationship" property="relationship"/>
- <!-- <result column="primary_contact" property="primaryContact"/>-->
- <result column="residential_status" property="residentialStatus"/>
- <result column="gender" property="gender"/>
- <result column="birthday" property="birthday"/>
- <result column="id_card" property="idCard"/>
- <result column="hkmt_pass" property="hkmtPass"/>
- <result column="passport" property="passport"/>
- <result column="ethnicity" property="ethnicity"/>
- <result column="education" property="education"/>
- <result column="hukou_registration" property="hukouRegistration"/>
- <result column="work_status" property="workStatus"/>
- <result column="employer" property="employer"/>
- <result column="marital_status" property="maritalStatus"/>
- <result column="card_number" property="cardNumber"/>
- <result column="other_contact" property="otherContact"/>
- <result column="current_address" property="currentAddress"/>
- <result column="disability_cert" property="disabilityCert"/>
- <!-- <result column="data_status" property="dataStatus"/>-->
- <result column="role_type" property="roleType"/>
- <result column="party_ember" property="partyEmber"/>
- <result column="create_user" property="createUser"/>
- <result column="create_time" property="createTime"/>
- <result column="update_user" property="updateUser"/>
- <result column="update_time" property="updateTime"/>
- <result column="remark" property="remark"/>
- <result column="is_deleted" property="isDeleted"/>
- <result column="confirm_flag" property="confirmFlag"/>
- <result column="housing_rental_id" property="housingRentalId"/>
+ <result property="id" column="id" />
+ <result property="houseCode" column="house_code" />
+ <result property="name" column="name" />
+ <result property="phoneNumber" column="phone_number" />
+ <result property="associatedUserId" column="associated_user_id" />
+ <result property="roleType" column="role_type" />
+ <result property="relationship" column="relationship" />
+ <result property="isPrimaryContact" column="is_primary_contact" />
+ <result property="residentialStatus" column="residential_status" />
+ <result property="gender" column="gender" />
+ <result property="birthday" column="birthday" />
+ <result property="idCard" column="id_card" />
+ <result property="cardType" column="card_type" />
+ <result property="cardNo" column="card_no" />
+ <result property="ethnicity" column="ethnicity" />
+ <result property="education" column="education" />
+ <result property="residentType" column="resident_type" />
+ <result property="hukouRegistration" column="hukou_registration" />
+ <result property="residentAdcode" column="resident_adcode" />
+ <result property="nativePlaceAdcode" column="native_place_adcode" />
+ <result property="religiousBelief" column="religious_belief" />
+ <result property="healthStatus" column="health_status" />
+ <result property="diseaseName" column="disease_name" />
+ <result property="workStatus" column="work_status" />
+ <result property="employer" column="employer" />
+ <result property="occupation" column="occupation" />
+ <result property="cmpyRegAddr" column="cmpy_reg_addr" />
+ <result property="goOutAddr" column="go_out_addr" />
+ <result property="goOutWhere" column="go_out_where" />
+ <result property="goOutTime" column="go_out_time" />
+ <result property="goOutReason" column="go_out_reason" />
+ <result property="maritalStatus" column="marital_status" />
+ <result property="cardNumber" column="card_number" />
+ <result property="otherContact" column="other_contact" />
+ <result property="homeAdcode" column="home_adcode" />
+ <result property="currentAddress" column="current_address" />
+ <result property="disabilityCert" column="disability_cert" />
+ <result property="partyEmber" column="party_ember" />
+ <result property="housingRentalId" column="housing_rental_id" />
+ <result property="confirmFlag" column="confirm_flag" />
+ <result property="createUser" column="create_user" />
+ <result property="createTime" column="create_time" />
+ <result property="updateUser" column="update_user" />
+ <result property="updateTime" column="update_time" />
+ <result property="remark" column="remark" />
+ <result property="isDeleted" column="is_deleted" />
+ <result property="volunteerOrg" column="volunteer_org" />
</resultMap>
<sql id="selectHousehold">
@@ -49,35 +61,49 @@
phone_number,
associated_user_id,
role_type,
- associated_user_name,
relationship,
is_primary_contact,
residential_status,
gender,
birthday,
id_card,
- hkmt_pass,
- passport,
+ card_type,
+ card_no,
ethnicity,
education,
+ resident_type,
hukou_registration,
+ resident_adcode,
+ native_place_adcode,
+ religious_belief,
+ health_status,
+ disease_name,
work_status,
employer,
+ occupation,
+ cmpy_reg_addr,
+ go_out_addr,
+ go_out_where,
+ go_out_time,
+ go_out_reason,
marital_status,
card_number,
other_contact,
+ home_adcode,
current_address,
disability_cert,
party_ember,
+ housing_rental_id,
+ confirm_flag,
create_user,
create_time,
update_user,
update_time,
remark,
is_deleted,
- confirm_flag,
- housing_rental_id
- from jczz_household
+ volunteer_org
+ from
+ jczz_household
</sql>
<resultMap id="householdAndLabelMap" type="org.springblade.modules.house.vo.HouseholdVO" autoMapping="true">
@@ -98,19 +124,18 @@
</resultMap>
<select id="selectHouseLabelPage" resultType="org.springblade.modules.house.vo.HouseholdLabelVO">
- select
- id,
- house_code,
- label_id,
- label_name,
- color,
- remark cremark,
- user_id,
- lable_type,
- household_id
- from
- jczz_user_house_label
- where household_id = #{id} and lable_type = 1
+ select id,
+ house_code,
+ label_id,
+ label_name,
+ color,
+ remark cremark,
+ user_id,
+ lable_type,
+ household_id
+ from jczz_user_house_label
+ where household_id = #{id}
+ and lable_type = 1
</select>
<!--自定义分页数据查询-->
@@ -122,7 +147,6 @@
jh.phone_number,
jh.associated_user_id,
jh.role_type,
- jh.associated_user_name,
jh.relationship,
jh.is_primary_contact,
jh.residential_status,
@@ -130,9 +154,977 @@
jh.birthday,
jh.id_card,
jh.card_type,
- jh.hkmt_pass,
ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
- jh.passport,
+ jh.ethnicity,
+ jh.education,
+ jh.resident_type,
+ jh.hukou_registration,
+ jh.resident_adcode,
+ jh.native_place_adcode,
+ jh.religious_belief,
+ jh.health_status,
+ jh.disease_name,
+ jh.work_status,
+ jh.employer,
+ jh.occupation,
+ jh.cmpy_reg_addr,
+ jh.go_out_addr,
+ jh.go_out_where,
+ jh.go_out_time,
+ jh.go_out_reason,
+ jh.marital_status,
+ jh.card_number,
+ jh.other_contact,
+ jh.create_time,
+ jh.update_time,
+ IF
+ ( jda.id IS NOT NULL, jda.address_name, jh.current_address ) AS current_address,
+ jh.disability_cert,
+ jh.party_ember,
+ jh.remark,
+ jh.confirm_flag,
+ jh.housing_rental_id,
+ IF
+ ( jda.id IS NOT NULL, substring( jda.town_street_code, 1, 9 ), jh.home_adcode ) AS home_adcode,
+ jhs.district_name aoiName,
+ concat( jhs.building, " ", unit, " ", room ) AS address,
+ jda.town_street_name AS townStreetName,
+ jda.nei_name AS neiName,
+ jg.grid_name,
+ jhs.building,
+ jhs.district_code aoiCode,
+ jh.volunteer_org,
+ case
+ when TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) < 18 then 2
+ when TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) >= 18 then 1
+ end as minors,
+ jhs.unit
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ <where>
+ <if test="household.labelIdList !=null and household.labelIdList.size() >0 ">
+ EXISTS (
+ SELECT
+ *
+ FROM
+ jczz_user_house_label juhl
+ LEFT JOIN jczz_label jl ON juhl.label_id = jl.id
+ where juhl.household_id = jh.id
+ and juhl.lable_type = 1
+ AND juhl.household_id IS NOT NULL
+ AND jl.id in
+ <foreach collection="household.labelIdList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </if>
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+
+ <if test="household.searchKey!=null and household.searchKey!=''">
+ and CONCAT(jh.name,jh.phone_number) like CONCAT ('%', #{household.searchKey},'%')
+ </if>
+
+ <if test="household.name!=null and household.name !=''">
+ and jh.name like concat('%',#{household.name},'%')
+ </if>
+ <if test="household.volunteerOrg != null and household.volunteerOrg != ''">
+ and jh.volunteer_org like concat('%',#{household.volunteerOrg},'%')
+ </if>
+ <if test="household.houseCode!=null and household.houseCode !=''">
+ and jh.house_code = #{household.houseCode}
+ </if>
+
+ <if test="household.communityCode!=null and household.communityCode !=''">
+ and jg.community_code = #{household.communityCode}
+ </if>
+ <!-- 等于18 就是租户 -->
+ <if test="household.relationship!=null and household.relationship == 18">
+ and jh.relationship = #{household.relationship}
+
+ <if test="household.minors!=null and household.minors ==2">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) < 18
+ </if>
+ <if test="household.minors!=null and household.minors ==1">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) >= 18
+ </if>
+ </if>
+ <!-- 不等于18 就是非租户 -->
+ <if test="household.relationship!=null and household.relationship != 18">
+ and jh.relationship != 18
+ </if>
+
+ <if test="household.phoneNumber!=null and household.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{household.phoneNumber},'%')
+ </if>
+ <if test="household.idCard!=null and household.idCard !=''">
+ and jh.id_card like concat('%',#{household.idCard},'%')
+ </if>
+ <if test="household.aoiName!=null and household.aoiName !=''">
+ and jhs.district_name like concat('%',#{household.aoiName},'%')
+ </if>
+ <if test="household.confirmFlag != null ">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="household.townStreetName!=null and household.townStreetName!=''">
+ and jda.town_street_name like concat('%',#{household.townStreetName},'%')
+ </if>
+ <if test="household.neiName!=null and household.neiName!=''">
+ and jda.nei_name like concat('%',#{household.neiName},'%')
+ </if>
+ <if test="household.housingRentalId != null ">
+ and jh.housing_rental_id = #{household.housingRentalId}
+ </if>
+ <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
+ AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
+ </if>
+ <if test="isAdministrator==2">
+ <choose>
+ <when test="household.roleName != null and household.roleName != ''">
+ <if test="household.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jhs.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jhs.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.roleName=='mj'">
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+ separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jpag.community_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ </when>
+ <otherwise>
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and
+ (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ <otherwise>
+
+ </otherwise>
+ </choose>
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.building!=null and household.building!=''">
+ and jhs.building like concat(#{household.building},'%')
+ </if>
+ <if test="household.unit!=null and household.unit!=''">
+ and jhs.unit like concat(#{household.unit},'%')
+ </if>
+ <if test="household.aoiCode!=null and household.aoiCode!=''">
+ and jhs.district_code = #{household.aoiCode}
+ </if>
+ and jh.is_deleted = 0
+ order by jh.id desc
+ </where>
+ </select>
+
+ <select id="getAllHouseHold" resultMap="householdPageAndLabelMap">
+ SELECT
+ jh.id,
+ jh.house_code,
+ jh.NAME,
+ jh.phone_number,
+ jh.associated_user_id,
+ jh.role_type,
+ jh.relationship,
+ jh.is_primary_contact,
+ jh.residential_status,
+ jh.birthday,
+ jh.id_card,
+ ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
+ jh.ethnicity,
+ jh.education,
+ jh.hukou_registration,
+ jh.work_status,
+ employer,
+ jh.marital_status,
+ jh.card_number,
+ jh.other_contact,
+ jh.current_address,
+ jh.disability_cert,
+ jh.party_ember,
+ jh.create_user,
+ jh.create_time,
+ jh.update_user,
+ jh.update_time,
+ jh.confirm_flag,
+ jh.remark,
+ jhs.district_name aoiName,
+ concat( jhs.building, " ", unit, " ", room ) AS address,
+ jda.town_street_name AS townStreetName,
+ jda.nei_name AS neiName,
+ jh.volunteer_org,
+ jg.grid_name
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ where jh.is_deleted = 0
+ and jh.name != '' and jh.name is not null
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+ <if test="household.name!=null and household.name !=''">
+ and jh.name like concat('%',#{household.name},'%')
+ </if>
+ <if test="household.houseCode!=null and household.houseCode !=''">
+ and jh.house_code = #{household.houseCode}
+ </if>
+ <if test="household.phoneNumber!=null and household.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{household.phoneNumber},'%')
+ </if>
+ <if test="household.idCard!=null and household.idCard !=''">
+ and jh.id_card like concat('%',#{household.idCard},'%')
+ </if>
+ <if test="household.aoiName!=null and household.aoiName !=''">
+ and jhs.district_name like concat('%',#{household.aoiName},'%')
+ </if>
+ <if test="household.confirmFlag != null ">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="household.townStreetName!=null and household.townStreetName!=''">
+ and jda.town_street_name like concat('%',#{household.townStreetName},'%')
+ </if>
+ <if test="household.neiName!=null and household.neiName!=''">
+ and jda.nei_name like concat('%',#{household.neiName},'%')
+ </if>
+ <if test="household.housingRentalId != null ">
+ and jh.housing_rental_id = #{household.housingRentalId}
+ </if>
+ <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
+ AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
+ </if>
+ <if test="household.regionCode!=null and household.regionCode!=''">
+ and jg.community_code like concat('%',#{household.regionCode},'%')
+ </if>
+ <if test="household.id!=null and household.id!=''">
+ and jh.id = #{household.id}
+ </if>
+ order by jh.create_time desc
+ </select>
+
+
+ <!--查询房屋集合信息-->
+ <select id="selectHouseNodeList" resultType="org.springblade.common.node.TreeStringNode">
+ select jh.house_code as id,
+ jh.house_code as houseCode,
+ jda.address_name as name,
+ false as hasChildren,
+ jda.doorplate_type doorplateType,
+ jda.address_level addressLevel,
+ jda.nei_name neiName,
+ jda.nei_code neiCode,
+ jda.aoi_code aoiCode,
+ jh.relationship relationship
+ from jczz_household jh
+ left join jczz_doorplate_address jda on jh.house_code = jda.address_code
+ where 1 = 1
+ and jh.is_deleted = 0
+ and jh.associated_user_id = #{userId}
+ </select>
+
+ <!--查询房屋集合信息-->
+ <select id="getHouseholdListByCode" resultMap="householdAndLabelMap">
+ select jh.*,
+ jhl.id as cid,
+ jhl.house_code houseCodes,
+ jhl.label_id,
+ jhl.label_name,
+ jhl.color,
+ jhl.user_id,
+ jhl.lable_type,
+ jhl.household_id,
+ jhl.remark as cremark
+ from jczz_household jh
+ left join jczz_user_house_label jhl on jh.id = jhl.household_id
+ where 1 = 1
+ and jh.is_deleted = 0
+ and jh.house_code = #{code}
+ order by -jh.relationship desc, jh.id desc
+ </select>
+
+ <!--查询房屋集合信息-按id-->
+ <select id="getHouseholdListById" resultMap="householdAndLabelMap">
+ select jh.id,
+ jh.house_code,
+ jh.name,
+ jh.phone_number,
+ jh.associated_user_id,
+ jh.role_type,
+ jh.relationship,
+ jh.is_primary_contact,
+ jh.residential_status,
+ jh.gender,
+ jh.birthday,
+ jh.id_card,
+ jh.card_type,
+ jh.card_no,
+ jh.ethnicity,
+ jh.education,
+ jh.resident_type,
+ jh.hukou_registration,
+ jh.resident_adcode,
+ jh.native_place_adcode,
+ jh.religious_belief,
+ jh.health_status,
+ jh.disease_name,
+ jh.work_status,
+ jh.employer,
+ jh.occupation,
+ jh.cmpy_reg_addr,
+ jh.go_out_addr,
+ jh.go_out_where,
+ jh.go_out_time,
+ jh.go_out_reason,
+ jh.marital_status,
+ jh.card_number,
+ jh.other_contact,
+ if(jda.id is not null, jda.address_name, jh.current_address) as current_address,
+ jh.disability_cert,
+ jh.party_ember,
+ jh.remark,
+ jh.confirm_flag,
+ jh.housing_rental_id,
+ jh.volunteer_org,
+ jh.create_time,
+ jh.update_time,
+ if(jda.id is not null, substring(jda.town_street_code, 1, 9), jh.home_adcode) as home_adcode,
+ br1.name as residentAdName,
+ br1.province_code as residentProvinceAdCode,
+ br1.province_name as residentProvinceAdName,
+ br1.city_code as residentCityAdCode,
+ br1.city_name as residentCityAdName,
+ br2.name as nativePlaceAdName,
+ br2.province_code as nativePlaceProvinceAdCode,
+ br2.province_name as nativePlaceProvinceAdName,
+ br2.city_code as nativePlaceCityAdCode,
+ br2.city_name as nativePlaceCityAdName,
+ jhs.source,
+ jhl.id as cid,
+ jhl.house_code houseCodes,
+ jhl.label_id,
+ jhl.label_name,
+ jhl.color,
+ jhl.user_id,
+ jhl.lable_type,
+ jhl.household_id,
+ jhl.remark as cremark
+ from jczz_household jh
+ left join jczz_user_house_label jhl on jh.id = jhl.household_id
+ left join jczz_doorplate_address jda on jda.address_code = jh.house_code
+ left join jczz_house jhs on jhs.house_code = jh.house_code
+ left join blade_region br1 on br1.code = jh.resident_adcode
+ left join blade_region br2 on br2.code = jh.native_place_adcode
+ where 1 = 1
+ and jh.is_deleted = 0
+ and jh.id = #{household.id}
+ </select>
+
+ <!--导出数据-->
+ <select id="export" resultType="org.springblade.modules.house.excel.ExportHouseholdExcel">
+ SELECT
+ jh.id,
+ jh.house_code,
+ jh.NAME,
+ jh.phone_number,
+ jh.relationship,
+ jh.is_primary_contact,
+ jh.residential_status,
+ jh.birthday,
+ jh.id_card,
+ jh.card_type,
+ ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
+ jh.ethnicity,
+ jh.education,
+ jh.resident_type,
+ jh.hukou_registration,
+ jh.resident_adcode,
+ jh.native_place_adcode,
+ jh.religious_belief,
+ jh.health_status,
+ jh.disease_name,
+ jh.work_status,
+ jh.employer,
+ jh.occupation,
+ jh.cmpy_reg_addr,
+ jh.go_out_addr,
+ jh.go_out_where,
+ jh.go_out_time,
+ jh.go_out_reason,
+ jh.marital_status,
+ jh.card_number,
+ jh.other_contact,
+ IF
+ ( jda.id IS NOT NULL, jda.address_name, jh.current_address ) AS current_address,
+ jh.disability_cert,
+ jh.party_ember,
+ jh.remark,
+ jhs.district_name aoiName,
+ jda.town_street_name AS townName,
+ jda.nei_name AS communityName,
+ jg.grid_name,
+ jhs.building,
+ jh.volunteer_org,
+ case
+ when TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) < 18 then 2
+ when TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) >= 18 then 1
+ end as minors,
+ jhs.unit,
+ juhl.label_name
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ LEFT JOIN (
+ select household_id,GROUP_CONCAT(label_name) as label_name from jczz_user_house_label where lable_type = 1 and household_id is not null GROUP BY household_id
+ ) juhl on juhl.household_id = jh.id
+ <where>
+ <if test="household.labelIdList !=null and household.labelIdList.size() >0 ">
+ EXISTS (
+ SELECT
+ *
+ FROM
+ jczz_user_house_label juhl
+ LEFT JOIN jczz_label jl ON juhl.label_id = jl.id
+ where juhl.household_id = jh.id
+ and juhl.lable_type = 1
+ AND juhl.household_id IS NOT NULL
+ AND jl.id in
+ <foreach collection="household.labelIdList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </if>
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+
+ <if test="household.searchKey!=null and household.searchKey!=''">
+ and CONCAT(jh.name,jh.phone_number) like CONCAT ('%', #{household.searchKey},'%')
+ </if>
+
+ <if test="household.name!=null and household.name !=''">
+ and jh.name like concat('%',#{household.name},'%')
+ </if>
+ <if test="household.volunteerOrg != null and household.volunteerOrg != ''">
+ and jh.volunteer_org like concat('%',#{household.volunteerOrg},'%')
+ </if>
+ <if test="household.houseCode!=null and household.houseCode !=''">
+ and jh.house_code = #{household.houseCode}
+ </if>
+
+ <if test="household.communityCode!=null and household.communityCode !=''">
+ and jg.community_code = #{household.communityCode}
+ </if>
+ <!-- 等于18 就是租户 -->
+ <if test="household.relationship!=null and household.relationship == 18">
+ and jh.relationship = #{household.relationship}
+
+ <if test="household.minors!=null and household.minors ==2">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) < 18
+ </if>
+ <if test="household.minors!=null and household.minors ==1">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) >= 18
+ </if>
+ </if>
+ <!-- 不等于18 就是非租户 -->
+ <if test="household.relationship!=null and household.relationship != 18">
+ and jh.relationship != 18
+ </if>
+
+ <if test="household.phoneNumber!=null and household.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{household.phoneNumber},'%')
+ </if>
+ <if test="household.idCard!=null and household.idCard !=''">
+ and jh.id_card like concat('%',#{household.idCard},'%')
+ </if>
+ <if test="household.aoiName!=null and household.aoiName !=''">
+ and jhs.district_name like concat('%',#{household.aoiName},'%')
+ </if>
+ <if test="household.confirmFlag != null ">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="household.townStreetName!=null and household.townStreetName!=''">
+ and jda.town_street_name like concat('%',#{household.townStreetName},'%')
+ </if>
+ <if test="household.neiName!=null and household.neiName!=''">
+ and jda.nei_name like concat('%',#{household.neiName},'%')
+ </if>
+ <if test="household.housingRentalId != null ">
+ and jh.housing_rental_id = #{household.housingRentalId}
+ </if>
+ <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
+ AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
+ </if>
+ <if test="isAdministrator==2">
+ <choose>
+ <when test="household.roleName != null and household.roleName != ''">
+ <if test="household.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jhs.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jhs.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.roleName=='mj'">
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+ separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jpag.community_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ </when>
+ <otherwise>
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and
+ (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ <otherwise>
+
+ </otherwise>
+ </choose>
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.building!=null and household.building!=''">
+ and jhs.building like concat(#{household.building},'%')
+ </if>
+ <if test="household.unit!=null and household.unit!=''">
+ and jhs.unit like concat(#{household.unit},'%')
+ </if>
+ <if test="household.aoiCode!=null and household.aoiCode!=''">
+ and jhs.district_code = #{household.aoiCode}
+ </if>
+ and jh.is_deleted = 0
+ </where>
+ order by jh.create_time desc
+ limit 0,20000
+ </select>
+
+
+ <select id="statistics" resultType="java.lang.Integer">
+ SELECT
+ count(1)
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ <where>
+ <if test="household.communityCode != null and household.communityCode != ''">
+ and jg.community_code = #{household.communityCode}
+ </if>
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+ <if test="household.confirmFlag != null">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="isAdministrator==2">
+ <choose>
+ <when test="household.roleName != null and household.roleName != ''">
+ <if test="household.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jhs.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jhs.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.roleName=='mj'">
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+ separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jpag.community_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ </when>
+ <otherwise>
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and
+ (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ <otherwise>
+
+ </otherwise>
+ </choose>
+ </otherwise>
+ </choose>
+ </if>
+ and jh.is_deleted = 0
+ </where>
+ </select>
+
+ <!--查询物业-->
+ <select id="getProperty" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
+ SELECT jpcd.property_company_id AS CODE,
+ bu.name AS NAME,
+ jpcd.principal_phone AS phone
+ FROM jczz_doorplate_address jda
+ LEFT JOIN jczz_district jd ON jd.aoi_code = jda.aoi_code
+ LEFT JOIN jczz_property_company_district jpcd ON jpcd.district_id = jd.id
+ LEFT JOIN blade_user bu ON bu.id = jpcd.principal
+ WHERE 1 = 1
+ AND jda.address_code = #{household.houseCode} limit 1
+ </select>
+
+ <!--查询网格-->
+ <select id="getGrid" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
+ SELECT jg.id as code,
+ jgm.gridman_name as name,
+ jgm.mobile as phone
+ FROM jczz_grid_range jgr
+ LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id and jg.is_deleted = 0
+ LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id and jgm.is_deleted = 0
+ WHERE 1 = 1
+ AND jgr.house_code = #{household.houseCode} limit 1
+ </select>
+
+ <!--查询公安信息-->
+ <select id="getSecurity" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
+ SELECT address_code as code,
+ policeman as name,
+ policeman_phone as phone
+ FROM jczz_doorplate_address
+ WHERE address_code = #{household.houseCode}
+ </select>
+
+
+ <select id="getHouseHoldStatistics" resultType="java.util.Map">
+ SELECT
+ a.gender,
+ count( a.gender ) numbers
+ FROM
+ ( SELECT
+ IF
+ (
+ id_card IS NULL or id_card = '',
+ '未知',
+ IF
+ (SUBSTRING( id_card, 17, 1 ) % 2 = 1, '男', '女' )) AS gender
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_doorplate_address jda ON jh.house_code = jda.address_code
+ <where>
+ <if test="communityCodeList != null and communityCodeList.size()>0">
+ jda.nei_code in
+ <foreach collection="communityCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </if>
+ AND jh.is_deleted = 0
+ and jda.doorplate_type = '户室牌'
+ <if test="userId != null and roleType == '1'">
+ AND jda.address_code IN (
+ SELECT DISTINCT
+ jgr.house_code
+ FROM
+ jczz_grid jg
+ LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
+ LEFT JOIN jczz_grid_range jgr ON jgr.grid_id = jg.id
+ WHERE
+ jgm.user_id = #{userId}
+ AND jg.is_deleted = 0
+ )
+ </if>
+ <if test="userId != null and roleType == '3'">
+ AND jda.address_code IN (SELECT
+ jda.address_code
+ FROM
+ jczz_doorplate_address jda
+ LEFT JOIN jczz_community jc ON jc.CODE = jda.nei_code
+ WHERE
+ jc.res_police_user_id like concat('%',#{userId},'%'))
+ )
+ </if>
+ ) a
+ GROUP BY
+ a.gender
+ </where>
+
+ </select>
+ <select id="getHouseHoldStatisticsAge" resultType="java.util.Map">
+
+ select
+ case
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 0 and
+ TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 3 then '0~3岁'
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 4 and
+ TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 17 then '4~17岁'
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 18 and
+ TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 39 then '18~39岁'
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 40 and
+ TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 59 then '40~59岁'
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 60 and
+ TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 79 then '60~79岁'
+ when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ > ]]> 80 then '80岁以上'
+ ELSE '无身份信息'
+ END AS age,
+ count(1) as number FROM
+ jczz_household jh
+ LEFT JOIN jczz_doorplate_address jda ON jh.house_code = jda.address_code
+ <where>
+ <if test="communityCodeList != null and communityCodeList.size()>0">
+ jda.nei_code in
+ <foreach collection="communityCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </if>
+ and jda.doorplate_type = '户室牌'
+ AND jh.is_deleted = 0
+ <if test="userId != null and roleType == '1'">
+ AND jda.address_code IN (
+ SELECT
+ distinct jgr.house_code
+ FROM
+ jczz_grid jg
+ LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
+ LEFT JOIN jczz_grid_range jgr ON jgr.grid_id = jg.id
+ WHERE
+ jgm.user_id = #{userId}
+ AND jg.is_deleted = 0
+ )
+ </if>
+ </where>
+
+ GROUP BY age
+ </select>
+
+ <!--查询所有未入库的业主信息-->
+ <select id="getNotInsertUserHousehold" resultType="org.springblade.modules.house.entity.HouseholdEntity">
+ select jh.*
+ from jczz_household jh
+ where jh.is_deleted = 0
+ and jh.relationship = 1
+ and jh.associated_user_id is null
+ and jh.phone_number !=''
+ and length(jh.name)<=12
+ </select>
+
+ <!--关联标签-->
+ <resultMap id="householdPageAndLabelMaps" type="org.springblade.modules.house.vo.HouseholdVO" autoMapping="true">
+ <id property="id" column="id"/>
+ <collection property="householdLabelList" javaType="java.util.List"
+ ofType="org.springblade.modules.house.vo.HouseholdLabelVO" autoMapping="true">
+ <id property="id" column="cid"/>
+ <result property="houseCode" column="houseCodes"/>
+ </collection>
+ </resultMap>
+
+ <!--住户列表查询(关联标签)-->
+ <select id="selectHouseholdList" resultMap="householdPageAndLabelMaps">
+ SELECT
+ jh.id,
+ jh.house_code,
+ jh.NAME,
+ jh.phone_number,
+ jh.associated_user_id,
+ jh.role_type,
+ jh.relationship,
+ jh.is_primary_contact,
+ jh.residential_status,
+ jh.birthday,
+ jh.id_card,
+ ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
+ jh.ethnicity,
+ jh.education,
+ jh.hukou_registration,
+ jh.work_status,
+ employer,
+ jh.marital_status,
+ jh.card_number,
+ jh.other_contact,
+ jh.current_address,
+ jh.disability_cert,
+ jh.party_ember,
+ jh.create_user,
+ jh.create_time,
+ jh.update_user,
+ jh.update_time,
+ jh.confirm_flag,
+ jh.remark,
+ jhs.district_name aoiName,
+ concat( jhs.building, " ", unit, " ", room ) AS address,
+ jda.town_street_name AS townStreetName,
+ jda.nei_name AS neiName,
+ jg.grid_name,
+ juhl.id as cid,juhl.house_code as houseCodes,juhl.label_id,juhl.label_name,juhl.color
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_user_house_label juhl on juhl.house_code = jda.address_code and lable_type=1
+ <where>
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+ <if test="household.name!=null and household.name !=''">
+ and jh.name like concat('%',#{household.name},'%')
+ </if>
+ <if test="household.houseCode!=null and household.houseCode !=''">
+ and jh.house_code = #{household.houseCode}
+ </if>
+ <if test="household.phoneNumber!=null and household.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{household.phoneNumber},'%')
+ </if>
+ <if test="household.idCard!=null and household.idCard !=''">
+ and jh.id_card like concat('%',#{household.idCard},'%')
+ </if>
+ <if test="household.aoiName!=null and household.aoiName !=''">
+ and jhs.district_name like concat('%',#{household.aoiName},'%')
+ </if>
+ <if test="household.confirmFlag != null ">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="household.relationship != null ">
+ and jh.relationship = #{household.relationship}
+ </if>
+ <if test="household.townStreetName!=null and household.townStreetName!=''">
+ and jda.town_street_name like concat('%',#{household.townStreetName},'%')
+ </if>
+ <if test="household.neiName!=null and household.neiName!=''">
+ and jda.nei_name like concat('%',#{household.neiName},'%')
+ </if>
+ <if test="household.housingRentalId != null ">
+ and jh.housing_rental_id = #{household.housingRentalId}
+ </if>
+ <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
+ AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
+ </if>
+ <if test="household.regionCode!=null and household.regionCode!=''">
+ and jg.community_code like concat('%',#{household.regionCode},'%')
+ </if>
+ <if test="household.id!=null">
+ and jh.id = #{household.id}
+ </if>
+ <if test="household.labelId!=null">
+ and juhl.label_id = #{household.labelId}
+ </if>
+ <if test="household.searchKey!=null and household.searchKey!=''">
+ and CONCAT(jh.name,jh.phone_number) like CONCAT ('%', #{household.searchKey},'%')
+ </if>
+ and jh.is_deleted = 0
+ and jh.name != '' and jh.name is not null
+ order by jh.create_time desc,jh.id desc
+ <if test="household.limit!=null">
+ limit #{household.limit}
+ </if>
+ </where>
+ </select>
+
+
+ <select id="getKeynotePersonnelPage" resultMap="householdPageAndLabelMap">
+
+ SELECT
+ jh.id,
+ jh.house_code,
+ jh.NAME,
+ jh.phone_number,
+ jh.associated_user_id,
+ jh.role_type,
+ jh.relationship,
+ jh.is_primary_contact,
+ jh.residential_status,
+ jh.gender,
+ jh.birthday,
+ jh.id_card,
+ jh.card_type,
+ ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
jh.ethnicity,
jh.education,
jh.resident_type,
@@ -160,6 +1152,7 @@
jh.remark,
jh.confirm_flag,
jh.housing_rental_id,
+ jh.volunteer_org,
IF
( jda.id IS NOT NULL, substring( jda.town_street_code, 1, 9 ), jh.home_adcode ) AS home_adcode,
jhs.district_name aoiName,
@@ -174,11 +1167,11 @@
jczz_household jh
LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
- LEFT JOIN jczz_grid_range jgr on jgr.house_code=jda.address_code
- LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
<where>
<if test="household.userId!=null">
- AND jg.id IN ( SELECT DISTINCT jgm.grid_id FROM jczz_gridman jgm WHERE jgm.user_id = #{household.userId}
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
)
</if>
<if test="household.name!=null and household.name !=''">
@@ -223,447 +1216,137 @@
<if test="household.aoiCode!=null and household.aoiCode!=''">
and jhs.district_code = #{household.aoiCode}
</if>
- and jh.is_deleted = 0
- order by jh.create_time desc
- </where>
-
-
- </select>
-
- <select id="getAllHouseHold" resultMap="householdPageAndLabelMap">
- SELECT
- jh.id,
- jh.house_code,
- jh.NAME,
- jh.phone_number,
- jh.associated_user_id,
- jh.role_type,
- jh.associated_user_name,
- jh.relationship,
- jh.is_primary_contact,
- jh.residential_status,
- jh.birthday,
- jh.id_card,
- jh.hkmt_pass,
- jh.passport,
- ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
- jh.ethnicity,
- jh.education,
- jh.hukou_registration,
- jh.work_status,
- employer,
- jh.marital_status,
- jh.card_number,
- jh.other_contact,
- jh.current_address,
- jh.disability_cert,
- jh.party_ember,
- jh.create_user,
- jh.create_time,
- jh.update_user,
- jh.update_time,
- jh.confirm_flag,
- jh.remark,
- jhs.district_name aoiName,
- concat( jhs.building, " ", unit, " ", room ) AS address,
- jda.town_street_name AS townStreetName,
- jda.nei_name AS neiName,
- jg.grid_name
- FROM
- jczz_household jh
- LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
- LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
- LEFT JOIN jczz_grid_range jgr on jgr.house_code=jda.address_code
- LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
- where jh.is_deleted = 0
- and jh.name != '' and jh.name is not null
- <if test="household.userId!=null">
- AND jg.id IN ( SELECT DISTINCT jgm.grid_id FROM jczz_gridman jgm WHERE jgm.user_id = #{household.userId}
- )
- </if>
- <if test="household.name!=null and household.name !=''">
- and jh.name like concat('%',#{household.name},'%')
- </if>
- <if test="household.houseCode!=null and household.houseCode !=''">
- and jh.house_code = #{household.houseCode}
- </if>
- <if test="household.phoneNumber!=null and household.phoneNumber !=''">
- and jh.phone_number like concat('%',#{household.phoneNumber},'%')
- </if>
- <if test="household.idCard!=null and household.idCard !=''">
- and jh.id_card like concat('%',#{household.idCard},'%')
- </if>
- <if test="household.aoiName!=null and household.aoiName !=''">
- and jhs.district_name like concat('%',#{household.aoiName},'%')
- </if>
- <if test="household.confirmFlag != null ">
- and jh.confirm_flag = #{household.confirmFlag}
- </if>
- <if test="household.townStreetName!=null and household.townStreetName!=''">
- and jda.town_street_name like concat('%',#{household.townStreetName},'%')
- </if>
- <if test="household.neiName!=null and household.neiName!=''">
- and jda.nei_name like concat('%',#{household.neiName},'%')
- </if>
- <if test="household.housingRentalId != null ">
- and jh.housing_rental_id = #{household.housingRentalId}
- </if>
- <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
- AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
- </if>
- <if test="household.regionCode!=null and household.regionCode!=''">
- and jg.community_code like concat('%',#{household.regionCode},'%')
- </if>
- <if test="household.id!=null and household.id!=''">
- and jh.id = #{household.id}
- </if>
- order by jh.create_time desc
- </select>
-
-
- <!--查询房屋集合信息-->
- <select id="selectHouseNodeList" resultType="org.springblade.common.node.TreeStringNode">
- select jh.house_code as id,
- jh.house_code as houseCode,
- jda.address_name as name,
- false as hasChildren,
- jda.doorplate_type doorplateType,
- jda.address_level addressLevel,
- jda.nei_name neiName,
- jda.aoi_code aoiCode,
- jh.relationship relationship
- from jczz_household jh
- left join jczz_doorplate_address jda on jh.house_code = jda.address_code
- where 1 = 1 and jh.is_deleted = 0
- and jh.associated_user_id = #{userId}
- </select>
-
- <!--查询房屋集合信息-->
- <select id="getHouseholdListByCode" resultMap="householdAndLabelMap">
- select
- jh.*,
- jhl.id as cid,
- jhl.house_code houseCodes,
- jhl.label_id,
- jhl.label_name,
- jhl.color,
- jhl.user_id,
- jhl.lable_type,
- jhl.household_id,
- jhl.remark as cremark
- from jczz_household jh
- left join jczz_user_house_label jhl on jh.id = jhl.household_id
- where 1=1 and jh.is_deleted = 0
- and jh.house_code = #{code}
- order by -jh.relationship desc,jh.id desc
- </select>
-
- <!--查询房屋集合信息-按id-->
- <select id="getHouseholdListById" resultMap="householdAndLabelMap">
- select
- jh.id,jh.house_code,jh.name,jh.phone_number,jh.associated_user_id,
- jh.role_type,jh.associated_user_name,jh.relationship,jh.is_primary_contact,
- jh.residential_status,jh.gender,jh.birthday,jh.id_card,
- jh.card_type,jh.card_no,jh.hkmt_pass,jh.passport,
- jh.ethnicity,jh.education,jh.resident_type,
- jh.hukou_registration,jh.resident_adcode,jh.native_place_adcode,
- jh.religious_belief,jh.health_status,jh.disease_name,
- jh.work_status,jh.employer,jh.occupation,jh.cmpy_reg_addr,
- jh.go_out_addr,jh.go_out_where,jh.go_out_time,jh.go_out_reason,
- jh.marital_status,jh.card_number,jh.other_contact,
- if(jda.id is not null,jda.address_name,jh.current_address) as current_address,
- jh.disability_cert,jh.party_ember,jh.remark,
- jh.confirm_flag,jh.housing_rental_id,
- if(jda.id is not null,substring(jda.town_street_code,1,9),jh.home_adcode) as home_adcode,
- br1.name as residentAdName,
- br1.province_code as residentProvinceAdCode,br1.province_name as residentProvinceAdName,
- br1.city_code as residentCityAdCode,br1.city_name as residentCityAdName,
- br2.name as nativePlaceAdName,
- br2.province_code as nativePlaceProvinceAdCode,br2.province_name as nativePlaceProvinceAdName,
- br2.city_code as nativePlaceCityAdCode,br2.city_name as nativePlaceCityAdName,
- jhs.source,
- jhl.id as cid,
- jhl.house_code houseCodes,
- jhl.label_id,
- jhl.label_name,
- jhl.color,
- jhl.user_id,
- jhl.lable_type,
- jhl.household_id,
- jhl.remark as cremark
- from jczz_household jh
- left join jczz_user_house_label jhl on jh.id = jhl.household_id
- left join jczz_doorplate_address jda on jda.address_code = jh.house_code
- left join jczz_house jhs on jhs.house_code = jh.house_code
- left join blade_region br1 on br1.code = jh.resident_adcode
- left join blade_region br2 on br2.code = jh.native_place_adcode
- where 1=1 and jh.is_deleted = 0
- and jh.id = #{household.id}
- </select>
-
- <!--导出数据-->
- <select id="export" resultType="org.springblade.modules.house.excel.HouseHoldExcel">
- select
- jh.house_code houseCode,
- jh.name,jh.phone_number phoneNumber,jh.role_type roleType,jh.relationship relationship,
- jh.is_primary_contact isPrimaryContact,jh.residential_status residentialStatus,jh.gender,
- jh.birthday,jh.id_card idCard,jh.hkmt_pass hkmtPass,jh.passport,jh.ethnicity,jh.education,
- jh.hukou_registration hukouRegistration,jh.work_status workStatus,jh.employer,jh.marital_status maritalStatus,
- jh.card_number cardNumber,jh.other_contact otherContact,jh.current_address currentAddress,
- jh.disability_cert disabilityCert,jh.party_ember partyEmber,jh.remark,
- jhs.district_name aoiName,
- concat(jhs.building," ",unit," ",room) as address
- from
- jczz_household jh join jczz_house jhs on jh.house_code = jhs.house_code and jhs.is_deleted = 0
- where jh.is_deleted = 0
- <if test="household.name!=null and household.name !=''">
- and jh.name like concat('%',#{household.name},'%')
- </if>
- <if test="household.phoneNumber!=null and household.phoneNumber !=''">
- and jh.phone_number like concat('%',#{household.phoneNumber},'%')
- </if>
- <if test="household.idCard!=null and household.idCard !=''">
- and jh.id_card like concat('%',#{household.idCard},'%')
- </if>
- <if test="household.aoiName!=null and household.aoiName !=''">
- and jhs.district_name like concat('%',#{household.aoiName},'%')
- </if>
- </select>
-
-
- <select id="statistics" resultType="java.lang.Integer">
- SELECT
- count( 1 )
- FROM
- jczz_household jh
- LEFT JOIN jczz_doorplate_address jda ON jh.house_code = jda.address_code
- <where>
- <if test="neiCode != null and neiCode != ''">
- and jda.nei_code = #{neiCode}
- </if>
- <if test="userId != null">
- AND jh.house_code IN (
- SELECT
- jgr.house_code
- FROM
- jczz_grid_range jgr
- LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id
- LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
- WHERE
- jg.is_deleted = 0
- AND jgm.user_id = #{userId} )
- </if>
- and jh.is_deleted = 0
- and jh.confirm_flag = 0
- </where>
- </select>
-
- <!--查询物业-->
- <select id="getProperty" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
- SELECT
- jpcd.property_company_id as code,
- jpcd.principal as name,
- jpcd.principal_phone as phone
- FROM
- jczz_doorplate_address jda
- LEFT JOIN jczz_district jd ON jd.aoi_code = jda.aoi_code
- LEFT JOIN jczz_property_company_district jpcd on jpcd.district_id=jd.id
- WHERE 1=1
- AND jda.address_code = #{household.houseCode}
- limit 1
- </select>
-
- <!--查询网格-->
- <select id="getGrid" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
- SELECT jg.id as code,
- jgm.gridman_name as name,
- jgm.mobile as phone
- FROM jczz_grid_range jgr
- LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id and jg.is_deleted = 0
- LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id and jgm.is_deleted = 0
- WHERE 1 = 1
- AND jgr.house_code = #{household.houseCode} limit 1
- </select>
-
- <!--查询公安信息-->
- <select id="getSecurity" resultType="org.springblade.modules.house.vo.HouseholdOtherVO">
- SELECT
- address_code as code,policeman as name,policeman_phone as phone
- FROM
- jczz_doorplate_address
- WHERE
- address_code = #{household.houseCode}
- </select>
-
-
- <select id="getHouseHoldStatistics" resultType="java.util.Map">
- SELECT
- a.gender,
- count( a.gender ) numbers
- FROM
- ( SELECT
- IF
- (
- id_card IS NULL or id_card = '',
- '未知',
- IF
- (SUBSTRING( id_card, 17, 1 ) % 2 = 1, '男', '女' )) AS gender
- FROM
- jczz_household jh
- LEFT JOIN jczz_doorplate_address jda ON jh.house_code = jda.address_code
- WHERE
- jda.nei_code = #{code}
- AND jh.is_deleted = 0
- and jda.doorplate_type = '户室牌'
- <if test="userId != null and roleType == '1'">
- AND jda.address_code IN (
+ and jh.id in (
SELECT DISTINCT
- jgr.house_code
+ juhl.household_id
FROM
- jczz_grid jg
- LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
- LEFT JOIN jczz_grid_range jgr ON jgr.grid_id = jg.id
+ jczz_user_house_label juhl
+ LEFT JOIN jczz_label jl ON juhl.label_id = jl.id
WHERE
- jgm.user_id = #{userId}
- AND jg.is_deleted = 0
+ juhl.lable_type = 1
+ <if test="household.labelId != null ">
+ AND jl.id = #{household.labelId}
+ </if>
+ <if test="household.parentId != null ">
+ AND jl.parent_id = #{household.parentId}
+ </if>
+ AND juhl.label_id IS NOT NULL
)
- </if>
- <if test="userId != null and roleType == '3'">
- AND jda.address_code IN (SELECT
- jda.address_code
- FROM
- jczz_doorplate_address jda
- LEFT JOIN jczz_community jc ON jc.CODE = jda.nei_code
- WHERE
- jc.res_police_user_id = #{userId})
- )
- </if>
- ) a
- GROUP BY
- a.gender
- </select>
- <select id="getHouseHoldStatisticsAge" resultType="java.util.Map">
-
- select
- case
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 0 and
- TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 3 then '0~3岁'
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 4 and
- TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 17 then '4~17岁'
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 18 and
- TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 39 then '18~39岁'
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 40 and
- TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 59 then '40~59岁'
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ >= ]]> 60 and
- TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ <= ]]> 79 then '60~79岁'
- when TIMESTAMPDIFF(YEAR,STR_TO_DATE(substr(id_card,7,8),'%Y%m%d'),sysdate()) <![CDATA[ > ]]> 80 then '80岁以上'
- ELSE '无身份信息'
- END AS age,
- count(1) as number FROM
- jczz_household jh
- LEFT JOIN jczz_doorplate_address jda ON jh.house_code = jda.address_code
- WHERE
- jda.nei_code = #{code}
- and jda.doorplate_type = '户室牌'
- AND jh.is_deleted = 0
- <if test="userId != null and roleType == '1'">
- AND jda.address_code IN (
- SELECT
- distinct jgr.house_code
- FROM
- jczz_grid jg
- LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
- LEFT JOIN jczz_grid_range jgr ON jgr.grid_id = jg.id
- WHERE
- jgm.user_id = #{userId}
- AND jg.is_deleted = 0
- )
- </if>
-
- <if test="userId != null and roleType == '3'">
- AND jda.address_code IN (SELECT
- jda.address_code
- FROM
- jczz_doorplate_address jda
- LEFT JOIN jczz_community jc ON jc.CODE = jda.nei_code
- WHERE
- jc.res_police_user_id = #{userId})
- )
- </if>
- GROUP BY age
+ and jh.is_deleted = 0
+ order by jh.create_time desc
+ </where>
</select>
- <!--查询所有未入库的业主信息-->
- <select id="getNotInsertUserHousehold" resultType="org.springblade.modules.house.entity.HouseholdEntity">
+ <!--根据人员标签编号集合查询对应的住户(按颜色区分近多少天没有发过任务的住户)-->
+ <select id="getHouseholdListByParam" resultType="org.springblade.modules.house.vo.HouseholdVO">
select jh.* from jczz_household jh
+ left join jczz_user_house_label juhl on juhl.household_id = jh.id
where jh.is_deleted = 0
- and jh.relationship = 1
- and jh.associated_user_id is null
- and jh.phone_number !=''
- and length(jh.name)<=12
+ and juhl.lable_type = 1
+ and juhl.color = 'green'
+ and jh.id in (
+ select household_id from jczz_grid_work_log where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(),
+ create_time )=30
+ )
+ <choose>
+ <when test="list!=null and list.size()>0">
+ and juhl.label_id in
+ <foreach collection="list" item="id" separator="," open="(" close=")">
+ #{id}
+ </foreach>
+ </when>
+ <otherwise>
+ and juhl.label_id in ('')
+ </otherwise>
+ </choose>
+ union all
+ (
+ select jh.* from jczz_household jh
+ left join jczz_user_house_label juhl on juhl.household_id = jh.id
+ where jh.is_deleted = 0
+ and juhl.lable_type = 1
+ and juhl.color = 'yellow'
+ and jh.id in (
+ select household_id from jczz_grid_work_log where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(),
+ create_time )=14
+ )
+ <choose>
+ <when test="list!=null and list.size()>0">
+ and juhl.label_id in
+ <foreach collection="list" item="id" separator="," open="(" close=")">
+ #{id}
+ </foreach>
+ </when>
+ <otherwise>
+ and juhl.label_id in ('')
+ </otherwise>
+ </choose>
+ )
+ union all
+ (
+ select jh.* from jczz_household jh
+ left join jczz_user_house_label juhl on juhl.household_id = jh.id
+ where jh.is_deleted = 0
+ and juhl.lable_type = 1
+ and juhl.color = 'red'
+ and jh.id in (
+ select household_id from jczz_grid_work_log where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(),
+ create_time )=7
+ )
+ <choose>
+ <when test="list!=null and list.size()>0">
+ and juhl.label_id in
+ <foreach collection="list" item="id" separator="," open="(" close=")">
+ #{id}
+ </foreach>
+ </when>
+ <otherwise>
+ and juhl.label_id in ('')
+ </otherwise>
+ </choose>
+ )
+ union all
+ (
+ select jh.* from jczz_household jh
+ left join jczz_user_house_label juhl on juhl.household_id = jh.id
+ where jh.is_deleted = 0 and juhl.lable_type = 1
+ and jh.id not in (
+ select household_id from jczz_grid_work_log where is_deleted = 0
+ and household_id is not null
+ and source = 2
+ group by household_id
+ )
+ <choose>
+ <when test="list!=null and list.size()>0">
+ and juhl.label_id in
+ <foreach collection="list" item="id" separator="," open="(" close=")">
+ #{id}
+ </foreach>
+ </when>
+ <otherwise>
+ and juhl.label_id in ('')
+ </otherwise>
+ </choose>
+ )
</select>
-
- <!--关联标签-->
- <resultMap id="householdPageAndLabelMaps" type="org.springblade.modules.house.vo.HouseholdVO" autoMapping="true">
- <id property="id" column="id"/>
- <collection property="householdLabelList" javaType="java.util.List"
- ofType="org.springblade.modules.house.vo.HouseholdLabelVO" autoMapping="true">
- <id property="id" column="cid"/>
- <result property="houseCode" column="houseCodes"/>
- </collection>
- </resultMap>
-
- <!--住户列表查询(关联标签)-->
- <select id="selectHouseholdList" resultMap="householdPageAndLabelMaps">
+ <select id="getlabelStatistics" resultType="org.springblade.common.node.TreeIntegerNode">
SELECT
- jh.id,
- jh.house_code,
- jh.NAME,
- jh.phone_number,
- jh.associated_user_id,
- jh.role_type,
- jh.associated_user_name,
- jh.relationship,
- jh.is_primary_contact,
- jh.residential_status,
- jh.birthday,
- jh.id_card,
- jh.hkmt_pass,
- jh.passport,
- ifnull( jh.gender, CASE WHEN substring( jh.id_card, 17, 1 )% 2 = 1 THEN 1 ELSE 0 END ) AS gender,
- jh.ethnicity,
- jh.education,
- jh.hukou_registration,
- jh.work_status,
- employer,
- jh.marital_status,
- jh.card_number,
- jh.other_contact,
- jh.current_address,
- jh.disability_cert,
- jh.party_ember,
- jh.create_user,
- jh.create_time,
- jh.update_user,
- jh.update_time,
- jh.confirm_flag,
- jh.remark,
- jhs.district_name aoiName,
- concat( jhs.building, " ", unit, " ", room ) AS address,
- jda.town_street_name AS townStreetName,
- jda.nei_name AS neiName,
- jg.grid_name,
- juhl.id as cid,juhl.house_code as houseCodes,juhl.label_id,juhl.label_name,juhl.color
+ jl.id AS id,
+ jl.parent_id AS parentId,
+ jl.label_name AS name,
+ jl.sort,
+ (SELECT
+ count(juhl.household_id ) counts
FROM
- jczz_household jh
- LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ jczz_user_house_label juhl
+ LEFT JOIN jczz_household jh ON juhl.household_id = jh.id
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code AND jhs.is_deleted = 0
LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
- LEFT JOIN jczz_grid_range jgr on jgr.house_code=jda.address_code
- LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
- LEFT JOIN jczz_user_house_label juhl on juhl.house_code = jda.address_code and lable_type=1
+ LEFT JOIN jczz_grid jg ON jg.grid_code = jhs.grid_code AND jg.is_deleted = 0
<where>
<if test="household.userId!=null">
- AND jg.id IN ( SELECT DISTINCT jgm.grid_id FROM jczz_gridman jgm WHERE jgm.user_id = #{household.userId}
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
)
</if>
<if test="household.name!=null and household.name !=''">
@@ -697,24 +1380,289 @@
AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
</if>
<if test="household.regionCode!=null and household.regionCode!=''">
- and jg.community_code like concat('%',#{household.regionCode},'%')
+ and jg.community_code like concat(#{household.regionCode},'%')
</if>
- <if test="household.id!=null">
- and jh.id = #{household.id}
+ <if test="household.building!=null and household.building!=''">
+ and jhs.building like concat(#{household.building},'%')
</if>
- <if test="household.labelId!=null">
- and juhl.label_id = #{household.labelId}
+ <if test="household.unit!=null and household.unit!=''">
+ and jhs.unit like concat(#{household.unit},'%')
</if>
+ <if test="household.aoiCode!=null and household.aoiCode!=''">
+ and jhs.district_code = #{household.aoiCode}
+ </if>
+ <if test="household.labelId != null ">
+ AND jl.id = #{household.labelId}
+ </if>
+ <if test="household.parentId != null ">
+ AND jl.parent_id = #{household.parentId}
+ </if>
+ AND juhl.label_id IS NOT NULL
+ and juhl.lable_type = 1
+ and jh.is_deleted = 0
+ AND juhl.label_id = jl.id
+ </where>
+ ) count
+ FROM
+ jczz_label jl where is_deleted = 0
+ and jl.id != '1002'
+ and jl.id != '1001'
+ and jl.parent_id != '1001'
+ </select>
+
+ <select id="getUserInfoByDistrictIds" resultType="org.springblade.modules.house.vo.HouseholdVO">
+ SELECT
+ jh.*,
+ jhe.house_name address,
+ jhe.building,
+ jhe.unit
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhe ON jhe.house_code = jh.house_code
+ AND jh.is_deleted = 0
+ LEFT JOIN jczz_district jd ON jd.aoi_code = jhe.district_code
+ <where>
+ and jd.id in
+ <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ and jh.relationship !=18
+ <if test="vo.building != null and vo.building !=''">
+ and jhe.building like concat('%',#{vo.building},'%')
+ </if>
+ <if test="vo.unit != null and vo.unit !=''">
+ and jhe.unit like concat('%',#{vo.unit},'%')
+ </if>
+ <if test="vo.name != null and vo.name !=''">
+ and jh.name like concat('%',#{vo.name},'%')
+ </if>
+ <if test="vo.phoneNumber != null and vo.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{vo.phoneNumber},'%')
+ </if>
+ </where>
+ </select>
+
+ <!--查询住户对应的社区编号-->
+ <select id="getCommunityCode" resultType="java.lang.String">
+ SELECT
+ jpag.community_code
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ where jh.is_deleted = 0
+ and jh.id = #{id}
+ </select>
+
+ <!--查询所有住户总数-->
+ <select id="getAllListTotal" resultType="java.lang.Integer">
+ SELECT
+ count(*)
+ FROM
+ jczz_household jh
+ where jh.is_deleted = 0
+ </select>
+
+ <!--查询对应的住户集合-->
+ <select id="getAllList" resultType="org.springblade.modules.house.vo.HouseholdVO">
+ SELECT
+ jh.*,
+ jhs.address,
+ jpag.community_code
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ where jh.is_deleted = 0
+ limit #{i},#{size}
+ </select>
+
+
+ <select id="exportTenant" resultType="org.springblade.modules.house.excel.HouseTenantExcel">
+ SELECT
+ jh.house_code,
+ jh.NAME,
+ jh.phone_number,
+ jh.relationship,
+ jh.residential_status,
+ jh.birthday,
+ jh.id_card,
+ jh.card_type,
+ jh.ethnicity,
+ jh.education,
+ jh.resident_type,
+ jh.hukou_registration,
+ jh.resident_adcode,
+ jh.native_place_adcode,
+ jh.religious_belief,
+ jh.health_status,
+ jh.disease_name,
+ jh.work_status,
+ jh.employer,
+ jh.occupation,
+ jh.cmpy_reg_addr,
+ jh.go_out_addr,
+ jh.go_out_where,
+ jh.go_out_time,
+ jh.go_out_reason,
+ jh.marital_status,
+ jh.card_number
+ FROM
+ jczz_household jh
+ LEFT JOIN jczz_house jhs ON jh.house_code = jhs.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
+ LEFT JOIN jczz_grid jg on jg.grid_code = jhs.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ LEFT JOIN (
+ select household_id,GROUP_CONCAT(label_name) as label_name from jczz_user_house_label where lable_type = 1 and household_id is not null GROUP BY household_id
+ ) juhl on juhl.household_id = jh.id
+ <where>
+ <if test="household.labelIdList !=null and household.labelIdList.size() >0 ">
+ EXISTS (
+ SELECT
+ *
+ FROM
+ jczz_user_house_label juhl
+ LEFT JOIN jczz_label jl ON juhl.label_id = jl.id
+ where juhl.household_id = jh.id
+ and juhl.lable_type = 1
+ AND juhl.household_id IS NOT NULL
+ AND jl.id in
+ <foreach collection="household.labelIdList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </if>
+ <if test="household.userId!=null">
+ AND jg.grid_code IN ( SELECT DISTINCT jgm.grid_code FROM jczz_gridman jgm WHERE jgm.user_id =
+ #{household.userId}
+ )
+ </if>
+
<if test="household.searchKey!=null and household.searchKey!=''">
and CONCAT(jh.name,jh.phone_number) like CONCAT ('%', #{household.searchKey},'%')
</if>
- and jh.is_deleted = 0
- and jh.name != '' and jh.name is not null
- order by jh.create_time desc,jh.id desc
- <if test="household.limit!=null">
- limit #{household.limit}
+
+ <if test="household.name!=null and household.name !=''">
+ and jh.name like concat('%',#{household.name},'%')
</if>
+ <if test="household.volunteerOrg != null and household.volunteerOrg != ''">
+ and jh.volunteer_org like concat('%',#{household.volunteerOrg},'%')
+ </if>
+ <if test="household.houseCode!=null and household.houseCode !=''">
+ and jh.house_code = #{household.houseCode}
+ </if>
+
+ <if test="household.communityCode!=null and household.communityCode !=''">
+ and jg.community_code = #{household.communityCode}
+ </if>
+ <!-- 等于18 就是租户 -->
+ <if test="household.relationship!=null and household.relationship == 18">
+ and jh.relationship = #{household.relationship}
+
+ <if test="household.minors!=null and household.minors ==2">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) < 18
+ </if>
+ <if test="household.minors!=null and household.minors ==1">
+ and TIMESTAMPDIFF(year, substring(jh.id_card, 7, 8), now()) >= 18
+ </if>
+ </if>
+ <!-- 不等于18 就是非租户 -->
+ <if test="household.relationship!=null and household.relationship != 18">
+ and jh.relationship != #{household.relationship}
+ </if>
+
+ <if test="household.phoneNumber!=null and household.phoneNumber !=''">
+ and jh.phone_number like concat('%',#{household.phoneNumber},'%')
+ </if>
+ <if test="household.idCard!=null and household.idCard !=''">
+ and jh.id_card like concat('%',#{household.idCard},'%')
+ </if>
+ <if test="household.aoiName!=null and household.aoiName !=''">
+ and jhs.district_name like concat('%',#{household.aoiName},'%')
+ </if>
+ <if test="household.confirmFlag != null ">
+ and jh.confirm_flag = #{household.confirmFlag}
+ </if>
+ <if test="household.townStreetName!=null and household.townStreetName!=''">
+ and jda.town_street_name like concat('%',#{household.townStreetName},'%')
+ </if>
+ <if test="household.neiName!=null and household.neiName!=''">
+ and jda.nei_name like concat('%',#{household.neiName},'%')
+ </if>
+ <if test="household.housingRentalId != null ">
+ and jh.housing_rental_id = #{household.housingRentalId}
+ </if>
+ <if test="household.startTime != null and household.startTime != '' and household.endTime != null and household.endTime != '' ">
+ AND jh.create_time BETWEEN #{household.startTime} and #{household.endTime}
+ </if>
+ <if test="isAdministrator==2">
+ <choose>
+ <when test="household.roleName != null and household.roleName != ''">
+ <if test="household.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jhs.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jhs.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.roleName=='mj'">
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+ separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jpag.community_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ </when>
+ <otherwise>
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and
+ (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ <otherwise>
+
+ </otherwise>
+ </choose>
+ </otherwise>
+ </choose>
+ </if>
+ <if test="household.building!=null and household.building!=''">
+ and jhs.building like concat(#{household.building},'%')
+ </if>
+ <if test="household.unit!=null and household.unit!=''">
+ and jhs.unit like concat(#{household.unit},'%')
+ </if>
+ <if test="household.aoiCode!=null and household.aoiCode!=''">
+ and jhs.district_code = #{household.aoiCode}
+ </if>
+ and jh.is_deleted = 0
</where>
+ order by jh.create_time desc
+ limit 0,10000
</select>
</mapper>
--
Gitblit v1.9.3