| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213 |
- <?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.jt.cloud.module.print.dal.mysql.purchaseorder.PurchaseOrderHeaderMapper">
- <select id="selectHeaderPageByDetailFilter" resultType="com.jt.cloud.module.print.dal.dataobject.purchaseorder.PurchaseOrderHeaderDO">
- SELECT DISTINCT h.*
- FROM purchase_order_header h
- INNER JOIN purchase_order_detail d ON h.id = d.header_id
- LEFT JOIN material_base_info mbi ON mbi.material_no = d.material
- WHERE 1=1
- <!-- header表筛选条件 -->
- <if test="query.purchaseOrder != null and query.purchaseOrder != ''">
- AND h.purchase_order LIKE CONCAT('%', #{query.purchaseOrder}, '%')
- </if>
- <if test="query.interPurchaseOrderNumber != null and query.interPurchaseOrderNumber != ''">
- AND h.inter_purchase_order_number LIKE CONCAT('%', #{query.interPurchaseOrderNumber}, '%')
- </if>
- <if test="query.supplier != null and query.supplier != ''">
- AND h.supplier = #{query.supplier}
- </if>
- <if test="query.printed != null">
- AND h.printed = #{query.printed}
- </if>
- <if test="query.processed != null">
- AND h.processed = #{query.processed}
- </if>
- <if test="query.salesOrder != null and query.salesOrder != ''">
- AND h.sales_order LIKE CONCAT('%', #{query.salesOrder}, '%')
- </if>
- <if test="query.startCreateDate != null and query.startCreateDate != ''">
- AND d.creation_date >= #{query.startCreateDate}
- </if>
- <if test="query.endCreateDate != null and query.endCreateDate != ''">
- AND d.creation_date <= #{query.endCreateDate}
- </if>
- <if test="query.startUpdateDate != null and query.startUpdateDate != ''">
- AND d.last_change_datetime >= #{query.startUpdateDate}
- </if>
- <if test="query.endUpdateDate != null and query.endUpdateDate != ''">
- AND d.last_change_datetime <= #{query.endUpdateDate}
- </if>
- <if test="query.material != null and query.material != ''">
- AND d.material LIKE CONCAT('%', #{query.material}, '%')
- </if>
- <if test="query.salesOrder != null and query.salesOrder != ''">
- AND d.sales_order LIKE CONCAT('%', #{query.salesOrder}, '%')
- </if>
- <if test="query.plant != null and query.plant != ''">
- AND d.plant = #{query.plant}
- </if>
- <if test="query.styleNo != null and query.styleNo != ''">
- AND mbi.internal_style_no LIKE CONCAT('%', #{query.styleNo}, '%')
- </if>
- <if test="query.materialNo != null and query.materialNo != ''">
- AND mbi.material_no LIKE CONCAT('%', #{query.materialNo}, '%')
- </if>
- ORDER BY h.creation_date DESC
- </select>
- <!-- 返回结果映射 -->
- <resultMap id="PurchaseOrderDetailWithMaterialMap" type="com.jt.cloud.module.print.controller.admin.purchaseorder.vo.PurchaseOrderDetailWithMaterialVO">
- <!-- 字段映射 -->
- <id property="id" column="id"/>
- <result property="headerId" column="header_id"/>
- <result property="purchaseOrder" column="purchase_order"/>
- <result property="purchaseOrderItem" column="purchase_order_item"/>
- <result property="purchasingDocumentDeletionCode" column="purchasing_document_deletion_code"/>
- <result property="material" column="material"/>
- <result property="materialType" column="material_type"/>
- <result property="plant" column="plant"/>
- <result property="purchaseOrderQuantityUnit" column="purchase_order_quantity_unit"/>
- <result property="orderQuantity" column="order_quantity"/>
- <result property="purchaseOrderCategory" column="purchase_order_category"/>
- <result property="accountAssignmentCategory" column="account_assignment_category"/>
- <result property="salesOrder" column="sales_order"/>
- <result property="salesOrderItem" column="sales_order_item"/>
- <result property="purchaseOrderType" column="purchase_order_type"/>
- <result property="releaseCode" column="release_code"/>
- <result property="salesOrganization" column="sales_organization"/>
- <result property="distributionChannel" column="distribution_channel"/>
- <result property="soldToParty" column="sold_to_party"/>
- <result property="purchaseOrderByCustomer" column="purchase_order_by_customer"/>
- <result property="customerName" column="customer_name"/>
- <result property="companyCode" column="company_code"/>
- <result property="purchasingOrganization" column="purchasing_organization"/>
- <result property="purchasingGroup" column="purchasing_group"/>
- <result property="supplier" column="supplier"/>
- <result property="supplierName" column="supplier_name"/>
- <result property="defaultMultiple" column="default_multiple"/>
- <result property="expectTagNumber" column="expect_tag_number"/>
- <result property="deleted" column="deleted"/>
- <result property="creator" column="creator"/>
- <result property="createTime" column="create_time"/>
- <result property="updater" column="updater"/>
- <result property="updateTime" column="update_time"/>
- <!-- 字段映射,添加前缀避免字段名冲突 -->
- <result property="materialId" column="m_id"/>
- <result property="materialNo" column="m_material_no"/>
- <result property="materialName" column="m_material_name"/>
- <result property="customerMaterialNo" column="m_customer_material_no"/>
- <result property="styleNo" column="m_style_no"/>
- <result property="barcode" column="m_barcode"/>
- <result property="name" column="m_name"/>
- <result property="color" column="m_color"/>
- <result property="size" column="m_size"/>
- <result property="specificationModel" column="m_specification_model"/>
- <result property="composition" column="m_composition"/>
- <result property="price" column="m_price"/>
- <result property="poNo" column="m_po_no"/>
- <result property="brand" column="m_brand"/>
- <result property="productName" column="m_product_name"/>
- <result property="series" column="m_series"/>
- <result property="planTrackingNo" column="m_plan_tracking_no"/>
- <result property="productionModel" column="m_production_model"/>
- <result property="internalStyleNo" column="internal_style_no"/>
- <result property="origin" column="m_origin"/>
- <result property="styleName" column="m_style_name"/>
- <result property="customerCompanyRegNo" column="m_customer_company_reg_no"/>
- <result property="topBarcode" column="m_top_barcode"/>
- <result property="topName" column="m_top_name"/>
- <result property="topSku" column="m_top_sku"/>
- <result property="pantsBarcode" column="m_pants_barcode"/>
- <result property="pantsName" column="m_pants_name"/>
- <result property="pantsSku" column="m_pants_sku"/>
- <result property="customField1" column="m_custom_field1"/>
- <result property="customField2" column="m_custom_field2"/>
- <result property="customField3" column="m_custom_field3"/>
- <result property="customField4" column="m_custom_field4"/>
- <result property="customField5" column="m_custom_field5"/>
- <result property="sapMaterialCode" column="m_sap_material_code"/>
- <result property="sapMaterialDescription" column="m_sap_material_description"/>
- <result property="sapMaterialType" column="m_sap_material_type"/>
- <result property="sapBaseUnit" column="m_sap_base_unit"/>
- <result property="sapBarcodeMaster" column="m_sap_barcode_master"/>
- <result property="sapMaterialLongDesc" column="m_sap_material_long_desc"/>
- <result property="sapCustomerMaterialNo" column="m_sap_customer_material_no"/>
- </resultMap>
- <!-- 物料信息字段 -->
- <sql id="materialColumns">
- m.id AS m_id,
- m.material_no AS m_material_no,
- m.material_name AS m_material_name,
- m.customer_material_no AS m_customer_material_no,
- m.style_no AS m_style_no,
- m.barcode AS m_barcode,
- m.name AS m_name,
- m.color AS m_color,
- m.size AS m_size,
- m.specification_model AS m_specification_model,
- m.composition AS m_composition,
- m.price AS m_price,
- m.po_no AS m_po_no,
- m.brand AS m_brand,
- m.product_name AS m_product_name,
- m.series AS m_series,
- m.plan_tracking_no AS m_plan_tracking_no,
- m.production_model AS m_production_model,
- m.internal_style_no AS internal_style_no,
- m.origin AS m_origin,
- m.style_name AS m_style_name,
- m.customer_company_reg_no AS m_customer_company_reg_no,
- m.top_barcode AS m_top_barcode,
- m.top_name AS m_top_name,
- m.top_sku AS m_top_sku,
- m.pants_barcode AS m_pants_barcode,
- m.pants_name AS m_pants_name,
- m.pants_sku AS m_pants_sku,
- m.custom_field1 AS m_custom_field1,
- m.custom_field2 AS m_custom_field2,
- m.custom_field3 AS m_custom_field3,
- m.custom_field4 AS m_custom_field4,
- m.custom_field5 AS m_custom_field5,
- m.sap_material_code AS m_sap_material_code,
- m.sap_material_type AS m_sap_material_type,
- m.sap_base_unit AS m_sap_base_unit,
- m.sap_barcode_master AS m_sap_barcode_master,
- m.sap_material_long_desc AS m_sap_material_description,
- m.sap_customer_material_no AS m_sap_customer_material_no
- </sql>
- <select id="detailsPage" resultMap="PurchaseOrderDetailWithMaterialMap">
- SELECT
- a.id,
- a.header_id,
- a.purchase_order,
- a.purchase_order_item,
- a.material,
- a.purchase_order_quantity_unit,
- a.order_quantity,
- a.sold_to_party,
- a.default_multiple,
- a.expect_tag_number,
- a.distribution_channel,
- a.account_assignment_category,
- a.purchase_order_by_customer,
- <include refid="materialColumns"/>
- FROM purchase_order_detail a
- INNER JOIN purchase_order_header h ON a.header_id = h.id
- LEFT JOIN material_base_info m ON a.material = m.material_no AND m.deleted = 0
- WHERE a.deleted = 0
- AND a.header_id = #{query.id}
- AND h.deleted = 0
- ORDER BY CAST(a.purchase_order_item AS UNSIGNED) ASC
- </select>
- </mapper>
|