From ab06fbcd79f0e48cb83e3f0621e944a90c2b20a0 Mon Sep 17 00:00:00 2001
From: 刘小明 <liuxm_a@163.com>
Date: 星期一, 26 八月 2024 16:24:01 +0800
Subject: [PATCH] 排班导出优化

---
 pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml |   84 +++++++++++++++++++++++++++---------------
 1 files changed, 54 insertions(+), 30 deletions(-)

diff --git a/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml b/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
index b6914cc..6bfacd5 100644
--- a/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
+++ b/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
@@ -8,6 +8,7 @@
             <id property="id" column="id" jdbcType="BIGINT"/>
             <result property="name" column="name" jdbcType="VARCHAR"/>
             <result property="customerName" column="customer_name" jdbcType="VARCHAR"/>
+            <result property="projectName" column="project_name" jdbcType="VARCHAR"/>
             <result property="director" column="director" jdbcType="VARCHAR"/>
             <result property="dMobile" column="d_mobile" jdbcType="VARCHAR"/>
             <result property="deliveryDate" column="delivery_date" jdbcType="VARCHAR"/>
@@ -18,22 +19,23 @@
             <result property="remark" column="remark" jdbcType="VARCHAR"/>
     </resultMap>
     <resultMap id="BaseResultMap2" type="com.dy.pmsGlobal.pojoPr.PrOrder" extends="BaseResultMap">
-        <collection property="items" ofType="com.dy.pmsGlobal.pojoPr.PrOrderItem" fetchType="eager" select="selectItems" column="id" />
+        <collection property="items" ofType="com.dy.pmsGlobal.pojoPr.PrOrderItem" fetchType="eager" select="com.dy.pmsGlobal.daoPr.PrOrderItemMapper.selectItems" column="id" />
     </resultMap>
     <sql id="Base_Column_List">
-        id,name,customer_name,
+        id,`name`,customer_name,project_name,
         director,d_mobile,delivery_date,
         status,creator,dt,
         deleted,remark
     </sql>
-
-    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap2">
         select
         <include refid="Base_Column_List" />
         from pr_order
         where  id = #{id,jdbcType=BIGINT} 
     </select>
-
+    <select id="selectOrderNameById" parameterType="java.lang.Long" resultType="String">
+        select name from pr_order where id=#{orderId,jdbcType=BIGINT}
+    </select>
     <select id="exists" resultType="java.lang.Boolean">
         select count(1) from pr_order where name = #{name}
         <if test="id != null">
@@ -46,21 +48,27 @@
         <include refid="Base_Column_List" />
         from pr_order p
         where p.deleted!=1
-        <trim prefix="and " suffixOverrides="and">
+        <trim prefix="and" suffixOverrides="and">
             <if test="name != null and name != ''">
-                name like concat('%', #{name}, '%') and
+                  name like concat('%', #{name}, '%') and
             </if>
             <if test="customerName != null and customerName != ''">
-                customer_name like concat('%', #{customerName}, '%') and
+                 customer_name like concat('%', #{customerName}, '%') and
+            </if>
+            <if test="projectName != null and projectName != ''">
+                 project_name like concat('%', #{projectName}, '%') and
             </if>
             <if test="director != null and director != ''">
-                director like concat('%', #{director}, '%') and
+                 director like concat('%', #{director}, '%') and
             </if>
-            <if test="startTime != null">
-                and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP}
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
             </if>
-            <if test="endTime != null">
-                and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP}
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null and status != ''">
+                 status = #{status,jdbcType=TINYINT} and
             </if>
         </trim>
         order by id desc
@@ -75,21 +83,27 @@
         select count(1)
         from pr_order p
         where p.deleted!=1
-        <trim prefix="and " suffixOverrides="and">
+        <trim prefix="and" suffixOverrides="and">
             <if test="name != null and name != ''">
-                name like concat('%', #{name}, '%') and
+                 name like concat('%', #{name}, '%') and
             </if>
             <if test="customerName != null and customerName != ''">
-                customer_name like concat('%', #{customerName}, '%') and
+                 customer_name like concat('%', #{customerName}, '%') and
+            </if>
+            <if test="projectName != null and projectName != ''">
+                 project_name like concat('%', #{projectName}, '%') and
             </if>
             <if test="director != null and director != ''">
-                director like concat('%', #{director}, '%') and
+                 director like concat('%', #{director}, '%') and
             </if>
-            <if test="startTime != null">
-                and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP}
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
             </if>
-            <if test="endTime != null">
-                and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP}
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null and status != ''">
+                 status = #{status,jdbcType=TINYINT} and
             </if>
         </trim>
     </select>
@@ -98,26 +112,31 @@
         <include refid="Base_Column_List" />
         from pr_order p
         where p.deleted!=1
-        <trim prefix="and " suffixOverrides="and">
+        <trim prefix="and" suffixOverrides="and">
             <if test="name != null and name != ''">
-                name like concat('%', #{name}, '%') and
+                 name like concat('%', #{name}, '%') and
             </if>
             <if test="customerName != null and customerName != ''">
-                customer_name like concat('%', #{customerName}, '%') and
+                 customer_name like concat('%', #{customerName}, '%') and
+            </if>
+            <if test="projectName != null and projectName != ''">
+                 project_name like concat('%', #{projectName}, '%') and
             </if>
             <if test="director != null and director != ''">
-                director like concat('%', #{director}, '%') and
+                 director like concat('%', #{director}, '%') and
             </if>
-            <if test="startTime != null">
-                and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP}
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
             </if>
-            <if test="endTime != null">
-                and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP}
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null and status != ''">
+                 status = #{status,jdbcType=TINYINT} and
             </if>
         </trim>
         order by id desc
     </select>
-
     <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
         delete from pr_order
         where  id = #{id,jdbcType=BIGINT} 
@@ -132,6 +151,7 @@
                 <if test="id != null">id,</if>
                 <if test="name != null">name,</if>
                 <if test="customerName != null">customer_name,</if>
+                <if test="projectName != null">project_name,</if>
                 <if test="director != null">director,</if>
                 <if test="dMobile != null">d_mobile,</if>
                 <if test="deliveryDate != null">delivery_date,</if>
@@ -145,6 +165,7 @@
                 <if test="id != null">#{id,jdbcType=BIGINT},</if>
                 <if test="name != null">#{name,jdbcType=VARCHAR},</if>
                 <if test="customerName != null">#{customerName,jdbcType=VARCHAR},</if>
+                <if test="projectName != null">#{projectName,jdbcType=VARCHAR},</if>
                 <if test="director != null">#{director,jdbcType=VARCHAR},</if>
                 <if test="dMobile != null">#{dMobile,jdbcType=VARCHAR},</if>
                 <if test="deliveryDate != null">#{deliveryDate,jdbcType=VARCHAR},</if>
@@ -164,6 +185,9 @@
                 <if test="customerName != null">
                     customer_name = #{customerName,jdbcType=VARCHAR},
                 </if>
+                <if test="projectName != null">
+                    project_name = #{projectName,jdbcType=VARCHAR},
+                </if>
                 <if test="director != null">
                     director = #{director,jdbcType=VARCHAR},
                 </if>

--
Gitblit v1.8.0