512 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			XML
		
	
	
	
			
		
		
	
	
			512 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			XML
		
	
	
	
<?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.hzs.sale.deliver.mapper.SaDeliverItemsMapper">
 | 
						||
 | 
						||
    <!-- 通用查询映射结果 -->
 | 
						||
    <resultMap id="BaseResultMap" type="com.hzs.common.domain.sale.deliver.SaDeliverItems">
 | 
						||
        <id column="PK_ID" property="pkId"/>
 | 
						||
        <result column="PK_DELIVER" property="pkDeliver"/>
 | 
						||
        <result column="PK_ORDER" property="pkOrder"/>
 | 
						||
        <result column="PK_ORDER_ITEMS" property="pkOrderItems"/>
 | 
						||
        <result column="PK_PRODUCT" property="pkProduct"/>
 | 
						||
        <result column="PK_STOREHOUSE" property="pkStorehouse"/>
 | 
						||
        <result column="QUANTITY" property="quantity"/>
 | 
						||
        <result column="DEL_FLAG" property="delFlag"/>
 | 
						||
        <result column="PK_CREATOR" property="pkCreator"/>
 | 
						||
        <result column="CREATION_TIME" property="creationTime"/>
 | 
						||
        <result column="PK_MODIFIED" property="pkModified"/>
 | 
						||
        <result column="MODIFIED_TIME" property="modifiedTime"/>
 | 
						||
        <result column="PK_COUNTRY" property="pkCountry"/>
 | 
						||
        <result column="PK_WARES_SPECS_SKU" property="pkWaresSpecsSku"/>
 | 
						||
        <result column="PK_WARES_DETAIL" property="pkWaresDetail"/>
 | 
						||
        <result column="EXCHANGE_GOODS" property="exchangeGoods"/>
 | 
						||
        <result column="SPECS_NAME" property="specsName"/>
 | 
						||
        <result column="SPECS_NAME_ID" property="specsNameId"/>
 | 
						||
    </resultMap>
 | 
						||
 | 
						||
    <!-- 发货条码数据映射 -->
 | 
						||
    <resultMap id="deliverBarCodeMap" type="com.hzs.sale.deliver.vo.DeliverBarCodeVO">
 | 
						||
        <result column="pk_id" property="pkId"/>
 | 
						||
        <result column="pk_deliver" property="pkDeliver"/>
 | 
						||
        <result column="pk_order" property="pkOrder"/>
 | 
						||
        <result column="order_code" property="orderCode"/>
 | 
						||
        <result column="pk_product" property="pkProduct"/>
 | 
						||
        <result column="product_name" property="productName"/>
 | 
						||
        <result column="specs_name" property="specsName"/>
 | 
						||
        <result column="quantity" property="quantity"/>
 | 
						||
        <collection property="detailList" ofType="com.hzs.sale.deliver.vo.DeliverBarCodeDetailVO">
 | 
						||
            <result column="deliver_bar_code_id" property="deliverBarCodeId"/>
 | 
						||
            <result column="bar_code" property="barCode"/>
 | 
						||
        </collection>
 | 
						||
    </resultMap>
 | 
						||
 | 
						||
 | 
						||
    <!-- 已合并发货单列表 -->
 | 
						||
    <select id="queryDeliverHandledList" resultType="com.hzs.sale.deliver.vo.DeliverHandledVO">
 | 
						||
        <if test="param.pkDeliverList != null and param.pkDeliverList.size > 0">
 | 
						||
            <foreach collection="param.pkDeliverList" item="item" index="index" separator=" UNION ALL ">
 | 
						||
                <if test="index % 500 == 0">
 | 
						||
                    select sdi.pk_id,
 | 
						||
                    sdi.pk_deliver,
 | 
						||
                    sdi.pk_order,
 | 
						||
                    sd.deliver_code,
 | 
						||
                    bp.cover,
 | 
						||
                    bp.product_code,
 | 
						||
                    bp.product_name,
 | 
						||
                    bp.shipping_channel,
 | 
						||
                    bp.wms_code,,
 | 
						||
                    sdi.SPECS_NAME,
 | 
						||
                    sdi.quantity,
 | 
						||
                    soi.order_status,
 | 
						||
                    so.order_code,
 | 
						||
                    so.order_type,
 | 
						||
                    cm.member_code,
 | 
						||
                    cm.member_name,
 | 
						||
                    cm.phone,
 | 
						||
                    sd.rec_name,
 | 
						||
                    sd.rec_phone,
 | 
						||
                    sd.rec_province,
 | 
						||
                    sd.rec_city,
 | 
						||
                    sd.rec_county,
 | 
						||
                    sd.rec_address,
 | 
						||
                    so.delivery_way,
 | 
						||
                    bwe.operate_scope,
 | 
						||
                    so.tran_type,
 | 
						||
                    bwe.pre_sale_status,
 | 
						||
                    sd.print_status,
 | 
						||
                    sd.logistics_company,
 | 
						||
                    sd.logistics_code,
 | 
						||
                    so.remark,
 | 
						||
                    sd.creation_time,
 | 
						||
                    so.pay_time,
 | 
						||
                    bu.name unit_name,
 | 
						||
                    bs.name storehouseName,
 | 
						||
                    so.system_type,
 | 
						||
                    sd.day_batch,
 | 
						||
                    sd.batch_number,
 | 
						||
                    bv.vertex_name
 | 
						||
                    from SA_DELIVER sd
 | 
						||
                    left join SA_DELIVER_ITEMS sdi on sdi.pk_deliver = sd.pk_id
 | 
						||
                    inner join SA_ORDER so on so.pk_id = sdi.pk_order and so.del_flag = 0
 | 
						||
                    inner join SA_ORDER_ITEMS soi on soi.pk_order = sdi.pk_order and soi.pk_id = sdi.pk_order_items
 | 
						||
                    inner join BD_PRODUCT bp on bp.pk_id = soi.pk_product
 | 
						||
                    left join BD_WARES_EXTEND bwe on bwe.pk_wares = soi.pk_wares
 | 
						||
                    left join bd_unit bu on bu.pk_id = bp.unit
 | 
						||
                    inner join cu_member cm on cm.pk_id = so.pk_member
 | 
						||
                    left join bd_storehouse bs on bs.pk_id = so.pk_storehouse
 | 
						||
                    left join bd_vertex bv on bv.pk_id = cm.pk_vertex
 | 
						||
                    where sd.del_flag = 0
 | 
						||
                    and sd.pk_country = #{pkCountry}
 | 
						||
                    and sdi.del_flag = 0
 | 
						||
                    and sd.pk_id in
 | 
						||
                    <foreach collection="param.pkDeliverList" item="subItem" index="subItem_index" open="(" close=")" separator=",">
 | 
						||
                        <if test="subItem_index gte index and subItem_index lt index + 500">
 | 
						||
                            #{subItem}
 | 
						||
                        </if>
 | 
						||
                    </foreach>
 | 
						||
                    <if test="param.systemAll == null or param.systemAll == 1">
 | 
						||
                        <if test="param.systemType != null">
 | 
						||
                            and so.SYSTEM_TYPE = #{param.systemType}
 | 
						||
                        </if>
 | 
						||
                    </if>
 | 
						||
                    <if test="param.dayBatch != null">
 | 
						||
                        and sd.DAY_BATCH = #{param.dayBatch}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.pkDeliver != null">
 | 
						||
                        and sd.pk_id = #{param.pkDeliver}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.pkStorehouse != null ">
 | 
						||
                        and bs.pk_id = #{param.pkStorehouse}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.pkDeliverItems != null">
 | 
						||
                        and sdi.pk_id = #{param.pkDeliverItems}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.deliverCode != null and param.deliverCode != ''">
 | 
						||
                        and sd.deliver_code like '%' || #{param.deliverCode} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.orderCode != null and param.orderCode != ''">
 | 
						||
                        and so.order_code like '%' || #{param.orderCode} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.memberCode != null and param.memberCode != ''">
 | 
						||
                        and cm.member_code like #{param.memberCode} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.memberName != null and param.memberName != ''">
 | 
						||
                        and cm.member_name like #{param.memberName} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.phone != null and param.phone != ''">
 | 
						||
                        and cm.phone like #{param.phone} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.orderType != null ">
 | 
						||
                        and so.order_type = #{param.orderType}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.orderStatus != null ">
 | 
						||
                        and soi.order_status = #{param.orderStatus}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.preSaleStatus != null ">
 | 
						||
                        and bwe.pre_sale_status = #{param.preSaleStatus}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.deliveryWay != null ">
 | 
						||
                        and so.delivery_way = #{param.deliveryWay}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.transportType != null">
 | 
						||
                        and so.tran_type = #{param.transportType}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.operateScope != null ">
 | 
						||
                        and bwe.operate_scope = #{param.operateScope}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.printStatus != null ">
 | 
						||
                        and sd.print_status = #{param.printStatus}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recName != null and param.recName != '' ">
 | 
						||
                        and so.rec_name like '%' || #{param.recName} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recPhone != null and param.recPhone != '' ">
 | 
						||
                        and so.rec_phone like '%' || #{param.recPhone} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recProvince != null ">
 | 
						||
                        and so.rec_province = #{param.recProvince}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recCity != null ">
 | 
						||
                        and so.rec_city = #{param.recCity}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recCounty != null ">
 | 
						||
                        and so.rec_county = #{param.recCounty}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.recAddress != null and param.recAddress != '' ">
 | 
						||
                        and so.rec_address like #{param.recAddress} || '%'
 | 
						||
                    </if>
 | 
						||
                    <if test="param.creationTime != null">
 | 
						||
                        and sd.creation_time >= #{param.creationTime[0]}
 | 
						||
                        and #{param.creationTime[1]} >= sd.creation_time
 | 
						||
                    </if>
 | 
						||
                    <if test="param.payTime != null">
 | 
						||
                        and so.pay_time >= #{param.payTime[0]}
 | 
						||
                        and #{param.payTime[1]} >= so.pay_time
 | 
						||
                    </if>
 | 
						||
                    <if test="param.shippingChannel != null">
 | 
						||
                        and bp.shipping_channel = #{param.shippingChannel}
 | 
						||
                    </if>
 | 
						||
                    <if test="param.productName != null and param.productName != ''">
 | 
						||
                        and bp.product_name like '%' || #{param.productName} || '%'
 | 
						||
                    </if>
 | 
						||
                    <!-- 地区权限处理 -->
 | 
						||
                    <if test="param.areaScopeList != null and param.areaScopeList.size > 0">
 | 
						||
                        and so.rec_province in
 | 
						||
                        <foreach collection="param.areaScopeList" item="item" open="(" close=")" separator=",">
 | 
						||
                            #{item}
 | 
						||
                        </foreach>
 | 
						||
                    </if>
 | 
						||
                    <!-- 体系权限处理 -->
 | 
						||
                    <if test="param.vertexIdList != null and param.vertexIdList.size > 0">
 | 
						||
                        and cm.pk_vertex in
 | 
						||
                        <foreach collection="param.vertexIdList" item="item" open="(" close=")" separator=",">
 | 
						||
                            #{item}
 | 
						||
                        </foreach>
 | 
						||
                    </if>
 | 
						||
                    <if test="param.pkVertex != null">
 | 
						||
                        and cm.pk_vertex = #{param.pkVertex}
 | 
						||
                    </if>
 | 
						||
                </if>
 | 
						||
            </foreach>
 | 
						||
            order by creation_time desc, batch_number, deliver_code desc, order_code desc
 | 
						||
        </if>
 | 
						||
        <if test="param.pkDeliverList == null or param.pkDeliverList.size == 0">
 | 
						||
            <!-- 原始查询逻辑 -->
 | 
						||
            select sdi.pk_id,
 | 
						||
            sdi.pk_deliver,
 | 
						||
            sdi.pk_order,
 | 
						||
            sd.deliver_code,
 | 
						||
            bp.cover,
 | 
						||
            bp.product_code,
 | 
						||
            bp.product_name,
 | 
						||
            bp.shipping_channel,
 | 
						||
            bp.wms_code,
 | 
						||
            sdi.SPECS_NAME,
 | 
						||
            sdi.quantity,
 | 
						||
            soi.order_status,
 | 
						||
            so.order_code,
 | 
						||
            so.order_type,
 | 
						||
            cm.member_code,
 | 
						||
            cm.member_name,
 | 
						||
            cm.phone,
 | 
						||
            sd.rec_name,
 | 
						||
            sd.rec_phone,
 | 
						||
            sd.rec_province,
 | 
						||
            sd.rec_city,
 | 
						||
            sd.rec_county,
 | 
						||
            sd.rec_address,
 | 
						||
            so.delivery_way,
 | 
						||
            bwe.operate_scope,
 | 
						||
            so.tran_type,
 | 
						||
            bwe.pre_sale_status,
 | 
						||
            sd.print_status,
 | 
						||
            sd.logistics_company,
 | 
						||
            sd.logistics_code,
 | 
						||
            so.remark,
 | 
						||
            sd.creation_time,
 | 
						||
            so.pay_time,
 | 
						||
            bu.name unit_name,
 | 
						||
            bs.name storehouseName,
 | 
						||
            so.system_type,
 | 
						||
            sd.day_batch,
 | 
						||
            sd.batch_number,
 | 
						||
            bv.vertex_name
 | 
						||
            from SA_DELIVER sd
 | 
						||
            left join SA_DELIVER_ITEMS sdi
 | 
						||
            on sdi.pk_deliver = sd.pk_id
 | 
						||
            inner join SA_ORDER so
 | 
						||
            on so.pk_id = sdi.pk_order
 | 
						||
            and so.del_flag = 0
 | 
						||
            inner join SA_ORDER_ITEMS soi
 | 
						||
            on soi.pk_order = sdi.pk_order
 | 
						||
            and soi.pk_id = sdi.pk_order_items
 | 
						||
            inner join BD_PRODUCT bp
 | 
						||
            on bp.pk_id = soi.pk_product
 | 
						||
            left join BD_WARES_EXTEND bwe
 | 
						||
            on bwe.pk_wares = soi.pk_wares
 | 
						||
            left join bd_unit bu
 | 
						||
            on bu.pk_id = bp.unit
 | 
						||
            inner join cu_member cm
 | 
						||
            on cm.pk_id = so.pk_member
 | 
						||
            left join bd_storehouse bs
 | 
						||
            on bs.pk_id = so.pk_storehouse
 | 
						||
            left join bd_vertex bv
 | 
						||
            on bv.pk_id = cm.pk_vertex
 | 
						||
            where sd.del_flag = 0
 | 
						||
            and sd.pk_country = #{pkCountry}
 | 
						||
            and sdi.del_flag = 0
 | 
						||
            <if test="param.systemAll == null or param.systemAll == 1">
 | 
						||
                <if test="param.systemType != null">
 | 
						||
                    and so.SYSTEM_TYPE = #{param.systemType}
 | 
						||
                </if>
 | 
						||
            </if>
 | 
						||
            <if test="param.dayBatch != null">
 | 
						||
                and sd.DAY_BATCH = #{param.dayBatch}
 | 
						||
            </if>
 | 
						||
            <if test="param.pkDeliver != null">
 | 
						||
                and sd.pk_id = #{param.pkDeliver}
 | 
						||
            </if>
 | 
						||
            <if test="param.pkStorehouse != null ">
 | 
						||
                and bs.pk_id = #{param.pkStorehouse}
 | 
						||
            </if>
 | 
						||
            <if test="param.pkDeliverItems != null">
 | 
						||
                and sdi.pk_id = #{param.pkDeliverItems}
 | 
						||
            </if>
 | 
						||
            <if test="param.deliverCode != null and param.deliverCode != ''">
 | 
						||
                and sd.deliver_code like '%' || #{param.deliverCode} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.orderCode != null and param.orderCode != ''">
 | 
						||
                and so.order_code like '%' || #{param.orderCode} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.memberCode != null and param.memberCode != ''">
 | 
						||
                and cm.member_code like #{param.memberCode} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.memberName != null and param.memberName != ''">
 | 
						||
                and cm.member_name like #{param.memberName} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.phone != null and param.phone != ''">
 | 
						||
                and cm.phone like #{param.phone} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.orderType != null ">
 | 
						||
                and so.order_type = #{param.orderType}
 | 
						||
            </if>
 | 
						||
            <if test="param.orderStatus != null ">
 | 
						||
                and soi.order_status = #{param.orderStatus}
 | 
						||
            </if>
 | 
						||
            <if test="param.preSaleStatus != null ">
 | 
						||
                and bwe.pre_sale_status = #{param.preSaleStatus}
 | 
						||
            </if>
 | 
						||
            <if test="param.deliveryWay != null ">
 | 
						||
                and so.delivery_way = #{param.deliveryWay}
 | 
						||
            </if>
 | 
						||
            <if test="param.transportType != null">
 | 
						||
                and so.tran_type = #{param.transportType}
 | 
						||
            </if>
 | 
						||
            <if test="param.operateScope != null ">
 | 
						||
                and bwe.operate_scope = #{param.operateScope}
 | 
						||
            </if>
 | 
						||
            <if test="param.printStatus != null ">
 | 
						||
                and sd.print_status = #{param.printStatus}
 | 
						||
            </if>
 | 
						||
            <if test="param.recName != null and param.recName != '' ">
 | 
						||
                and so.rec_name like '%' || #{param.recName} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.recPhone != null and param.recPhone != '' ">
 | 
						||
                and so.rec_phone like '%' || #{param.recPhone} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.recProvince != null ">
 | 
						||
                and so.rec_province = #{param.recProvince}
 | 
						||
            </if>
 | 
						||
            <if test="param.recCity != null ">
 | 
						||
                and so.rec_city = #{param.recCity}
 | 
						||
            </if>
 | 
						||
            <if test="param.recCounty != null ">
 | 
						||
                and so.rec_county = #{param.recCounty}
 | 
						||
            </if>
 | 
						||
            <if test="param.recAddress != null and param.recAddress != '' ">
 | 
						||
                and so.rec_address like #{param.recAddress} || '%'
 | 
						||
            </if>
 | 
						||
            <if test="param.creationTime != null">
 | 
						||
                and sd.creation_time >= #{param.creationTime[0]}
 | 
						||
                and #{param.creationTime[1]} >= sd.creation_time
 | 
						||
            </if>
 | 
						||
            <if test="param.payTime != null">
 | 
						||
                and so.pay_time >= #{param.payTime[0]}
 | 
						||
                and #{param.payTime[1]} >= so.pay_time
 | 
						||
            </if>
 | 
						||
            <if test="param.shippingChannel != null">
 | 
						||
                and bp.shipping_channel = #{param.shippingChannel}
 | 
						||
            </if>
 | 
						||
            <if test="param.productName != null and param.productName != ''">
 | 
						||
                and bp.product_name like '%' || #{param.productName} || '%'
 | 
						||
            </if>
 | 
						||
            <!-- 地区权限处理 -->
 | 
						||
            <if test="param.areaScopeList != null and param.areaScopeList.size > 0">
 | 
						||
                and so.rec_province in
 | 
						||
                <foreach collection="param.areaScopeList" item="item" open="(" close=")" separator=",">
 | 
						||
                    #{item}
 | 
						||
                </foreach>
 | 
						||
            </if>
 | 
						||
            <!-- 体系权限处理 -->
 | 
						||
            <if test="param.vertexIdList != null and param.vertexIdList.size > 0">
 | 
						||
                and cm.pk_vertex in
 | 
						||
                <foreach collection="param.vertexIdList" item="item" open="(" close=")" separator=",">
 | 
						||
                    #{item}
 | 
						||
                </foreach>
 | 
						||
            </if>
 | 
						||
            <if test="param.pkVertex != null">
 | 
						||
                and cm.pk_vertex = #{param.pkVertex}
 | 
						||
            </if>
 | 
						||
            order by sd.creation_time desc, sd.batch_number, sd.deliver_code desc, so.order_code desc
 | 
						||
        </if>
 | 
						||
    </select>
 | 
						||
 | 
						||
    <!-- 批量插入 -->
 | 
						||
    <insert id="insertBatch">
 | 
						||
        MERGE INTO SA_DELIVER_ITEMS
 | 
						||
        USING (
 | 
						||
        <foreach collection="list" item="item" separator=" union ">
 | 
						||
            select
 | 
						||
            #{item.pkDeliver} pkDeliver,
 | 
						||
            #{item.pkOrder} pkOrder,
 | 
						||
            #{item.pkOrderItems} pkOrderItems,
 | 
						||
            #{item.pkProduct} pkProduct,
 | 
						||
            #{item.quantity} quantity,
 | 
						||
            #{item.pkWaresSpecsSku} pkWaresSpecsSku,
 | 
						||
            #{item.pkWaresDetail} pkWaresDetail,
 | 
						||
            #{item.pkCountry} pkCountry,
 | 
						||
            #{item.pkCreator} pkCreator,
 | 
						||
            #{item.creationTime} creationTime,
 | 
						||
            #{item.pkModified} pkModified,
 | 
						||
            #{item.modifiedTime} modifiedTime,
 | 
						||
            #{item.specsName, jdbcType=VARCHAR} specsName,
 | 
						||
            #{item.specsNameId, jdbcType=VARCHAR} specsNameId
 | 
						||
            from dual
 | 
						||
        </foreach>
 | 
						||
        ) tmp
 | 
						||
        ON (0 = 1)
 | 
						||
        WHEN NOT MATCHED THEN
 | 
						||
        insert (
 | 
						||
        PK_ID,
 | 
						||
        PK_DELIVER,
 | 
						||
        PK_ORDER,
 | 
						||
        PK_ORDER_ITEMS,
 | 
						||
        PK_PRODUCT,
 | 
						||
        QUANTITY,
 | 
						||
        PK_WARES_SPECS_SKU,
 | 
						||
        PK_WARES_DETAIL,
 | 
						||
        PK_COUNTRY,
 | 
						||
        PK_CREATOR,
 | 
						||
        CREATION_TIME,
 | 
						||
        PK_MODIFIED,
 | 
						||
        MODIFIED_TIME,
 | 
						||
        SPECS_NAME,
 | 
						||
        SPECS_NAME_ID)
 | 
						||
        values (
 | 
						||
        SA_DELIVER_ITEMS_SEQ.nextval,
 | 
						||
        tmp.pkDeliver,
 | 
						||
        tmp.pkOrder,
 | 
						||
        tmp.pkOrderItems,
 | 
						||
        tmp.pkProduct,
 | 
						||
        tmp.quantity,
 | 
						||
        tmp.pkWaresSpecsSku,
 | 
						||
        tmp.pkWaresDetail,
 | 
						||
        tmp.pkCountry,
 | 
						||
        tmp.pkCreator,
 | 
						||
        tmp.creationTime,
 | 
						||
        tmp.pkModified,
 | 
						||
        tmp.modifiedTime,
 | 
						||
        tmp.specsName,
 | 
						||
        tmp.specsNameId)
 | 
						||
    </insert>
 | 
						||
 | 
						||
    <!-- 查询发货条码数据 -->
 | 
						||
    <select id="deliverCodeData" resultMap="deliverBarCodeMap">
 | 
						||
        select sdi.pk_id,
 | 
						||
        sdi.pk_deliver,
 | 
						||
        sdi.pk_order,
 | 
						||
        so.order_code,
 | 
						||
        sdi.pk_product,
 | 
						||
        bp.product_name,
 | 
						||
        sdi.specs_name,
 | 
						||
        sdi.quantity,
 | 
						||
        sdbc.pk_id deliver_bar_code_id,
 | 
						||
        sdbc.bar_code
 | 
						||
        from SA_DELIVER_ITEMS sdi
 | 
						||
        inner join SA_DELIVER sd
 | 
						||
        on sdi.pk_deliver = sd.pk_id
 | 
						||
        inner join SA_ORDER_ITEMS soi
 | 
						||
        on soi.pk_id = sdi.pk_order_items
 | 
						||
        inner join SA_ORDER so
 | 
						||
        on so.pk_id = sdi.pk_order
 | 
						||
        inner join BD_PRODUCT bp
 | 
						||
        on bp.pk_id = sdi.pk_product
 | 
						||
        left join SA_DELIVER_BAR_CODE sdbc
 | 
						||
        on sdbc.pk_deliver_items = sdi.pk_id
 | 
						||
        and sdbc.pk_product = sdi.pk_product
 | 
						||
        and sdbc.del_flag = 0
 | 
						||
        where sdi.pk_country = #{pkCountry}
 | 
						||
        and sdi.del_flag = 0
 | 
						||
        and sdi.pk_deliver in
 | 
						||
        <foreach collection="idList" item="item" open="(" close=")" separator=",">
 | 
						||
            #{item}
 | 
						||
        </foreach>
 | 
						||
        <if test="orderIdList != null and orderIdList.size > 0">
 | 
						||
            and sdi.pk_order in
 | 
						||
            <foreach collection="orderIdList" item="item" open="(" close=")" separator=",">
 | 
						||
                #{item}
 | 
						||
            </foreach>
 | 
						||
        </if>
 | 
						||
        <if test="bind != null and bind == 0">
 | 
						||
            and sdbc.pk_id is not null
 | 
						||
        </if>
 | 
						||
        order by sdi.creation_time desc, sd.deliver_code desc, so.order_code desc
 | 
						||
    </select>
 | 
						||
 | 
						||
    <!-- 根据订单ID或者订单明细ID列表,查询指定状态订单明细数据 -->
 | 
						||
    <select id="queryDeliverItemsByOrder" resultMap="BaseResultMap">
 | 
						||
        select sdi.*
 | 
						||
        from SA_DELIVER_ITEMS sdi
 | 
						||
        where (sdi.pk_order, sdi.pk_order_items) in
 | 
						||
        (select soi.pk_order, soi.pk_id
 | 
						||
        from sa_order_items soi
 | 
						||
        where soi.del_flag = 0
 | 
						||
        and soi.pk_country = #{pkCountry}
 | 
						||
        and soi.pk_order = #{pkOrder}
 | 
						||
        <if test="pkOrderItemList != null and pkOrderItemList.size > 0">
 | 
						||
            and soi.pk_id not in
 | 
						||
            <foreach collection="pkOrderItemList" item="item" open="(" close=")" separator=",">
 | 
						||
                #{item}
 | 
						||
            </foreach>
 | 
						||
        </if>
 | 
						||
        <if test="orderStatusList != null and orderStatusList.size > 0">
 | 
						||
            and soi.order_status in
 | 
						||
            <foreach collection="orderStatusList" item="item" open="(" close=")" separator=",">
 | 
						||
                #{item}
 | 
						||
            </foreach>
 | 
						||
        </if>
 | 
						||
        )
 | 
						||
    </select>
 | 
						||
 | 
						||
</mapper>
 |