fix: 使用领取令牌隔离日计划进度

This commit is contained in:
zhouz
2026-08-14 14:59:47 +08:00
parent 646bba8893
commit c57023facb
11 changed files with 129 additions and 80 deletions

View File

@@ -236,42 +236,42 @@
WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0'
</update>
<update id="increaseStockedQuantity">
<update id="increaseStockedQuantityByClaim">
UPDATE lms_daily_plan
SET stocking_status = CASE
WHEN stocked_qty + #{incrementQty} = plan_qty + append_qty THEN 2
WHEN stocking_status = 1 AND stocked_qty + #{incrementQty} = plan_qty + append_qty THEN 2
ELSE stocking_status END,
stocking_complete_time = CASE
WHEN stocked_qty + #{incrementQty} = plan_qty + append_qty THEN NOW()
WHEN stocking_status = 1 AND stocked_qty + #{incrementQty} = plan_qty + append_qty THEN NOW()
ELSE stocking_complete_time END,
stocked_qty = stocked_qty + #{incrementQty},
updater = #{updater},
version = version + 1
WHERE daily_plan_id = #{dailyPlanId}
AND version = #{version}
AND deleted = b'0'
AND order_status = 1
AND stocking_status = 1
AND order_status IN (1, 2, 3)
AND stocking_status IN (1, 2, 3)
AND stocked_qty = #{expectedQty}
AND #{incrementQty} &gt; 0
AND stocked_qty + #{incrementQty} &lt;= plan_qty + append_qty
</update>
<update id="increaseSleevedQuantity">
<update id="increaseSleevedQuantityByClaim">
UPDATE lms_daily_plan
SET sleeving_status = CASE
WHEN sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN 2
WHEN sleeving_status = 1 AND sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN 2
ELSE sleeving_status END,
sleeving_complete_time = CASE
WHEN sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN NOW()
WHEN sleeving_status = 1 AND sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN NOW()
ELSE sleeving_complete_time END,
sleeved_qty = sleeved_qty + #{incrementQty},
updater = #{updater},
version = version + 1
WHERE daily_plan_id = #{dailyPlanId}
AND version = #{version}
AND deleted = b'0'
AND order_status = 1
AND sleeving_status = 1
AND order_status IN (1, 2, 3)
AND sleeving_status IN (1, 2, 3)
AND sleeved_qty = #{expectedQty}
AND #{incrementQty} &gt; 0
AND sleeved_qty + #{incrementQty} &lt;= plan_qty + append_qty
</update>