From ba0dd873d9843fd219cf3776e7eaff33b6bb98dd Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 30 三月 2026 17:39:50 +0800
Subject: [PATCH] 库存调整增加手动入库
---
src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml | 105 ++++++++++++++++++++++++++++++++++++----------------
1 files changed, 72 insertions(+), 33 deletions(-)
diff --git a/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
index 74e6ae5..426f665 100644
--- a/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
+++ b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml
@@ -4,21 +4,23 @@
<select id="listProcurementBySalesLedgerId" resultType="com.ruoyi.procurementrecord.dto.ProcurementDto">
select
- t1.supplier_name,
- t2.product_category,
- t2.id,
- t3.id as recordId,
- t2.specification_model,
- t2.unit,
- t2.quantity,
- t2.min_stock,
- t2.quantity as quantity0,
- t2.tax_rate,
- t2.tax_inclusive_unit_price,
- t2.tax_inclusive_total_price,
- t2.tax_exclusive_total_price,
- t3.inbound_num as quantityStock
- from purchase_ledger t1
+ t1.supplier_name,
+ t2.product_category,
+ t2.id,
+ t3.id as recordId,
+ t2.specification_model,
+ t2.unit,
+ t2.quantity,
+ t2.min_stock,
+ t2.warn_num,
+ t2.quantity as quantity0,
+ t2.tax_rate,
+ t2.tax_inclusive_unit_price,
+ t2.tax_inclusive_total_price,
+ t2.tax_exclusive_total_price,
+ t3.inbound_num as quantityStock,
+ t2.product_model_id
+ from purchase_ledger t1
left join sales_ledger_product t2 on t1.id = t2.sales_ledger_id
left join procurement_record_storage t3 on t2.id = t3.sales_ledger_product_id
where t1.purchase_contract_number = #{req.purchaseContractNumber}
@@ -31,12 +33,16 @@
select
t3.supplier_name,
t3.purchase_contract_number,
- t2.product_category,
+ case when t2.product_category is null then t5.product_name
+ else t2.product_category end as productCategory,
t1.id,
t1.sales_ledger_product_id,
+ t1.product_model_id,
t1.create_user,
- t2.specification_model,
- t2.unit,
+ case when t2.specification_model is null then t4.model
+ else t2.specification_model end as specificationModel,
+ case when t2.unit is null then t4.unit
+ else t2.unit end as unit,
t2.tax_rate,
t2.tax_inclusive_unit_price,
(t1.inbound_num * t2.tax_inclusive_unit_price) as taxInclusiveTotalPrice,
@@ -46,14 +52,22 @@
t1.inbound_num as inboundNum0,
t1.create_time,
t1.update_time,
- t1.create_by
+ t1.create_by,
+ t2.warn_num,
+ t1.out_stock_quantity as outStockQuantity,
+ t1.shortage_description as shortageDescription
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ left join product_model t4 on t4.id = t1.product_model_id
+ left join product t5 on t5.id = t4.product_id
<where>
1 = 1
<if test="req.supplierName != null and req.supplierName != ''">
- and t3.supplier_name like concat('%',#{req.supplierName},'%')
+ and t3.supplier_name like concat('%',#{req.supplierName},'%')
+ </if>
+ <if test="req.timeStr != null and req.timeStr != ''">
+ and t1.create_time like concat('%',#{req.timeStr},'%')
</if>
</where>
</select>
@@ -61,10 +75,13 @@
select
t3.supplier_name,
t3.purchase_contract_number,
- t2.product_category,
+ case when t2.product_category is null then t5.product_name
+ else t2.product_category end as productCategory,
t1.id,
- t2.specification_model,
- t2.unit,
+ case when t2.specification_model is null then t4.model
+ else t2.specification_model end as specificationModel,
+ case when t2.unit is null then t4.unit
+ else t2.unit end as unit,
t2.quantity,
t2.quantity as quantity0,
t2.tax_rate,
@@ -79,36 +96,47 @@
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ left join product_model t4 on t4.id = t1.product_model_id
+ left join product t5 on t5.id = t4.product_id
</select>
<select id="listPageCopy" resultType="com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy">
select
t3.supplier_name,
t3.purchase_contract_number,
- t2.product_category,
+ case when t2.product_category is null then t5.product_name
+ else t2.product_category end as productCategory,
t1.id,
t1.sales_ledger_product_id,
t1.create_user,
- t2.specification_model,
- t2.unit,
+ case when t2.specification_model is null then t4.model
+ else t2.specification_model end as specificationModel,
+ case when t2.unit is null then t4.unit
+ else t2.unit end as unit,
t2.min_stock,
t2.tax_rate,
t2.tax_inclusive_unit_price,
t2.tax_inclusive_total_price,
t2.tax_exclusive_total_price,
t1.inbound_batches,
- t1.inbound_num,
- t1.inbound_num as inboundNum0,
+ sum(t1.inbound_num) as inboundNum,
+ sum(t1.inbound_num) as inboundNum0,
t1.inbound_num as totalInboundNum,
t1.create_time,
t1.update_time,
- t1.create_by
+ t1.create_by,
+ t2.warn_num
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ left join product_model t4 on t4.id = t1.product_model_id
+ left join product t5 on t5.id = t4.product_id
<where>
1 = 1
<if test="req.supplierName != null and req.supplierName != ''">
and t3.supplier_name like concat('%',#{req.supplierName},'%')
+ </if>
+ <if test="req.timeStr != null and req.timeStr != ''">
+ and t1.create_time like concat('%',#{req.timeStr},'%')
</if>
<if test="req.reportDate != null">
and t1.create_time >= #{req.reportDate} and t1.create_time < DATE_ADD(#{req.reportDate}, INTERVAL 1 DAY)
@@ -126,17 +154,21 @@
and t1.create_time <= #{req.endDate}
</if>
</where>
+ group by t3.supplier_name,t2.product_category,t2.specification_model
</select>
<select id="listCopy" resultType="com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy">
select
t3.supplier_name,
t3.purchase_contract_number,
- t2.product_category,
+ case when t2.product_category is null then t5.product_name
+ else t2.product_category end as productCategory,
t1.id,
t1.sales_ledger_product_id,
t1.create_user,
- t2.specification_model,
- t2.unit,
+ case when t2.specification_model is null then t4.model
+ else t2.specification_model end as specificationModel,
+ case when t2.unit is null then t4.unit
+ else t2.unit end as unit,
t2.tax_rate,
t2.tax_inclusive_unit_price,
t2.tax_inclusive_total_price,
@@ -152,5 +184,12 @@
from procurement_record_storage t1
left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id
left join purchase_ledger t3 on t3.id = t2.sales_ledger_id
+ left join product_model t4 on t4.id = t1.product_model_id
+ left join product t5 on t5.id = t4.product_id
</select>
-</mapper>
\ No newline at end of file
+ <select id="getSumQuantity" resultType="BigDecimal">
+ select COALESCE(sum(inbound_num), 0)
+ from procurement_record_storage
+ where product_model_id = #{productModelId}
+ </select>
+</mapper>
--
Gitblit v1.9.3