From 832e40a8249ae15a5b2a7f01c78da4edc06cd55e Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 13 十月 2025 15:54:57 +0800
Subject: [PATCH] 定时自动叫号 与 WMS获取车辆是否在园接口开发

---
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java |   91 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 80 insertions(+), 11 deletions(-)

diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
index c04cf08..b18bf11 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/WebPublicController.java
@@ -5,6 +5,13 @@
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.config.annotation.LoginNoRequired;
 import com.doumee.core.annotation.trace.Trace;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.FacePictureCheckRequest;
+import com.doumee.core.haikang.model.param.respose.FacePictureCheckResponse;
+import com.doumee.core.haikang.service.HKService;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.FtpUtil;
@@ -28,10 +35,7 @@
 import java.awt.*;
 import java.awt.image.BufferedImage;
 import java.io.*;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.UUID;
+import java.util.*;
 
 /**
  * @author Eva.Caesar Liu
@@ -53,14 +57,14 @@
         @ApiImplicitParam(name = "folder", value = "鏂囦欢澶�", required = true, paramType = "query", dataType = "String", dataTypeClass = String.class),
     })
     @PostMapping(value = "/upload", headers = "content-type=multipart/form-data")
-    public void uploadMobile(String folder, HttpServletRequest request, HttpServletResponse response) throws Exception {
+    public void uploadMobile(String folder, HttpServletRequest request, HttpServletResponse response,Integer isFace) throws Exception {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
         upload(multipartRequest, response, folder + "/",
             systemDictDataBiz.queryByCode(Constants.OSS,Constants.BUCKETNAME).getCode(),
             systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
             systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode(),
             systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(),
-            systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
+            systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode(),isFace);
     }
 
 
@@ -69,7 +73,7 @@
             @ApiImplicitParam(name = "folder", value = "鏂囦欢澶�", required = true, paramType = "query", dataType = "String", dataTypeClass = String.class),
     })
     @PostMapping(value = "/uploadPicture", headers = "content-type=multipart/form-data")
-    public void uploadPicture(String folder, HttpServletRequest request, HttpServletResponse response) throws Exception {
+    public void uploadPicture(String folder, HttpServletRequest request, HttpServletResponse response,Integer isFace) throws Exception {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
         Iterator<String> fileNames = multipartRequest.getFileNames();
         Map<String, Object> context = new HashMap<>();
@@ -87,7 +91,7 @@
                 systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
                 systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode(),
                 systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(),
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
+                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode(),isFace);
     }
 
 
@@ -98,7 +102,7 @@
     @ApiOperation(value = "涓婁紶鏂囦欢鍒癋TP")
     @RequestMapping(method= RequestMethod.POST,value="uploadFtp.do",headers = "content-type=multipart/form-data")
     @ResponseBody
-    public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode) throws Exception {
+    public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode,Integer isFace) throws Exception {
         System.out.println("涓婁紶涓�");
         String folder = systemDictDataBiz.queryByCode(Constants.FTP,folderCode).getCode();
         String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode();
@@ -128,6 +132,40 @@
 //                    boolean r = ftp.uploadInputstream(compressImg(is),fileName);
                     boolean r = ftp.uploadInputstream(is,fileName);
                     if(r){
+                         if(Objects.nonNull(isFace) && Constants.equalsInteger(isFace,Constants.ZERO)){
+                            //楠岃瘉浜鸿劯璇勫垎
+                            //浜鸿劯璇勫垎
+                            FacePictureCheckRequest param = new FacePictureCheckRequest();
+                            String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode();
+                            param.setFacePicUrl(prefixUrl + fileName);
+                            BaseResponse<FacePictureCheckResponse> responseBaseResponse = HKService.facePictureCheck(param);
+                            if(responseBaseResponse == null || !StringUtils.equals(responseBaseResponse.getCode(), HKConstants.RESPONSE_SUCCEE)){
+//                                throw  new BusinessException(com.doumee.core.constants.ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("code", 0);
+                                context.put("message", "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                            FacePictureCheckResponse facePictureCheckResponse = responseBaseResponse.getData();
+                            if(Objects.isNull(facePictureCheckResponse) || Objects.isNull(facePictureCheckResponse.getCheckResult())){
+//                                throw  new BusinessException(com.doumee.core.constants.ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("code", 0);
+                                context.put("message", "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                            if(!facePictureCheckResponse.getCheckResult()){
+//                                throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), facePictureCheckResponse.getStatusMessage());
+                                context.put("code", 0);
+                                context.put("message", facePictureCheckResponse.getStatusMessage());
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                        }
+
                         context.put("success", true);
                         context.put("code", 200);
                         context.put("errno",0);
@@ -189,7 +227,7 @@
 
 
     public void upload(HttpServletRequest request, HttpServletResponse response, String folder, String bucketName,
-        String access_id, String access_key, String resourcePath, String endpoint) throws Exception {
+        String access_id, String access_key, String resourcePath, String endpoint,Integer isFace) throws Exception {
         response.setCharacterEncoding("UTF-8");
         response.setContentType("text/html;charset=UTF-8");
         Map<String, Object> context = new HashMap<>();
@@ -229,7 +267,38 @@
                     ALiYunUtil obs = new ALiYunUtil(endpoint,access_id, access_key);
                     if (obs.uploadOnlineObject(file.getInputStream(),bucketName, key,null)) {
                         // 绉诲姩鎴愬姛,杩斿洖鏂囦欢鍚�
-                        // sendSuccessMessage(response, resourcePath+key);
+                         if(Objects.nonNull(isFace) && Constants.equalsInteger(isFace,Constants.ZERO)){
+                            //楠岃瘉浜鸿劯璇勫垎
+                            //浜鸿劯璇勫垎
+                            FacePictureCheckRequest param = new FacePictureCheckRequest();
+                            String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode();
+                            param.setFacePicUrl(prefixUrl + key);
+                            BaseResponse<FacePictureCheckResponse> responseBaseResponse = HKService.facePictureCheck(param);
+                            if(responseBaseResponse == null || !StringUtils.equals(responseBaseResponse.getCode(), HKConstants.RESPONSE_SUCCEE)){
+                                context.put("code", 0);
+                                context.put("message", "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                            FacePictureCheckResponse facePictureCheckResponse = responseBaseResponse.getData();
+                            if(Objects.isNull(facePictureCheckResponse) || Objects.isNull(facePictureCheckResponse.getCheckResult())){
+                                context.put("code", 0);
+                                context.put("message", "瀵逛笉璧凤紝浜鸿劯璇勫垎鑾峰彇鏁版嵁澶辫触~");
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                            if(!facePictureCheckResponse.getCheckResult()){
+                                context.put("code", 0);
+                                context.put("message", facePictureCheckResponse.getStatusMessage());
+                                context.put("errno",0);
+                                writerJson(response, context);
+                                return;
+                            }
+                        }
+
+
                         context.put("success", true);
                         context.put("code", 200);
                         context.put("errno",0);

--
Gitblit v1.9.3