|  |  |  | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | <!--@Table ir_irrigate_schedule--> | 
|---|
|  |  |  | <id column="id" jdbcType="BIGINT" property="id" /> | 
|---|
|  |  |  | <result column="plan_id" jdbcType="BIGINT" property="planId" /> | 
|---|
|  |  |  | <result column="group_id" jdbcType="BIGINT" property="groupId" /> | 
|---|
|  |  |  | <result column="start_time" jdbcType="TIMESTAMP" property="startTime" /> | 
|---|
|  |  |  | <result column="stop_time" jdbcType="TIMESTAMP" property="stopTime" /> | 
|---|
|  |  |  | <result column="duration" jdbcType="INTEGER" property="duration" /> | 
|---|
|  |  |  | <result column="intake_ids" jdbcType="LONGVARCHAR" property="intakeIds" /> | 
|---|
|  |  |  | <result column="current_state" jdbcType="TINYINT" property="currentState" /> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <sql id="Base_Column_List"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | id, plan_id, group_id, start_time, stop_time, duration, intake_ids, current_state | 
|---|
|  |  |  | id, group_id, start_time, duration, current_state | 
|---|
|  |  |  | </sql> | 
|---|
|  |  |  | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigateSchedule"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into ir_irrigate_schedule (id, plan_id, group_id, | 
|---|
|  |  |  | start_time, stop_time, duration, | 
|---|
|  |  |  | intake_ids, current_state) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{planId,jdbcType=BIGINT}, #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{startTime,jdbcType=TIMESTAMP}, #{stopTime,jdbcType=TIMESTAMP}, #{duration,jdbcType=INTEGER}, | 
|---|
|  |  |  | #{intakeIds,jdbcType=LONGVARCHAR}, #{currentState,jdbcType=TINYINT}) | 
|---|
|  |  |  | insert into ir_irrigate_schedule (id, group_id, start_time, duration, current_state) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{startTime,jdbcType=TIMESTAMP}, #{duration,jdbcType=INTEGER}, #{currentState,jdbcType=TINYINT}) | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigateSchedule"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="planId != null"> | 
|---|
|  |  |  | plan_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="groupId != null"> | 
|---|
|  |  |  | group_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="startTime != null"> | 
|---|
|  |  |  | start_time, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="stopTime != null"> | 
|---|
|  |  |  | stop_time, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="duration != null"> | 
|---|
|  |  |  | duration, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeIds != null"> | 
|---|
|  |  |  | intake_ids, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="currentState != null"> | 
|---|
|  |  |  | current_state, | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | #{id,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="planId != null"> | 
|---|
|  |  |  | #{planId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="groupId != null"> | 
|---|
|  |  |  | #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="startTime != null"> | 
|---|
|  |  |  | #{startTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="stopTime != null"> | 
|---|
|  |  |  | #{stopTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="duration != null"> | 
|---|
|  |  |  | #{duration,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeIds != null"> | 
|---|
|  |  |  | #{intakeIds,jdbcType=LONGVARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="currentState != null"> | 
|---|
|  |  |  | #{currentState,jdbcType=TINYINT}, | 
|---|
|  |  |  | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update ir_irrigate_schedule | 
|---|
|  |  |  | <set> | 
|---|
|  |  |  | <if test="planId != null"> | 
|---|
|  |  |  | plan_id = #{planId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="groupId != null"> | 
|---|
|  |  |  | group_id = #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="startTime != null"> | 
|---|
|  |  |  | start_time = #{startTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="stopTime != null"> | 
|---|
|  |  |  | stop_time = #{stopTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="duration != null"> | 
|---|
|  |  |  | duration = #{duration,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeIds != null"> | 
|---|
|  |  |  | intake_ids = #{intakeIds,jdbcType=LONGVARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="currentState != null"> | 
|---|
|  |  |  | current_state = #{currentState,jdbcType=TINYINT}, | 
|---|
|  |  |  | 
|---|
|  |  |  | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigateSchedule"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update ir_irrigate_schedule | 
|---|
|  |  |  | set plan_id = #{planId,jdbcType=BIGINT}, | 
|---|
|  |  |  | group_id = #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | set group_id = #{groupId,jdbcType=BIGINT}, | 
|---|
|  |  |  | start_time = #{startTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | stop_time = #{stopTime,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | duration = #{duration,jdbcType=INTEGER}, | 
|---|
|  |  |  | intake_ids = #{intakeIds,jdbcType=LONGVARCHAR}, | 
|---|
|  |  |  | current_state = #{currentState,jdbcType=TINYINT} | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据计划ID获取灌溉次序_模式2--> | 
|---|
|  |  |  | <select id="getIrrigateSchedules" resultType="com.dy.pipIrrGlobal.voIr.VoIrrigateSchedule"> | 
|---|
|  |  |  | <!--根据计划ID获取灌溉次序记录--> | 
|---|
|  |  |  | <select id="getSchedulesByPlanId" resultType="com.dy.pipIrrGlobal.voIr.VoIrrigateSchedule"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | id AS scheduleId, | 
|---|
|  |  |  | <if test="startupMode == 1"> | 
|---|
|  |  |  | null AS startTime, | 
|---|
|  |  |  | duration, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="startupMode == 2"> | 
|---|
|  |  |  | start_time AS startTime, | 
|---|
|  |  |  | TIMESTAMPDIFF(MINUTE, start_time, stop_time) AS duration, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | intake_ids AS intakeIds | 
|---|
|  |  |  | FROM ir_irrigate_schedule | 
|---|
|  |  |  | WHERE plan_id = #{planId} | 
|---|
|  |  |  | sch.id AS scheduleId, | 
|---|
|  |  |  | sch.group_id AS groupId, | 
|---|
|  |  |  | sch.start_time AS startTime, | 
|---|
|  |  |  | sch.duration | 
|---|
|  |  |  | FROM ir_irrigate_schedule sch | 
|---|
|  |  |  | INNER JOIN ir_plan_schedule ps ON ps.schedule_id = sch.id | 
|---|
|  |  |  | WHERE current_state = 1 AND ps.plan_id = #{planId} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据灌溉次序ID更新次序开始时间--> | 
|---|
|  |  |  | <update id="updateScheduleStartTime"> | 
|---|
|  |  |  | UPDATE ir_irrigate_schedule | 
|---|
|  |  |  | SET start_time = #{startTime} | 
|---|
|  |  |  | WHERE id = #{scheduleId} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据计划ID终止灌溉次序,将灌溉次序的当前状态改为已终止--> | 
|---|
|  |  |  | <update id="terminateSchedule"> | 
|---|
|  |  |  | UPDATE ir_irrigate_schedule sch | 
|---|
|  |  |  | INNER JOIN ir_plan_schedule ps ON ps.schedule_id = sch.id | 
|---|
|  |  |  | INNER JOIN ir_irrigate_plan plan ON ps.plan_id = plan.id | 
|---|
|  |  |  | SET sch.current_state = 2 | 
|---|
|  |  |  | WHERE plan.id = #{planId} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|