2026-02-02 17:31:52 +08:00
|
|
|
<?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.nflg.wms.repository.mapper.WmsShipmentMaterialCodeItemMapper">
|
|
|
|
|
|
2026-02-05 18:06:13 +08:00
|
|
|
<select id="getByCodeId" resultType="com.nflg.wms.common.pojo.vo.ShipmentMaterialCodeItemVO">
|
2026-02-02 17:31:52 +08:00
|
|
|
select * from wms_shipment_material_code_item where material_code_id = #{codeId}
|
|
|
|
|
</select>
|
2026-02-05 18:06:13 +08:00
|
|
|
|
|
|
|
|
<update id="updatePackingNum">
|
|
|
|
|
WITH updated_data AS (
|
|
|
|
|
SELECT
|
|
|
|
|
"id",
|
|
|
|
|
packing_num,
|
|
|
|
|
(packing_num - (SELECT COUNT(1) FROM wms_shipment_material_code_item_qr WHERE item_id =
|
|
|
|
|
wms_shipment_material_code_item."id" AND status = 1)) as new_packing_left
|
|
|
|
|
FROM wms_shipment_material_code_item
|
|
|
|
|
)
|
|
|
|
|
UPDATE wms_shipment_material_code_item t
|
|
|
|
|
SET
|
|
|
|
|
packing_left = u.new_packing_left,
|
|
|
|
|
status = CASE WHEN u.new_packing_left = 0 THEN 2 WHEN u.new_packing_left=u.packing_num THEN 0 ELSE 1 END
|
|
|
|
|
FROM updated_data u
|
|
|
|
|
WHERE t."id" = u."id" and t."id" IN
|
|
|
|
|
<foreach item="id" collection="ids" separator="," open="(" close=")">
|
|
|
|
|
#{id}
|
|
|
|
|
</foreach>
|
|
|
|
|
</update>
|
2026-02-02 17:31:52 +08:00
|
|
|
</mapper>
|