Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5432 amar.kumar 1
package in.shop2020.user.handler;
2
 
3
import java.util.ArrayList;
4
import java.util.Date;
5
import java.util.List;
6
 
7
import org.apache.commons.logging.Log;
8
import org.apache.commons.logging.LogFactory;
9
import org.apache.thrift.TException;
10
import org.springframework.beans.factory.annotation.Autowired;
11
import org.springframework.stereotype.Service;
12
 
13
import in.shop2020.model.v1.user.Address;
14
import in.shop2020.model.v1.user.TrackLog;
15
import in.shop2020.model.v1.user.TrackLogType;
16
import in.shop2020.model.v1.user.Tracker;
17
import in.shop2020.user.persistence.TrackMapper;
18
import in.shop2020.user.util.Converter;
19
 
20
@Service
21
public class TrackHandler {
22
 
23
	@Autowired
24
	private TrackMapper trackMapper;
25
 
26
	private static final Log log = LogFactory.getLog(TrackHandler.class);
27
 
28
	public in.shop2020.user.domain.TrackLog getTrackLogById(long id) 
29
		throws TException{
30
		return trackMapper.getTrackLogById(id);
31
	}
32
 
33
	public Tracker getTrackerById(long id) throws TException{
34
		return Converter.toThriftTracker(trackMapper.getTrackerById(id));
35
	}
36
 
37
	public List<TrackLog> getTrackLogsByUser(long userId) throws TException{
38
		List<TrackLog> tTrackLogs= new ArrayList<TrackLog>();
39
		List<in.shop2020.user.domain.TrackLog> trackLogs = 
40
			new ArrayList<in.shop2020.user.domain.TrackLog>();
41
 
42
		trackLogs = trackMapper.getTrackLogsByUser(userId);
43
 
44
		for(in.shop2020.user.domain.TrackLog trackLog : trackLogs) {
45
			tTrackLogs.add(Converter.toThriftTrackLog(trackLog));
46
		}
47
		return tTrackLogs;
48
	}
49
 
50
	public long addTrackLog(long affiliateId, long userId, TrackLogType event,
51
		String url, String data, long addedOn) throws TException{
52
		in.shop2020.user.domain.TrackLog trackLog = new in.shop2020.user.domain.TrackLog();
53
		trackLog.setAffiliate_id(affiliateId);
54
		if(userId!=0) {
55
			trackLog.setUser_id(userId);
56
		}
57
		trackLog.setEvent(event.toString());
58
		if(url!=null) {
59
			trackLog.setUrl(url);
60
		}
61
		if(data!=null) {
62
			trackLog.setData(data);
63
		}
64
		trackLog.setAdded_on(new Date(addedOn));
65
		trackMapper.addTrackLog(trackLog);
66
 
67
		return trackLog.getId();
68
	}
69
 
70
	public List<TrackLog> getTrackLogs(long userId, String event, String url) 
71
		throws TException{
72
		List<TrackLog> tTrackLogs= new ArrayList<TrackLog>();
73
		List<in.shop2020.user.domain.TrackLog> trackLogs = 
74
			new ArrayList<in.shop2020.user.domain.TrackLog>();
75
 
76
		trackLogs = trackMapper.getTrackLogs(userId, event, url);
77
 
78
		for(in.shop2020.user.domain.TrackLog trackLog : trackLogs) {
79
			tTrackLogs.add(Converter.toThriftTrackLog(trackLog));
80
		}
81
		return tTrackLogs;
82
	}
83
 
84
	public List<TrackLog> getTrackLogsByAffiliate(long affiliateId,
85
			long startDate, long endDate) throws TException{
86
		List<TrackLog> tTrackLogs= new ArrayList<TrackLog>();
87
		List<in.shop2020.user.domain.TrackLog> trackLogs = 
88
			new ArrayList<in.shop2020.user.domain.TrackLog>();
89
 
90
		trackLogs = trackMapper.getTrackLogsByAffiliate(affiliateId, new Date(startDate), new Date(endDate));
91
 
92
		for(in.shop2020.user.domain.TrackLog trackLog : trackLogs) {
93
			tTrackLogs.add(Converter.toThriftTrackLog(trackLog));
94
		}
95
		return tTrackLogs;
96
	}
97
}