java110
2020-11-28 5bdf058a2a12c113b14e47c9049393642e9dae25
java110-db/src/main/resources/mapper/community/CommunityServiceDaoImplMapper.xml
@@ -6,8 +6,10 @@
    
    <!-- 保存小区信息 add by wuxw 2018-07-03 -->
    <insert id="saveBusinessCommunityInfo" parameterType="Map">
        insert into business_community(community_id,b_id,name,address,city_code,nearby_landmarks,map_x,map_y,month,operate)
        values(#{communityId},#{bId},#{name},#{address},#{cityCode},#{nearbyLandmarks},#{mapX},#{mapY},#{month},#{operate})
        insert into business_community(community_id,b_id,name,address,city_code,
        nearby_landmarks,map_x,map_y,month,state,operate,community_area)
        values(#{communityId},#{bId},#{name},#{address},#{cityCode},
        #{nearbyLandmarks},#{mapX},#{mapY},#{month},#{state},#{operate},#{communityArea})
    </insert>
    <!-- 保存小区属性信息  add by wuxw 2018-07-03 -->
    <insert id="saveBusinessCommunityAttr" parameterType="Map">
@@ -23,7 +25,8 @@
    <!-- 查询小区信息(Business) add by wuxw 2018-07-03 -->
    <select id="getBusinessCommunityInfo" parameterType="Map" resultType="Map">
        select s.community_id,s.b_id,s.name,s.address,s.city_code,s.nearby_landmarks,s.map_x,s.map_y,s.operate
        select s.community_id,s.b_id,s.name,s.address,s.city_code,s.nearby_landmarks,
        s.map_x,s.map_y,s.operate,s.state,s.community_area communityArea,s.community_area
        from business_community s where 1 = 1
        <if test="operate != null and operate != ''">
            and s.operate = #{operate}
@@ -73,10 +76,8 @@
    <!-- 保存小区信息至 instance表中 add by wuxw 2018-07-03 -->
    <insert id="saveCommunityInfoInstance" parameterType="Map">
        insert into s_community(community_id,b_id,name,address,city_code,nearby_landmarks,map_x,map_y,status_cd)
        select s.community_id,s.b_id,s.name,s.address,s.city_code,s.nearby_landmarks,s.map_x,s.map_y,'0'
        from business_community s where
        s.operate = 'ADD' and s.b_id=#{bId}
        insert into s_community(community_id,b_id,name,address,city_code,nearby_landmarks,map_x,map_y,status_cd,state,community_area)
        values(#{community_id},#{b_id},#{name},#{address},#{city_code},#{nearby_landmarks},#{map_x},#{map_y},'0',#{state},#{communityArea})
    </insert>
    <!-- 保存小区属性信息到 instance add by wuxw 2018-07-03 -->
@@ -85,6 +86,9 @@
        select sa.b_id,sa.attr_id,sa.community_id,sa.spec_cd,sa.value,'0'
        from business_community_attr sa
        where sa.operate = 'ADD' and sa.b_id=#{bId}
        <if test="communityId != null and communityId != ''">
            and sa.community_id = #{communityId}
        </if>
    </insert>
    
    <!-- 保存 小区照片信息 instance add by wuxw 2018-07-03 -->
@@ -93,12 +97,15 @@
        select sp.community_photo_id,sp.b_id,sp.community_id,sp.community_photo_type_cd,sp.photo,'0'
        from business_community_photo sp
        where  sp.operate = 'ADD' and sp.b_id=#{bId}
        <if test="communityId != null and communityId != ''">
            and sp.community_id = #{communityId}
        </if>
    </insert>
    <!-- 查询小区信息 add by wuxw 2018-07-03 -->
    <select id="getCommunityInfo" parameterType="Map" resultType="Map">
        select s.community_id,s.b_id,s.name,s.address,s.city_code,s.nearby_landmarks,s.map_x,s.map_y,s.status_cd
        select s.community_id,s.b_id,s.name,s.address,s.city_code,s.nearby_landmarks,s.map_x,s.map_y,s.status_cd,s.state
        from s_community s
        where 1=1
        <if test="statusCd != null and statusCd != ''">
@@ -115,8 +122,14 @@
    <!-- 查询小区属性信息 add by wuxw 2018-07-03 -->
    <select id="getCommunityAttrs" parameterType="Map" resultType="Map">
        select sa.b_id,sa.attr_id,sa.community_id,sa.spec_cd,sa.value,sa.status_cd
        select sa.b_id,sa.attr_id,sa.community_id,sa.spec_cd,sa.value,sa.status_cd,
        sa.b_id bId,sa.attr_id attrId,sa.community_id communityId,sa.spec_cd specCd,
        s.spec_name specName,
        v.value_name valueName,
        s.list_show listShow
        from s_community_attr sa
        left join attr_spec s on sa.spec_cd = s.spec_cd and s.status_cd = '0' and s.table_name = 'building_community_attr'
        left join attr_value v on sa.`value` = v.`value` and sa.spec_cd = v.spec_cd and v.status_cd = '0'
        where
        1=1
        <if test="statusCd != null and statusCd != ''">
@@ -128,6 +141,13 @@
        <if test="communityId != null and communityId !=''">
            and sa.community_id = #{communityId}
        </if>
        <if test="communityIds != null ">
            and sa.community_id in
            <foreach collection="communityIds" item="item" index="index" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="attrId != null and attrId != ''">
            and sa.attr_id = #{attrId}
        </if>
@@ -176,6 +196,13 @@
        <if test="mapY != null and mapY != ''">
            ,s.map_y = #{mapY}
        </if>
        <if test="state != null and state != ''">
            ,s.state = #{state}
        </if>
        <if test="communityArea != null and communityArea != ''">
            ,s.community_area = #{communityArea}
        </if>
        where 1=1
        <if test="bId != null and bId !=''">
            and s.b_id = #{bId}
@@ -247,6 +274,9 @@
        select ms.community_member_id,ms.b_id,ms.community_id,ms.member_id,ms.member_type_cd,'0',ms.audit_status_cd
        from business_community_member ms where
        ms.operate = 'ADD' and ms.b_id=#{bId}
        <if test="communityId != null and communityId != ''">
            and ms.community_id = #{communityId}
        </if>
    </insert>
    <!-- 查询小区成员 add by wuxw 2018-10-27 getBusinessCommunityMember-->
@@ -267,11 +297,31 @@
    <!-- 查询小区成员  add by wuxw 2018-07-03 -->
    <select id="getCommunityMember" parameterType="Map" resultType="Map">
        select ms.community_member_id ,ms.b_id,ms.community_id,ms.member_id,ms.member_type_cd,ms.status_cd,ms.audit_status_cd,
        select ms.community_member_id , ms.b_id,ms.community_id,ms.member_id,ms.member_type_cd,ms.status_cd,ms.audit_status_cd,
        ms.community_member_id communityMemberId ,ms.b_id bId,ms.community_id communityId,ms.member_id memberId,ms.member_type_cd memberTypeCd,ms.status_cd statusCd,
        ms.audit_status_cd auditStatusCd
        ms.audit_status_cd auditStatusCd,
        (CASE
        WHEN ms.audit_status_cd='1000'
        THEN '待审核'
        WHEN ms.audit_status_cd = '1100'
        THEN '审核完成'
        ELSE
        '审核拒绝'
        END) stateName
        <if test="needCommunityInfo == true">
            ,sc.name
        </if>
        from s_community_member ms
        <if test="needCommunityInfo == true">
            ,s_community sc,
            s_community_member msc
        </if>
        where 1=1
        <if test="needCommunityInfo == true">
            and sc.`community_id` = ms.`community_id`
            AND sc.`status_cd` = '0'
            and sc.state='1100'
        </if>
        <if test="statusCd != null and statusCd != ''">
            and ms.status_cd = #{statusCd}
        </if>
@@ -282,8 +332,19 @@
        <if test="communityMemberId != null and communityMemberId !=''">
            and ms.community_member_id = #{communityMemberId}
        </if>
        <if test="memberId != null and memberId != ''">
        <if test="memberId != null and memberId != '' and needCommunityInfo == true">
            AND ms.`community_id` = msc.`community_id`
            and msc.member_id = #{memberId}
            and msc.status_cd = '0'
        </if>
        <if test="memberId != null and memberId != '' and needCommunityInfo == false">
            and ms.member_id = #{memberId}
        </if>
        <if test="subMemberId != null and subMemberId != ''">
            and ms.member_id = #{subMemberId}
        </if>
        <if test="noAuditEnterCommunity == true">
            and ms.member_type_cd not in ('390001200003','390001200005','390001200000')
        </if>
        <if test="memberTypeCd != null and memberTypeCd != ''">
            and ms.member_type_cd = #{memberTypeCd}
@@ -294,6 +355,16 @@
        <if test="communityId != null and communityId != ''">
            and ms.community_id = #{communityId}
        </if>
        <if test="communityName != null and communityName != '' and needCommunityInfo == true">
            and sc.name like concat('%',#{communityName},'%')
        </if>
        <if test="needCommunityInfo == true">
            group by ms.community_id
        </if>
        order by ms.create_time desc
        <if test="page != -1 and page != null">
            limit #{page},#{row}
        </if>
    </select>
@@ -318,9 +389,18 @@
    <!-- 查询小区成员  add by wuxw 2018-07-03 -->
    <select id="getCommunityMemberCount" parameterType="Map" resultType="Map">
        select count(1) count
        select ms.community_id,count(1) count
        from s_community_member ms
        <if test="needCommunityInfo == true">
            ,s_community sc,
            s_community_member msc
        </if>
        where 1=1
        <if test="needCommunityInfo == true">
            and sc.`community_id` = ms.`community_id`
            AND sc.`status_cd` = '0'
            and sc.state='1100'
        </if>
        <if test="statusCd != null and statusCd != ''">
            and ms.status_cd = #{statusCd}
        </if>
@@ -331,9 +411,23 @@
        <if test="communityMemberId != null and communityMemberId !=''">
            and ms.community_member_id = #{communityMemberId}
        </if>
        <if test="memberId != null and memberId != ''">
        <if test="memberId != null and memberId != '' and needCommunityInfo == true">
            AND ms.`community_id` = msc.`community_id`
            and msc.member_id = #{memberId}
            and msc.status_cd = '0'
        </if>
        <if test="memberId != null and memberId != '' and needCommunityInfo == false">
            and ms.member_id = #{memberId}
        </if>
        <if test="subMemberId != null and subMemberId != ''">
            and ms.member_id = #{subMemberId}
        </if>
        <if test="noAuditEnterCommunity == true">
            and ms.member_type_cd not in ('390001200003','390001200005','390001200000')
        </if>
        <if test="memberTypeCd != null and memberTypeCd != ''">
            and ms.member_type_cd = #{memberTypeCd}
        </if>
@@ -341,9 +435,166 @@
            and ms.audit_status_cd = #{auditStatusCd}
        </if>
        <if test="auditStatusCds != null and auditStatusCds != null">
            and ms.audit_status_cd in
            <foreach collection="auditStatusCds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="communityId != null and communityId != ''">
            and ms.community_id = #{communityId}
        </if>
        <if test="communityName != null and communityName != '' and needCommunityInfo == true">
            and sc.name like concat('%',#{communityName},'%')
        </if>
        <if test="needCommunityInfo == true">
            group by ms.community_id
        </if>
    </select>
    <!-- 查询小区信息 add by wuxw 2018-07-03 -->
    <select id="getCommunityInfoNew" parameterType="Map" resultType="Map">
        select  t.address,t.nearby_landmarks,t.nearby_landmarks nearbyLandmarks,
        t.city_code,t.city_code cityCode,t.name,t.status_cd,t.status_cd statusCd,
        t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.map_y,t.map_y mapY,
        t.map_x,t.map_x mapX,t.state,(CASE
        WHEN t.state='1000'
        THEN '待审核'
        WHEN t.state = '1100'
        THEN '审核完成'
        ELSE
        '审核拒绝'
        END) stateName,ca.area_code areaCode,ca.area_name areaName,
        ca.parent_area_code parentAreaCode,ca.parent_area_name parentAreaName,
        t.community_area communityArea
        from s_community t,city_area ca
        <if test="memberId !=null and memberId !=''">
            ,s_community_member cm
        </if>
        where 1 =1
        and t.city_code = ca.area_code
        and ca.status_cd = '0'
        <if test="address !=null and address != ''">
            and t.address= #{address}
        </if>
        <if test="nearbyLandmarks !=null and nearbyLandmarks != ''">
            and t.nearby_landmarks= #{nearbyLandmarks}
        </if>
        <if test="cityCode !=null and cityCode != ''">
            and t.city_code= #{cityCode}
        </if>
        <if test="name !=null and name != ''">
            and t.name like concat('%',#{name},'%')
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="communityIds !=null">
            and t.community_id in
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="mapY !=null and mapY != ''">
            and t.map_y= #{mapY}
        </if>
        <if test="mapX !=null and mapX != ''">
            and t.map_x= #{mapX}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="memberId !=null and memberId !=''">
            and cm.community_id = t.community_id
            and cm.member_id = #{memberId}
            and cm.status_cd = '0'
        </if>
        <if test="memberId !=null and memberId !='' and auditStatusCd != null and auditStatusCd !=''">
            and cm.audit_status_cd = #{auditStatusCd}
        </if>
        <if test="notInCommunityId != null ">
            and t.community_id not in
            <foreach collection="notInCommunityId" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        group by t.community_id
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>
    </select>
    <!-- 查询小区数量 add by wuxw 2018-07-03 -->
    <select id="queryCommunitysCount" parameterType="Map" resultType="Map">
        select  count(DISTINCT(t.community_id)) count
        from s_community t,city_area ca
        <if test="memberId !=null and memberId !=''">
            ,s_community_member cm
        </if>
        where 1 =1
        and t.city_code = ca.area_code
        and ca.status_cd = '0'
        <if test="address !=null and address != ''">
            and t.address= #{address}
        </if>
        <if test="nearbyLandmarks !=null and nearbyLandmarks != ''">
            and t.nearby_landmarks= #{nearbyLandmarks}
        </if>
        <if test="cityCode !=null and cityCode != ''">
            and t.city_code= #{cityCode}
        </if>
        <if test="name !=null and name != ''">
            and t.name like concat('%',#{name},'%')
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="communityId !=null and communityId != ''">
            and t.community_id= #{communityId}
        </if>
        <if test="communityIds !=null">
            and t.community_id in
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        <if test="bId !=null and bId != ''">
            and t.b_id= #{bId}
        </if>
        <if test="mapY !=null and mapY != ''">
            and t.map_y= #{mapY}
        </if>
        <if test="mapX !=null and mapX != ''">
            and t.map_x= #{mapX}
        </if>
        <if test="state !=null and state != ''">
            and t.state= #{state}
        </if>
        <if test="memberId !=null and memberId !=''">
            and cm.community_id = t.community_id
            and cm.member_id = #{memberId}
            and cm.status_cd = '0'
        </if>
        <if test="memberId !=null and memberId !='' and auditStatusCd != null and auditStatusCd !=''">
            and cm.audit_status_cd = #{auditStatusCd}
        </if>
        <if test="notInCommunityId != null ">
            and t.community_id not in
            <foreach collection="notInCommunityId" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
    </select>
</mapper>