| <?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.xzx.gc.system.mapper.SysStorageMapper">  | 
|     <insert id="addSysStorageApi" parameterType="com.xzx.gc.model.admin.SysStorageApiModel" useGeneratedKeys="true" keyProperty="id">  | 
|         insert into xzx_sys_storage (storage_name, storage_area, province, city, area, detail_address, create_time,longitude,latitude,partner_id)  | 
|         values (  | 
|             #{storageName}, #{storageArea}, #{province}, #{city}, #{area}, #{detailAddress}, #{createTime},#{longitude},#{latitude},#{partnerId}  | 
|         )  | 
|     </insert>  | 
|   | 
|   | 
|     <update id="updateSysStorageApi" parameterType="com.xzx.gc.model.admin.SysStorageApiModel">  | 
|         update `xzx_sys_storage` SET `storage_name` = #{storageName}, `storage_area` = #{storageArea},  | 
|             `province` = #{province}, `city` = #{city}, `area` = #{area}, `detail_address` = #{detailAddress},  | 
|             `create_time` = #{createTime} WHERE `id` = #{id}  | 
|     </update>  | 
|   | 
|   | 
|     <update id="delSysStorageApi" parameterType="com.xzx.gc.model.admin.SysStorageApiModel">  | 
|         update xzx_sys_storage set del_flag = 1 where `id` = #{id}  | 
|   | 
|     </update>  | 
|   | 
|     <select id="querySysStorageApiList" parameterType="com.xzx.gc.model.admin.SysStorageApiModel" resultType="com.xzx.gc.model.admin.SysStorageApiModel">  | 
|         select a.*,(select c.partner_name from xzx_city_partner c where c.id=a.partner_id) as partnerName,  | 
|         (select b.level_3_name from xzx_sys_address_level_info b where b.level_3_id=a.area) as areaName from  | 
|         xzx_sys_storage a where a.del_flag = 0  | 
|         <if test="area != null and area != ''">  | 
|             AND a.area=#{area}  | 
|         </if>  | 
|         <if test="startTime!= null and startTime!=''">  | 
|             AND a.create_time<![CDATA[>= ]]>#{startTime}  | 
|         </if>  | 
|         <if test="endTime!= null and endTime!=''">  | 
|             AND a.create_time<![CDATA[<= ]]>#{endTime}  | 
|         </if>  | 
|         <if test="townIds!= null">  | 
|             AND a.area in  | 
|             <foreach collection="townIds" index="index" item="tid" open="(" separator="," close=")">  | 
|                 #{tid}  | 
|             </foreach>  | 
|         </if>  | 
|         <if test="partnerId!= null  and partnerId != ''">  | 
|             AND a.partner_id=#{partnerId}  | 
|         </if>  | 
|     </select>  | 
|   | 
|     <select id="queryAllStorage" resultType="map">  | 
|         select  | 
|         a.id           as id,  | 
|         a.storage_name as storageName  | 
|         from xzx_sys_storage a where 1=1  | 
|         <if test="partnerIds != null and partnerIds.size() != 0">  | 
|             AND partner_id in  | 
|             <foreach collection="partnerIds" index="index" item="id" separator="," open="(" close=")">  | 
|                 #{id}  | 
|             </foreach>  | 
|         </if>  | 
|         and a.del_flag = 0  | 
|     </select>  | 
|   | 
|     <select id="querySysStrangeList" parameterType="java.util.List" resultType="java.util.HashMap">  | 
|         select id as id ,storage_name as storageName,storage_area as storageArea,area as area ,create_time as createTime  | 
|         from xzx_sys_storage where del_flag=0  | 
|         <if test="townIds != null">  | 
|             and area in  | 
|             <foreach collection="townIds" index="index" item="id" open="(" separator="," close=")">  | 
|                 #{id}  | 
|             </foreach>  | 
|         </if>  | 
|     </select>  | 
|   | 
|     <select id="querySysStorageList" resultType="java.util.Map">  | 
|         select (select c.level_3_name from xzx_sys_address_level_info c where a.area=c.level_3_id) as areaName,  | 
|         a.storage_name as storageName,  | 
|         (select b.partner_name from xzx_city_partner b where b.id=a.partner_id) as partnerName,  | 
|         a.id as id,  | 
|         a.del_flag as delFlag  | 
|         from xzx_sys_storage a  | 
|         where a.del_flag=0  | 
|         <if test=" area != null and area!=''">  | 
|             AND a.area =#{area}  | 
|         </if>  | 
|         <if test=" partnerId != null and partnerId!=''">  | 
|             AND a.partner_id =#{partnerId}  | 
|         </if>  | 
|         <if test="townIds != null and townIds.size() != 0">  | 
|             AND a.area in  | 
|             <foreach collection="townIds" index="index" item="id" open="(" separator="," close=")">  | 
|                 #{id}  | 
|             </foreach>  | 
|         </if>  | 
|     </select>  | 
|   | 
|     <select id="querySysStorageAll" resultType="java.util.HashMap">  | 
|         select  | 
|         IFNULL(sum(a.storage_weight),0) as storageWeight,  | 
|         IFNULL(sum(a.storage_money),0) as storageMoney,  | 
|         IFNULL(sum(a.recycle_weight),0) as recycleWeight,  | 
|         IFNULL(sum(a.recycle_money),0) as recycleMoney  | 
|         from xzx_order_storage_info a  | 
|         left join xzx_user_other_info b on a.receiver = b.user_id  | 
|         where a.storage_status=0  | 
|         <if test=" sysStorageId != null and sysStorageId != ''">  | 
|             AND a.sys_storage_id =#{sysStorageId}  | 
|         </if>  | 
|         <if test="startTime != null and startTime != ''">  | 
|             AND a.storage_time <![CDATA[>= ]]>#{startTime}  | 
|         </if>  | 
|         <if test="endTime != null and endTime != ''">  | 
|             AND a.storage_time<![CDATA[<= ]]>#{endTime}  | 
|         </if>  | 
|         <if test=" partnerIds != null and partnerIds.size() != 0">  | 
|             AND b.partner_id in  | 
|             <foreach collection="partnerIds" index="index" item="id" open="(" separator="," close=")">  | 
|                 #{id}  | 
|             </foreach>  | 
|         </if>  | 
|     </select>  | 
|   | 
| </mapper>  |