| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- <?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.PurchaseOrderDetailMapper">
- <!--
- 一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
- 无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
- 代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
- 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
- -->
- <select id="capacityTotalPage" resultType="com.jt.cloud.module.print.controller.admin.purchaseorder.vo.CapacityTotalListVO">
- SELECT
- a.purchase_order AS purchaseOrder,
- b.purchase_order_type AS purchaseOrderType,
- a.company_code AS companyCode,
- a.purchasing_organization AS purchasingOrganization,
- a.purchasing_group AS purchasingGroup,
- a.supplier,
- a.supplier_name AS supplierName,
- a.create_time AS creationDate,
- b.printed,
- b.printed_by_name AS printedByName,
- b.printed_time AS printedTime,
- a.purchase_order_item AS purchaseOrderItem,
- a.material,
- c.material_name materialName,
- a.order_quantity AS orderQuantity,
- c.customer_material_no AS customerMaterialNo,
- COALESCE(c.material_name, '') AS customerMaterialName,
- c.style_no AS styleNo,
- c.barcode
- FROM purchase_order_detail a
- LEFT JOIN purchase_order_header b ON a.purchase_order = b.purchase_order AND b.deleted = 0
- LEFT JOIN material_base_info c ON a.material = c.sap_material_code AND c.deleted = 0
- WHERE a.deleted = 0
- <if test="queryDTO.purchaseOrder != null and queryDTO.purchaseOrder != ''">
- AND a.purchase_order LIKE CONCAT('%', #{queryDTO.purchaseOrder}, '%')
- </if>
- <if test="queryDTO.styleNo != null and queryDTO.styleNo != ''">
- AND c.style_no LIKE CONCAT('%', #{queryDTO.styleNo}, '%')
- </if>
- <if test="queryDTO.printed != null">
- AND b.printed = #{queryDTO.printed}
- </if>
- <if test="queryDTO.printedByName != null and queryDTO.printedByName != ''">
- AND b.printed_by_name LIKE CONCAT('%', #{queryDTO.printedByName}, '%')
- </if>
- <if test="queryDTO.printedStartDate != null and queryDTO.printedStartDate != ''">
- AND b.printed_time >= #{queryDTO.printedStartDate}
- </if>
- <if test="queryDTO.printedEndDate != null and queryDTO.printedEndDate != ''">
- AND b.printed_time <= #{queryDTO.printedEndDate}
- </if>
- <if test="queryDTO.createStartDate != null and queryDTO.createStartDate != ''">
- AND a.create_time >= #{queryDTO.createStartDate}
- </if>
- <if test="queryDTO.createEndDate != null and queryDTO.createEndDate != ''">
- AND a.create_time <= #{queryDTO.createEndDate}
- </if>
- ORDER BY a.create_time DESC
- </select>
- <select id="getCapacityTotal" resultType="java.lang.Long">
- SELECT
- COALESCE(SUM(a.order_quantity), 0) as total
- FROM purchase_order_detail a
- LEFT JOIN purchase_order_header b ON a.purchase_order = b.purchase_order AND b.deleted = 0
- LEFT JOIN material_base_info c ON a.material = c.sap_material_code AND c.deleted = 0
- WHERE a.deleted = 0 and a.order_quantity is not null
- <if test="queryDTO.purchaseOrder != null and queryDTO.purchaseOrder != ''">
- AND a.purchase_order LIKE CONCAT('%', #{queryDTO.purchaseOrder}, '%')
- </if>
- <if test="queryDTO.styleNo != null and queryDTO.styleNo != ''">
- AND c.style_no LIKE CONCAT('%', #{queryDTO.styleNo}, '%')
- </if>
- <if test="queryDTO.printed != null">
- AND b.printed = #{queryDTO.printed}
- </if>
- <if test="queryDTO.printedByName != null and queryDTO.printedByName != ''">
- AND b.printed_by_name LIKE CONCAT('%', #{queryDTO.printedByName}, '%')
- </if>
- <if test="queryDTO.printedStartDate != null and queryDTO.printedStartDate != ''">
- AND b.printed_time >= #{queryDTO.printedStartDate}
- </if>
- <if test="queryDTO.printedEndDate != null and queryDTO.printedEndDate != ''">
- AND b.printed_time <= #{queryDTO.printedEndDate}
- </if>
- <if test="queryDTO.createStartDate != null and queryDTO.createStartDate != ''">
- AND a.create_time >= #{queryDTO.createStartDate}
- </if>
- <if test="queryDTO.createEndDate != null and queryDTO.createEndDate != ''">
- AND a.create_time <= #{queryDTO.createEndDate}
- </if>
- </select>
- </mapper>
|