From db9aadf9df7d875aec7da5ab957fbd2e87557fcc Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 20 十二月 2023 18:17:42 +0800
Subject: [PATCH] 2023-12-20 朱宝民 dao优化

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeActiveCardMapper.xml |  161 ++++++++++++++++++++++++++++-------------------------
 1 files changed, 85 insertions(+), 76 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeActiveCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeActiveCardMapper.xml
index a98cfd4..941c01e 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeActiveCardMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeActiveCardMapper.xml
@@ -5,7 +5,8 @@
     <!--@mbg.generated-->
     <!--@Table se_active_card-->
     <id column="id" jdbcType="BIGINT" property="id" />
-    <result column="cardId" jdbcType="BIGINT" property="cardid" />
+    <result column="cardNum" jdbcType="VARCHAR" property="cardnum" />
+    <result column="clientNum" jdbcType="VARCHAR" property="clientnum" />
     <result column="cardCost" jdbcType="INTEGER" property="cardcost" />
     <result column="paymentId" jdbcType="BIGINT" property="paymentid" />
     <result column="reissueAmount" jdbcType="DOUBLE" property="reissueamount" />
@@ -16,8 +17,8 @@
   </resultMap>
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, cardId, cardCost, paymentId, reissueAmount, operateType, remarks, `operator`, 
-    operateDt
+    id, cardNum, clientNum, cardCost, paymentId, reissueAmount, operateType, remarks, 
+    `operator`, operateDt
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
@@ -32,26 +33,30 @@
     where id = #{id,jdbcType=BIGINT}
   </delete>
 
-  <!--鏍规嵁姘村崱缂栧彿鍜屾搷浣滅被鍨嬪垹闄ゆ煇鍗¤ˉ鍗¤褰�-->
-  <delete id="deleteByIdAndOperateType">
-    DELETE FROM se_active_card WHERE id = ${cardId} AND operateType = ${operateType}
-  </delete>
-
-  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard" useGeneratedKeys="true">
+  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard">
     <!--@mbg.generated-->
