From c89cf8126ed20af98e19b8ab1f63e8bfae596788 Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期三, 16 十月 2024 17:11:05 +0800
Subject: [PATCH] command crud

---
 pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml |  190 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 163 insertions(+), 27 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 b4ca8d5..6335d2f 100644
--- a/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
+++ b/pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
@@ -8,85 +8,221 @@
             <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"/>
+            <result property="deliveryAddress" column="delivery_address" jdbcType="VARCHAR"/>
+            <result property="recipient" column="recipient" jdbcType="VARCHAR"/>
+            <result property="rMobile" column="r_mobile" jdbcType="VARCHAR"/>
             <result property="status" column="status" jdbcType="TINYINT"/>
             <result property="creator" column="creator" jdbcType="VARCHAR"/>
             <result property="dt" column="dt" jdbcType="TIMESTAMP"/>
-            <result property="deleted" column="deleted" jdbcType="TINYINT"/>
+            <result column="deleted" property="deleted" typeHandler="com.dy.common.mybatis.BooleanTypeHandler" />
             <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="com.dy.pmsGlobal.daoPr.PrOrderItemMapper.selectItems" column="id" />
+    </resultMap>
+    <resultMap id="BaseResultMap3" type="com.dy.pmsGlobal.pojoPr.PrOrder" extends="BaseResultMap">
+        <collection property="items" ofType="com.dy.pmsGlobal.pojoPr.PrOrderItem" fetchType="eager" select="com.dy.pmsGlobal.daoPr.PrOrderItemMapper.selectDistinctPro" column="id" />
+    </resultMap>
     <sql id="Base_Column_List">
-        id,name,customer_name,
-        director,d_mobile,delivery_date,
+        id,`name`,customer_name,project_name,
+        director,d_mobile,delivery_date,delivery_address,recipient,r_mobile,
         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">
+            and id != #{id}
+        </if>
+    </select>
 
