Browse Source

Merge branch 'develop' into innerDevelop

gaodm 3 years ago
parent
commit
aa042e3f3e

+ 24 - 13
src/main/java/com/diagbot/facade/LogTestFacade.java

@@ -3,7 +3,6 @@ package com.diagbot.facade;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.util.CdssLogUtil;
-import com.diagbot.util.StringUtil;
 import com.diagbot.vo.LogTestVO;
 import org.springframework.stereotype.Component;
 
@@ -15,23 +14,33 @@ import org.springframework.stereotype.Component;
 @Component
 public class LogTestFacade {
     public Boolean logTest(LogTestVO logTestVO) {
-        CdssLogUtil.addBizHospitalId(logTestVO.getHospitalId());
-        if (StringUtil.isNotBlank(logTestVO.getPatientId())) {
-            CdssLogUtil.addBizPatientId(logTestVO.getPatientId());
-        }
-        if (StringUtil.isNotBlank(logTestVO.getSubHospitalName())) {
-            CdssLogUtil.addBizSubHospitalName(logTestVO.getSubHospitalName());
-        }
-        if (StringUtil.isNotBlank(logTestVO.getSubHospitalCode())) {
-            CdssLogUtil.addBizSubHospitalCode(logTestVO.getSubHospitalCode());
-        }
         if (logTestVO.getType().equals(1)) {
             //抛错
+            //测试数据
+            //            logTestVO.setHospitalId(-1L);
+            //            logTestVO.setSceneName("sceneName");
+            //            logTestVO.setPatientId("patientId");
+            //            logTestVO.setSubHospitalName("subHospitalName");
+            //            logTestVO.setSubHospitalCode("subHospitalCode");
+
+            //paramLog(logTestVO);
             throw new CommonException(CommonErrorCode.SERVER_IS_ERROR);
         } else if (logTestVO.getType().equals(2)) {
+            //测试数据
+            //            logTestVO.setHospitalId(-1L);
+            //            logTestVO.setSceneName("sceneName");
+            //            logTestVO.setPatientId("patientId");
+            //            logTestVO.setSubHospitalName("subHospitalName");
+            //            logTestVO.setSubHospitalCode("subHospitalCode");
             paramLog(logTestVO);
         } else {
             /** DO NOTHING*/
+            //测试数据
+            //            logTestVO.setHospitalId(-1L);
+            //            logTestVO.setSceneName("sceneName");
+            //            logTestVO.setPatientId("patientId");
+            //            logTestVO.setSubHospitalName("subHospitalName");
+            //            logTestVO.setSubHospitalCode("subHospitalCode");
         }
         return true;
     }
@@ -51,8 +60,10 @@ public class LogTestFacade {
         CdssLogUtil.addBizReq(logTestVO);
         //出参设置
         CdssLogUtil.addBizResp(logTestVOResp);
-        CdssLogUtil.addBizResp(logTestVOResp);
-        CdssLogUtil.addBizResp(logTestVOResp);
+        LogTestVO logTestVORespE = new LogTestVO();
+        logTestVORespE.setMsg("返回参数最后");
+        logTestVORespE.setType(9);
+        CdssLogUtil.addBizResp(logTestVORespE);
         return logTestVOResp;
     }
 }

+ 96 - 78
src/main/java/com/diagbot/util/CdssLogUtil.java

@@ -4,6 +4,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.TranLog;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
+import com.diagbot.vo.CdssLogBaseVO;
 import org.aspectj.lang.JoinPoint;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.springframework.validation.BindException;
