Просмотр исходного кода

1. 숫자형식 체크 함수추가
2. 모바일 로그인시 세션에 idx가 없는 경우 오류 발생하던 문제 수정
3. restApi 전화번호 체크 정규식 추가

jksong 4 лет назад
Родитель
Сommit
d5816b3b5c

+ 14 - 0
src/main/java/com/lemon/lifecenter/common/LifeCenterFunction.java

@@ -389,6 +389,20 @@ public class LifeCenterFunction {
 
         return ip;
     }
+    
+    /**
+     * 숫자만 입력되었는지 체크
+     * @param s
+     * @return
+     */
+    public static boolean isIntegerNumeric(String s) {
+        try {
+            Integer.parseInt(s);
+            return true;
+        } catch(NumberFormatException e) {
+            return false;
+        }
+    }
 
     public static String setPhoneFormat(String number) {
         StringBuilder sb = new StringBuilder(15);

+ 12 - 6
src/main/java/com/lemon/lifecenter/controller/MobileLoginController.java

@@ -144,17 +144,23 @@ public class MobileLoginController extends LifeCenterController {
     
     @RequestMapping("/logout")
     public String patientLogout( HttpServletRequest request, HttpServletResponse response ) {
-        String remoteIp  = LifeCenterFunction.getRemoteAddr( request );
-        String sesMId     = LifeCenterSessionController.getSession( request, "sesMId" );
+//        String remoteIp  = LifeCenterFunction.getRemoteAddr( request );
+//        String sesMId     = LifeCenterSessionController.getSession( request, "sesMId" );
         String sesMIdx    = LifeCenterSessionController.getSession( request, "sesMpIdx" );
         
         LifeCenterSessionController.sessionInvalidate( request );
         
-        JSONObject json = new JSONObject();
-        json.put("patientIdx", 1);
+//        JSONObject json = new JSONObject();
+//        json.put("patientIdx", 1);
         
-        logger.error( "[PATIENT LOGOUT] RemoteIP : " + remoteIp + " UserId : " + sesMId );
-        deviceService.deleteDeviceInfo(Integer.parseInt(sesMIdx));
+//      logger.error( "[PATIENT LOGOUT] RemoteIP : " + remoteIp + " UserId : " + sesMId );
+      try {
+          if (!sesMIdx.equals("")) {
+              deviceService.deleteDeviceInfo(Integer.parseInt(sesMIdx));
+          }
+      } catch (Exception e) {
+          
+      }
         
         LifeCenterFunction.scriptMessage(response, "localStorage.clear();location.href='/mobile/login';");
         return "/common/blank";

+ 36 - 23
src/main/java/com/lemon/lifecenter/controller/RestApiController.java

@@ -10,6 +10,8 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.TreeMap;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 import javax.servlet.http.HttpServletRequest;
 
@@ -122,32 +124,43 @@ public class RestApiController {
                                 result = object.toString();
                             } else {
                                 String phone = dto.getPatientPhone();
-                                if (!phone.equals("")) {
-                                    phone = LifeCenterFunction.setPhoneFormat(phone);
-                                    dto.setPatientPhone2(phone);
-                                }
-                                
-                                logger.error("dto.setPatientPhone2 -- > " + dto.getPatientPhone2());
                                 
-                                if (resourceType.equals("bloodPressure") || resourceType.equals("bloodSugar") || 
-                                        resourceType.equals("oxygenSaturation") || resourceType.equals("pulseRate") || resourceType.equals("temperature")) {
-                                        result = selectPhrData(dto);
-                                        
-                                } else if (resourceType.equals("clinicMemo")) {
-                                    result = selectClinicMemoList(dto);
-                                } else if (resourceType.equals("patientInfo")) {
+                                Pattern pattern1 = Pattern.compile("\\d{2,3}-\\d{3,4}-\\d{4}");
+                                Pattern pattern2 = Pattern.compile("\\d{2,3}\\d{3,4}\\d{4}");
+                                Matcher matcher1 = pattern1.matcher(phone);
+                                Matcher matcher2 = pattern2.matcher(phone);
+                                if (matcher1.matches() || matcher2.matches()) {
+                                    // true
+                                    if (!phone.equals("")) {
+                                        phone = LifeCenterFunction.setPhoneFormat(phone);
+                                        dto.setPatientPhone2(phone);
+                                    }
                                     
-                                    result = selectHLPatientList(dto);
-                                } else if (resourceType.equals("survey")) {
-                                    result = selectMunjinDataList(dto);
-                                } else if (resourceType.equals("symptom")) {
-                                    result = selectSymptomDataList(dto);
-//                                    } else if (resourceType.equals("vitalSign")) {
-                                    //String[] strAr = {"temperature", "bloodPressure", "bloodSugar", "oxygenSaturation", "pulseRate"};
-//                                        result = selectVitalSign(dto);
+                                    if (resourceType.equals("bloodPressure") || resourceType.equals("bloodSugar") || 
+                                            resourceType.equals("oxygenSaturation") || resourceType.equals("pulseRate") || resourceType.equals("temperature")) {
+                                            result = selectPhrData(dto);
+                                            
+                                    } else if (resourceType.equals("clinicMemo")) {
+                                        result = selectClinicMemoList(dto);
+                                    } else if (resourceType.equals("patientInfo")) {
+                                        
+                                        result = selectHLPatientList(dto);
+                                    } else if (resourceType.equals("survey")) {
+                                        result = selectMunjinDataList(dto);
+                                    } else if (resourceType.equals("symptom")) {
+                                        result = selectSymptomDataList(dto);
+//                                        } else if (resourceType.equals("vitalSign")) {
+                                        //String[] strAr = {"temperature", "bloodPressure", "bloodSugar", "oxygenSaturation", "pulseRate"};
+//                                            result = selectVitalSign(dto);
+                                    } else {
+                                        object.put("error", "invalidResourceType");
+                                        message = "invalidResourceType";
+                                        result = object.toString();
+                                    }
                                 } else {
-                                    object.put("error", "invalidResourceType");
-                                    message = "invalidResourceType";
+                                    // Invalid Not the form : + phone
+                                    object.put("error", "The phone number is incorrect. : " + phone);
+                                    message = "invalidPhoneNumber";
                                     result = object.toString();
                                 }
                             }

+ 4 - 4
src/main/resources/application.properties

@@ -2,13 +2,13 @@ spring.mvc.view.prefix=/WEB-INF/jsp/
 spring.mvc.view.suffix=.jsp
 
 #local properties
-spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
-spring.datasource.url=jdbc:log4jdbc:cubrid:118.67.133.187:30000:LIFE_CENTER:::?charset=UTF-8
+# spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
+# spring.datasource.url=jdbc:log4jdbc:cubrid:118.67.133.187:30000:LIFE_CENTER:::?charset=UTF-8
 #logging.level.com.lemon.lifecenter.mapper=DEBUG
 
 #product DEV properties
-#spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
-#spring.datasource.url=jdbc:log4jdbc:cubrid:localhost:30000:LIFE_CENTER:::?charset=UTF-8
+spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
+spring.datasource.url=jdbc:log4jdbc:cubrid:localhost:30000:LIFE_CENTER:::?charset=UTF-8
 #logging.level.com.lemon.lifecenter.mapper=DEBUG
 
 #product properties