Subversion Repositories SmartDukaan

Rev

Rev 5168 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3024 mandeep.dh 1
/**
2
 * 
3
 */
4
package in.shop2020.crm.handler;
5
 
3390 mandeep.dh 6
import in.shop2020.crm.domain.SearchFilter;
3024 mandeep.dh 7
import in.shop2020.crm.domain.Ticket;
8
import in.shop2020.crm.persistence.TicketMapper;
9
 
5909 amar.kumar 10
import java.util.HashMap;
3024 mandeep.dh 11
import java.util.List;
5909 amar.kumar 12
import java.util.Map;
3024 mandeep.dh 13
 
14
import org.springframework.beans.factory.annotation.Autowired;
15
import org.springframework.stereotype.Service;
16
 
17
/**
18
 * Handler for CRUD operations on tickets in database.
19
 *
20
 * @author mandeep
21
 */
22
@Service
23
public class TicketHandler {
24
    @Autowired
25
    TicketMapper ticketMapper;
26
 
3390 mandeep.dh 27
    public List<Ticket> getTickets(SearchFilter searchFilter) {
28
        return ticketMapper.getTickets(searchFilter);
3024 mandeep.dh 29
    }
30
 
31
    public void updateTicket(Ticket ticket) {
32
        ticketMapper.updateTicket(ticket);
33
    }
34
 
35
    public long insertTicket(Ticket ticket) {
36
        ticketMapper.insertTicket(ticket);
37
        return ticket.getId();
38
    }
39
 
3137 mandeep.dh 40
    public List<Ticket> getUnassignedTickets() {
41
        return ticketMapper.getUnassignedTickets();
42
    }
4793 amar.kumar 43
 
44
    public void unassignAgentTickets(int assigneeId) {
45
    	ticketMapper.unassignAgentTickets(assigneeId);
46
    }
5168 amar.kumar 47
 
48
    public int getOpenTicketCountForAgent(long agentId) {
49
    	return ticketMapper.getOpenTicketCountForAgent(agentId);
50
    }
5909 amar.kumar 51
 
52
	public Map<String, Long> getOpenTicketsMap() {
53
		Map<String,Long> ticketCategoryCountMap = new HashMap<String, Long>();
54
		Map<String, Long> resultMap =  ticketMapper.getOpenTicketsMap();
55
		for(String category : resultMap.keySet()) {
56
			Object obj = resultMap.get(category);
57
			Map<String, Long> temp = (Map<String, Long>) obj;
58
			ticketCategoryCountMap.put(category, temp.get("count"));
59
		}
60
		return ticketCategoryCountMap;
61
	}
3024 mandeep.dh 62
}