From 3bc6fb1aa90463ccf8e9dcdaca58ad9365f39916 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期五, 28 三月 2025 15:30:42 +0800 Subject: [PATCH] 获取项目详情接口 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml | 232 +++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 149 insertions(+), 83 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 bbf7b56..08b7a87 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml @@ -160,98 +160,164 @@ where id = #{id,jdbcType=BIGINT} </update> - <!--鍙戝竷鎸囧畾鐨勭亴婧夎鍒�--> - <update id="publishIrrigatePlan"> - UPDATE ir_irrigate_plan SET plan_state = 2 WHERE id = #{planId} - </update> + <!--鏍规嵁鎸囧畾鐨勮鍒扞D鑾峰彇鍚姩妯″紡--> + <select id="getStartupMode" resultType="java.lang.Byte"> + SELECT + 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 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, - 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 + 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 plan.deleted = 0 AND (plan.plan_state = 1 OR NOW() < plan.plan_stop_time) + 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.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 plan.deleted = 0 AND (plan.plan_state = 2 AND NOW() >= plan.plan_stop_time) + ORDER BY plan.plan_state DESC + </select> + </mapper> \ No newline at end of file -- Gitblit v1.8.0