From 160e150009b51a39fa95d9462c3798ba28d51a09 Mon Sep 17 00:00:00 2001
From: lxw <810412026@qq.com>
Date: 星期二, 15 八月 2023 08:49:47 +0800
Subject: [PATCH] 审批页面修改

---
 src/main/java/com/whyc/controller/FaceController.java |   65 +++++++++++++++++++++++++++-----
 1 files changed, 54 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/whyc/controller/FaceController.java b/src/main/java/com/whyc/controller/FaceController.java
index 9da2383..48b254d 100644
--- a/src/main/java/com/whyc/controller/FaceController.java
+++ b/src/main/java/com/whyc/controller/FaceController.java
@@ -3,6 +3,7 @@
 import com.arcsoft.face.FaceEngine;
 import com.arcsoft.face.toolkit.ImageFactory;
 import com.arcsoft.face.toolkit.ImageInfo;
+import com.whyc.constant.YamlProperties;
 import com.whyc.dto.Response;
 import com.whyc.factory.FaceEngineFactory;
 import com.whyc.pojo.PermitGroup;
@@ -25,6 +26,7 @@
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.util.List;
+import java.util.Map;
 
 import static com.whyc.util.ActionUtil.getApplication;
 
@@ -49,8 +51,18 @@
     @ApiOperation(value = "鍦ㄧ嚎婵�娲讳汉鑴歌瘑鍒紩鎿�",notes = "鍙渶瑕佸垰寮�濮嬫椂璋冪敤涓�娆�,浼氬鑷碼ppId涓庣‖浠惰澶囩粦瀹�,蹇呴』鏈夊閮ㄧ綉缁�,鍚﹀垯婵�娲讳細澶辫触!" +
             "鍚庣画浣跨敤鏃犻渶鍐嶈皟鐢ㄦ縺娲�,鍙互绂荤嚎浣跨敤")
     public Response activeOnline(){
-        Response model = new Response();
-        boolean b = FaceIdentifyUtil.activeOnline();
+        boolean b = FaceIdentifyUtil.active(1);
+        if(b){
+            return new Response().set(1,true,"寮曟搸婵�娲绘垚鍔�");
+        }else{
+            return new Response().set(1,false,"寮曟搸婵�娲诲け璐�,璇锋鏌ョ綉缁滄槸鍚︿负澶栫綉骞剁‘璁ppId鍜宬ey鏄惁姝g‘!");
+        }
+    }
+
+    @GetMapping("activeOffline")
+    @ApiOperation(value = "绂荤嚎婵�娲讳汉鑴歌瘑鍒紩鎿�,澧炲�肩増浣跨敤")
+    public Response activeOffline(){
+        boolean b = FaceIdentifyUtil.active(2);
         if(b){
             return new Response().set(1,true,"寮曟搸婵�娲绘垚鍔�");
         }else{
@@ -60,7 +72,10 @@
 
     @PostMapping
     @ApiOperation(value = "娣诲姞",notes = "娣诲姞鍒颁汉鑴稿簱")
-    public Response add(@RequestParam String fileData,String uName,Integer uId ){
+    public Response add(@RequestBody Map<String,Object> paramMap ){
+        String fileData = (String) paramMap.get("fileData");
+        String uName  = (String) paramMap.get("uName");
+        Integer uId  = Integer.parseInt((String)paramMap.get("uId"));
         //浼犲弬 uId,uName,fileData--鏂囦欢娴�
         fileData = fileData.replaceAll(" ", "+");
 
@@ -98,7 +113,12 @@
                 File jarFile = applicationHome.getDir();
 
                 //瀛樺偍浜鸿劯鍥剧墖鐨勬枃浠跺す
-                String fileDirName = jarFile.getParentFile().toString()+File.separator+"fg_photo";
+                String fileDirName;
+                if(YamlProperties.runModel == 1) {
+                    fileDirName = jarFile.getParentFile().toString() + File.separator + "fg_photo";
+                }else{
+                    fileDirName = jarFile.toString() + File.separator + "fg_photo";
+                }
 
                 File file = new File(fileDirName);
                 //涓嶅瓨鍦ㄥ垯鍒涘缓璇ユ枃浠跺す
@@ -137,7 +157,7 @@
      */
     @PutMapping
     @ApiOperation(value = "鏇存柊")
-    public Response update(@RequestParam String fileData,String uName){
+    public Response update(@RequestBody String fileData,@RequestParam String uName){
         //浼犲弬,uName,fileData--鏂囦欢娴�
 
         //鐢变簬鍥剧墖瀛楃涓叉槸鐢眀ase64缂栫爜鐨�,瑙g爜鎴愬瓧鑺傛暟缁�
@@ -169,7 +189,12 @@
                 File jarFile = applicationHome.getDir();
 
                 //瀛樺偍浜鸿劯鍥剧墖鐨勬枃浠跺す
-                String fileDirName = jarFile.getParentFile().toString()+File.separator+"fg_photo";
+                String fileDirName;
+                if(YamlProperties.runModel == 1) {
+                    fileDirName = jarFile.getParentFile().toString() + File.separator + "fg_photo";
+                }else{
+                    fileDirName = jarFile.toString() + File.separator + "fg_photo";
+                }
 
                 File file = new File(fileDirName);
                 //涓嶅瓨鍦ㄥ垯鍒涘缓璇ユ枃浠跺す
@@ -263,8 +288,14 @@
      */
     @PostMapping("faceCompare2N")
     @ApiOperation(value = "浜鸿劯璇嗗埆瀵规瘮")
-    public Response faceCompare2N(@RequestParam String fileData){
+    public Response faceCompare2N(@RequestBody String fileData,@RequestParam String uKeyId){
         Response res = new Response();
+        //鍏堥獙璇乽KeyId瀵瑰簲鐨勭敤鎴�
+        UserInf userByUKeyId = userService.getUserByUKeyId(uKeyId);
+        if (userByUKeyId == null){
+            return res.set(1,false,"Ukey娌℃湁缁戝畾鐢ㄦ埛");
+        }
+
         /*====鑾峰彇鍥剧墖骞舵牎楠屾椿浣�,瑙掑害,鍍忕礌澶у皬====*/
         //鐢变簬鍥剧墖瀛楃涓叉槸鐢眀ase64缂栫爜鐨�,瑙g爜鎴愬瓧鑺傛暟缁�
         fileData = fileData.replaceAll(" ", "+");
@@ -293,10 +324,21 @@
                     }else{
                         for (UserInf temp:userInfList){
                             String filePath = temp.getFace().getUrl();
-                            ImageInfo imageInfo2 = ImageFactory.getRGBData(new File(filePath));
-                            Response res3 = FaceIdentifyUtil.faceCompare(faceEngine, imageInfo, imageInfo2);
+                            File file = new File(filePath);
+                            //涓嶅瓨鍦ㄥ垯涓嶇户缁墽琛�
+                            if(!file.exists()){
+                                continue;
+                            }
+                            ImageInfo imageInfo2 = ImageFactory.getRGBData(file);
+                            res = FaceIdentifyUtil.faceCompare(faceEngine, imageInfo, imageInfo2);
                             //瀵规瘮鎴愬姛,璁板綍鐢ㄦ埛鐧诲綍淇℃伅
-                            if(res3.getCode()==1){
+                            if(res.getCode()==1){
+                                //Ukey瀵瑰簲鐢ㄦ埛鍜屼汉鑴稿搴旂敤鎴烽獙璇�
+                                if(!temp.getUId().equals(userByUKeyId.getUId())){
+                                    return res.set(1,false,"UKey瀵瑰簲鐢ㄦ埛鍜屽綋鍓嶄汉鑴稿搴旂敤鎴蜂笉鍖归厤");
+                                }
+                                res.setData2(temp);
+
                                 // 灏嗙櫥闄嗘垚鍔熺殑鐢ㄦ埛瀛樺叆session
                                 ActionUtil.getSession().setAttribute("user", temp);
 
@@ -307,7 +349,8 @@
                                 if (permitList!=null && permitList.size()!=0) {
                                     ActionUtil.getSession().setAttribute("permits", permitList);
                                 } else {
-                                    res.setCode(0);
+                                    res.setCode(1);
+                                    res.setData(false);
                                     res.setMsg("杩樻湭鍒嗛厤鏉冮檺");
                                 }
                                 //灏嗘柊鐧诲綍鐨勭敤鎴峰瓨鍏pplication

--
Gitblit v1.9.1