+    <select id="selectSome" resultMap="BaseResultMap2">
+        select
+        <include refid="Base_Column_List" />
+        from pr_order p
+        where p.deleted!=1
+        <trim prefix="and" suffixOverrides="and">
+            <if test="name != null and name != ''">
+                  name like concat('%', #{name}, '%') and
+            </if>
+            <if test="customerName != null and customerName != ''">
+                 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
+            </if>
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null">
+                 status = #{status,jdbcType=TINYINT} and
+            </if>
+        </trim>
+        order by id desc
+        <trim prefix="limit " >
+            <if test="start != null and count != null">
+                #{start}, #{count}
+            </if>
+        </trim>
+    </select>
+
+    <select id="selectSomeCount" resultType="java.lang.Long">
+        select count(1)
+        from pr_order p
+        where p.deleted!=1
+        <trim prefix="and" suffixOverrides="and">
+            <if test="name != null and name != ''">
+                 name like concat('%', #{name}, '%') and
+            </if>
+            <if test="customerName != null and customerName != ''">
+                 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
+            </if>
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null">
+                 status = #{status,jdbcType=TINYINT} and
+            </if>
+        </trim>
+    </select>
+    <!--涓嬫媺鑿滃崟璁㈠崟-->
+    <select id="selectAll" resultType="com.dy.pmsGlobal.pojoPr.PrOrder">
+        select
+        <include refid="Base_Column_List" />
+        from pr_order p
+        where p.deleted!=1
+        <trim prefix="and" suffixOverrides="and">
+            <if test="name != null and name != ''">
+                 name like concat('%', #{name}, '%') and
+            </if>
+            <if test="customerName != null and customerName != ''">
+                 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
+            </if>
+            <if test="startDate != null and startDate != ''">
+                 delivery_date <![CDATA[ > ]]> #{startDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="endDate != null and endDate != ''">
+                 delivery_date <![CDATA[ < ]]> #{endDate,jdbcType=VARCHAR} and
+            </if>
+            <if test="status != null">
+                 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} 
     </delete>
+    <update id="deleteLogicById" parameterType="java.lang.Long">
+        update pr_order set deleted = 1
+        where id = #{id}
+    </update>
     <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrOrder" useGeneratedKeys="true">
         insert into pr_order
         <trim prefix="(" suffix=")" suffixOverrides=",">
                 <if test="id != null">id,</if>
-                <if test="name != null">name,</if>
-                <if test="customerName != null">customer_name,</if>
-                <if test="director != null">director,</if>
-                <if test="dMobile != null">d_mobile,</if>
-                <if test="deliveryDate != null">delivery_date,</if>
+                <if test="name != null and name !=''">name,</if>
+                <if test="customerName!= null and customerName !=''">customer_name,</if>
+                <if test="projectName!= null and projectName !=''">project_name,</if>
+                <if test="director != null and director !=''">director,</if>
+                <if test="dMobile != null and dMobile !=''">d_mobile,</if>
+                <if test="deliveryDate!= null and deliveryDate !=''">delivery_date,</if>
+                <if test="deliveryAddress!= null and deliveryAddress !=''">delivery_date,</if>
+                <if test="recipient!= null and recipient !=''">recipient,</if>
+                <if test="rMobile!= null and rMobile !=''">r_mobile,</if>
                 <if test="status != null">status,</if>
-                <if test="creator != null">creator,</if>
+                <if test="creator != null and creator !=''">creator,</if>
                 <if test="dt != null">dt,</if>
                 <if test="deleted != null">deleted,</if>
-                <if test="remark != null">remark,</if>
+                <if test="remark != null and remark !=''">remark,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
                 <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="director != null">#{director,jdbcType=VARCHAR},</if>
-                <if test="dMobile != null">#{dMobile,jdbcType=VARCHAR},</if>
-                <if test="deliveryDate != null">#{deliveryDate,jdbcType=VARCHAR},</if>
+                <if test="name != null and name !=''">#{name,jdbcType=VARCHAR},</if>
+                <if test="customerName!= null and customerName !=''">#{customerName,jdbcType=VARCHAR},</if>
+                <if test="projectName!= null and projectName !=''">#{projectName,jdbcType=VARCHAR},</if>
+                <if test="director != null and director !=''">#{director,jdbcType=VARCHAR},</if>
+                <if test="dMobile != null and dMobile !=''">#{dMobile,jdbcType=VARCHAR},</if>
+                <if test="deliveryDate!= null and deliveryDate !=''">#{deliveryDate,jdbcType=VARCHAR},</if>
+                <if test="deliveryAddress!= null and deliveryAddress !=''">#{deliveryAddress,jdbcType=VARCHAR},</if>
+                <if test="recipient!= null and recipient !=''">#{recipient,jdbcType=VARCHAR},</if>
+                <if test="rMobile!= null and rMobile !=''">#{rMobile,jdbcType=VARCHAR},</if>
                 <if test="status != null">#{status,jdbcType=TINYINT},</if>
-                <if test="creator != null">#{creator,jdbcType=VARCHAR},</if>
+                <if test="creator != null and creator !=''">#{creator,jdbcType=VARCHAR},</if>
                 <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if>
                 <if test="deleted != null">#{deleted,jdbcType=TINYINT},</if>
-                <if test="remark != null">#{remark,jdbcType=VARCHAR},</if>
+                <if test="remark != null and remark !=''">#{remark,jdbcType=VARCHAR},</if>
         </trim>
     </insert>
     <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPr.PrOrder">
         update pr_order
         <set>
-                <if test="name != null">
+                <if test="name != null and name !=''">
                     name = #{name,jdbcType=VARCHAR},
                 </if>
-                <if test="customerName != null">
+                <if test="customerName!= null and customerName !=''">
                     customer_name = #{customerName,jdbcType=VARCHAR},
                 </if>
-                <if test="director != null">
+                <if test="projectName!= null and projectName !=''">
+                    project_name = #{projectName,jdbcType=VARCHAR},
+                </if>
+                <if test="director != null and director !=''">
                     director = #{director,jdbcType=VARCHAR},
                 </if>
-                <if test="dMobile != null">
+                <if test="dMobile != null and dMobile !=''">
                     d_mobile = #{dMobile,jdbcType=VARCHAR},
                 </if>
-                <if test="deliveryDate != null">
+                <if test="deliveryDate!= null and deliveryDate !=''">
                     delivery_date = #{deliveryDate,jdbcType=VARCHAR},
+                </if>
+                <if test="deliveryAddress!= null and deliveryAddress !=''">
+                    delivery_date = #{deliveryAddress,jdbcType=VARCHAR},
+                </if>
+                <if test="recipient!= null and recipient !=''">
+                    recipient = #{recipient,jdbcType=VARCHAR},
+                </if>
+                <if test="rMobile!= null and rMobile !=''">
+                    r_mobile = #{rMobile,jdbcType=VARCHAR},
                 </if>
                 <if test="status != null">
                     status = #{status,jdbcType=TINYINT},
                 </if>
-                <if test="creator != null">
+                <if test="creator != null and creator !=''">
                     creator = #{creator,jdbcType=VARCHAR},
                 </if>
                 <if test="dt != null">
@@ -95,7 +231,7 @@
                 <if test="deleted != null">
                     deleted = #{deleted,jdbcType=TINYINT},
                 </if>
-                <if test="remark != null">
+                <if test="remark != null and remark !=''">
                     remark = #{remark,jdbcType=VARCHAR},
                 </if>
         </set>

--
Gitblit v1.8.0