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

版本升级,增加归档接口

liuqq 4 лет назад
Родитель
Сommit
d85a5bcd28

+ 1 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -156,6 +156,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/data/sendHomeOperation").permitAll()
                 .antMatchers("/qc/data/sendCrisis").permitAll()
                 .antMatchers("/qc/data/deleteFlag").permitAll()
+                .antMatchers("/qc/data/placeFile").permitAll()
                 .antMatchers("/qc/data/sendLisResults").permitAll()
                 .antMatchers("/qc/data/sendPacsResults").permitAll()
                 .antMatchers("/qc/doctoradvice/getPage").permitAll()

+ 3 - 4
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -3,10 +3,11 @@ package com.diagbot.config.security;
 import com.diagbot.facade.TokenFacade;
 import com.diagbot.util.HttpUtils;
 import com.diagbot.util.StringUtil;
-import lombok.SneakyThrows;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.AccessDecisionManager;
+import org.springframework.security.access.AccessDeniedException;
 import org.springframework.security.access.ConfigAttribute;
+import org.springframework.security.authentication.AccountExpiredException;
 import org.springframework.security.authentication.InsufficientAuthenticationException;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.GrantedAuthority;
@@ -14,9 +15,7 @@ import org.springframework.security.web.FilterInvocation;
 import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
 import org.springframework.stereotype.Service;
 
-import javax.security.auth.login.AccountExpiredException;
 import javax.servlet.http.HttpServletRequest;
-import java.nio.file.AccessDeniedException;
 import java.util.Collection;
 
 /**
@@ -29,7 +28,6 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
     @Autowired
     private TokenFacade tokenFacade;
 
-    @SneakyThrows
     @Override
     public void decide(Authentication authentication, Object object, Collection<ConfigAttribute> configAttributes) throws AccessDeniedException, InsufficientAuthenticationException {
         HttpServletRequest request = ((FilterInvocation) object).getHttpRequest();
@@ -201,6 +199,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/data/sendHomeOperation", request)
                 || matchers("/qc/data/sendCrisis", request)
                 || matchers("/qc/data/deleteFlag", request)
+                || matchers("/qc/data/placeFile", request)
                 || matchers("/qc/data/sendLisResults", request)
                 || matchers("/qc/data/sendPacsResults", request)
                 || matchers("/qc/doctoradvice/getPage", request)

+ 30 - 1
src/main/java/com/diagbot/facade/data/ABehospitalInfoFacade.java

@@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ABehospitalInfoDTO;
-import com.diagbot.entity.*;
+import com.diagbot.entity.BehospitalInfo;
+import com.diagbot.entity.MedicalRecord;
+import com.diagbot.entity.QcAbnormal;
+import com.diagbot.entity.QcType;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.QcAbnormalFacade;
 import com.diagbot.facade.QcTypeFacade;
@@ -16,6 +19,7 @@ import com.diagbot.util.StringUtil;
 import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.data.ABehospitalInfoVO;
 import com.diagbot.vo.data.ADeleteFlagVO;
+import com.diagbot.vo.data.APlaceFileVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -221,4 +225,29 @@ public class ABehospitalInfoFacade extends BehospitalInfoServiceImpl {
             return RespDTO.onError(e.getMessage());
         }
     }
+
+    public RespDTO placeFileFlag(APlaceFileVO aPlaceFileVO){
+        try {
+            //验证数据是否存在
+            if(StringUtil.isEmpty(aPlaceFileVO.getBehospitalCode())){
+                return RespDTO.onError("请输入病人住院编码!");
+            }else if(aPlaceFileVO.getHospitalId()==null){
+                return RespDTO.onError("请输入医院编码!");
+            }else{
+                UpdateWrapper<BehospitalInfo> updateWrapper=new UpdateWrapper<>();
+                updateWrapper.eq("behospital_code", aPlaceFileVO.getBehospitalCode())
+                        .eq("hospital_id", aPlaceFileVO.getHospitalId())
+                        .eq("is_deleted",IsDeleteEnum.N)
+                        .set("is_placefile","1")
+                        .set("placefile_date",aPlaceFileVO.getPlaceFileDate().isEmpty()?null:DateUtil.parseDateTime(aPlaceFileVO.getPlaceFileDate()))
+                        .set("gmt_modified", DateUtil.now());
+
+                Boolean flag=update(new BehospitalInfo(),updateWrapper);
+                return RespDTO.onSuc(flag);
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院登记-归档",JSON.toJSONString(aPlaceFileVO),"",e.getMessage());
+            return RespDTO.onError(e.getMessage());
+        }
+    }
 }

+ 12 - 0
src/main/java/com/diagbot/vo/data/APlaceFileVO.java

@@ -0,0 +1,12 @@
+package com.diagbot.vo.data;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class APlaceFileVO {
+    private String behospitalCode;//病人住院ID
+    private Long hospitalId;//医院编码
+    private String placeFileDate;//归档时间
+}

+ 8 - 0
src/main/java/com/diagbot/web/DataController.java

@@ -200,4 +200,12 @@ public class DataController {
         return RespDTO.onSuc(true);
     }
 
+    @ApiOperation(value = "数据引擎-归档标识")
+    @PostMapping("/placeFile")
+    @SysLogger("placeFile")
+    public RespDTO placeFileFlag(@RequestBody APlaceFileVO aPlaceFileVO){
+        aBehospitalInfoFacade.placeFileFlag(aPlaceFileVO);
+        return RespDTO.onSuc(true);
+    }
+
 }