Subversion Repositories SmartDukaan

Rev

Rev 35394 | Rev 35631 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
24383 amit.gupta 1
package com.spice.profitmandi.dao.repository.cs;
2
 
24439 govind 3
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
24417 govind 4
import com.spice.profitmandi.common.model.CustomRetailer;
5
import com.spice.profitmandi.dao.entity.auth.AuthUser;
29927 amit.gupta 6
import com.spice.profitmandi.dao.entity.cs.*;
27393 amit.gupta 7
import com.spice.profitmandi.dao.entity.fofo.ActivityType;
32923 ranu 8
import com.spice.profitmandi.dao.enumuration.auth.CollectionRemark;
26978 tejbeer 9
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
32923 ranu 10
import com.spice.profitmandi.dao.model.ActivityMediaModel;
34905 ranu 11
import com.spice.profitmandi.dao.model.FofoAbmReportingModel;
33161 ranu 12
import com.spice.profitmandi.dao.model.FofoRBMReportingModel;
30003 tejbeer 13
import com.spice.profitmandi.dao.model.FofoReportingModel;
29927 amit.gupta 14
import org.springframework.stereotype.Service;
24383 amit.gupta 15
 
35626 amit 16
import com.spice.profitmandi.dao.entity.cs.TicketReadStatus.UserType;
29927 amit.gupta 17
import java.util.List;
18
import java.util.Map;
19
import java.util.Set;
20
 
