Browse Source

CFCA认证

郎学彬 3 years ago
parent
commit
fb33e92b6d

BIN
sc-service/lib/cpcn-dsp-api-v1.6.4.11.jar


+ 26 - 0
sc-service/pom.xml

@@ -155,6 +155,32 @@
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-openfeign</artifactId>
         </dependency>
+        <dependency>
+            <groupId>cpcn.dsp</groupId>
+            <artifactId>cpcn-dsp-api</artifactId>
+            <version>v1.6.4.11</version>
+            <systemPath>${project.basedir}/lib/cpcn-dsp-api-v1.6.4.11.jar</systemPath>
+            <scope>system</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>1.2.16</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>core</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.github.penggle</groupId>
+            <artifactId>kaptcha</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>javase</artifactId>
+            <version>3.3.0</version>
+        </dependency>
     </dependencies>
     <build>
         <plugins>

+ 28 - 0
sc-service/src/main/java/com/huyi/service/common/cfcaCommon/ICfcaFaceAuthService.java

@@ -0,0 +1,28 @@
+package com.huyi.service.common.cfcaCommon;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.huyi.service.base.entity.ZcInvoiceInf;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.Map;
+
+public interface ICfcaFaceAuthService {
+
+
+    /**
+     * 人脸识别
+     * @return
+     */
+     String faceAuth(boolean isPro,
+                           String institutionid,
+                           String name,
+                           String returnImage,
+                           String identificationNumber,
+                           String frontUrl,
+                           String backUrl,
+                           String remark,
+                           String url) throws Exception;
+
+
+}

+ 64 - 0
sc-service/src/main/java/com/huyi/service/common/cfcaCommon/impl/CfcaFaceAuthServiceImpl.java

@@ -0,0 +1,64 @@
+package com.huyi.service.common.cfcaCommon.impl;
+
+import com.google.zxing.BarcodeFormat;
+import com.google.zxing.EncodeHintType;
+import com.google.zxing.MultiFormatWriter;
+import com.google.zxing.common.BitMatrix;
+import com.huyi.service.common.cfcaCommon.ICfcaFaceAuthService;
+import com.tianhu.common.core.cfca.CfcaUtil;
+import org.springframework.stereotype.Service;
+
+import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+import static com.google.zxing.client.j2se.MatrixToImageWriter.writeToFile;
+
+@Service
+public class CfcaFaceAuthServiceImpl implements ICfcaFaceAuthService {
+
+
+    @Override
+    public String faceAuth(boolean isPro, String institutionid, String name, String returnImage, String identificationNumber, String frontUrl, String backUrl, String remark, String url) throws Exception {
+        Map<String,String> map = CfcaUtil.faceAuth(isPro,institutionid,name,returnImage,identificationNumber,frontUrl,backUrl,remark);
+        url = url+"?reqMessage="+map.get("reqMessage")
+                 +"&reqSignature="+map.get("reqSignature")
+                 +"&requestDgtlEnvlp="+map.get("requestDgtlEnvlp")
+                 +"&requestSignSN="+map.get("requestSignSN")
+                 +"&requestEncryptSN"+map.get("requestEncryptSN");
+        String fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".jpg";
+        String fileUrl = createQrCode(url,"D://",fileName);
+        return fileUrl;
+    }
+    public static String createQrCode(String url, String path, String fileName) {
+        try {
+            Map<EncodeHintType, String> hints = new HashMap<>();
+            hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
+            BitMatrix bitMatrix = new MultiFormatWriter().encode(url, BarcodeFormat.QR_CODE, 400, 400, hints);
+            File file = new File(path, fileName);
+            if (file.exists() || ((file.getParentFile().exists() || file.getParentFile().mkdirs()) && file.createNewFile())) {
+                writeToFile(bitMatrix, "jpg", file);
+                System.out.println("搞定:" + file);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    public static void main(String[] args) throws Exception {
+
+        Map<String,String> map = CfcaUtil.faceAuth(false,"100804","李三","","370724199512106110","http://localhost:8080/ReceiveNoticePage","http://localhost:8080/ReceiveNoticeBackground","");
+        System.out.println(map);
+//        String url= "http://zcyl.keao.tech/auth";
+//        url = url+"?reqMessage="+map.get("reqMessage")
+//                +"&reqSignature="+map.get("reqSignature")
+//                +"&requestDgtlEnvlp="+map.get("requestDgtlEnvlp")
+//                +"&requestSignSN="+map.get("requestSignSN")
+//                +"&requestEncryptSN"+map.get("requestEncryptSN");
+//        String fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".jpg";
+//        String fileUrl = createQrCode(url,"D://",fileName);
+    }
+}