package com.nisum.myteam.service;

import com.nisum.myteam.exception.handler.MyTeamException;
import com.nisum.myteam.model.dao.Employee;
import com.nisum.myteam.model.dao.Resource;
import com.nisum.myteam.model.dao.ResourceAllocation;
import org.bson.types.ObjectId;

import java.util.HashMap;
import java.util.List;

public interface IResourceAllocationService {

    ResourceAllocation addResourceAllocation(ResourceAllocation resourceAllocation, String loginEmpId) throws MyTeamException;

    HashMap<String,Object> updateResource(ResourceAllocation resourceAllocation, String loginEmpId) throws MyTeamException;

    Resource deleteResource(String empId, String projectId, ObjectId id, String loginEmpId);

   // Resource save(Resource resource);

  //  void addResources(Employee employee, String loginEmpId);

   // void inactivateResource(Employee employeeReq, Employee employeeUpdated, String loginEmpId);

    List<ResourceAllocation> getResourcesSortByProjectStartDate(String employeeId);

   // List<Resource> getResourcesForProject(String projectId, String status);

  //  List<Resource> getResourcesForEmployee(String empId);

   // List<Resource> getResourcesForProject(String projectId);

   // List<Resource> getActiveResources(String empId);

   // List<Resource> getResourcesForActiveProjects();

   // List<Resource> getResourcesForShift(String shift);

  //  public List<Resource> getResourcesUnderDeliveryLead(String empId);
}
