package com.aucma.dms.service;

import com.aucma.dms.domain.DmsRepairInstanceActivity;

import java.util.List;

/**
 * 检修工单实例节点;最后一步作为检修记录Service接口
 *
 * @author Open Platform
 * @date 2024-01-23
 */
public interface IDmsRepairInstanceActivityService
{
    /**
     * 查询检修工单实例节点;最后一步作为检修记录
     *
     * @param instanceActivityId 检修工单实例节点;最后一步作为检修记录主键
     * @return 检修工单实例节点;最后一步作为检修记录
     */
    public DmsRepairInstanceActivity selectDmsRepairInstanceActivityByInstanceActivityId(Long instanceActivityId);

    /**
     * 查询检修工单实例节点;最后一步作为检修记录列表
     *
     * @param dmsRepairInstanceActivity 检修工单实例节点;最后一步作为检修记录
     * @return 检修工单实例节点;最后一步作为检修记录集合
     */
    public List<DmsRepairInstanceActivity> selectDmsRepairInstanceActivityList(DmsRepairInstanceActivity dmsRepairInstanceActivity);

    /**
     * 新增检修工单实例节点;最后一步作为检修记录
     *
     * @param dmsRepairInstanceActivity 检修工单实例节点;最后一步作为检修记录
     * @return 结果
     */
    public int insertDmsRepairInstanceActivity(DmsRepairInstanceActivity dmsRepairInstanceActivity);

    /**
     * 修改检修工单实例节点;最后一步作为检修记录
     *
     * @param dmsRepairInstanceActivity 检修工单实例节点;最后一步作为检修记录
     * @return 结果
     */
    public int updateDmsRepairInstanceActivity(DmsRepairInstanceActivity dmsRepairInstanceActivity);

    /**
     * 批量删除检修工单实例节点;最后一步作为检修记录
     *
     * @param instanceActivityIds 需要删除的检修工单实例节点;最后一步作为检修记录主键集合
     * @return 结果
     */
    public int deleteDmsRepairInstanceActivityByInstanceActivityIds(Long[] instanceActivityIds);

    /**
     * 删除检修工单实例节点;最后一步作为检修记录信息
     *
     * @param instanceActivityId 检修工单实例节点;最后一步作为检修记录主键
     * @return 结果
     */
    public int deleteDmsRepairInstanceActivityByInstanceActivityId(Long instanceActivityId);
    public int deleteDmsRepairInstanceActivityByRepairInstanceIds(Long[] repairInstanceIds);
    //查询该id是否拥有审批权限
    boolean selectUserIdByRepairInstanceId(Long repairInstanceId,Long userId);

}
