MobileMenuController.java 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. package com.lemon.lifecenter.controller;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import com.lemon.lifecenter.common.LifeCenterConfigVO;
  5. import com.lemon.lifecenter.common.LifeCenterController;
  6. import com.lemon.lifecenter.common.LifeCenterSessionController;
  7. import com.lemon.lifecenter.dto.PatientDTO;
  8. import com.lemon.lifecenter.dto.RoleDTO;
  9. import com.lemon.lifecenter.service.AcceptService;
  10. import com.lemon.lifecenter.service.MobilePatientService;
  11. import com.lemon.lifecenter.service.PatientService;
  12. import com.lemon.lifecenter.service.RoleService;
  13. import org.slf4j.Logger;
  14. import org.slf4j.LoggerFactory;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.stereotype.Controller;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RequestParam;
  19. import org.springframework.web.bind.annotation.ResponseBody;
  20. import org.springframework.web.servlet.ModelAndView;
  21. @Controller
  22. @RequestMapping("/mobile")
  23. public class MobileMenuController extends LifeCenterController {
  24. private final Logger logger = LoggerFactory.getLogger(this.getClass());
  25. @Autowired
  26. private PatientService patientService;
  27. @Autowired
  28. private MobilePatientService mpatientService;
  29. @Autowired
  30. private LifeCenterConfigVO configVO;
  31. @Autowired
  32. private AcceptService acceptService;
  33. @Autowired
  34. private RoleService roleService;
  35. @RequestMapping("/menu")
  36. public ModelAndView menu(@RequestParam(value="redirectUrl", required=false, defaultValue="") String redirectUrl,
  37. HttpServletRequest request, HttpServletResponse response) throws Exception {
  38. String patientId = LifeCenterSessionController.getSession(request, "sesMId");
  39. String roomId = LifeCenterSessionController.getSession(request, "sesMRoomNum");
  40. String patientName = LifeCenterSessionController.getSession(request, "sesMName");
  41. String sesMpIdx = LifeCenterSessionController.getSession( request, "sesMpIdx" );
  42. String sesMCenterName = LifeCenterSessionController.getSession( request, "sesMCenterName" );
  43. String sesMCenterCode = LifeCenterSessionController.getSession( request, "sesMCenterCode" );
  44. String sesMDeviceVersion = LifeCenterSessionController.getSession( request, "sesMDeviceVersion" );
  45. PatientDTO dto = new PatientDTO();
  46. dto.setPatientIdx(Integer.parseInt(sesMpIdx));
  47. int cnt = patientService.selectMunJinCount(dto);
  48. dto.setCenterCode( Integer.valueOf( sesMCenterCode ) );
  49. String tel = mpatientService.selectMPatientAdminPhone(dto).getAdminPhone();
  50. if (!tel.equals( "" )) {
  51. tel = tel.replace("-", "");
  52. if (tel.length() == 8) {
  53. tel = tel.replaceFirst("^([0-9]{4})([0-9]{4})$", "$1-$2");
  54. } else if (tel.length() == 12) {
  55. tel = tel.replaceFirst("(^[0-9]{4})([0-9]{4})([0-9]{4})$", "$1-$2-$3");
  56. } else {
  57. tel = tel.replaceFirst("(^02|[0-9]{3})([0-9]{3,4})([0-9]{4})$", "$1-$2-$3");
  58. }
  59. }
  60. ModelAndView mv = setMobileMV("menu/menu");
  61. mv.addObject("patientIdx", sesMpIdx);
  62. mv.addObject("patientId", patientId);
  63. mv.addObject("roomId", roomId);
  64. mv.addObject("name", patientName);
  65. mv.addObject("munjinCnt", cnt);
  66. mv.addObject("centerName", sesMCenterName);
  67. mv.addObject("centerCode", sesMCenterCode);
  68. mv.addObject("redirectUrl", redirectUrl);
  69. mv.addObject( "tel", tel );
  70. mv.addObject( "deviceVersion", sesMDeviceVersion );
  71. return mv;
  72. }
  73. @RequestMapping("/guide")
  74. public ModelAndView guide(HttpServletRequest request, HttpServletResponse response) {
  75. ModelAndView mv = setMobileMV("menu/guide");
  76. return mv;
  77. }
  78. @RequestMapping("/call")
  79. public ModelAndView call(
  80. @RequestParam(value="c", required=false, defaultValue="") String centerCode,
  81. HttpServletRequest request, HttpServletResponse response) throws Exception {
  82. PatientDTO pdto = new PatientDTO();
  83. pdto.setCenterCode( Integer.valueOf( centerCode ) );
  84. String tel = mpatientService.selectMPatientAdminPhone(pdto).getAdminPhone();
  85. if (!tel.equals( "" )) {
  86. tel = tel.replace("-", "");
  87. if (tel.length() == 8) {
  88. tel = tel.replaceFirst("^([0-9]{4})([0-9]{4})$", "$1-$2");
  89. } else if (tel.length() == 12) {
  90. tel = tel.replaceFirst("(^[0-9]{4})([0-9]{4})([0-9]{4})$", "$1-$2-$3");
  91. } else {
  92. tel = tel.replaceFirst("(^02|[0-9]{3})([0-9]{3,4})([0-9]{4})$", "$1-$2-$3");
  93. }
  94. }
  95. ModelAndView mv = setMobileMV("menu/call");
  96. mv.addObject( "tel", tel );
  97. return mv;
  98. }
  99. @RequestMapping("/device")
  100. @ResponseBody
  101. public String device(HttpServletRequest request, HttpServletResponse response) {
  102. // 기기등록 화면은 native 화면이라 클릭시 메뉴 접근 count 만 ++ 시킴
  103. String patientIdx = LifeCenterSessionController.getSession(request, "sesMpIdx");
  104. RoleDTO roleDTO = new RoleDTO();
  105. roleDTO.setPatientIdx(Integer.valueOf(patientIdx.toString()));
  106. roleDTO.setMenuCode("M0018"); //기기등록 메뉴코드
  107. roleService.insertMobileMenuAccessLog(roleDTO);
  108. return "";
  109. }
  110. @RequestMapping("/emergency")
  111. @ResponseBody
  112. public String emergency(HttpServletRequest request, HttpServletResponse response) {
  113. // 응급전화 버튼 클릭시 메뉴 접근 count 만 ++ 시킴
  114. String patientIdx = LifeCenterSessionController.getSession(request, "sesMpIdx");
  115. RoleDTO roleDTO = new RoleDTO();
  116. roleDTO.setPatientIdx(Integer.valueOf(patientIdx.toString()));
  117. roleDTO.setMenuCode("M0021"); // 응급전화 메뉴코드
  118. roleService.insertMobileMenuAccessLog(roleDTO);
  119. return "";
  120. }
  121. }