From a0c2c050bfde573bc748d7bbdf732cc50e004be8 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 12 三月 2026 17:23:21 +0800
Subject: [PATCH] fix: 生产计划查询未携带申请单编号
---
src/main/resources/mapper/productionPlan/ProductionPlanMapper.xml | 76 ++++++++++++++++++++-----------------
1 files changed, 41 insertions(+), 35 deletions(-)
diff --git a/src/main/resources/mapper/productionPlan/ProductionPlanMapper.xml b/src/main/resources/mapper/productionPlan/ProductionPlanMapper.xml
index 88ec8fb..a7c1b84 100644
--- a/src/main/resources/mapper/productionPlan/ProductionPlanMapper.xml
+++ b/src/main/resources/mapper/productionPlan/ProductionPlanMapper.xml
@@ -11,10 +11,7 @@
<result property="serialNo" column="serial_no"/>
<result property="applyNo" column="apply_no"/>
<result property="customerName" column="customer_name"/>
- <result property="materialCode" column="material_code"/>
- <result property="productMaterialId" column="product_material_id"/>
- <result property="productName" column="product_name"/>
- <result property="productSpec" column="product_spec"/>
+ <result property="productMaterialSkuId" column="product_material_sku_id"/>
<result property="length" column="length"/>
<result property="width" column="width"/>
<result property="height" column="height"/>
@@ -38,28 +35,32 @@
<result property="totalCount" column="total_count"/>
</resultMap>
-
<select id="listPage" resultType="com.ruoyi.productionPlan.dto.ProductionPlanDto">
SELECT
pp.*,
- pm.product_name,
- pm.specification,
- pm.material_code,
+ pms.material_code AS materialCode,
+ pms.specification AS specification,
+ pms.material_id AS productMaterialId,
+ pm.material_name AS productName,
pm.base_unit
FROM production_plan pp
- left join product_material pm on pp.product_material_id = pm.id
+ left join product_material_sku pms on pp.product_material_sku_id = pms.id
+ left join product_material pm on pms.material_id = pm.id
WHERE 1 = 1
<if test="c.customerName != null and c.customerName != '' ">
AND pp.customer_name LIKE CONCAT('%',#{c.customerName},'%')
</if>
<if test="c.productName != null and c.productName != '' ">
- AND pm.product_name LIKE CONCAT('%',#{c.productName},'%')
- </if>
- <if test="c.specification != null and c.specification != '' ">
- AND pm.specification LIKE CONCAT('%',#{c.specification},'%')
+ AND pm.material_name LIKE CONCAT('%',#{c.productName},'%')
</if>
<if test="c.materialCode != null and c.materialCode != '' ">
- AND pm.material_code LIKE CONCAT('%',#{c.materialCode},'%')
+ AND pms.material_code LIKE CONCAT('%',#{c.materialCode},'%')
+ </if>
+ <if test="c.specification != null and c.specification != '' ">
+ AND pms.specification LIKE CONCAT('%',#{c.specification},'%')
+ </if>
+ <if test="c.applyNo != null and c.applyNo != '' ">
+ AND pp.apply_no LIKE CONCAT('%',#{c.applyNo},'%')
</if>
<if test="c.startDate != null">
AND pp.start_date >= DATE_FORMAT(#{c.startDate},'%Y-%m-%d')
@@ -71,42 +72,47 @@
<select id="selectSummaryByProductType" resultType="com.ruoyi.productionPlan.dto.ProductionPlanSummaryDto">
SELECT
- material_code,
- product_name,
- product_spec,
- length,
- width,
- height,
- COALESCE(SUM(quantity),0) AS quantity,
- COALESCE(SUM(volume),0) AS volume
- FROM production_plan
+ sku.material_code,
+ pm.material_name AS product_name,
+ sku.specification AS product_spec,
+ pp.length,
+ pp.width,
+ pp.height,
+ COALESCE(SUM(pp.quantity),0) AS quantity,
+ COALESCE(SUM(pp.volume),0) AS volume
+ FROM production_plan pp
+ LEFT JOIN product_material_sku sku
+ ON pp.product_material_sku_id = sku.id
+ LEFT JOIN product_material pm
+ ON sku.material_id = pm.id
<where>
<if test="materialCode != null and materialCode != ''">
- AND material_code LIKE CONCAT('%', #{materialCode}, '%')
+ AND sku.material_code LIKE CONCAT('%', #{materialCode}, '%')
</if>
<if test="productName != null and productName != ''">
- AND product_name LIKE CONCAT('%', #{productName}, '%')
+ AND pm.material_name LIKE CONCAT('%', #{productName}, '%')
</if>
</where>
GROUP BY
- material_code,
- product_name,
- product_spec,
- length,
- width,
- height
+ sku.material_code,
+ pm.material_name,
+ sku.specification,
+ pp.length,
+ pp.width,
+ pp.height
</select>
<select id="selectWithMaterialByIds" resultType="com.ruoyi.productionPlan.dto.ProductionPlanDto">
SELECT
pp.*,
- pm.product_name,
- pm.specification,
- pm.material_code,
+ pms.material_code AS materialCode,
+ pms.specification AS specification,
+ pm.material_name AS productName,
pm.base_unit
FROM production_plan pp
- LEFT JOIN product_material pm ON pp.product_material_id = pm.id
+ LEFT JOIN product_material_sku pms ON pp.product_material_sku_id = pms.id
+ LEFT JOIN product_material pm ON pms.material_id = pm.id
WHERE pp.id IN
<foreach collection="ids" item="id" open="(" separator="," close=")">
#{id}
--
Gitblit v1.9.3