From 80e22bcc7af8aebed7443965655542fbe4966708 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期三, 09 四月 2025 15:11:55 +0800 Subject: [PATCH] 灌溉计划删除,所有命令发布都失败依然允许终止 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml | 270 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 183 insertions(+), 87 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml index 7f5b8fc..b87e5ce 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml @@ -5,6 +5,7 @@ <!--@mbg.generated--> <!--@Table ir_irrigate_plan--> <id column="id" jdbcType="BIGINT" property="id" /> + <result column="project_id" jdbcType="BIGINT" property="projectId" /> <result column="plan_name" jdbcType="VARCHAR" property="planName" /> <result column="startup_mode" jdbcType="TINYINT" property="startupMode" /> <result column="plan_start_time" jdbcType="TIMESTAMP" property="planStartTime" /> @@ -16,7 +17,7 @@ </resultMap> <sql id="Base_Column_List"> <!--@mbg.generated--> - id, plan_name, startup_mode, plan_start_time, plan_stop_time, duration, + id, project_id, plan_name, startup_mode, plan_start_time, plan_stop_time, duration, plan_state, executing_state, deleted </sql> <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> @@ -33,11 +34,11 @@ </delete> <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigatePlan"> <!--@mbg.generated--> - insert into ir_irrigate_plan (id, plan_name, + insert into ir_irrigate_plan (id, project_id, plan_name, startup_mode, plan_start_time, plan_stop_time, duration, plan_state, executing_state, deleted) - values (#{id,jdbcType=BIGINT}, #{planName,jdbcType=VARCHAR}, + values (#{id,jdbcType=BIGINT}, #{projectId,jdbcType=BIGINT}, #{planName,jdbcType=VARCHAR}, #{startupMode,jdbcType=TINYINT}, #{planStartTime,jdbcType=TIMESTAMP}, #{planStopTime,jdbcType=TIMESTAMP}, #{duration,jdbcType=INTEGER}, #{planState,jdbcType=TINYINT}, #{executingState,jdbcType=TINYINT}, #{deleted,jdbcType=BIGINT}) @@ -48,6 +49,9 @@ <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null"> id, + </if> + <if test="projectId != null"> + project_id, </if> <if test="planName != null"> plan_name, @@ -77,6 +81,9 @@ <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null"> #{id,jdbcType=BIGINT}, + </if> + <if test="projectId != null"> + #{projectId,jdbcType=BIGINT}, </if> <if test="planName != null"> #{planName,jdbcType=VARCHAR}, @@ -108,6 +115,9 @@ <!--@mbg.generated--> update ir_irrigate_plan <set> + <if test="projectId != null"> + project_id = #{projectId,jdbcType=BIGINT}, + </if> <if test="planName != null"> plan_name = #{planName,jdbcType=VARCHAR}, </if> @@ -138,7 +148,8 @@ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigatePlan"> <!--@mbg.generated--> update ir_irrigate_plan - set plan_name = #{planName,jdbcType=VARCHAR}, + set project_id = #{projectId,jdbcType=BIGINT}, + plan_name = #{planName,jdbcType=VARCHAR}, startup_mode = #{startupMode,jdbcType=TINYINT}, plan_start_time = #{planStartTime,jdbcType=TIMESTAMP}, plan_stop_time = #{planStopTime,jdbcType=TIMESTAMP}, @@ -152,111 +163,111 @@ <!--鏍规嵁鎸囧畾鐨勮鍒扞D鑾峰彇鍚姩妯″紡--> <select id="getStartupMode" resultType="java.lang.Byte"> SELECT - startup_mode AS startupMode + startup_mode AS startupMode FROM ir_irrigate_plan WHERE id = #{planId} </select> <!--鏍规嵁鎸囧畾鐨勬潯浠惰幏鍙栬鍒掓暟閲�--> -<!-- <select id="getIrrigatePlanCount" resultType="java.lang.Long">--> -<!-- SELECT COUNT(*)--> -<!-- FROM ir_irrigate_plan plan--> -<!-- INNER JOIN ir_project pro ON pro.id = plan.project_id--> -<!-- <where>--> -<!-- AND plan.deleted = 0--> -<!-- AND pro.deleted = 0--> -<!-- <if test="projectName != null and projectName != ''">--> -<!-- AND pro.project_name LIKE CONCAT('%', #{projectName}, '%')--> -<!-- </if>--> + <!-- <select id="getIrrigatePlanCount" resultType="java.lang.Long">--> + <!-- SELECT COUNT(*)--> + <!-- FROM ir_irrigate_plan plan--> + <!-- INNER JOIN ir_project pro ON pro.id = plan.project_id--> + <!-- <where>--> + <!-- AND plan.deleted = 0--> + <!-- AND pro.deleted = 0--> + <!-- <if test="projectName != null and projectName != ''">--> + <!-- AND pro.project_name LIKE CONCAT('%', #{projectName}, '%')--> + <!-- </if>--> -<!-- <if test="planName != null and planName != ''">--> -<!-- AND plan.plan_name LIKE CONCAT('%', #{planName}, '%')--> -<!-- </if>--> + <!-- <if test="planName != null and planName != ''">--> + <!-- AND plan.plan_name LIKE CONCAT('%', #{planName}, '%')--> + <!-- </if>--> -<!-- <if test="startupMode != null">--> -<!-- AND plan.startup_mode = #{startupMode}--> -<!-- </if>--> + <!-- <if test="startupMode != null">--> + <!-- AND plan.startup_mode = #{startupMode}--> + <!-- </if>--> -<!-- <if test="planState != null">--> -<!-- AND plan.plan_state = #{planState}--> -<!-- </if>--> + <!-- <if test="planState != null">--> + <!-- AND plan.plan_state = #{planState}--> + <!-- </if>--> -<!-- <if test="executingState != null">--> -<!-- AND plan.executing_state = #{executingState}--> -<!-- </if>--> -<!-- </where>--> -<!-- </select>--> + <!-- <if test="executingState != null">--> + <!-- AND plan.executing_state = #{executingState}--> + <!-- </if>--> + <!-- </where>--> + <!-- </select>--> <!--鏍规嵁鎸囧畾鐨勬潯浠惰幏鍙栬鍒掑垪琛�--> -<!-- <select id="getIrrigatePlans" resultType="com.dy.pipIrrGlobal.voIr.VoIrrigatePlan">--> -<!-- SELECT--> -<!-- plan.id AS planId,--> -<!-- pro.project_name AS projectName,--> -<!-- plan.plan_name AS planName,--> -<!-- CASE plan.startup_mode--> -<!-- WHEN 1 THEN '鎵嬪姩鍚姩'--> -<!-- WHEN 2 THEN '鑷姩鍚姩'--> -<!-- END AS startupMode,--> -<!-- plan.plan_start_time AS startTime,--> -<!-- plan.plan_stop_time AS stopTime,--> -<!-- plan.duration AS duration,--> -<!-- CASE plan.plan_state--> -<!-- WHEN 1 THEN '鑽夌'--> -<!-- WHEN 2 THEN '宸插彂甯�'--> -<!-- END AS planState,--> + <!-- <select id="getIrrigatePlans" resultType="com.dy.pipIrrGlobal.voIr.VoIrrigatePlan">--> + <!-- SELECT--> + <!-- plan.id AS planId,--> + <!-- pro.project_name AS projectName,--> + <!-- plan.plan_name AS planName,--> + <!-- CASE plan.startup_mode--> + <!-- WHEN 1 THEN '鎵嬪姩鍚姩'--> + <!-- WHEN 2 THEN '鑷姩鍚姩'--> + <!-- END AS startupMode,--> + <!-- plan.plan_start_time AS startTime,--> + <!-- plan.plan_stop_time AS stopTime,--> + <!-- plan.duration AS duration,--> + <!-- CASE plan.plan_state--> + <!-- WHEN 1 THEN '鑽夌'--> + <!-- WHEN 2 THEN '宸插彂甯�'--> + <!-- END AS planState,--> -<!-- CASE plan.executing_state--> -<!-- WHEN 1 THEN--> -<!-- '鏈墽琛�'--> -<!-- WHEN 2 THEN--> -<!-- '鎵ц涓�'--> -<!-- WHEN 3 THEN--> -<!-- '宸叉殏鍋�'--> -<!-- WHEN 4 THEN--> -<!-- '宸茬粓姝�'--> -<!-- END AS executingState--> -<!-- FROM ir_irrigate_plan plan--> -<!-- INNER JOIN ir_project pro ON pro.id = plan.project_id--> -<!-- <where>--> -<!-- AND plan.deleted = 0--> -<!-- AND pro.deleted = 0--> -<!-- <if test="projectName != null and projectName != ''">--> -<!-- AND pro.project_name LIKE CONCAT('%', #{projectName}, '%')--> -<!-- </if>--> + <!-- CASE plan.executing_state--> + <!-- WHEN 1 THEN--> + <!-- '鏈墽琛�'--> + <!-- WHEN 2 THEN--> + <!-- '鎵ц涓�'--> + <!-- WHEN 3 THEN--> + <!-- '宸叉殏鍋�'--> + <!-- WHEN 4 THEN--> + <!-- '宸茬粓姝�'--> + <!-- END AS executingState--> + <!-- FROM ir_irrigate_plan plan--> + <!-- INNER JOIN ir_project pro ON pro.id = plan.project_id--> + <!-- <where>--> + <!-- AND plan.deleted = 0--> + <!-- AND pro.deleted = 0--> + <!-- <if test="projectName != null and projectName != ''">--> + <!-- AND pro.project_name LIKE CONCAT('%', #{projectName}, '%')--> + <!-- </if>--> -<!-- <if test="planName != null and planName != ''">--> -<!-- AND plan.plan_name LIKE CONCAT('%', #{planName}, '%')--> -<!-- </if>--> + <!-- <if test="planName != null and planName != ''">--> + <!-- AND plan.plan_name LIKE CONCAT('%', #{planName}, '%')--> + <!-- </if>--> -<!-- <if test="startupMode != null">--> -<!-- AND plan.startup_mode = #{startupMode}--> -<!-- </if>--> + <!-- <if test="startupMode != null">--> + <!-- AND plan.startup_mode = #{startupMode}--> + <!-- </if>--> -<!-- <if test="planState != null">--> -<!-- AND plan.plan_state = #{planState}--> -<!-- </if>--> + <!-- <if test="planState != null">--> + <!-- AND plan.plan_state = #{planState}--> + <!-- </if>--> -<!-- <if test="executingState != null">--> -<!-- AND plan.executing_state = #{executingState}--> -<!-- </if>--> -<!-- </where>--> -<!-- ORDER BY plan.plan_state DESC, plan.plan_start_time--> -<!-- <trim prefix="limit ">--> -<!-- <if test="start != null and count != null">--> -<!-- #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}--> -<!-- </if>--> -<!-- </trim>--> -<!-- </select>--> + <!-- <if test="executingState != null">--> + <!-- AND plan.executing_state = #{executingState}--> + <!-- </if>--> + <!-- </where>--> + <!-- ORDER BY plan.plan_state DESC, plan.plan_start_time--> + <!-- <trim prefix="limit ">--> + <!-- <if test="start != null and count != null">--> + <!-- #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}--> + <!-- </if>--> + <!-- </trim>--> + <!-- </select>--> <!--鏍规嵁璁″垝ID鑾峰彇璁″垝绠�鍗曚俊鎭�--> <select id="getPlanSimple" resultType="com.dy.pipIrrGlobal.voIr.VoPlanSimple"> SELECT - plan.startup_mode AS startupMode, - plan.plan_start_time AS planStartTime, - plan.duration AS duration + plan.startup_mode AS startupMode, + plan.plan_start_time AS planStartTime, + plan.duration AS duration FROM ir_irrigate_plan plan WHERE plan.id = #{planId} - AND plan.deleted = 0 AND plan_state = 1 + AND plan.deleted = 0 AND plan_state = 1 LIMIT 1 </select> @@ -267,4 +278,89 @@ WHERE id = #{planId} </update> + <!--鑾峰彇鏈畬鎴愮殑璁″垝鍒楄〃锛屽皬绋嬪簭璁″垝鍒楄〃椤典娇鐢�--> + <select id="getNotCompletePlans" resultType="com.dy.pipIrrGlobal.voIr.VoPlans"> + SELECT + pro.project_name AS projectName, + plan.id AS planId, + plan.plan_name AS planName, + plan.startup_mode AS startupMode, + plan.plan_start_time AS planStartTime, + plan.plan_stop_time AS planStopTime, + plan.duration, + IF(plan.plan_state = 1, 1, + IF(NOW() < plan.plan_start_time, 2, + IF(NOW() >= plan.plan_start_time AND NOW() < plan.plan_stop_time, 3, 4) + ) + ) AS planState + FROM ir_irrigate_plan plan + INNER JOIN ir_project pro ON pro.id = plan.project_id + <where> + AND plan.deleted = 0 + AND (plan.plan_state = 1 OR NOW() < plan.plan_stop_time) + AND plan.executing_state != 3 + </where> + ORDER BY plan.plan_state DESC + </select> + + <!--鑾峰彇宸插畬鎴愮殑璁″垝鍒楄〃锛屽皬绋嬪簭璁″垝鍒楄〃椤典娇鐢�--> + <select id="getCompletedPlans" resultType="com.dy.pipIrrGlobal.voIr.VoPlans"> + SELECT + pro.project_name AS projectName, + plan.id AS planId, + plan.plan_name AS planName, + plan.startup_mode AS startupMode, + plan.plan_start_time AS planStartTime, + plan.plan_stop_time AS planStopTime, + plan.duration, + IF(plan.executing_state = 3, 5, 4) AS planState + FROM ir_irrigate_plan plan + INNER JOIN ir_project pro ON pro.id = plan.project_id + WHERE plan.deleted = 0 AND ((plan.plan_state = 2 AND NOW() >= plan.plan_stop_time) OR (plan.executing_state = 3)) + ORDER BY plan.plan_state DESC + </select> + + <!--鏍规嵁璁″垝ID鑾峰彇寰呯粓姝㈣鍒掔殑缁撴潫鏃堕棿锛氭湭鍒犻櫎銆佹湭缁堟銆佸凡鍙戝竷銆佸綋鍓嶆椂闂村皬浜庤鍒掔粨鏉熸椂闂�--> + <select id="getToTerminatePlan" resultType="java.util.Date"> + SELECT + plan_start_time AS planStartTime + FROM ir_irrigate_plan + <where> + AND deleted = 0 + AND executing_state != 3 + AND plan_state = 2 + AND NOW() < plan_stop_time + <if test = "planId != null"> + AND id = #{planId} + </if> + </where> + + </select> + + <!--鏍规嵁璁″垝ID鑾峰彇璁″垝璇︽儏锛屽寘鎷鍒掑悕绉帮紝椤圭洰鍚嶏紝璁″垝寮�濮嬫椂闂达紝璁″垝缁撴潫鏃堕棿锛岃鍒掕鎯呴〉浣跨敤--> + <select id="getPlanDetails" resultType="com.dy.pipIrrGlobal.voIr.VoPlanDetails"> + SELECT + plan.plan_name AS planName, + pro.project_name AS projectName, + IF(plan.executing_state = 3, '5', + IF(NOW() < plan.plan_start_time,'2', + IF(NOW() < plan.plan_stop_time, '3', '4'))) AS state, + plan.plan_start_time AS planStartTime, + plan.plan_stop_time AS planStopTime, + NULL AS groupDetails + FROM ir_irrigate_plan plan + INNER JOIN ir_project pro ON pro.id = plan.project_id + WHERE plan.id = #{planId} + AND plan.deleted = 0 + </select> + + <!--鏍规嵁璁″垝ID鑾峰彇璁″垝鐘舵�侊紝鐢ㄤ簬鍒ゆ柇鏄惁鍙互鍒犻櫎璁″垝--> + <select id="getPlanState" resultType="java.lang.Integer"> + SELECT + plan_state + FROM ir_irrigate_plan + WHERE id = #{planId} + AND deleted = 0 + </select> + </mapper> \ No newline at end of file -- Gitblit v1.8.0