package com.yunzhupaas.service;

import com.yunzhupaas.base.service.SuperService;
import com.yunzhupaas.entity.LeaveApplyEntity;
import com.yunzhupaas.exception.WorkFlowException;
import com.yunzhupaas.model.leaveapply.LeaveApplyForm;

/**
 * 流程表单【请假申请】
 *
 * @author 云筑产品开发平台组
 * @version V3.1.0
 * @copyright 深圳市乐程软件有限公司
 * @date 2024-09-29 上午9:18
 */
public interface LeaveApplyService extends SuperService<LeaveApplyEntity> {

    /**
     * 信息
     *
     * @param id 主键值
     * @return
     */
    LeaveApplyEntity getInfo(String id);

    /**
     * 保存
     *
     * @param id     主键值
     * @param entity 实体对象
     * @throws WorkFlowException 异常
     */
    void save(String id, LeaveApplyEntity entity, LeaveApplyForm form);

    /**
     * 提交
     *
     * @param id     主键值
     * @param entity 实体对象
     * @throws WorkFlowException 异常
     */
    void submit(String id, LeaveApplyEntity entity, LeaveApplyForm form);

    /**
     * 更改数据
     *
     * @param id   主键值
     * @param data 实体对象
     */
    void data(String id, String data);

    /**
     * 删除
     *
     * @param entity 实体
     */
    void delete(LeaveApplyEntity entity);
}

