From 4c78c3a6fc3fe5fbbcabc85465612a799d98587d Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期三, 26 三月 2025 16:45:31 +0800 Subject: [PATCH] 获取未完成计划列表、获取已完成计划列表 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml | 251 ++++++++++++++++++++++++++++--------------------- 1 files changed, 142 insertions(+), 109 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 0d4e9ed..699d758 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml @@ -5,7 +5,6 @@ <!--@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" /> @@ -17,7 +16,7 @@ </resultMap> <sql id="Base_Column_List"> <!--@mbg.generated--> - id, project_id, plan_name, startup_mode, plan_start_time, plan_stop_time, duration, + 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"> @@ -34,11 +33,11 @@ </delete> <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigatePlan"> <!--@mbg.generated--> - insert into ir_irrigate_plan (id, project_id, plan_name, + insert into ir_irrigate_plan (id, plan_name, startup_mode, plan_start_time, plan_stop_time, duration, plan_state, executing_state, deleted) - values (#{id,jdbcType=BIGINT}, #{projectId,jdbcType=BIGINT}, #{planName,jdbcType=VARCHAR}, + values (#{id,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}) @@ -49,9 +48,6 @@ <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null"> id, - </if> - <if test="projectId != null"> - project_id, </if> <if test="planName != null"> plan_name, @@ -81,9 +77,6 @@ <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}, @@ -115,9 +108,6 @@ <!--@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> @@ -148,8 +138,7 @@ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigatePlan"> <!--@mbg.generated--> update ir_irrigate_plan - set project_id = #{projectId,jdbcType=BIGINT}, - plan_name = #{planName,jdbcType=VARCHAR}, + set plan_name = #{planName,jdbcType=VARCHAR}, startup_mode = #{startupMode,jdbcType=TINYINT}, plan_start_time = #{planStartTime,jdbcType=TIMESTAMP}, plan_stop_time = #{planStopTime,jdbcType=TIMESTAMP}, @@ -168,108 +157,152 @@ WHERE id = #{planId} </select> - <!--鏍规嵁鎸囧畾鐨勮鍒扞D鑾峰彇宸插彂甯冪殑鐏屾簤璁″垝鏁伴噺--> - <select id="getPublishedCount" resultType="java.lang.Integer"> - SELECT COUNT(*) - FROM ir_irrigate_plan plan - WHERE plan.id = #{planId} - AND plan.plan_state = 2 - AND plan.deleted = 0 - </select> - - <!--鍙戝竷鎸囧畾鐨勭亴婧夎鍒�--> - <update id="publishIrrigatePlan"> - UPDATE ir_irrigate_plan SET plan_state = 2 WHERE id = #{planId} - </update> - <!--鏍规嵁鎸囧畾鐨勬潯浠惰幏鍙栬鍒掓暟閲�--> - <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 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>--> + +<!-- <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="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>--> + + <!--鏍规嵁璁″垝ID鑾峰彇璁″垝绠�鍗曚俊鎭�--> + <select id="getPlanSimple" resultType="com.dy.pipIrrGlobal.voIr.VoPlanSimple"> 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 + plan.startup_mode AS startupMode, + plan.plan_start_time AS planStartTime, + plan.duration AS duration 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="startupMode != null"> - AND plan.startup_mode = #{startupMode} - </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> + WHERE plan.id = #{planId} + AND plan.deleted = 0 AND plan_state = 1 + LIMIT 1 </select> + + <!--鏍规嵁璁″垝ID鏇存柊璁″垝淇℃伅锛堣捣姝㈡椂闂淬�佽鍒掔姸鎬侊級--> + <update id="updatePlanTimes"> + UPDATE ir_irrigate_plan + SET plan_start_time = #{planStartTime}, plan_stop_time = #{planStopTime}, plan_state = 2 + WHERE id = #{planId} + </update> + + <!--鑾峰彇鏈畬鎴愮殑璁″垝鍒楄〃锛屽皬绋嬪簭璁″垝鍒楄〃椤典娇鐢�--> + <select id="getNotCompletePlans" resultType="com.dy.pipIrrGlobal.voIr.VoPlans"> + SELECT + id AS planId, + plan_name AS planName, + startup_mode AS startupMode, + plan_start_time AS planStartTime, + plan_stop_time AS planStopTime, + duration, + IF(plan_state = 1,'鑽夌', + IF(NOW() < plan_start_time, '鏈墽琛�', + IF(NOW() >= plan_start_time AND NOW() < plan_stop_time, '鎵ц涓�', '宸插畬鎴�') + ) + ) AS planState + FROM ir_irrigate_plan plan + WHERE deleted = 0 AND (plan_state = 1 OR NOW() < plan_stop_time) + ORDER BY plan_state DESC + </select> + + <!--鑾峰彇宸插畬鎴愮殑璁″垝鍒楄〃锛屽皬绋嬪簭璁″垝鍒楄〃椤典娇鐢�--> + <select id="getCompletedPlans" resultType="com.dy.pipIrrGlobal.voIr.VoPlans"> + SELECT + id AS planId, + plan_name AS planName, + startup_mode AS startupMode, + plan_start_time AS planStartTime, + plan_stop_time AS planStopTime, + duration, + IF(plan_state = 1,'鑽夌', + IF(NOW() < plan_start_time, '鏈墽琛�', + IF(NOW() >= plan_start_time AND NOW() < plan_stop_time, '鎵ц涓�', '宸插畬鎴�') + ) + ) AS planState + FROM ir_irrigate_plan plan + WHERE deleted = 0 AND (plan_state = 2 AND NOW() >= plan_stop_time) + ORDER BY plan_state DESC + </select> + </mapper> \ No newline at end of file -- Gitblit v1.8.0