From 716384b3c2e70842e093207cfd374d2a39fffbe6 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期一, 08 九月 2025 13:23:18 +0800
Subject: [PATCH] 更新

---
 north-glass-erp/src/main/resources/mapper/mm/FinishedGlassShelf.xml |  298 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 298 insertions(+), 0 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedGlassShelf.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedGlassShelf.xml
new file mode 100644
index 0000000..377be11
--- /dev/null
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedGlassShelf.xml
@@ -0,0 +1,298 @@
+<?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.example.erp.mapper.mm.FinishedGlassShelfMapper">
+
+    <resultMap id="selectFinishedGlassShelfEmitDetails" type="com.example.erp.entity.mm.FinishedGlassShelfEmitDetails">
+        <id column="id" property="id"/>
+        <result column="emit_id" property="emitId"/>
+        <result column="emit_number" property="emitNumber"/>
+        <result column="information_id" property="informationId"/>
+        <result column="glass_shelf_number" property="glassShelfNumber"/>
+        <result column="glass_shelf_name" property="glassShelfName"/>
+        <result column="withdraw_quantity" property="withdrawQuantity"/>
+        <result column="quantity" property="quantity"/>
+        <result column="unit" property="unit"/>
+        <result column="price" property="price"/>
+        <result column="money" property="money"/>
+        <result column="remarks" property="remarks"/>
+
+        <result column="available_quantity" property="finishedGlassShelfInformation.availableQuantity"/>
+        <result column="total_quantity" property="finishedGlassShelfInformation.totalQuantity"/>
+
+    </resultMap>
+
+    <select id="getSelectFinishedGlassShelfInformation">
+        select
+        *
+        from
+        mm.finished_glass_shelf_information
+        where glass_shelf_number = #{finishedGlassShelfInformation.glassShelfNumber}
+          and glass_shelf_name = #{finishedGlassShelfInformation.glassShelfName}
+            and price = #{finishedGlassShelfInformation.price}
+            and unit = #{finishedGlassShelfInformation.unit}
+            and max_weight = #{finishedGlassShelfInformation.maxWeight}
+            and max_width = #{finishedGlassShelfInformation.maxWidth}
+            and max_height = #{finishedGlassShelfInformation.maxHeight}
+
+    </select>
+
+
+    <insert id="insetFinishedGlassShelfInformation"  useGeneratedKeys="true" >
+        insert into mm.finished_glass_shelf_information(glass_shelf_number,glass_shelf_name,available_quantity,
+                                                        total_quantity,price,money,unit,max_weight,max_width,max_height,remarks,create_time)
+        values (
+                   #{finishedGlassShelfInformation.glassShelfNumber},#{finishedGlassShelfInformation.glassShelfName}
+                   ,#{finishedGlassShelfInformation.totalQuantity},#{finishedGlassShelfInformation.totalQuantity}
+                   ,#{finishedGlassShelfInformation.price},#{finishedGlassShelfInformation.money}
+                   ,#{finishedGlassShelfInformation.unit},#{finishedGlassShelfInformation.maxWeight}
+                   ,#{finishedGlassShelfInformation.maxWidth},#{finishedGlassShelfInformation.maxHeight},#{finishedGlassShelfInformation.remarks},now()
+               )
+    </insert>
+
+    <insert id="insetFinishedGlassShelfLog"  useGeneratedKeys="true" >
+        insert into mm.finished_glass_shelf_log(type,glass_shelf_number,glass_shelf_name,quantity,price,money,unit,
+                                                max_weight,max_width,max_height,remarks,create_time)
+        values (
+                  3,#{finishedGlassShelfInformation.glassShelfNumber},#{finishedGlassShelfInformation.glassShelfName}
+               ,#{finishedGlassShelfInformation.totalQuantity}
+               ,#{finishedGlassShelfInformation.price},#{finishedGlassShelfInformation.money}
+               ,#{finishedGlassShelfInformation.unit},#{finishedGlassShelfInformation.maxWeight}
+               ,#{finishedGlassShelfInformation.maxWidth},#{finishedGlassShelfInformation.maxHeight},#{finishedGlassShelfInformation.remarks},now()
+               )
+    </insert>
+
+    <update id="updateFinishedGlassShelfInformationQuantity">
+        update mm.finished_glass_shelf_information set available_quantity=available_quantity+ #{quantity},
+                                                       total_quantity=total_quantity+#{quantity} where id=#{id}
+    </update>
+
+    <update id="updateFinishedGlassShelfInformation">
+        update mm.finished_glass_shelf_information set glass_shelf_number=#{finishedGlassShelfInformation.glassShelfNumber},
+                                                       glass_shelf_name=#{finishedGlassShelfInformation.glassShelfName},
+                                                       available_quantity=#{finishedGlassShelfInformation.availableQuantity},
+                                                       total_quantity=#{finishedGlassShelfInformation.totalQuantity},
+                                                       price=#{finishedGlassShelfInformation.price},
+                                                       money=#{finishedGlassShelfInformation.money},
+                                                       unit=#{finishedGlassShelfInformation.unit},
+                                                       max_weight=#{finishedGlassShelfInformation.maxWeight},
+                                                       max_width=#{finishedGlassShelfInformation.maxWidth},
+                                                       max_height=#{finishedGlassShelfInformation.maxHeight},
+                                                       remarks=#{finishedGlassShelfInformation.remarks},
+                                                       create_time=now()
+                                                   where id=#{id}
+    </update>
+
+
+    <select id="getSelectFinishedGlassShelfInformationDate">
+        select * from mm.finished_glass_shelf_information where available_quantity>0 limit #{offset},#{pageSize};
+    </select>
+
+    <select id="getSelectFinishedGlassShelfInformationDatePageTotal">
+        select
+        CEILING(count(id)/#{pageSize}) as 'pageTotal',
+        count(id) as 'total'
+        from
+        mm.finished_glass_shelf_information where available_quantity>0
+    </select>
+
+    <select id="getSelectFinishedGlassShelfInformationById">
+        select
+        *
+        from
+        mm.finished_glass_shelf_information  where id = #{id}
+
+    </select>
+
+
+    <select id="getSelectFinishedGlassShelfInformationInId">
+        select
+            id as informationId,
+        glass_shelf_number as glassShelfNumber,
+        glass_shelf_name as glassShelfName,
+        available_quantity as availableQuantity,
+        total_quantity as totalQuantity,
+        price,
+        money,
+        unit,
+        max_weight as maxWeight,
+        max_width as maxWidth,
+        max_height as maxHeight,
+        remarks
+        from
+            mm.finished_glass_shelf_information  where id in
+        <foreach item="id" collection="ids" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+
+    </select>
+
+
+    <delete id="deleteFinishedGlassShelfInformationById">
+        delete  from mm.finished_glass_shelf_information  where id=#{id}
+
+    </delete>
+
+    <select id="getSelectFinishedGlassShelfEmitByemitId">
+        select * from
+        mm.finished_glass_shelf_emit
+        where emit_id=#{emitId}
+    </select>
+
+    <select id="getSelectFinishedGlassShelfEmitDetailsByemitId" >
+        select
+            fed.information_id as informationId,
+            fed.glass_shelf_number as glassShelfNumber,
+            fed.glass_shelf_name as glassShelfName,
+            fed.quantity as quantity,
+            fi.available_quantity+fed.quantity as availableQuantity,
+            fi.total_quantity as totalQuantity,
+            fed.price,
+            fed.money,
+            fed.unit,
+            fed.remarks
+            from
+            mm.finished_glass_shelf_emit_details fed left join mm.finished_glass_shelf_information fi on fed.information_id=fi.id
+        where emit_id=#{emitId}
+    </select>
+
+    <select id="getSelectFinishedGlassShelfEmitDetailsByemitId1" >
+        select * from mm.finished_glass_shelf_emit_details where emit_id=#{emitId}
+    </select>
+
+
+    <select id="getmaximumEmit" >
+        select ifnull(SUBSTR(max(right(emit_id,8)) from 7),0) from  mm.finished_glass_shelf_emit where  date(create_time)=CURDATE()
+    </select>
+
+    <select id="getmaximumWithdraw" >
+        select ifnull(SUBSTR(max(right(emit_id,8)) from 7),0) from  mm.finished_glass_shelf_withdraw where  date(create_time)=CURDATE()
+    </select>
+
+
+    <insert id="insertFinishedGlassShelfEmit"  useGeneratedKeys="true" >
+        insert into mm.finished_glass_shelf_emit(emit_id,create_time,withdraw_time,customer_name,project,operator,state,remarks)
+        values (
+                   #{emitId},now(),#{finishedGlassShelfEmit.withdrawTime},#{finishedGlassShelfEmit.customerName}
+               ,#{finishedGlassShelfEmit.project},#{finishedGlassShelfEmit.operator},0,#{finishedGlassShelfEmit.remarks}
+               )
+    </insert>
+
+    <insert id="insertFinishedGlassShelfEmitDetails"  useGeneratedKeys="true" >
+        insert into mm.finished_glass_shelf_emit_details(emit_id,emit_number,information_id,glass_shelf_number,glass_shelf_name,
+                                                         withdraw_quantity,quantity,price,unit,money,remarks)
+        values (
+                   #{emitId},#{emitNumber},#{finishedGlassShelfEmitDetails.informationId},
+                #{finishedGlassShelfEmitDetails.glassShelfNumber},#{finishedGlassShelfEmitDetails.glassShelfName}
+               ,0,#{finishedGlassShelfEmitDetails.quantity},#{finishedGlassShelfEmitDetails.price},#{finishedGlassShelfEmitDetails.unit},
+                #{finishedGlassShelfEmitDetails.money},#{finishedGlassShelfEmitDetails.remarks}
+               )
+    </insert>
+
+    <insert id="insertFinishedGlassShelfEmitDetailsLog"  useGeneratedKeys="true" >
+        insert into mm.finished_glass_shelf_log(document_id,document_number,type,glass_shelf_number,glass_shelf_name,quantity,price,money,unit,
+                                                remarks,create_time)
+        values (
+                   #{emitId},#{emitNumber},1, #{finishedGlassShelfEmitDetails.glassShelfNumber},#{finishedGlassShelfEmitDetails.glassShelfName},
+               #{finishedGlassShelfEmitDetails.quantity},#{finishedGlassShelfEmitDetails.price},
+                #{finishedGlassShelfEmitDetails.money},#{finishedGlassShelfEmitDetails.unit},#{finishedGlassShelfEmitDetails.remarks},now()
+               )
+    </insert>
+
+    <update id="updateInformationAvailableQuantityOut">
+        update mm.finished_glass_shelf_information set available_quantity=available_quantity-#{finishedGlassShelfEmitDetails.quantity}
+                                                   where id=#{finishedGlassShelfEmitDetails.informationId}
+    </update>
+
+    <update id="updateInformationAvailableQuantityInt">
+        update mm.finished_glass_shelf_information set available_quantity=available_quantity+#{finishedGlassShelfEmitDetails.quantity}
+        where id=#{finishedGlassShelfEmitDetails.informationId}
+    </update>
+
+    <update id="updateFinishedGlassShelfEmit"  >
+        update mm.finished_glass_shelf_emit set create_time=now(),
+                                                withdraw_time=#{finishedGlassShelfEmit.withdrawTime},
+                                                customer_name=#{finishedGlassShelfEmit.customerName},
+                                                project=#{finishedGlassShelfEmit.project},
+                                                operator=#{finishedGlassShelfEmit.operator},
+                                                remarks=#{finishedGlassShelfEmit.remarks}
+                                            where emit_id=#{emitId}
+    </update>
+
+    <delete id="deleteFinishedGlassShelfEmitDetails"  >
+        delete from mm.finished_glass_shelf_emit_details  where emit_id=#{emitId}
+    </delete>
+
+    <delete id="deleteFinishedGlassShelfEmit"  >
+        delete from mm.finished_glass_shelf_emit  where emit_id=#{emitId}
+    </delete>
+
+    <delete id="deleteFinishedGlassShelfEmitDetailsLog"  >
+        delete from mm.finished_glass_shelf_log  where document_id=#{emitId}
+    </delete>
+
+    <update id="updateFinishedGlassShelfEmitDetailsLog"  >
+        update mm.finished_glass_shelf_log set state=1  where document_id=#{emitId}
+    </update>
+
+
+    <select id="getSelectFinishedGlassShelfEmit">
+        select * from mm.finished_glass_shelf_emit
+        <where>
+            date(create_time)>=#{startDate} and date(create_time) &lt;= #{endDate}
+            <if test="emit.emitId != null and emit.emitId != ''">
+                and emit_id regexp #{emit.emitId}
+            </if>
+            <if test="emit.customerName != null and emit.customerName != ''">
+                and customer_name regexp #{emit.customerName}
+            </if>
+            <if test="emit.project != null and emit.project != ''">
+                and project regexp #{emit.project}
+            </if>
+            <if test="emit.operator != null and emit.operator != ''">
+                and operator regexp #{emit.operator}
+            </if>
+            <if test="emit.state != null and emit.state != ''">
+                and state regexp #{emit.state}
+            </if>
+            <if test="emit.remarks != null and emit.remarks != ''">
+                and remarks regexp #{emit.remarks}
+            </if>
+
+        </where>
+        group by emit_id
+        limit #{offset},#{pageSize};
+    </select>
+
+    <select id="getSelectFinishedGlassShelfEmitPageTotal">
+        select
+        CEILING(count(id)/#{pageSize}) as 'pageTotal',
+        count(id) as 'total'
+        from mm.finished_glass_shelf_emit
+        <where>
+            date(create_time)>=#{startDate} and date(create_time) &lt;= #{endDate}
+            <if test="emit.emitId != null and emit.emitId != ''">
+                and emit_id regexp #{emit.emitId}
+            </if>
+            <if test="emit.customerName != null and emit.customerName != ''">
+                and customer_name regexp #{emit.customerName}
+            </if>
+            <if test="emit.project != null and emit.project != ''">
+                and project regexp #{emit.project}
+            </if>
+            <if test="emit.operator != null and emit.operator != ''">
+                and operator regexp #{emit.operator}
+            </if>
+            <if test="emit.state != null and emit.state != ''">
+                and state regexp #{emit.state}
+            </if>
+            <if test="emit.remarks != null and emit.remarks != ''">
+                and remarks regexp #{emit.remarks}
+            </if>
+        </where>
+        limit #{offset},#{pageSize};
+    </select>
+
+
+</mapper>
\ No newline at end of file

--
Gitblit v1.8.0