294 lines
12 KiB
XML
294 lines
12 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.mhd.wms.domain.reviewOrder.repository.mapper.ReviewOrderMapper">
|
|
|
|
<resultMap type="com.mhd.wms.domain.reviewOrder.repository.po.ReviewOrderPO" id="ReviewOrderResult">
|
|
<id property="reviewOrderId" column="review_order_id"/>
|
|
<result property="reviewOrderNumber" column="review_order_number"/>
|
|
<result property="outOrderId" column="out_order_id"/>
|
|
<result property="outOrderNumber" column="out_order_number"/>
|
|
<result property="organizationId" column="organization_id"/>
|
|
<result property="organizationName" column="organization_name"/>
|
|
<result property="topOrganizationId" column="top_organization_id"/>
|
|
<result property="reviewStatus" column="review_status"/>
|
|
<result property="issuedFlag" column="issued_flag"/>
|
|
<result property="issuedTime" column="issued_time"/>
|
|
<result property="warehouseId" column="warehouse_id"/>
|
|
<result property="warehouseCode" column="warehouse_code"/>
|
|
<result property="warehouseName" column="warehouse_name"/>
|
|
<result property="customerId" column="customer_id"/>
|
|
<result property="customerCode" column="customer_code"/>
|
|
<result property="customerName" column="customer_name"/>
|
|
<result property="shipperId" column="shipper_id"/>
|
|
<result property="shipperCode" column="shipper_code"/>
|
|
<result property="shipperName" column="shipper_name"/>
|
|
<result property="receiveTime" column="receive_time"/>
|
|
<result property="remark" column="remark"/>
|
|
<result property="createBy" column="create_by"/>
|
|
<result property="createByName" column="create_by_name"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="updateBy" column="update_by"/>
|
|
<result property="updateByName" column="update_by_name"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
<result property="delFlag" column="del_flag"/>
|
|
<result property="materialKindCount" column="material_kind_count"/>
|
|
<result property="totalPlanQty" column="total_plan_qty"/>
|
|
<result property="totalReviewedQty" column="total_reviewed_qty"/>
|
|
</resultMap>
|
|
|
|
<resultMap type="com.mhd.wms.domain.reviewOrder.repository.po.ReviewMaterialDetailPO" id="ReviewMaterialDetailResult">
|
|
<result property="reviewMaterialDetailId" column="review_material_detail_id"/>
|
|
<result property="reviewOrderId" column="review_order_id"/>
|
|
<result property="reviewOrderNumber" column="review_order_number"/>
|
|
<result property="outOrderNumber" column="out_order_number"/>
|
|
<result property="outUniqueId" column="out_unique_id"/>
|
|
<result property="materialDetailId" column="material_detail_id"/>
|
|
<result property="materialBaseInfoId" column="material_base_info_id"/>
|
|
<result property="materialCode" column="material_code"/>
|
|
<result property="materialName" column="material_name"/>
|
|
<result property="barCode" column="bar_code"/>
|
|
<result property="size" column="SIZE"/>
|
|
<result property="unitCode" column="unit_code"/>
|
|
<result property="unitName" column="unit_name"/>
|
|
<result property="pendingReviewQty" column="pending_review_qty"/>
|
|
<result property="reviewedQty" column="reviewed_qty"/>
|
|
<result property="cancelQty" column="cancel_qty"/>
|
|
<result property="materialPlanQty" column="material_plan_qty"/>
|
|
<result property="receiptOrderNumber" column="receipt_order_number"/>
|
|
<result property="lotNo" column="lot_no"/>
|
|
<result property="batchNumber" column="batch_number"/>
|
|
<result property="productionDate" column="production_date"/>
|
|
<result property="expiryDate" column="expiry_date"/>
|
|
<result property="inventoryDate" column="inventory_date"/>
|
|
<result property="batchRefNo" column="batch_ref_no"/>
|
|
<result property="sheetRefNo" column="sheet_ref_no"/>
|
|
<result property="boxPalletNo" column="box_pallet_no"/>
|
|
<result property="extAttr1" column="ext_attr_1"/>
|
|
<result property="extAttr2" column="ext_attr_2"/>
|
|
<result property="extAttr3" column="ext_attr_3"/>
|
|
<result property="extAttr4" column="ext_attr_4"/>
|
|
<result property="reviewQtyEa" column="review_qty_ea"/>
|
|
<result property="netWeightKg" column="net_weight_kg"/>
|
|
<result property="grossWeightKg" column="gross_weight_kg"/>
|
|
<result property="volumeCbm" column="volume_cbm"/>
|
|
<result property="areaSqm" column="area_sqm"/>
|
|
<result property="remark" column="remark"/>
|
|
<result property="createBy" column="create_by"/>
|
|
<result property="createByName" column="create_by_name"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="updateBy" column="update_by"/>
|
|
<result property="updateByName" column="update_by_name"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
<result property="delFlag" column="del_flag"/>
|
|
</resultMap>
|
|
|
|
<sql id="reviewOrderSelectColumns">
|
|
a.review_order_id AS review_order_id,
|
|
a.review_order_number,
|
|
a.out_order_id,
|
|
a.out_order_number,
|
|
a.organization_id,
|
|
a.organization_name,
|
|
a.top_organization_id,
|
|
a.review_status,
|
|
a.issued_flag,
|
|
a.issued_time,
|
|
a.warehouse_id,
|
|
a.warehouse_code,
|
|
a.warehouse_name,
|
|
a.customer_id,
|
|
a.customer_code,
|
|
a.customer_name,
|
|
a.shipper_id,
|
|
a.shipper_code,
|
|
a.shipper_name,
|
|
a.receive_time,
|
|
a.remark,
|
|
a.create_by,
|
|
a.create_by_name,
|
|
a.create_time,
|
|
a.update_by,
|
|
a.update_by_name,
|
|
a.update_time,
|
|
a.del_flag
|
|
</sql>
|
|
|
|
<sql id="reviewOrderWhere">
|
|
<if test="reviewOrderId != null">
|
|
and a.review_order_id = #{reviewOrderId}
|
|
</if>
|
|
<if test="reviewOrderNumber != null and reviewOrderNumber != ''">
|
|
and a.review_order_number like concat('%', #{reviewOrderNumber}, '%')
|
|
</if>
|
|
<if test="outOrderNumber != null and outOrderNumber != ''">
|
|
and a.out_order_number like concat('%', #{outOrderNumber}, '%')
|
|
</if>
|
|
<if test="reviewStatus != null">
|
|
and a.review_status = #{reviewStatus}
|
|
</if>
|
|
<if test="ltReviewStatus != null">
|
|
and a.review_status < #{ltReviewStatus}
|
|
</if>
|
|
<if test="issuedFlag != null and issuedFlag != ''">
|
|
and a.issued_flag = #{issuedFlag}
|
|
</if>
|
|
<if test="organizationId != null">
|
|
and a.organization_id = #{organizationId}
|
|
</if>
|
|
<if test="topOrganizationId != null">
|
|
and a.top_organization_id = #{topOrganizationId}
|
|
</if>
|
|
<if test="warehouseId != null">
|
|
and a.warehouse_id = #{warehouseId}
|
|
</if>
|
|
<if test="reviewOrderIds != null and reviewOrderIds.size > 0 ">
|
|
and a.review_order_id in
|
|
<foreach collection="reviewOrderIds" item="item" index="index" open="(" close=")" separator=",">
|
|
#{item}
|
|
</foreach>
|
|
</if>
|
|
<if test="customerName != null and customerName != ''">
|
|
and a.customer_name like concat('%', #{customerName}, '%')
|
|
</if>
|
|
<if test="shipperName != null and shipperName != ''">
|
|
and a.shipper_name like concat('%', #{shipperName}, '%')
|
|
</if>
|
|
<if test="shipperId != null and shipperId != ''">
|
|
and a.shipper_id like concat('%', #{shipperId}, '%')
|
|
</if>
|
|
<if test="createTimeStart != null and createTimeStart != ''">
|
|
and date_format(a.create_time, '%Y-%m-%d') >= #{createTimeStart}
|
|
</if>
|
|
<if test="createTimeEnd != null and createTimeEnd != ''">
|
|
and date_format(a.create_time, '%Y-%m-%d') <= #{createTimeEnd}
|
|
</if>
|
|
<if test="receiveTimeStart != null and receiveTimeStart != ''">
|
|
and date_format(a.receive_time, '%Y-%m-%d') >= #{receiveTimeStart}
|
|
</if>
|
|
<if test="receiveTimeEnd != null and receiveTimeEnd != ''">
|
|
and date_format(a.receive_time, '%Y-%m-%d') <= #{receiveTimeEnd}
|
|
</if>
|
|
<if test="onlyReceived != null and onlyReceived == 1">
|
|
and a.receive_time is not null
|
|
</if>
|
|
<choose>
|
|
<when test="delFlag != null">
|
|
and a.del_flag = #{delFlag}
|
|
</when>
|
|
<otherwise>
|
|
and a.del_flag = 1
|
|
</otherwise>
|
|
</choose>
|
|
</sql>
|
|
|
|
<!-- 复核单列表查询(头表 + 明细聚合:种类数、计划总量、已复核总量) -->
|
|
<select id="queryList" parameterType="com.mhd.wms.domain.reviewOrder.repository.todo.ReviewOrderDO"
|
|
resultMap="ReviewOrderResult">
|
|
select
|
|
<include refid="reviewOrderSelectColumns"/>,
|
|
ifnull(agg.material_kind_count, 0) as material_kind_count,
|
|
ifnull(agg.total_plan_qty, 0) as total_plan_qty,
|
|
ifnull(agg.total_reviewed_qty, 0) as total_reviewed_qty
|
|
from review_order a
|
|
left join (
|
|
select
|
|
d.review_order_id,
|
|
count(distinct d.material_base_info_id) as material_kind_count,
|
|
sum(ifnull(d.material_plan_qty, ifnull(d.pending_review_qty, 0) + ifnull(d.reviewed_qty, 0))) as total_plan_qty,
|
|
sum(ifnull(d.reviewed_qty, 0)) as total_reviewed_qty
|
|
from review_material_detail d
|
|
where d.del_flag = 1
|
|
group by d.review_order_id
|
|
) agg on a.review_order_id = agg.review_order_id
|
|
<where>
|
|
<include refid="reviewOrderWhere"/>
|
|
</where>
|
|
order by a.create_time desc
|
|
</select>
|
|
|
|
<!-- 详情:主表 by id -->
|
|
<select id="selectHeaderByReviewOrderId" resultMap="ReviewOrderResult">
|
|
select
|
|
<include refid="reviewOrderSelectColumns"/>
|
|
from review_order a
|
|
where a.review_order_id = #{reviewOrderId}
|
|
and a.del_flag = 1
|
|
</select>
|
|
|
|
<!-- 详情:主表 by 复核单号 -->
|
|
<select id="selectHeaderByReviewOrderNumber" resultMap="ReviewOrderResult">
|
|
select
|
|
<include refid="reviewOrderSelectColumns"/>
|
|
from review_order a
|
|
where a.review_order_number = #{reviewOrderNumber}
|
|
and a.del_flag = 1
|
|
</select>
|
|
|
|
<sql id="reviewMaterialDetailColumns">
|
|
d.review_material_detail_id,
|
|
d.review_order_id,
|
|
d.review_order_number,
|
|
d.out_order_number,
|
|
d.out_unique_id,
|
|
d.material_detail_id,
|
|
d.material_base_info_id,
|
|
d.material_code,
|
|
d.material_name,
|
|
d.bar_code,
|
|
d.SIZE,
|
|
d.unit_code,
|
|
d.unit_name,
|
|
d.pending_review_qty,
|
|
d.reviewed_qty,
|
|
d.cancel_qty,
|
|
d.material_plan_qty,
|
|
d.receipt_order_number,
|
|
d.lot_no,
|
|
d.batch_number,
|
|
d.production_date,
|
|
d.expiry_date,
|
|
d.inventory_date,
|
|
d.batch_ref_no,
|
|
d.sheet_ref_no,
|
|
d.box_pallet_no,
|
|
d.ext_attr_1,
|
|
d.ext_attr_2,
|
|
d.ext_attr_3,
|
|
d.ext_attr_4,
|
|
d.review_qty_ea,
|
|
d.net_weight_kg,
|
|
d.gross_weight_kg,
|
|
d.volume_cbm,
|
|
d.area_sqm,
|
|
d.remark,
|
|
d.create_by,
|
|
d.create_by_name,
|
|
d.create_time,
|
|
d.update_by,
|
|
d.update_by_name,
|
|
d.update_time,
|
|
d.del_flag,
|
|
d.pack_id, d.pack_code, d.pack_name, d.pack_detail_id
|
|
</sql>
|
|
|
|
<!-- 详情:明细 by 复核单主键 -->
|
|
<select id="queryDetailByReviewOrderId" resultMap="ReviewMaterialDetailResult">
|
|
select
|
|
<include refid="reviewMaterialDetailColumns"/>
|
|
from review_material_detail d
|
|
where d.review_order_id = #{reviewOrderId}
|
|
and d.del_flag = 1
|
|
order by d.review_material_detail_id asc
|
|
</select>
|
|
|
|
<!-- 详情:明细 by 复核单号 -->
|
|
<select id="queryDetailByReviewOrderNumber" resultMap="ReviewMaterialDetailResult">
|
|
select
|
|
<include refid="reviewMaterialDetailColumns"/>
|
|
from review_material_detail d
|
|
where d.review_order_number = #{reviewOrderNumber}
|
|
and d.del_flag = 1
|
|
order by d.review_material_detail_id asc
|
|
</select>
|
|
</mapper> |