From d65cc4cd967d9c8cbdc8a4dd7c803e952f01098f Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期三, 28 八月 2024 14:53:35 +0800
Subject: [PATCH] 修改用户登录接口 优化取水口绑定、解绑控制器接口

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml |  321 ++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 205 insertions(+), 116 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml
index 0e5b341..0bd1556 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml
@@ -1,126 +1,215 @@
 <?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.dy.pipIrrGlobal.daoSe.SeVcOperateMapper">
-  <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
-    <!--@mbg.generated-->
-    <!--@Table se_vc_operate-->
-    <id column="id" jdbcType="BIGINT" property="id" />
-    <result column="vc_id" jdbcType="BIGINT" property="vcId" />
-    <result column="client_id" jdbcType="BIGINT" property="clientId" />
-    <result column="operate_type" jdbcType="TINYINT" property="operateType" />
-    <result column="recharge_id" jdbcType="BIGINT" property="rechargeId" />
-    <result column="operator" jdbcType="BIGINT" property="operator" />
-    <result column="operate_time" jdbcType="TIMESTAMP" property="operateTime" />
-  </resultMap>
-  <sql id="Base_Column_List">
-    <!--@mbg.generated-->
-    id, vc_id, client_id, operate_type, recharge_id, `operator`, operate_time
-  </sql>
-  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
-    <!--@mbg.generated-->
-    select 
-    <include refid="Base_Column_List" />
-    from se_vc_operate
-    where id = #{id,jdbcType=BIGINT}
-  </select>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
-    <!--@mbg.generated-->
-    delete from se_vc_operate
-    where id = #{id,jdbcType=BIGINT}
-  </delete>
-  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
-    <!--@mbg.generated-->
-    insert into se_vc_operate (id, vc_id, client_id, 
-      operate_type, recharge_id, `operator`, 
-      operate_time)
-    values (#{id,jdbcType=BIGINT}, #{vcId,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT}, 
-      #{operateType,jdbcType=TINYINT}, #{rechargeId,jdbcType=BIGINT}, #{operator,jdbcType=BIGINT}, 
-      #{operateTime,jdbcType=TIMESTAMP})
-  </insert>
-  <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
-    <!--@mbg.generated-->
-    insert into se_vc_operate
-    <trim prefix="(" suffix=")" suffixOverrides=",">
-      <if test="id != null">
+    <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
+        <!--@mbg.generated-->
+        <!--@Table se_vc_operate-->
+        <id column="id" jdbcType="BIGINT" property="id"/>
+        <result column="vc_id" jdbcType="BIGINT" property="vcId"/>
+        <result column="client_id" jdbcType="BIGINT" property="clientId"/>
+        <result column="operate_type" jdbcType="TINYINT" property="operateType"/>
+        <result column="recharge_id" jdbcType="BIGINT" property="rechargeId"/>
+        <result column="operator" jdbcType="BIGINT" property="operator"/>
+        <result column="operate_time" jdbcType="TIMESTAMP" property="operateTime"/>
+    </resultMap>
+    <sql id="Base_Column_List">
+        <!--@mbg.generated-->
         id,
-      </if>
-      <if test="vcId != null">
         vc_id,
-      </if>
-      <if test="clientId != null">
         client_id,
-      </if>
-      <if test="operateType != null">
         operate_type,
-      </if>
-      <if test="rechargeId != null">
         recharge_id,
-      </if>
-      <if test="operator != null">
         `operator`,
-      </if>
-      <if test="operateTime != null">
-        operate_time,
-      </if>
-    </trim>
-    <trim prefix="values (" suffix=")" suffixOverrides=",">
-      <if test="id != null">
-        #{id,jdbcType=BIGINT},
-      </if>
-      <if test="vcId != null">
-        #{vcId,jdbcType=BIGINT},
-      </if>
-      <if test="clientId != null">
-        #{clientId,jdbcType=BIGINT},
-      </if>
-      <if test="operateType != null">
-        #{operateType,jdbcType=TINYINT},
-      </if>
-      <if test="rechargeId != null">
-        #{rechargeId,jdbcType=BIGINT},
-      </if>
-      <if test="operator != null">
-        #{operator,jdbcType=BIGINT},
-      </if>
-      <if test="operateTime != null">
-        #{operateTime,jdbcType=TIMESTAMP},
-      </if>
-    </trim>
-  </insert>
-  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
-    <!--@mbg.generated-->
-    update se_vc_operate
-    <set>
-      <if test="vcId != null">
-        vc_id = #{vcId,jdbcType=BIGINT},
-      </if>
-      <if test="clientId != null">
-        client_id = #{clientId,jdbcType=BIGINT},
-      </if>
-      <if test="operateType != null">
-        operate_type = #{operateType,jdbcType=TINYINT},
-      </if>
-      <if test="rechargeId != null">
-        recharge_id = #{rechargeId,jdbcType=BIGINT},
-      </if>
-      <if test="operator != null">
-        `operator` = #{operator,jdbcType=BIGINT},
-      </if>
-      <if test="operateTime != null">
-        operate_time = #{operateTime,jdbcType=TIMESTAMP},
-      </if>
-    </set>
-    where id = #{id,jdbcType=BIGINT}
-  </update>
-  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
-    <!--@mbg.generated-->
-    update se_vc_operate
-    set vc_id = #{vcId,jdbcType=BIGINT},
-      client_id = #{clientId,jdbcType=BIGINT},
-      operate_type = #{operateType,jdbcType=TINYINT},
-      recharge_id = #{rechargeId,jdbcType=BIGINT},
-      `operator` = #{operator,jdbcType=BIGINT},
-      operate_time = #{operateTime,jdbcType=TIMESTAMP}
-    where id = #{id,jdbcType=BIGINT}
-  </update>
+        operate_time
+    </sql>
+    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+        <!--@mbg.generated-->
+        select
+        <include refid="Base_Column_List"/>
+        from se_vc_operate
+        where id = #{id,jdbcType=BIGINT}
+    </select>
+    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+        <!--@mbg.generated-->
+        delete
+        from se_vc_operate
+        where id = #{id,jdbcType=BIGINT}
+    </delete>
+    <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
+        <!--@mbg.generated-->
+        insert into se_vc_operate (id, vc_id, client_id,
+                                   operate_type, recharge_id, `operator`,
+                                   operate_time)
+        values (#{id,jdbcType=BIGINT}, #{vcId,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT},
+                #{operateType,jdbcType=TINYINT}, #{rechargeId,jdbcType=BIGINT}, #{operator,jdbcType=BIGINT},
+                #{operateTime,jdbcType=TIMESTAMP})
+    </insert>
+    <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
+        <!--@mbg.generated-->
+        insert into se_vc_operate
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">
+                id,
+            </if>
+            <if test="vcId != null">
+                vc_id,
+            </if>
+            <if test="clientId != null">
+                client_id,
+            </if>
+            <if test="operateType != null">
+                operate_type,
+            </if>
+            <if test="rechargeId != null">
+                recharge_id,
+            </if>
+            <if test="operator != null">
+                `operator`,
+            </if>
+            <if test="operateTime != null">
+                operate_time,
+            </if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">
+                #{id,jdbcType=BIGINT},
+            </if>
+            <if test="vcId != null">
+                #{vcId,jdbcType=BIGINT},
+            </if>
+            <if test="clientId != null">
+                #{clientId,jdbcType=BIGINT},
+            </if>
+            <if test="operateType != null">
+                #{operateType,jdbcType=TINYINT},
+            </if>
+            <if test="rechargeId != null">
+                #{rechargeId,jdbcType=BIGINT},
+            </if>
+            <if test="operator != null">
+                #{operator,jdbcType=BIGINT},
+            </if>
+            <if test="operateTime != null">
+                #{operateTime,jdbcType=TIMESTAMP},
+            </if>
+        </trim>
+    </insert>
+    <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
+        <!--@mbg.generated-->
+        update se_vc_operate
+        <set>
+            <if test="vcId != null">
+                vc_id = #{vcId,jdbcType=BIGINT},
+            </if>
+            <if test="clientId != null">
+                client_id = #{clientId,jdbcType=BIGINT},
+            </if>
+            <if test="operateType != null">
+                operate_type = #{operateType,jdbcType=TINYINT},
+            </if>
+            <if test="rechargeId != null">
+                recharge_id = #{rechargeId,jdbcType=BIGINT},
+            </if>
+            <if test="operator != null">
+                `operator` = #{operator,jdbcType=BIGINT},
+            </if>
+            <if test="operateTime != null">
+                operate_time = #{operateTime,jdbcType=TIMESTAMP},
+            </if>
+        </set>
+        where id = #{id,jdbcType=BIGINT}
+    </update>
+    <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate">
+        <!--@mbg.generated-->
+        update se_vc_operate
+        set vc_id        = #{vcId,jdbcType=BIGINT},
+            client_id    = #{clientId,jdbcType=BIGINT},
+            operate_type = #{operateType,jdbcType=TINYINT},
+            recharge_id  = #{rechargeId,jdbcType=BIGINT},
+            `operator`   = #{operator,jdbcType=BIGINT},
+            operate_time = #{operateTime,jdbcType=TIMESTAMP}
+        where id = #{id,jdbcType=BIGINT}
+    </update>
+
+    <!--鎸囧畾鏃堕棿娈靛唴娉ㄥ唽铏氭嫙鍗$殑鍐滄埛璁板綍鏁伴噺-->
+    <select id="getRegisterVcClientsCount" resultType="java.lang.Long">
+        SELECT COUNT(*) AS recordCount
+        FROM se_client cli
+        WHERE EXISTS(SELECT *
+                     FROM se_vc_operate ope
+                     WHERE ope.client_id = cli.id
+                       AND ope.operate_type = 1
+                       AND ope.operate_time BETWEEN #{timeStart} AND #{timeStop})
+    </select>
+
+    <!--鎸囧畾鏃堕棿娈靛唴娉ㄥ唽铏氭嫙鍗$殑鍐滄埛-->
+    <select id="getRegisterVcClients" resultType="com.dy.pipIrrGlobal.voSt.VoClientStatistics">
+        SELECT cli.id   AS clientId,
+               cli.name AS clientName
+        FROM se_client cli
+        WHERE EXISTS(SELECT *
+                     FROM se_vc_operate ope
+                     WHERE ope.client_id = cli.id
+                       AND ope.operate_type = 1
+                       AND ope.operate_time BETWEEN #{timeStart} AND #{timeStop})
+        ORDER BY cli.id
+        <trim prefix="limit ">
+            <if test="start != null and count != null">
+                #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+            </if>
+        </trim>
+    </select>
+
+    <!--鎸囧畾鏃堕棿娈靛唴娉ㄥ唽鎬绘暟閲�-->
+    <select id="getRegisterCount" resultType="java.lang.Long">
+        SELECT COUNT(*) AS recordCount
+        FROM se_vc_operate ope
+        WHERE ope.operate_type = 1
+          AND ope.operate_time BETWEEN #{timeStart} AND #{timeStop}
+    </select>
+
+    <!--鎸囧畾鏃堕棿娈靛厖鍊兼�绘暟閲�-->
+    <select id="getRechargeCount" resultType="java.lang.Long">
+        SELECT COUNT(*) AS recordCount
+        FROM se_vc_operate ope
+                 INNER JOIN se_vc_recharge rec ON rec.id = ope.recharge_id
+        WHERE ope.operate_type = 2
+          AND rec.order_state = 2
+          AND ope.operate_time BETWEEN #{timeStart} AND #{timeStop}
+    </select>
+
+    <!--褰撳墠浣欓鎬婚噺-->
+    <select id="getTotalBalance" resultType="java.lang.Double">
+        SELECT SUM(money) AS totalBalance
+        FROM se_virtual_card
+    </select>
+
+    <!--鎸囧畾鏃堕棿娈靛唴铏氭嫙鍗″厖鍊奸噾棰濊秴杩囨寚瀹氬�肩殑鍐滄埛璁板綍鏁伴噺-->
+    <select id="getLargeRechargeClientsCount" resultType="java.lang.Long">
+        SELECT COUNT(*) AS recordCount
+        FROM se_client cli
+        WHERE (SELECT SUM(recharge_amount)
+               FROM se_vc_recharge rec
+               WHERE rec.client_id = cli.id
+                 AND rec.order_state = 2
+                 AND rec.order_time BETWEEN #{timeStart} AND #{timeStop}) > #{totalRecharge}
+    </select>
+
+    <!--鎸囧畾鏃堕棿娈靛唴铏氭嫙鍗″厖鍊奸噾棰濊秴杩囨寚瀹氬�肩殑鍐滄埛-->
+    <select id="getLargeRechargeClients" resultType="com.dy.pipIrrGlobal.voSt.VoClientStatistics">
+        SELECT cli.id   AS clientId,
+               cli.name AS clientName
+        FROM se_client cli
+        WHERE (SELECT SUM(recharge_amount)
+               FROM se_vc_recharge rec
+               WHERE rec.client_id = cli.id
+                 AND rec.order_state = 2
+                 AND rec.order_time BETWEEN #{timeStart} AND #{timeStop}) > #{totalRecharge}
+        ORDER BY cli.id
+        <trim prefix="limit ">
+            <if test="start != null and count != null">
+                #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+            </if>
+        </trim>
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0