Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
21277 ashik.ali 1
package com.spice.profitmandi.web.controller;
2
 
23332 ashik.ali 3
import java.util.HashMap;
4
import java.util.HashSet;
5
import java.util.List;
6
import java.util.Map;
7
import java.util.Set;
8
 
21277 ashik.ali 9
import javax.servlet.http.HttpServletRequest;
10
 
23568 govind 11
import org.apache.logging.log4j.Logger;
12
import org.apache.logging.log4j.LogManager;
21278 ashik.ali 13
import org.springframework.beans.factory.annotation.Autowired;
21277 ashik.ali 14
import org.springframework.http.ResponseEntity;
15
import org.springframework.stereotype.Controller;
21702 ashik.ali 16
import org.springframework.transaction.annotation.Transactional;
21277 ashik.ali 17
import org.springframework.web.bind.annotation.RequestMapping;
18
import org.springframework.web.bind.annotation.RequestMethod;
19
import org.springframework.web.bind.annotation.RequestParam;
20
 
21
import com.spice.profitmandi.common.model.ProfitMandiConstants;
21740 ashik.ali 22
import com.spice.profitmandi.common.web.util.ResponseSender;
23332 ashik.ali 23
import com.spice.profitmandi.dao.entity.logistics.PostOffice;
21735 ashik.ali 24
import com.spice.profitmandi.dao.repository.logistics.PostOfficeRepository;
21277 ashik.ali 25
 
26
@Controller
22037 amit.gupta 27
@Transactional(rollbackFor=Throwable.class)
21277 ashik.ali 28
public class PostOfficeController {
29
 
21448 ashik.ali 30
	@Autowired
22931 ashik.ali 31
	private ResponseSender<?> responseSender;
21448 ashik.ali 32
 
23568 govind 33
	private static final Logger LOGGER=LogManager.getLogger(PostOfficeController.class);
21277 ashik.ali 34
 
21278 ashik.ali 35
	@Autowired
22931 ashik.ali 36
	private PostOfficeRepository postOfficeRepository;
21277 ashik.ali 37
 
38
	@RequestMapping(value = ProfitMandiConstants.URL_POST_OFFICE, method=RequestMethod.GET)
22880 ashik.ali 39
	public ResponseEntity<?> getByPin(HttpServletRequest request, @RequestParam(name = "pinCode") int pinCode){
21277 ashik.ali 40
		LOGGER.info("requested url : "+request.getRequestURL().toString());
23332 ashik.ali 41
		List<PostOffice> postOffices = postOfficeRepository.selectByPinCode(pinCode);
42
		Set<String> cities = new HashSet<>();
43
		Map<String, Object> map = new HashMap<>(3);
44
 
45
		map.put(ProfitMandiConstants.PIN_CODE, pinCode);
46
		for(PostOffice postOffice : postOffices){
47
			String city = postOffice.getCity();
48
			if(city.equals("NA")){
49
				cities.add(postOffice.getDistrict());
50
			}else{
51
				cities.add(postOffice.getCity());
52
			}
53
			map.put(ProfitMandiConstants.STATE, postOffice.getState());
54
		}
55
		map.put(ProfitMandiConstants.CITIES, cities);
21448 ashik.ali 56
		return responseSender.ok(postOfficeRepository.selectByPinCode(pinCode));
21426 ashik.ali 57
 
21277 ashik.ali 58
	}
59
}