package com.patzn.lims.staff.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.patzn.lims.core.web.Account;
import com.patzn.lims.core.web.IBaseService;
import com.patzn.lims.staff.entity.LmsStaffTrainPlan;
import com.patzn.lims.staff.vo.LmsStaffTrainPlanVO;
import com.patzn.lims.workflow.FlowProcess;

import java.util.List;

/**
 * <p>
 * 人员管理-人员培训计划 服务类
 * </p>
 *
 * @author patzn
 * @since 2017-11-03
 */
public interface ILmsStaffTrainPlanService extends IBaseService<LmsStaffTrainPlan> {

    Page<LmsStaffTrainPlanVO> page(Page<LmsStaffTrainPlanVO> page, LmsStaffTrainPlan lmsStaffTrainPlan);

    List<LmsStaffTrainPlan> list(LmsStaffTrainPlan lmsStaffTrainPlan);

    LmsStaffTrainPlanVO getPlanInfo(Long id);

    Boolean edit(LmsStaffTrainPlan lmsStaffTrainPlan);

    Boolean add(LmsStaffTrainPlan lmsStaffTrainPlan);

    List<FlowProcess> commit(LmsStaffTrainPlan lmsStaffTrainPlan, Account account);

    void sendMsg();

    List<FlowProcess> submitCheckFlow(Long[] ids, Account account);


    boolean approveFlow(String taskId, String status, String reason);

    LmsStaffTrainPlanVO  temp();




}
