From 1f46976c9ee72d7889fceee968db9c8aef885eca Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 28 十月 2024 17:28:15 +0800 Subject: [PATCH] 远程监控中开关阀记录查询重构,增加了水价信息,调整了显示内容,优化SQL语句,开闭阀类型改为通信协议中的Common*.*.java中的统一匹配。 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml | 176 +++++++++++++++++++--------------------------------------- 1 files changed, 58 insertions(+), 118 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml index e929674..cbbad3c 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml @@ -30,6 +30,7 @@ <result column="cl_this_amount" jdbcType="DOUBLE" property="clThisAmount"/> <result column="cl_this_money" jdbcType="DOUBLE" property="clThisMoney"/> <result column="cl_this_time" jdbcType="INTEGER" property="clThisTime"/> + <result column="cl_price" jdbcType="DOUBLE" property="clPrice"/> <result column="cl_open_dt" jdbcType="TIMESTAMP" property="clOpenDt"/> <result column="close_dt" jdbcType="TIMESTAMP" property="closeDt"/> <result column="cl_order_no" jdbcType="VARCHAR" property="clOrderNo"/> @@ -65,6 +66,7 @@ cl_this_amount, cl_this_money, cl_this_time, + cl_price, cl_open_dt, close_dt, cl_order_no, @@ -102,7 +104,7 @@ op_order_no, op_ele_total_amount, op_water_remain_user, cl_dt, cl_type, cl_total_amount, cl_ic_card_no, cl_ic_card_addr, cl_remain_money, - cl_this_amount, cl_this_money, cl_this_time, + cl_this_amount, cl_this_money, cl_this_time, cl_price, cl_open_dt, close_dt, cl_order_no, cl_ele_total_amount, cl_water_remain_user, cl_this_ele) values (#{id,jdbcType=BIGINT}, #{lastHistoryId,jdbcType=BIGINT}, @@ -114,8 +116,9 @@ #{clDt,jdbcType=TIMESTAMP}, #{clType,jdbcType=TINYINT}, #{clTotalAmount,jdbcType=DOUBLE}, #{clIcCardNo,jdbcType=VARCHAR}, #{clIcCardAddr,jdbcType=VARCHAR}, #{clRemainMoney,jdbcType=DOUBLE}, #{clThisAmount,jdbcType=DOUBLE}, #{clThisMoney,jdbcType=DOUBLE}, #{clThisTime,jdbcType=INTEGER}, - #{clOpenDt,jdbcType=TIMESTAMP}, #{closeDt,jdbcType=TIMESTAMP}, #{clOrderNo,jdbcType=VARCHAR}, - #{clEleTotalAmount,jdbcType=FLOAT}, #{clWaterRemainUser,jdbcType=FLOAT}, #{clThisEle,jdbcType=FLOAT}) + #{clPrice,jdbcType=DOUBLE},#{clOpenDt,jdbcType=TIMESTAMP}, #{closeDt,jdbcType=TIMESTAMP}, + #{clOrderNo,jdbcType=VARCHAR},#{clEleTotalAmount,jdbcType=FLOAT}, #{clWaterRemainUser,jdbcType=FLOAT}, + #{clThisEle,jdbcType=FLOAT}) </insert> <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast"> <!--@mbg.generated--> @@ -198,6 +201,9 @@ </if> <if test="clThisTime != null"> cl_this_time, + </if> + <if test="clPrice != null"> + cl_price, </if> <if test="clOpenDt != null"> cl_open_dt, @@ -296,6 +302,9 @@ </if> <if test="clThisTime != null"> #{clThisTime,jdbcType=INTEGER}, + </if> + <if test="clPrice != null"> + #{clPrice,jdbcType=DOUBLE}, </if> <if test="clOpenDt != null"> #{clOpenDt,jdbcType=TIMESTAMP}, @@ -396,6 +405,9 @@ <if test="clThisTime != null"> cl_this_time = #{clThisTime,jdbcType=INTEGER}, </if> + <if test="clPrice != null"> + cl_price = #{clPrice,jdbcType=DOUBLE}, + </if> <if test="clOpenDt != null"> cl_open_dt = #{clOpenDt,jdbcType=TIMESTAMP}, </if> @@ -445,6 +457,7 @@ cl_this_amount = #{clThisAmount,jdbcType=DOUBLE}, cl_this_money = #{clThisMoney,jdbcType=DOUBLE}, cl_this_time = #{clThisTime,jdbcType=INTEGER}, + cl_price = #{clPrice,jdbcType=DOUBLE}, cl_open_dt = #{clOpenDt,jdbcType=TIMESTAMP}, close_dt = #{closeDt,jdbcType=TIMESTAMP}, cl_order_no = #{clOrderNo,jdbcType=VARCHAR}, @@ -466,14 +479,17 @@ <if test="intakeNum != null and intakeNum != ''"> AND inta.name LIKE CONCAT('%', #{intakeNum}, '%') </if> + <if test="clientName != null and clientName != ''"> + AND oh.client_name LIKE CONCAT('%', #{clientName}, '%') + </if> <if test="rtuAddr != null and rtuAddr != ''"> AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%') </if> <if test="timeStart_open != null and timeStart_open != '' and timeStop_open != null and timeStop_open != ''"> - AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} + AND oh.open_dt BETWEEN #{timeStart_open} AND #{timeStop_open} </if> <if test="timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != ''"> - AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} + AND oh.close_dt BETWEEN #{timeStart_close} AND #{timeStop_close} </if> </where> </select> @@ -481,133 +497,50 @@ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍏抽榾鎶ユ渶鏂拌褰�--> <select id="getOpenCloseValveReports_last" resultType="com.dy.pipIrrGlobal.voRm.VoOpenCloseValve"> SELECT oh.intake_id AS intakeId, - inta.name AS intakeNum, - oh.rtu_addr AS rtuAddr, - oh.client_name AS clientName, - oh.op_ic_card_no AS openIcNum, - oh.op_ic_card_addr AS openIcAddr, - oh.op_dt AS openTime, - CASE - WHEN oh.op_type = 1 THEN '鍒峰崱寮�闃�' - WHEN oh.op_type = 3 THEN '涓績绔欏紑闃�' - WHEN oh.op_type = 5 THEN '浣欓涓嶈冻鍏抽榾' - WHEN oh.op_type = 8 THEN '鐢ㄦ埛杩滅▼寮�闃�' - WHEN oh.op_type = 11 THEN '寮�鍏抽榾鍗″紑闃�' - ELSE '鏈煡' - END AS openType, - oh.op_order_no AS openOrderNo, - oh.op_total_amount AS openTotalAmount, - oh.op_remain_money AS openRemainMoney, - oh.op_water_remain_user AS openWaterRemain, - oh.op_ele_total_amount AS openEleTotalAmount, - oh.cl_ic_card_no AS closeIcNum, - oh.cl_ic_card_addr AS closeIcAddr, - oh.cl_dt AS closeTime, - CASE - WHEN oh.cl_type = 2 THEN '鍒峰崱鍏抽榾' - WHEN oh.cl_type = 4 THEN '涓績绔欏叧闃�' - WHEN oh.cl_type = 5 THEN '浣欓涓嶈冻鍏抽榾' - WHEN oh.cl_type = 6 THEN '娴侀噺璁℃晠闅滃叧闃�' - WHEN oh.cl_type = 7 THEN '绱ф�ュ叧闂�' - WHEN oh.cl_type = 9 THEN '鐢ㄦ埛杩滅▼鍏抽榾' - WHEN oh.cl_type = 10 THEN '寮�鍏抽榾鍗″叧闃�' - WHEN oh.cl_type = 12 THEN '榛戝悕鍗曞懡浠ゅ叧闃�' - WHEN oh.cl_type = 13 THEN '鐢ㄦ埛杩滅▼瀹氭椂鍏抽榾' - WHEN oh.cl_type = 14 THEN '鐢ㄦ埛杩滅▼瀹氶噺鍏抽榾' - ELSE '鏈煡' - END AS closeType, - oh.cl_this_amount AS closeThisAmount, - oh.cl_this_time AS thisTime, - oh.cl_this_money AS thisMoney, - oh.cl_remain_money AS closeRemainMoney, - oh.cl_total_amount AS closeTotalAmount + inta.name AS intakenum, + oh.rtu_addr AS rtuAddr, + cl.name AS clientName, + cl.address AS clientAddr, + oh.op_ic_card_no AS openIcNum, + oh.op_ic_card_addr AS openIcAddr, + oh.open_dt AS openTime, + oh.op_type AS openType_, + oh.op_order_no AS openOrderNo, + oh.op_total_amount AS openTotalAmount, + oh.op_remain_money AS openRemainMoney, + oh.op_water_remain_user AS openWaterRemain, + oh.op_ele_total_amount AS openEleTotalAmount, + oh.cl_ic_card_no AS closeIcNum, + oh.cl_ic_card_addr AS closeIcAddr, + oh.close_dt AS closeTime, + oh.cl_type AS closeType_, + oh.cl_this_amount AS closeThisAmount, + oh.cl_this_time AS thisTime, + oh.cl_price AS closePrice, + oh.cl_this_money AS thisMoney, + oh.cl_remain_money AS closeRemainMoney, + oh.cl_total_amount AS closeTotalAmount FROM rm_open_close_valve_last oh - INNER JOIN pr_intake inta ON inta.id = oh.intake_id + LEFT JOIN pr_intake inta ON inta.id = oh.intake_id + LEFT JOIN ba_client cl ON cl.id = oh.client_id <where> <if test="intakeId != null and intakeId > 0"> AND oh.intake_id = #{intakeId} </if> <if test="intakeNum != null and intakeNum != ''"> AND inta.name LIKE CONCAT('%', #{intakeNum}, '%') + </if> + <if test="clientName != null and clientName != ''"> + AND oh.client_name LIKE CONCAT('%', #{clientName}, '%') </if> <if test="rtuAddr != null and rtuAddr != ''"> AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%') </if> <if test="timeStart_open != null and timeStart_open != '' and timeStop_open != null and timeStop_open != ''"> - AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} + AND oh.open_dt BETWEEN #{timeStart_open} AND #{timeStop_open} </if> <if test="timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != ''"> - AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} - </if> - </where> - ORDER BY oh.op_dt DESC - <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="getOpenCloseValveReports_last" resultType="com.dy.pipIrrGlobal.voRm.VoOpenCloseValve"> - SELECT oh.intake_id AS intakeId, - inta.name AS intakeNum, - oh.rtu_addr AS rtuAddr, - oh.client_name AS clientName, - oh.op_ic_card_no AS openIcNum, - oh.op_ic_card_addr AS openIcAddr, - oh.op_dt AS openTime, - - CASE - WHEN oh.op_type = 1 THEN '鍒峰崱寮�闃�' - WHEN oh.op_type = 3 THEN '涓績绔欏紑闃�' - WHEN oh.op_type = 5 THEN '浣欓涓嶈冻鍏抽榾' - WHEN oh.op_type = 8 THEN '鐢ㄦ埛杩滅▼寮�闃�' - WHEN oh.op_type = 11 THEN '寮�鍏抽榾鍗″紑闃�' - ELSE '鏈煡' - END AS openType, - oh.op_order_no AS openOrderNo, - oh.op_total_amount AS openTotalAmount, - oh.op_remain_money AS openRemainMoney, - oh.op_water_remain_user AS openWaterRemain, - oh.op_ele_total_amount AS openEleTotalAmount, - oh.cl_ic_card_no AS closeIcNum, - oh.cl_ic_card_addr AS closeIcAddr, - oh.cl_dt AS closeTime, - CASE - WHEN oh.cl_type = 2 THEN '鍒峰崱鍏抽榾' - WHEN oh.cl_type = 4 THEN '涓績绔欏叧闃�' - WHEN oh.cl_type = 5 THEN '浣欓涓嶈冻鍏抽榾' - WHEN oh.cl_type = 6 THEN '娴侀噺璁℃晠闅滃叧闃�' - WHEN oh.cl_type = 7 THEN '绱ф�ュ叧闃�' - WHEN oh.cl_type = 9 THEN '鐢ㄦ埛杩滅▼鍏抽榾' - WHEN oh.cl_type = 10 THEN '寮�鍏抽榾鍗″叧闃�' - WHEN oh.cl_type = 12 THEN '榛戝悕鍗曞懡浠ゅ叧闃�' - WHEN oh.cl_type = 13 THEN '杩滅▼瀹氭椂鍏抽榾' - WHEN oh.cl_type = 14 THEN '杩滅▼瀹氶噺鍏抽榾' - ELSE '鏈煡' - END AS closeType, - oh.cl_this_amount AS closeThisAmount, - oh.cl_this_time AS thisTime, - oh.cl_this_money AS thisMoney, - oh.cl_remain_money AS closeRemainMoney, - oh.cl_total_amount AS closeTotalAmount - FROM rm_open_close_valve_last oh - INNER JOIN pr_intake inta ON inta.id = oh.intake_id - <where> - <if test="intakeId != null and intakeId > 0"> - AND oh.intake_id = #{intakeId} - </if> - <if test="intakeNum != null and intakeNum != ''"> - AND inta.name LIKE CONCAT('%', #{intakeNum}, '%') - </if> - <if test="rtuAddr != null and rtuAddr != ''"> - AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%') - </if> - <if test="timeStart_open != null and timeStop_open != null"> - AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} - </if> - <if test="timeStart_close != null and timeStop_close != null"> - AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} + AND oh.close_dt BETWEEN #{timeStart_close} AND #{timeStop_close} </if> </where> ORDER BY oh.op_dt DESC @@ -645,4 +578,11 @@ </if> </where> </select> + + <!--涓烘寚瀹氾紙闃�鎺у櫒鍦板潃銆佹按鍗$紪鍙枫�佹棤鍏抽榾璁板綍锛夊紑鍏抽榾鏈�鏂拌褰曟坊鍔犲叧闃�鏃堕棿锛屼娇涔嬩笉鍦ㄦ湭鍏抽榾璁板綍涓樉绀�--> + <update id="addCloseTime"> + UPDATE rm_open_close_valve_last + SET cl_dt = NOW() + WHERE rtu_addr = #{rtuAddr} AND op_ic_card_no = #{icCardNo} AND cl_dt IS NULL + </update> </mapper> \ No newline at end of file -- Gitblit v1.8.0