From 9ccc8bd3a53160a40cf60f14e5867f6ce9f6c58f Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期五, 26 十二月 2025 16:49:15 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml |   69 ++++++++++++++++++++++++++++------
 1 files changed, 57 insertions(+), 12 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml
index 3212ae3..479afa7 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml
@@ -6,7 +6,7 @@
     <resultMap id="productMap" type="com.example.erp.entity.sd.Product" >
         <id column="id" property="id"/>
         <result column="product_name" property="productName"/>
-        <result column="product" property="productName"/>
+        <result column="product_abbreviation" property="productAbbreviation"/>
         <result column="total_thickness" property="totalThickness"/>
         <result column="thickness" property="thickness"/>
         <result column="query" property="query"/>
@@ -17,7 +17,7 @@
         <result column="update_time" property="updateTime"/>
         <!--鎺ユ敹鍏朵粬澶栭敭瀹炰綋绫绘暟鎹�-->
         <association property="basicGlassType" javaType="com.example.erp.entity.sd.BasicGlassType">
-            <result column="type_id" property="typeID"/>
+            <result column="type_id" property="typeId"/>
             <result column="type_name" property="typeName"/>
         </association>
 
@@ -29,6 +29,7 @@
     <select id="defaultProduct" resultMap="productMap">
         select a.id ,
         a.product_name,
+        a.product_abbreviation,
         a.total_thickness,
         a.thickness,
         a.query,
@@ -43,31 +44,57 @@
         left join basic_glass_type bgt on bgt.type_id = a.type_id
         <where>
             <if test="glassTypeId != null and glassTypeId != ''">
-                and a.type_id regexp #{glassTypeId}
+                and a.type_id = #{glassTypeId}
             </if>
             <if test="product.id != null and product.id != ''">
-                and a.id regexp #{product.id}
+                and a.id like concat('%',#{product.id},'%')
             </if>
             <if test="product.productName != null and product.productName != ''">
-                and a.product_name regexp #{product.productName}
+                and a.product_name like concat('%',#{product.productName},'%')
+            </if>
+            <if test="product.productAbbreviation != null and product.productAbbreviation != ''">
+                and a.product_abbreviation like concat('%',#{product.productAbbreviation},'%')
             </if>
             <if test="product.basicGlassType.typeName != null and product.basicGlassType.typeName!= ''">
-                and bgt.type_name regexp #{product.basicGlassType.typeName}
+                and bgt.type_name like concat('%',#{product.basicGlassType.typeName},'%')
             </if>
             <if test="product.query != null and product.query != ''">
-                and a.query regexp #{product.query}
+                and a.query like concat('%',#{product.query},'%')
             </if>
             <if test="product.creator != null and product.creator != ''">
-                and a.creator regexp #{product.creator}
+                and a.creator like concat('%',#{product.creator},'%')
+            </if>
+            <if test="product.state != null">
+                and a.state = #{product.state}
             </if>
             <if test="product.createTime != null and product.createTime != ''">
-                and date(a.create_time) regexp #{product.createTime}
+                and date(a.create_time) like concat('%',#{product.createTime},'%')
+            </if>
+            <if test="product.remarks != null and product.remarks != ''">
+                and a.remarks like concat('%',#{product.remarks},'%')
             </if>
         </where>
 
-        order by id desc
+        order by
+        <if test="orderBy == null ">
+            id desc
+        </if>
+        <if test="orderBy == 'desc'">
+            ${field} desc
+        </if>
+        <if test="orderBy == 'asc'">
+            ${field}
+        </if>
         limit #{offset},#{pageSize}
         ;
+    </select>
+
+    <select id="selectProduct">
+        select id from sd.product where ${productName}=#{productNameValue}
+    </select>
+
+    <select id="selectProductId">
+        select id from sd.product where ${productName}=#{productNameValue} and id != #{id}
     </select>
 
     <select id="getPageTotal" >
@@ -97,14 +124,32 @@
             <if test="product.createTime != null and product.createTime != ''">
                 and date(a.create_time) regexp #{product.createTime}
             </if>
+            <if test="product.remarks != null and product.remarks != ''">
+                and a.remarks like concat('%',#{product.remarks},'%')
+            </if>
+            <if test="product.state != null">
+                and a.state = #{product.state}
+            </if>
+            <if test="product.productAbbreviation != null and product.productAbbreviation != ''">
+                and a.product_abbreviation like concat('%',#{product.productAbbreviation},'%')
+            </if>
         </where>
 
         order by a.id desc
-        limit #{offset},#{pageSize}
-        ;
+        limit #{offset},#{pageSize};
     </select>
     
     <update id="updateProductStateById">
         update product set state = #{state} where id = #{id}
     </update>
+
+    <select id="getGlassThickness">
+        select sum(REPLACE(JSON_UNQUOTE(JSON_EXTRACT(separation, '$.thickness')),'mm',''))
+        from product_detail as a
+        where a.prod_id = #{productId}
+        and a.id &lt;= (select b.id
+                        from product_detail as b
+                        where b.prod_id = #{productId} and b.glass_sort = #{technologyNumber})
+
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0