24383 amit.gupta 21
@Service
22
public interface CsService {
34921 ranu 23
    int getAuthUserIdWithoutTicketAssignee(int categoryId, EscalationType escalationType, int fofoId) throws ProfitMandiBusinessException;
24
 
31762 tejbeer 25
    // Sends happy code to customer
26
    void addActivity(Ticket ticket, Activity activity);
24500 govind 27
 
31762 tejbeer 28
    void createTicket(int fofoId, int categoryId, int subcategoryId, String message) throws ProfitMandiBusinessException;
24500 govind 29
 
32923 ranu 30
    void createTicket(int fofoId, int categoryId, int subcategoryId, String message, int createdByAuthId) throws ProfitMandiBusinessException;
31
 
32
    void createTicketWithMedia(int fofoId, int categoryId, int subcategoryId, String message, int createdByAuthId, ActivityMediaModel selectedRecording) throws ProfitMandiBusinessException;
33
 
33204 ranu 34
    TicketActivityMedia createMediaActivity(ActivityMediaModel selectedRecording);
35
 
36
    void addMediaActivity(Ticket ticket, TicketActivityMedia activity);
37
 
32923 ranu 38
    void createTicketRemarkEscalation(int fofoId, int authId, int categoryId, int subcategoryId, String message, CollectionRemark remark) throws ProfitMandiBusinessException;
39
 
31762 tejbeer 40
    void addPartnerToRegion(int regionId, List<Integer> fofoIds);
24500 govind 41
 
31762 tejbeer 42
    Map<Integer, TicketSubCategory> getSubCategoryIdAndSubCategoryMap(List<Integer> subCategoryIds);
24500 govind 43
 
31762 tejbeer 44
    Map<Integer, TicketCategory> getSubCategoryIdAndCategoryMap(List<Integer> subCategoryIds);
24500 govind 45
 
46
 
31762 tejbeer 47
    Map<Integer, AuthUser> getAuthUserIdAndAuthUserMap(List<TicketAssigned> ticketAssigneds);
24500 govind 48
 
33244 ranu 49
    Map<Integer, CustomRetailer> getPartnerByFofoIds(List<Ticket> tickets) throws ProfitMandiBusinessException;
24500 govind 50
 
31762 tejbeer 51
    List<TicketCategory> getAllTicketCategotyFromSubCategory();
24500 govind 52
 
31762 tejbeer 53
    Map<Integer, AuthUser> getAuthUserIdAndAuthUserMapUsingPositions(List<Position> positions);
25721 tejbeer 54
 
31762 tejbeer 55
    Map<Integer, TicketCategory> getCategoryIdAndCategoryUsingPositions(List<Position> positions);
25721 tejbeer 56
 
31762 tejbeer 57
    Map<Integer, Region> getRegionIdAndRegionMap(List<Position> positions);
24500 govind 58
 
33244 ranu 59
    Map<Integer, List<CustomRetailer>> getRegionPartners(List<Position> position) throws ProfitMandiBusinessException;
25721 tejbeer 60
 
33244 ranu 61
    Map<Integer, List<CustomRetailer>> getPositionCustomRetailerMap(List<Position> position) throws ProfitMandiBusinessException;
25721 tejbeer 62
 
31762 tejbeer 63
    Map<Integer, AuthUser> getTicketIdAndAuthUserMapUsingTickets(List<Ticket> tickets);
25721 tejbeer 64
 
33204 ranu 65
    void updateTicket(int categoryId, int subCategoryId, Ticket ticket, int authUserId, EscalationType escalationType, ActivityMediaModel recording) throws ProfitMandiBusinessException;
31762 tejbeer 66
    void updateTicket(int categoryId, int subCategoryId, Ticket ticket, int authUserId, EscalationType escalationType) throws ProfitMandiBusinessException;
25721 tejbeer 67
 
33244 ranu 68
    Map<String, Set<String>> getAuthUserPartnerEmailMapping() throws ProfitMandiBusinessException;
26298 tejbeer 69
 
33244 ranu 70
    Map<String, Set<Integer>> getAuthUserPartnerIdMapping() throws ProfitMandiBusinessException;
25721 tejbeer 71
 
33244 ranu 72
    Map<Integer, List<Integer>> getAuthUserIdPartnerIdMapping() throws ProfitMandiBusinessException;
28377 tejbeer 73
 
33244 ranu 74
    List<String> getAuthUserByPartnerId(int fofoId) throws ProfitMandiBusinessException;
26978 tejbeer 75
 
34082 ranu 76
    Map<Integer, List<Integer>> authUserpartnerIdMap(int authId, int categoryId);
77
 
33244 ranu 78
    List<AuthUser> getAuthUserIdByPartnerId(int fofoId) throws ProfitMandiBusinessException;
26298 tejbeer 79
 
33244 ranu 80
    List<AuthUser> getAuthUserIdByPartnerId(int fofoId, EscalationType... escalationTypes) throws ProfitMandiBusinessException;
33041 ranu 81
 
33244 ranu 82
    Map<EscalationType, String> getAuthUserAndEsclationTypeByPartnerId(int fofoId) throws ProfitMandiBusinessException;
27078 amit.gupta 83
 
33244 ranu 84
    Map<Integer, List<Integer>> getL2L1Mapping() throws ProfitMandiBusinessException;
28908 tejbeer 85
 
33244 ranu 86
    int getAuthUserId(int categoryId, EscalationType escalationType, int fofoId) throws ProfitMandiBusinessException;
28908 tejbeer 87
 
31762 tejbeer 88
    List<AuthUser> getAuthUserIds(int categoryId, List<EscalationType> escalationType);
27124 amit.gupta 89
 
31762 tejbeer 90
    List<AuthUser> getAuthUserByCategoryId(int categoryId);
27205 amit.gupta 91
 
31762 tejbeer 92
    void assignTicket(Ticket ticket) throws ProfitMandiBusinessException;
27545 tejbeer 93
 
31762 tejbeer 94
    Map<Integer, List<AuthUser>> getAssignedAuthList(List<Ticket> tickets);
27205 amit.gupta 95
 
33244 ranu 96
    Map<EscalationType, AuthUser> getAuthUserAndEsclationByPartnerId(int fofoId) throws ProfitMandiBusinessException;
29296 manish 97
 
35394 amit 98
    // Batch method to fetch auth user escalations for all fofoIds at once
99
    Map<Integer, Map<EscalationType, AuthUser>> getAuthUserAndEsclationByPartnerIds(Set<Integer> fofoIds) throws ProfitMandiBusinessException;
100
 
31762 tejbeer 101
    Activity createActivity(ActivityType activityType, String message, int createdBy);
30003 tejbeer 102
 
31762 tejbeer 103
    List<AuthUser> getAuthUserByCategoryId(int categoryId, EscalationType escalationType);
31152 tejbeer 104
 
33244 ranu 105
    Map<Integer, FofoReportingModel> getPartnerIdSalesHeaders() throws ProfitMandiBusinessException;
31152 tejbeer 106
 
34905 ranu 107
    Map<Integer, FofoAbmReportingModel> getPartnerIdABMHeaders() throws ProfitMandiBusinessException;
108
 
33244 ranu 109
    Map<Integer, FofoRBMReportingModel> getPartnerIdRBMHeaders() throws ProfitMandiBusinessException;
33161 ranu 110
 
33244 ranu 111
    Map<String, Set<Integer>> getAuthUserPartnerIdMappingByCategoryIds(List<Integer> categoryIds, boolean activeOnly) throws ProfitMandiBusinessException;
31762 tejbeer 112
 
35394 amit 113
    /**
114
     * Batch method to get BM/ASM/RBM auth user IDs for all fofoIds at once.
115
     * Returns Map<fofoId, Map<role, authUserId>> where role is "BM", "ASM", or "RBM".
116
     */
117
    Map<Integer, Map<String, Integer>> getBmAsmRbmAuthUserIdsByFofoIds(Set<Integer> fofoIds) throws ProfitMandiBusinessException;
31762 tejbeer 118
 
35626 amit 119
    Map<Integer, Boolean> getUnreadStatusForTickets(List<Ticket> tickets, int userId, UserType userType);
120
 
121
    void markTicketAsRead(int ticketId, int userId, UserType userType);
122
 
123
    Map<Integer, Activity> getLastActivitiesForTickets(List<Integer> ticketIds);
124
 
125
    void notifyPartnerOfExternalCommunication(Ticket ticket, Activity activity);
126
 
24500 govind 127
}