package org.ei.drishti.web.controller; import org.ei.drishti.domain.register.*; import org.ei.drishti.dto.register.*; import org.ei.drishti.mapper.*; import org.ei.drishti.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import static org.springframework.web.bind.annotation.RequestMethod.GET; @Controller public class RegisterController { private ANCRegisterService ancRegisterService; private PNCRegisterService pncRegisterService; private ECRegisterService ecRegisterService; private ChildRegisterService childRegisterService; private FPRegisterService fpRegisterService; private ANCRegisterMapper ancRegisterMapper; private ECRegisterMapper ecRegisterMapper; private ChildRegisterMapper childRegisterMapper; private FPRegisterMapper fpRegisterMapper; private PNCRegisterMapper pncRegisterMapper; @Autowired public RegisterController(ANCRegisterService ancRegisterService, PNCRegisterService pncRegisterService, ECRegisterService ecRegisterService, ChildRegisterService childRegisterService, FPRegisterService fpRegisterService, ANCRegisterMapper ancRegisterMapper, ECRegisterMapper ecRegisterMapper, ChildRegisterMapper childRegisterMapper, FPRegisterMapper fpRegisterMapper, PNCRegisterMapper pncRegisterMapper) { this.ancRegisterService = ancRegisterService; this.ecRegisterService = ecRegisterService; this.pncRegisterService = pncRegisterService; this.childRegisterService = childRegisterService; this.fpRegisterService = fpRegisterService; this.ancRegisterMapper = ancRegisterMapper; this.ecRegisterMapper = ecRegisterMapper; this.childRegisterMapper = childRegisterMapper; this.fpRegisterMapper = fpRegisterMapper; this.pncRegisterMapper = pncRegisterMapper; } @RequestMapping(method = GET, value = "/registers/ec") @ResponseBody public ResponseEntity<ECRegisterDTO> ecRegister(@RequestParam("anm-id") String anmIdentifier) { ECRegister ecRegister = ecRegisterService.getRegisterForANM(anmIdentifier); return new ResponseEntity<>(ecRegisterMapper.mapToDTO(ecRegister), HttpStatus.OK); } @RequestMapping(method = GET, value = "/registers/anc") @ResponseBody public ResponseEntity<ANCRegisterDTO> ancRegister(@RequestParam("anm-id") String anmIdentifier) { ANCRegister ancRegister = ancRegisterService.getRegisterForANM(anmIdentifier); return new ResponseEntity<>(ancRegisterMapper.mapToDTO(ancRegister), HttpStatus.OK); } @RequestMapping(method = GET, value = "/registers/child") @ResponseBody public ResponseEntity<ChildRegisterDTO> childRegister(@RequestParam("anm-id") String anmIdentifier) { ChildRegister childRegister = childRegisterService.getRegisterForANM(anmIdentifier); return new ResponseEntity<>(childRegisterMapper.mapToDTO(childRegister), HttpStatus.OK); } @RequestMapping(method = GET, value = "/registers/fp") @ResponseBody public ResponseEntity<FPRegisterDTO> fpRegister(@RequestParam("anm-id") String anmIdentifier) { FPRegister fpRegister = fpRegisterService.getRegisterForANM(anmIdentifier); return new ResponseEntity<>(fpRegisterMapper.mapToDTO(fpRegister), HttpStatus.OK); } @RequestMapping(method = GET, value = "/registers/pnc") @ResponseBody public ResponseEntity<PNCRegisterDTO> pncRegister(@RequestParam("anm-id") String anmIdentifier) { PNCRegister pncRegister = pncRegisterService.getRegisterForANM(anmIdentifier); return new ResponseEntity<>(pncRegisterMapper.mapToDTO(pncRegister), HttpStatus.OK); } }