Subversion Repositories SmartDukaan

Rev

Rev 32923 | Rev 35592 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.spice.profitmandi.dao.repository.cs;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Optional;

import javax.swing.SortOrder;

import org.springframework.stereotype.Repository;

import com.spice.profitmandi.dao.entity.auth.AuthUser;
import com.spice.profitmandi.dao.entity.cs.Ticket;
import com.spice.profitmandi.dao.entity.cs.TicketSearchType;
import com.spice.profitmandi.dao.entity.fofo.ActivityType;
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
import com.spice.profitmandi.dao.model.TicketViewModel;

@Repository
public interface TicketRepository {
    void persist(Ticket ticket);

    Ticket selectById(int ticketId);

    List<Ticket> selectAllByAssignee(int assigneeId, Optional<Boolean> resolved, int offset, int limit);

    List<Ticket> selectAllByCreator(int creatorId, Optional<Boolean> resolved, SortOrder sortOrder);

    List<Ticket> selectAll(int offset, int limit, Optional<Boolean> resolved);

    List<Ticket> selectAllEscalated(Optional<Boolean> resolved, int offset, int limit);

    List<Ticket> selectAllEscalatedByCreator(int fofoId, Optional<Boolean> resolved, int offset, int limit);

    List<Ticket> selectAllEscalatedByAssignee(int assigneId, Optional<Boolean> resolved, int offset, int limit);

    public long selectAllCountByCreator(int creatorId, Optional<Boolean> resolved);

    public List<Ticket> selectAllByEscalatedUserType(int authUser, EscalationType escalationType, int offset, int limit);

    public long selectAllCountByEscalatedUserType(int authUser, EscalationType escalationType);

    public Long selectAllCount();

    public List<Ticket> selectAllNotClosedTickets();

    public List<Ticket> selectAllOpenTicketByRetailer(int fofoId);

    public Map<Integer, Long> selectAllOpenTicketsGroupByRetailer();

    public List<Ticket> selectAllByAssignee(int assigneeId, Optional<Boolean> resolved, SortOrder sortOrder, TicketSearchType ticketSearchType, int searchTerm);

    public List<Ticket> selectAllByTicketIds(List<Integer> ticketIds);

    public long selectAllCountByAssignee(int assigneeId, Optional<Boolean> resolved, TicketSearchType ticketSearchType, int searchTerm);

    public List<Ticket> selectAllManagerTicket(int authUserId, SortOrder sortOrder, Optional<Boolean> resolved, TicketSearchType ticketSearchType, int searchTerm);

    public long selectAllCountByManagerTicket(int authUserId, Optional<Boolean> resolved, TicketSearchType ticketSearchType, int searchTerm);

    public List<Ticket> selectAllResolvedMarkedTicketByCreator(int assigneeId);

    public List<Ticket> selectAllNotClosedTicketsWithStatus(ActivityType activityType);

    public Map<AuthUser, Long> selectAllAuthUserTicketCount(Optional<Boolean> resolved);

    List<Ticket> selectAllOpenTickets(List<Integer> fofoIds);

    List<Ticket> selectAllOpenTickets();

    public List<TicketViewModel> selectRecentClosedTicket(int fofoId, LocalDateTime startDate);
}