package cd.casic.ci.process.process.service.resource;

import cd.casic.ci.process.dto.req.resource.ResourceQueryReq;
import cd.casic.ci.process.dto.req.resource.ResourceReq;
import cd.casic.ci.process.dto.resp.resource.ResourceFindResp;
import cd.casic.ci.process.dto.resp.taskResource.TaskResourceFindResp;
import cd.casic.ci.process.process.dataObject.resource.PipResourceManager;
import cd.casic.framework.commons.pojo.PageResult;
import com.baomidou.mybatisplus.extension.service.IService;
import jakarta.validation.Valid;

import java.util.List;

/**
 * @author HopeLi
 * @version v1.0
 * @ClassName ResourceService
 * @Date: 2025/5/13 10:27
 * @Description:
 */
public interface ResourceManagerService extends IService<PipResourceManager> {
    String createResource(@Valid ResourceReq resourceReq);

    void deleteResource(String id);

    void updateResource(@Valid ResourceReq resourceReq);

    ResourceFindResp findResourceById(String id);

    List<ResourceFindResp> findResourceList(@Valid ResourceQueryReq req);

    PageResult<ResourceFindResp> findResourcePage(@Valid ResourceQueryReq req);

    TaskResourceFindResp findResourceListByType(@Valid ResourceQueryReq req);

    List findResourceListForObjectByType(@Valid ResourceQueryReq req);
}