@@ -26,10 +27,10 @@ public class CdssLogUtil {
 
     private final static String CDSS_REQ = "Cdss_Req";
     private final static String CDSS_RESP = "Cdss_Resp";
-    private final static String CDSS_HOSPITAL_ID = "Cdss_Hospital_Id";
-    private final static String CDSS_SUB_HOSPITAL_NAME = "Cdss_Sub_Hospital_Name";
-    private final static String CDSS_SUB_HOSPITAL_CODE = "Cdss_Sub_Hospital_Code";
-    private final static String CDSS_PATIENT_ID = "Cdss_Patient_Id";
+    //    private final static String CDSS_HOSPITAL_ID = "Cdss_Hospital_Id";
+    //    private final static String CDSS_SUB_HOSPITAL_NAME = "Cdss_Sub_Hospital_Name";
+    //    private final static String CDSS_SUB_HOSPITAL_CODE = "Cdss_Sub_Hospital_Code";
+    //    private final static String CDSS_PATIENT_ID = "Cdss_Patient_Id";
     private final static String CDSS_LOG_SP = "→";
 
     /**
@@ -42,14 +43,10 @@ public class CdssLogUtil {
         //请求的参数
         Object[] args = joinPoint.getArgs();
         //请求的参数
-        String params = "";
         for (Object o : args) {
-            params += FastJsonUtils.getBeanToJson(o);
+            addBizReq(o);
             break;
         }
-        if (!StringUtil.isEmpty(params)) {
-            tranLog.setParams(params);
-        }
         return tranLog;
     }
 
@@ -62,6 +59,23 @@ public class CdssLogUtil {
      * @throws Throwable
      */
     public static TranLog tranLogRespAspect(Object proceed, TranLog tranLog, long start, ProceedingJoinPoint joinPoint) throws Throwable {
+        //请求的参数
+        Object[] args = joinPoint.getArgs();
+        for (Object o : args) {
+            //第一个参数继承基类
+            if (o instanceof CdssLogBaseVO) {
+                CdssLogBaseVO p = (CdssLogBaseVO) o;
+                tranLog.setPatientId(p.getPatientId());
+                tranLog.setHospitalId(p.getHospitalId());
+                tranLog.setSubHospitalCode(p.getSubHospitalCode());
+                tranLog.setSubHospitalName(p.getSubHospitalName());
+                if (StringUtil.isNotBlank(p.getSceneName())) {
+                    tranLog.setSceneName(p.getSceneName());
+                }
+            }
+            break;
+        }
+        //出参日志记录
         String result = "";
         result = FastJsonUtils.getBeanToJson(proceed);
         tranLog.setSuccessFlag(1);
@@ -93,14 +107,20 @@ public class CdssLogUtil {
         //请求的参数
         Object[] args = joinPoint.getArgs();
         //请求的参数
-        String params = "";
         for (Object o : args) {
-            params += FastJsonUtils.getBeanToJson(o);
+            //第一个参数继承基类
+            if (o instanceof CdssLogBaseVO) {
+                CdssLogBaseVO p = (CdssLogBaseVO) o;
+                tranLog.setPatientId(p.getPatientId());
+                tranLog.setHospitalId(p.getHospitalId());
+                tranLog.setSubHospitalCode(p.getSubHospitalCode());
+                tranLog.setSubHospitalName(p.getSubHospitalName());
+                if (StringUtil.isNotBlank(p.getSceneName())) {
+                    tranLog.setSceneName(p.getSceneName());
+                }
+            }
             break;
         }
-        if (!StringUtil.isEmpty(params)) {
-            tranLog.setParams(params);
-        }
         //出参设置
         String result = "";
         result = FastJsonUtils.getBeanToJson(handleException((Exception) ex));
@@ -188,7 +208,7 @@ public class CdssLogUtil {
         String resp = response.getHeader(CDSS_RESP);
         if (StringUtil.isNotBlank(resp)) {
             if (StringUtil.isNotBlank(result)) {
-                result += CDSS_LOG_SP + resp;
+                result = resp + CDSS_LOG_SP + result;
             } else {
                 result = resp;
             }
@@ -196,34 +216,32 @@ public class CdssLogUtil {
         }
         tranLog.setResult(result);
 
-        //todo 个性化处理
-
-        //设置医院id
-        Long hospitalId = tranLog.getHospitalId();
-        String hosId = response.getHeader(CDSS_HOSPITAL_ID);
-        if (StringUtil.isNotBlank(hosId)) {
-            hospitalId = Long.valueOf(hosId);
-            response.setHeader(CDSS_HOSPITAL_ID, "");
-        }
-        tranLog.setHospitalId(hospitalId);
-
-        //设置子医院名称
-        String subHospitalName = tranLog.getSubHospitalName();
-        String subHosName = response.getHeader(CDSS_SUB_HOSPITAL_NAME);
-        if (StringUtil.isNotBlank(subHosName)) {
-            subHospitalName = subHosName;
-            response.setHeader(CDSS_SUB_HOSPITAL_NAME, "");
-        }
-        tranLog.setSubHospitalName(subHospitalName);
-
-        //设置子医院编码
-        String subHospitalCode = tranLog.getSubHospitalCode();
-        String subHosCode = response.getHeader(CDSS_SUB_HOSPITAL_CODE);
-        if (StringUtil.isNotBlank(subHosCode)) {
-            subHospitalCode = subHosCode;
-            response.setHeader(CDSS_SUB_HOSPITAL_CODE, "");
-        }
-        tranLog.setSubHospitalCode(subHospitalCode);
+        //        //设置医院id
+        //        Long hospitalId = tranLog.getHospitalId();
+        //        String hosId = response.getHeader(CDSS_HOSPITAL_ID);
+        //        if (StringUtil.isNotBlank(hosId)) {
+        //            hospitalId = Long.valueOf(hosId);
+        //            response.setHeader(CDSS_HOSPITAL_ID, "");
+        //        }
+        //        tranLog.setHospitalId(hospitalId);
+        //
+        //        //设置子医院名称
+        //        String subHospitalName = tranLog.getSubHospitalName();
+        //        String subHosName = response.getHeader(CDSS_SUB_HOSPITAL_NAME);
+        //        if (StringUtil.isNotBlank(subHosName)) {
+        //            subHospitalName = subHosName;
+        //            response.setHeader(CDSS_SUB_HOSPITAL_NAME, "");
+        //        }
+        //        tranLog.setSubHospitalName(subHospitalName);
+        //
+        //        //设置子医院编码
+        //        String subHospitalCode = tranLog.getSubHospitalCode();
+        //        String subHosCode = response.getHeader(CDSS_SUB_HOSPITAL_CODE);
+        //        if (StringUtil.isNotBlank(subHosCode)) {
+        //            subHospitalCode = subHosCode;
+        //            response.setHeader(CDSS_SUB_HOSPITAL_CODE, "");
+        //        }
+        //        tranLog.setSubHospitalCode(subHospitalCode);
     }
 
 
@@ -245,41 +263,41 @@ public class CdssLogUtil {
         handleRespHeaderMap(CDSS_RESP, o);
     }
 
-    /**
-     * 设置医院id
-     *
-     * @param o
-     */
-    public static void addBizHospitalId(Object o) {
-        handleRespHeaderMap(CDSS_HOSPITAL_ID, o);
-    }
-
-    /**
-     * 设置子医院编码
-     *
-     * @param o
-     */
-    public static void addBizSubHospitalName(Object o) {
-        handleRespHeaderMap(CDSS_SUB_HOSPITAL_NAME, o);
-    }
-
-    /**
-     * 设置子医院名称
-     *
-     * @param o
-     */
-    public static void addBizSubHospitalCode(Object o) {
-        handleRespHeaderMap(CDSS_SUB_HOSPITAL_CODE, o);
-    }
-
-    /**
-     * 设置病人标识
-     *
-     * @param o
-     */
-    public static void addBizPatientId(Object o) {
-        handleRespHeaderMap(CDSS_PATIENT_ID, o);
-    }
+    //    /**
+    //     * 设置医院id
+    //     *
+    //     * @param o
+    //     */
+    //    public static void addBizHospitalId(Object o) {
+    //        handleRespHeaderMap(CDSS_HOSPITAL_ID, o);
+    //    }
+    //
+    //    /**
+    //     * 设置子医院编码
+    //     *
+    //     * @param o
+    //     */
+    //    public static void addBizSubHospitalName(Object o) {
+    //        handleRespHeaderMap(CDSS_SUB_HOSPITAL_NAME, o);
+    //    }
+    //
+    //    /**
+    //     * 设置子医院名称
+    //     *
+    //     * @param o
+    //     */
+    //    public static void addBizSubHospitalCode(Object o) {
+    //        handleRespHeaderMap(CDSS_SUB_HOSPITAL_CODE, o);
+    //    }
+    //
+    //    /**
+    //     * 设置病人标识
+    //     *
+    //     * @param o
+    //     */
+    //    public static void addBizPatientId(Object o) {
+    //        handleRespHeaderMap(CDSS_PATIENT_ID, o);
+    //    }
 
 
     private static void handleRespHeaderMap(String key, Object o) {

+ 41 - 0
src/main/java/com/diagbot/vo/CdssLogBaseVO.java

@@ -0,0 +1,41 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/12/1 14:22
+ */
+@Getter
+@Setter
+public class CdssLogBaseVO {
+    /**
+     * 病人唯一标识(病人id、病历号等)
+     */
+    private String patientId;
+
+    /**
+     * 医院id
+     */
+    @NotNull(message = "请输入医院id")
+    private Long hospitalId;
+
+    /**
+     * 子医院编码
+     */
+    private String subHospitalCode;
+
+    /**
+     * 子医院名称
+     */
+    private String subHospitalName;
+
+    /**
+     * 场景名称
+     */
+    private String sceneName;
+}

+ 1 - 16
src/main/java/com/diagbot/vo/LogTestVO.java

@@ -12,24 +12,9 @@ import javax.validation.constraints.NotNull;
  */
 @Getter
 @Setter
-public class LogTestVO {
+public class LogTestVO extends CdssLogBaseVO {
     private String msg;
     //0:正常,1:抛错,2:子方法放入参数
     @NotNull
     private Integer type = 0;
-    @NotNull(message = "请输入医院id")
-    private Long hospitalId;
-    /**
-     * 病人唯一标识(病人id、病历号等)
-     */
-    private String patientId;
-    /**
-     * 子医院编码
-     */
-    private String subHospitalCode;
-
-    /**
-     * 子医院名称
-     */
-    private String subHospitalName;
 }