-    insert into se_active_card (cardId, cardCost, paymentId, 
-      reissueAmount, operateType, remarks, 
-      `operator`, operateDt)
-    values (#{cardid,jdbcType=BIGINT}, #{cardcost,jdbcType=INTEGER}, #{paymentid,jdbcType=BIGINT}, 
-      #{reissueamount,jdbcType=DOUBLE}, #{operatetype,jdbcType=TINYINT}, #{remarks,jdbcType=VARCHAR}, 
-      #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP})
+    insert into se_active_card (id, cardNum, clientNum, cardCost, paymentId, reissueAmount, operateType, remarks, `operator`, operateDt)
+    values (#{id,jdbcType=BIGINT},
+    #{cardnum,jdbcType=VARCHAR},
+    #{clientnum,jdbcType=VARCHAR},
+    #{cardcost,jdbcType=INTEGER},
+    #{paymentid,jdbcType=BIGINT},
+    #{reissueamount,jdbcType=DOUBLE},
+    #{operatetype,jdbcType=TINYINT},
+    #{remarks,jdbcType=VARCHAR},
+    #{operator,jdbcType=BIGINT},
+    #{operatedt,jdbcType=TIMESTAMP})
   </insert>
+
   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard" useGeneratedKeys="true">
     <!--@mbg.generated-->
     insert into se_active_card
     <trim prefix="(" suffix=")" suffixOverrides=",">
-      <if test="cardid != null">
-        cardId,
+      <if test="cardnum != null">
+        cardNum,
+      </if>
+      <if test="clientnum != null">
+        clientNum,
       </if>
       <if test="cardcost != null">
         cardCost,
@@ -76,8 +81,11 @@
       </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
-      <if test="cardid != null">
-        #{cardid,jdbcType=BIGINT},
+      <if test="cardnum != null">
+        #{cardnum,jdbcType=VARCHAR},
+      </if>
+      <if test="clientnum != null">
+        #{clientnum,jdbcType=VARCHAR},
       </if>
       <if test="cardcost != null">
         #{cardcost,jdbcType=INTEGER},
@@ -106,8 +114,11 @@
     <!--@mbg.generated-->
     update se_active_card
     <set>
-      <if test="cardid != null">
-        cardId = #{cardid,jdbcType=BIGINT},
+      <if test="cardnum != null">
+        cardNum = #{cardnum,jdbcType=VARCHAR},
+      </if>
+      <if test="clientnum != null">
+        clientNum = #{clientnum,jdbcType=VARCHAR},
       </if>
       <if test="cardcost != null">
         cardCost = #{cardcost,jdbcType=INTEGER},
@@ -136,7 +147,8 @@
   <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard">
     <!--@mbg.generated-->
     update se_active_card
-    set cardId = #{cardid,jdbcType=BIGINT},
+    set cardNum = #{cardnum,jdbcType=VARCHAR},
+      clientNum = #{clientnum,jdbcType=VARCHAR},
       cardCost = #{cardcost,jdbcType=INTEGER},
       paymentId = #{paymentid,jdbcType=BIGINT},
       reissueAmount = #{reissueamount,jdbcType=DOUBLE},
@@ -151,57 +163,9 @@
   <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
     SELECT
         COUNT(*) AS recordCount
-    FROM se_client_card card
-    INNER JOIN se_active_card act ON act.cardId = card.id
-    INNER JOIN ba_client cli ON	 card.clientId = cli.id
-    , (SELECT @i:=0) AS itable
-    <where>
-      <if test = "operateType != null and operateType > 0">
-        AND act.operateType = ${operateType}
-      </if>
-
-      <if test = "clientName != null and clientName !=''">
-        AND cli.name like CONCAT('%',#{clientName},'%')
-      </if>
-
-      <if test = "cardAddr != null and cardAddr !=''">
-        AND card.cardAddr like CONCAT('%',#{cardAddr},'%')
-      </if>
-
-      <if test = "state != null and state > 0">
-        AND card.state = ${state}
-      </if>
-
-      <if test = "activeTimeStart != null and activeTimeStop != null">
-        AND card.createDt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
-      </if>
-    </where>
-  </select>
-
-  <!--鏍规嵁鎸囧畾鐨勬潯浠惰幏鍙栧紑鍗¤褰�-->
-  <select id="getActiveCards" resultType="com.dy.pipIrrGlobal.pojoSe.VoActiveCard">
-    SELECT
-      (@i:=@i+1) AS id,
-      cli.`name` AS clientName,
-      cli.id AS clientId,
-      card.cardAddr,
-      card.state,
-      (CASE
-        WHEN card.state = 1 THEN
-            "姝e父"
-        WHEN card.state = 2 THEN
-            "宸叉敞閿�"
-        ELSE
-            "宸叉寕澶�"
-      END) AS stateName,
-      act.reissueAmount,
-      act.cardCost,
-      act.paymentId,
-      (SELECT `name` FROM ba_user WHERE id =  act.operator) AS operator,
-      act.operateDt
-    FROM se_client_card card
-      INNER JOIN se_active_card act ON act.cardId = card.id
-      INNER JOIN ba_client cli ON	 card.clientId = cli.id
+    FROM se_active_card act
+      INNER JOIN ba_client cli ON act.clientNum = cli.num
+      INNER JOIN se_client_card card ON act.cardNum = card.cardNum
       , (SELECT @i:=0) AS itable
     <where>
       <if test = "operateType != null and operateType > 0">
@@ -212,8 +176,8 @@
         AND cli.name like CONCAT('%',#{clientName},'%')
       </if>
 
-      <if test = "cardAddr != null and cardAddr !=''">
-        AND card.cardAddr like CONCAT('%',#{cardAddr},'%')
+      <if test = "cardNum != null and cardNum !=''">
+        AND card.cardNum like CONCAT('%',#{cardNum},'%')
       </if>
 
       <if test = "state != null and state > 0">
@@ -221,10 +185,55 @@
       </if>
 
       <if test = "activeTimeStart != null and activeTimeStop != null">
-        AND card.createDt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+        AND act.operateDt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
       </if>
     </where>
+  </select>
 
+  <!--鏍规嵁鎸囧畾鐨勬潯浠惰幏鍙栧紑鍗¤褰�-->
+  <select id="getActiveCards" resultType="com.dy.pipIrrGlobal.voSe.VoActiveCard">
+    SELECT
+        (@i:=@i+1) AS id,
+        cli.`name` AS clientName,
+        cli.num AS clientNum,
+        card.cardNum,
+        card.state,
+        (CASE
+          WHEN card.state = 1 THEN "姝e父"
+          WHEN card.state = 2 THEN "宸叉敞閿�"
+          ELSE "宸叉寕澶�"
+        END) AS stateName,
+        act.reissueAmount,
+        act.cardCost,
+        act.paymentId,
+        (SELECT `name` FROM ba_user WHERE id =  act.operator) AS operator,
+        act.operateDt
+    FROM se_active_card act
+        INNER JOIN ba_client cli ON act.clientNum = cli.num
+        INNER JOIN se_client_card card ON act.cardNum = card.cardNum
+        , (SELECT @i:=0) AS itable
+    <where>
+      <if test = "operateType != null and operateType > 0">
+        AND act.operateType = ${operateType}
+      </if>
+
+      <if test = "clientName != null and clientName !=''">
+        AND cli.name like CONCAT('%',#{clientName},'%')
+      </if>
+
+      <if test = "cardNum != null and cardNum !=''">
+        AND card.cardNum like CONCAT('%',#{cardNum},'%')
+      </if>
+
+      <if test = "state != null and state > 0">
+        AND card.state = ${state}
+      </if>
+
+      <if test = "activeTimeStart != null and activeTimeStop != null">
+        AND act.operateDt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+      </if>
+    </where>
+    ORDER BY act.operateDt DESC
     <if test="pageCurr != null and pageSize != null">
       LIMIT ${pageCurr}, ${pageSize}
     </if>

--
Gitblit v1.8.0