Subversion Repositories SmartDukaan

Rev

Rev 30835 | Rev 31737 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 30835 Rev 31602
Line 9... Line 9...
9
import java.util.*;
9
import java.util.*;
10
 
10
 
11
@Component
11
@Component
12
public class PostOfficeServiceImpl implements PostOfficeService {
12
public class PostOfficeServiceImpl implements PostOfficeService {
13
 
13
 
14
	@Autowired
-
 
15
	private PostOfficeRepository postOfficeRepository;
-
 
16
	private static final Map<Integer, List<String>> pincodeCitiesMap = new HashMap<Integer, List<String>>();
14
    private static final Map<Integer, List<String>> pincodeCitiesMap = new HashMap<Integer, List<String>>();
17
 
15
 
18
	static {
16
    static {
19
		pincodeCitiesMap.put(160104, Arrays.asList("Ludhiana"));
17
        pincodeCitiesMap.put(160104, Arrays.asList("Ludhiana"));
20
		pincodeCitiesMap.put(232101, Arrays.asList("Padao", "Mughalsarai"));
18
        pincodeCitiesMap.put(232101, Arrays.asList("Padao", "Mughalsarai"));
21
		pincodeCitiesMap.put(261151, Arrays.asList("Pisawa"));
19
        pincodeCitiesMap.put(261151, Arrays.asList("Pisawa"));
22
		pincodeCitiesMap.put(231304, Arrays.asList("Chunar"));
20
        pincodeCitiesMap.put(231304, Arrays.asList("Chunar"));
23
		pincodeCitiesMap.put(224129, Arrays.asList("Tanda"));
21
        pincodeCitiesMap.put(224129, Arrays.asList("Tanda"));
24
		pincodeCitiesMap.put(204213, Arrays.asList("Hathras"));
22
        pincodeCitiesMap.put(204213, Arrays.asList("Hathras"));
25
		pincodeCitiesMap.put(323305, Arrays.asList("Rawatbhata"));
23
        pincodeCitiesMap.put(323305, Arrays.asList("Rawatbhata"));
26
		pincodeCitiesMap.put(311030, Arrays.asList("Kanwaliyas"));
24
        pincodeCitiesMap.put(311030, Arrays.asList("Kanwaliyas"));
27
		pincodeCitiesMap.put(326021, Arrays.asList("Asnawar"));
25
        pincodeCitiesMap.put(326021, Arrays.asList("Asnawar"));
28
		pincodeCitiesMap.put(326022, Arrays.asList("Bakani"));
26
        pincodeCitiesMap.put(326022, Arrays.asList("Bakani"));
29
		pincodeCitiesMap.put(303313, Arrays.asList("BandiKui"));
27
        pincodeCitiesMap.put(303313, Arrays.asList("BandiKui"));
30
		pincodeCitiesMap.put(303301, Arrays.asList("Bassi"));
28
        pincodeCitiesMap.put(303301, Arrays.asList("Bassi"));
31
		pincodeCitiesMap.put(323802, Arrays.asList("Dei"));
29
        pincodeCitiesMap.put(323802, Arrays.asList("Dei"));
32
		pincodeCitiesMap.put(322201, Arrays.asList("Gangapur City"));
30
        pincodeCitiesMap.put(322201, Arrays.asList("Gangapur City"));
33
		pincodeCitiesMap.put(327021, Arrays.asList("Ganoda"));
31
        pincodeCitiesMap.put(327021, Arrays.asList("Ganoda"));
34
		pincodeCitiesMap.put(321204, Arrays.asList("GopalGarh"));
32
        pincodeCitiesMap.put(321204, Arrays.asList("GopalGarh"));
35
		pincodeCitiesMap.put(342902, Arrays.asList("Gotan"));
33
        pincodeCitiesMap.put(342902, Arrays.asList("Gotan"));
36
		pincodeCitiesMap.put(311201, Arrays.asList("Jahaajpur"));
34
        pincodeCitiesMap.put(311201, Arrays.asList("Jahaajpur"));
37
		pincodeCitiesMap.put(326519, Arrays.asList("Julmi"));
35
        pincodeCitiesMap.put(326519, Arrays.asList("Julmi"));
38
		pincodeCitiesMap.put(321022, Arrays.asList("Kamaan"));
36
        pincodeCitiesMap.put(321022, Arrays.asList("Kamaan"));
39
		pincodeCitiesMap.put(323603, Arrays.asList("Lakheri"));
37
        pincodeCitiesMap.put(323603, Arrays.asList("Lakheri"));
40
		pincodeCitiesMap.put(301408, Arrays.asList("Machari"));
38
        pincodeCitiesMap.put(301408, Arrays.asList("Machari"));
41
		pincodeCitiesMap.put(321608, Arrays.asList("Mahwa"));
39
        pincodeCitiesMap.put(321608, Arrays.asList("Mahwa"));
42
		pincodeCitiesMap.put(301406, Arrays.asList("Malakhera"));
40
        pincodeCitiesMap.put(301406, Arrays.asList("Malakhera"));
43
		pincodeCitiesMap.put(325221, Arrays.asList("Chhipabarod"));
41
        pincodeCitiesMap.put(325221, Arrays.asList("Chhipabarod"));
44
		pincodeCitiesMap.put(326519, Arrays.asList("Morak"));
42
        pincodeCitiesMap.put(326519, Arrays.asList("Morak"));
45
		pincodeCitiesMap.put(326514, Arrays.asList("Dag"));
43
        pincodeCitiesMap.put(326514, Arrays.asList("Dag"));
46
		pincodeCitiesMap.put(341031, Arrays.asList("Padukallan"));
44
        pincodeCitiesMap.put(341031, Arrays.asList("Padukallan"));
47
		pincodeCitiesMap.put(326034, Arrays.asList("Pirawa"));
45
        pincodeCitiesMap.put(326034, Arrays.asList("Pirawa"));
48
 
46
 
-
 
47
    }
49
	}
48
 
-
 
49
    @Autowired
-
 
50
    private PostOfficeRepository postOfficeRepository;
50
 
51
 
51
	@Override
52
    @Override
52
	public Map<String, Object> getPOPincode(int pincode) {
53
    public Map<String, Object> getPOPincode(int pinCode) {
53
		List<PostOffice> postOffices = postOfficeRepository.selectByPinCode(pincode);
54
        List<PostOffice> postOffices = postOfficeRepository.selectByPinCode(pinCode);
54
		Set<String> cities = new HashSet<>();
55
        Set<String> cities = new HashSet<>();
55
		//Add custom pincodes to support the major cities;
-
 
56
		if (pincodeCitiesMap.containsKey(pincode)) {
-
 
57
			cities.addAll(pincodeCitiesMap.get(pincode));
-
 
58
		}
-
 
59
		Map<String, Object> map = new HashMap<>(3);
56
        Map<String, Object> map = new HashMap<>(3);
60
 
57
 
61
		map.put(ProfitMandiConstants.PIN_CODE, pincode);
58
        map.put(ProfitMandiConstants.PIN_CODE, pinCode);
62
		for (PostOffice postOffice : postOffices) {
59
        for (PostOffice postOffice : postOffices) {
63
			String city = postOffice.getCity();
60
            String city = postOffice.getCity();
64
			if (city.equals("NA")) {
61
            if (city.equals("NA")) {
65
				cities.add(postOffice.getDistrict());
62
                cities.add(postOffice.getDistrict());
66
 
63
 
67
			} else {
64
            } else {
68
				cities.add(postOffice.getCity());
65
                cities.add(postOffice.getCity());
69
			}
66
            }
70
			map.put(ProfitMandiConstants.STATE, postOffice.getState());
67
            map.put(ProfitMandiConstants.STATE, postOffice.getState());
-
 
68
            String[] nameArr = postOffice.getCodeName().split(" ");
-
 
69
            if (nameArr.length > 2)
-
 
70
                cities.add(postOffice.getCodeName().split(" ")[0]);
71
		}
71
        }
72
		map.put(ProfitMandiConstants.CITIES, cities);
72
        map.put(ProfitMandiConstants.CITIES, cities);
73
		return map;
73
        return map;
74
	}
74
    }
75
 
75
 
76
}
76
}