zhubaomin
2025-04-09 a7485c9f9b16ece4f12f0b3f6d6a8c90370f5ae4
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrIrrigatePlanMapper.java
New file
@@ -0,0 +1,103 @@
package com.dy.pipIrrGlobal.daoIr;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dy.pipIrrGlobal.pojoIr.IrIrrigatePlan;
import com.dy.pipIrrGlobal.voIr.VoPlanDetails;
import com.dy.pipIrrGlobal.voIr.VoPlanSimple;
import com.dy.pipIrrGlobal.voIr.VoPlans;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
 * @author ZhuBaoMin
 * @date 2025-03-27 8:54
 * @LastEditTime 2025-03-27 8:54
 * @Description
 */
@Mapper
public interface IrIrrigatePlanMapper extends BaseMapper<IrIrrigatePlan> {
    int deleteByPrimaryKey(Long id);
    int insert(IrIrrigatePlan record);
    int insertSelective(IrIrrigatePlan record);
    IrIrrigatePlan selectByPrimaryKey(Long id);
    int updateByPrimaryKeySelective(IrIrrigatePlan record);
    int updateByPrimaryKey(IrIrrigatePlan record);
    /**
     * 根据指定的计划ID获取启动模式
     * @param planId
     * @return
     */
    Byte getStartupMode(Long planId);
    /**
     * 根据指定的条件获取计划数量
     * @param params
     * @return
     */
    //Long getIrrigatePlanCount(Map<?, ?> params);
    /**
     * 根据指定的条件获取计划列表
     * @param params
     * @return
     */
    //List<VoIrrigatePlan> getIrrigatePlans(Map<?, ?> params);
    /**
     * 根据计划ID获取计划简单信息
     * @return
     */
    VoPlanSimple getPlanSimple(Long planId);
    /**
     * 根据计划ID更新计划信息(起止时间、计划状态)
     * @param planId
     * @return
     */
    Integer updatePlanTimes(@Param("planStartTime") Date planStartTime, @Param("planStopTime") Date planEndTime, @Param("planId")  Long planId);
    /**
     * 获取未完成的计划列表,小程序计划列表页使用
     * 计划状态:1-草稿,2-未执行,3-执行中,4-已完成
     * @return
     */
    List<VoPlans> getNotCompletePlans();
    /**
     * 获取已完成的计划列表,小程序计划列表页使用
     * 计划状态:1-草稿,2-未执行,3-执行中,4-已完成
     * @return
     */
    List<VoPlans> getCompletedPlans();
    /**
     * 根据计划ID获取待终止计划的结束时间:未删除、未终止、已发布、当前时间小于计划结束时间
     * @param planId
     * @return
     */
    Date getToTerminatePlan(@Param("planId") Long planId);
    /**
     * 根据计划ID获取计划详情,包括计划名称,项目名,计划开始时间,计划结束时间,计划详情页使用
     * @param planId
     * @return
     */
    VoPlanDetails getPlanDetails(@Param("planId") Long planId);
    /**
     * 根据计划ID获取计划状态,用于判断是否可以删除计划
     * @param planId
     * @return
     */
    Integer getPlanState(@Param("planId") Long planId);
}