From 25c7cdf3ea9c4e63f16bbb52ce40e28bc65dc87c Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期六, 13 九月 2025 11:08:50 +0800
Subject: [PATCH] 1
---
src/main/resources/mapper/OrderDetlMapper.xml | 240 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 231 insertions(+), 9 deletions(-)
diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index ddd99a7..169eb4d 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -8,26 +8,45 @@
<result column="order_id" property="orderId" />
<result column="order_no" property="orderNo" />
<result column="anfme" property="anfme" />
+ <result column="work_qty" property="workQty" />
<result column="qty" property="qty" />
<result column="matnr" property="matnr" />
<result column="maktx" property="maktx" />
- <result column="name" property="name" />
+ <result column="batch" property="batch" />
<result column="specs" property="specs" />
<result column="model" property="model" />
- <result column="batch" property="batch" />
+ <result column="color" property="color" />
+ <result column="brand" property="brand" />
<result column="unit" property="unit" />
+ <result column="price" property="price" />
+ <result column="sku" property="sku" />
+ <result column="units" property="units" />
<result column="barcode" property="barcode" />
- <result column="supplier" property="supplier" />
- <result column="unit_price" property="unitPrice" />
+ <result column="origin" property="origin" />
+ <result column="manu" property="manu" />
+ <result column="manu_date" property="manuDate" />
<result column="item_num" property="itemNum" />
- <result column="count" property="count" />
+ <result column="safe_qty" property="safeQty" />
<result column="weight" property="weight" />
+ <result column="length" property="length" />
+ <result column="volume" property="volume" />
+ <result column="three_code" property="threeCode" />
+ <result column="supp" property="supp" />
+ <result column="supp_code" property="suppCode" />
+ <result column="be_batch" property="beBatch" />
+ <result column="dead_time" property="deadTime" />
+ <result column="dead_warn" property="deadWarn" />
+ <result column="source" property="source" />
+ <result column="inspect" property="inspect" />
+ <result column="danger" property="danger" />
<result column="status" property="status" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="memo" property="memo" />
+ <result column="tk_type" property="tkType" />
+ <result column="roll_up" property="rollUp" />
</resultMap>
@@ -36,7 +55,22 @@
where 1=1
and order_id = #{orderId}
and matnr = #{matnr}
- <if test="batch != null and batch != ''">
+ <choose>
+ <when test="batch != null and batch != ''">
+ and batch = #{batch}
+ </when>
+ <otherwise>
+ and (batch IS NULL OR batch = '')
+ </otherwise>
+ </choose>
+ </select>
+
+ <select id="selectItemByOrderNo" resultMap="BaseResultMap">
+ select * from man_order_detl
+ where 1=1
+ and order_no = #{orderNo}
+ and matnr = #{matnr}
+ <if test="batch!=null and batch!='' ">
and batch = #{batch}
</if>
</select>
@@ -48,15 +82,203 @@
and qty < anfme
</select>
+ <sql id="pakOutPageCondition">
+ <if test="order_id!=null and order_id!='' ">
+ and mod.order_id like '%' + #{order_id} + '%'
+ </if>
+ <if test="brand!=null and brand!='' ">
+ and mod.brand like '%' + #{brand} + '%'
+ </if>
+ <if test="maktx!=null and maktx!='' ">
+ and mod.maktx like '%' + #{maktx} + '%'
+ </if>
+ <if test="batch!=null and batch!='' ">
+ and mod.batch like '%' + #{batch} + '%'
+ </if>
+ </sql>
+
+ <select id="getPakoutPage" resultMap="BaseResultMap">
+ select * from
+ (
+ select
+ ROW_NUMBER() over (order by mo.create_time desc) as row,
+ mod.*
+ from man_order_detl mod
+ inner join man_order mo on mod.order_id = mo.id
+ inner join man_doc_type mdt on mo.doc_type = mdt.doc_id
+ where 1=1
+ and mo.settle <= 2
+ and mo.status =
+ case when mo.doc_type = 25 then 0 else 1 end
+ and mdt.pakout = 1
+ <include refid="pakOutPageCondition"></include>
+ ) t
+ where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ </select>
+
+
+ <select id="getPakoutPageCount" parameterType="java.util.Map" resultType="java.lang.Integer">
+ select
+ count(1)
+ from man_order_detl mod
+ inner join man_order mo on mod.order_id = mo.id
+ inner join man_doc_type mdt on mo.doc_type = mdt.doc_id
+ where 1=1
+ and mo.settle <= 2
+ and mo.status = 1
+ and mdt.pakout = 1
+ <include refid="pakOutPageCondition"></include>
+ </select>
+ <select id="selectMoveLocDetl" resultMap="BaseResultMap">
+ select
+ md.*
+ from
+ man_order mo
+ left join man_order_detl md on
+ mo.order_no = md.order_no
+ where
+ mo.doc_type = 24
+ and mo.settle <= 2
+ and md.danger = 0
+ </select>
+ <select id="selectDetlList" resultType="java.lang.String">
+ select brand from man_order_detl where order_no = #{orderNo}
+ </select>
+
<update id="increase">
update man_order_detl
set qty = qty + #{qty}
where 1=1
and order_id = #{orderId}
and matnr = #{matnr}
- <if test="batch != null and batch != ''">
- and batch = #{batch}
- </if>
+ <choose>
+ <when test="batch != null and batch != ''">
+ and batch = #{batch}
+ </when>
+ <otherwise>
+ and (batch IS NULL OR batch = '')
+ </otherwise>
+ </choose>
</update>
+ <update id="decrease">
+ update man_order_detl
+ set work_qty = work_qty - #{qty}
+ where 1=1
+ and order_no = #{orderNo}
+ and matnr = #{matnr}
+ <choose>
+ <when test="batch != null and batch != ''">
+ and batch = #{batch}
+ </when>
+ <otherwise>
+ and (batch IS NULL OR batch = '')
+ </otherwise>
+ </choose>
+ </update>
+
+ <update id="modifyStatus">
+ update man_order_detl
+ set status = #{status}
+ where 1=1
+ and order_id = #{orderId}
+ </update>
+
+ <insert id="addToLogTable">
+ INSERT INTO man_order_detl_log SELECT * FROM man_order_detl WHERE id = #{id}
+ </insert>
+ <insert id="batchDetls">
+ INSERT INTO
+ man_order_detl(brand,batch,order_id,order_no,specs,model,be_batch,create_by,create_time,status,qty,anfme,supp,memo)
+ VALUES
+ <foreach collection="list" item="item" index="index" separator=",">
+ (
+ #{item.brand},
+ #{item.batch},
+ #{item.orderId},
+ #{item.orderNo},
+ #{item.specs},
+ #{item.model},
+ #{item.beBatch},
+ #{item.createBy},
+ #{item.createTime},
+ #{item.status},
+ #{item.qty},
+ #{item.anfme},
+ #{item.supp},
+ #{item.memo}
+ )</foreach>
+ </insert>
+
+ <update id="increaseQtyByOrderNo">
+ update man_order_detl
+ set qty = qty + #{qty}
+ where 1=1
+ and order_no = #{orderNo}
+ and model = #{matnr}
+ <choose>
+ <when test="batch != null and batch != ''">
+ and batch = #{batch}
+ </when>
+ <otherwise>
+ and (batch IS NULL OR batch = '')
+ </otherwise>
+ </choose>
+ </update>
+
+ <update id="increaseWorkQty">
+ update man_order_detl
+ set work_qty = work_qty + #{workQty}
+ where 1=1
+ and order_id = #{orderId}
+ and matnr = #{matnr}
+ <choose>
+ <when test="batch != null and batch != ''">
+ and batch = #{batch}
+ </when>
+ <otherwise>
+ and (batch IS NULL OR batch = '')
+ </otherwise>
+ </choose>
+ </update>
+ <update id="updateOrderDetlByGroupNo">
+ update man_order_detl
+ set work_qty = #{count}
+ where 1=1
+ and order_no= #{orderNo} and brand = #{brand}
+ </update>
+ <update id="updateOrderDetlQtyByGroupNo">
+ update man_order_detl
+ set qty = 1
+ where 1=1
+ and order_no = #{orderNo}
+ and brand = #{brand}
+ </update>
+ <update id="updateCheckExceptionByGroup">
+ update man_order_detl set source = 1 where 1 = 1 and brand in
+ <foreach collection="groups" item="item" separator="," open="(" close=")">
+ #{item}
+ </foreach>
+ </update>
+ <update id="updateOrderDetlStatusByPackageNo">
+ update man_order_detl set inspect = #{status} where brand in
+ <foreach collection="brands" open="(" separator="," close=")" item="item" index="index">
+ #{item}
+ </foreach>
+ </update>
+
+ <select id="selectByBrand" resultMap="BaseResultMap">
+ select *
+ from man_order_detl
+ where brand = #{brand}
+ </select>
+
+ <select id="selectByOrderNoAndPkgGroupNoAndVolumeNo" resultMap="BaseResultMap">
+ select *
+ from man_order_detl
+ where order_no = #{orderNo}
+ and brand = #{brand}
+ and model = #{model}
+ </select>
+
</mapper>
--
Gitblit v1.9.1