Explorar el Código

E证通开发

frankeleyn hace 2 años
padre
commit
4c4f6af296

+ 17 - 32
src/main/java/com/ematou/wxbase/common/web/R.java

@@ -1,11 +1,16 @@
 package com.ematou.wxbase.common.web;
 
+import lombok.Data;
+
+import java.io.Serializable;
+
 /**
  * @author lhm
  * @version 1.0
  * 2021-04-30 14:25
  */
-public class R<T> {
+@Data
+public class R<T> implements Serializable {
 
     private int code;
 
@@ -22,41 +27,21 @@ public class R<T> {
         this.data = data;
     }
 
-    public static R<T> success(T data) {
-        this.setCode(ResponseCodeConstant.code_200);
-        this.setMessage("Success");
-        this.setData(data);
-        return this;
-    }
-
-    public static R<?> error(String message) {
-        this.setCode(ResponseCodeConstant.code_100);
-        this.setMessage(message);
-        this.setData(null);
-        return this;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public void setCode(int code) {
-        this.code = code;
+    public static <T> R<T> success(T data) {
+        return restResult(data, ResponseCodeConstant.code_200, null);
     }
 
-    public String getMessage() {
-        return message;
+    public static <T> R<T> error(String message) {
+        return restResult(null, ResponseCodeConstant.code_100, message);
     }
 
-    public void setMessage(String message) {
-        this.message = message;
+    private static <T> R<T> restResult(T data, int code, String msg)
+    {
+        R<T> apiResult = new R<>();
+        apiResult.setCode(code);
+        apiResult.setData(data);
+        apiResult.setMessage(msg);
+        return apiResult;
     }
 
-    public T getData() {
-        return data;
-    }
-
-    public void setData(T data) {
-        this.data = data;
-    }
 }

+ 22 - 0
src/main/java/com/ematou/wxbase/entity/EidMerch.java

@@ -0,0 +1,22 @@
+package com.ematou.wxbase.entity;
+
+import lombok.Data;
+
+/**
+ * E证通商户配置表
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/17 14:33
+ */
+@Data
+public class EidMerch {
+
+    private String id;// 主键
+    private String merchSn;// 商户编号
+    private String secretId;// secretId
+    private String secretKey;// secretKey
+    private String merchId;// E证通商户 Id
+    private Long tokenExpired;// token 过期时间
+
+}

+ 0 - 2
src/main/java/com/ematou/wxbase/entity/EidTokenRecord.java

@@ -1,10 +1,8 @@
 package com.ematou.wxbase.entity;
 
 import lombok.Data;
-import org.apache.tomcat.jni.Local;
 
 import java.sql.Timestamp;
-import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**

+ 20 - 0
src/main/java/com/ematou/wxbase/entity/MerchApp.java

@@ -0,0 +1,20 @@
+package com.ematou.wxbase.entity;
+
+import lombok.Data;
+
+/**
+ * 商户应用表
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/17 14:58
+ */
+@Data
+public class MerchApp {
+
+    private String id;// 主键
+    private String merchSn;// 商户编号
+    private String appCode;// 应用编码
+    private String appName;// 应用名称
+
+}

+ 0 - 7
src/main/java/com/ematou/wxbase/entity/MerchInfo.java

@@ -14,12 +14,5 @@ public class MerchInfo {
 
     private String merchSn;// 商户编号
     private String merchName;// 商户名称
-    private String appId;// appId
-    private String secretId;// secretId
-    private String secretKey;// secretKey
-    private String privateKey;// 私钥
-    private String publicKey;// 公钥
-    private String tokenExpired;// token 过期时间
-
 
 }

+ 24 - 0
src/main/java/com/ematou/wxbase/mapper/MerchInfoMapper.java

@@ -0,0 +1,24 @@
+package com.ematou.wxbase.mapper;
+
+import com.ematou.wxbase.entity.MerchInfo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 商户信息 Mapper
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/17 14:42
+ */
+@Mapper
+public interface MerchInfoMapper {
+
+    /**
+     * 插入商户信息
+     *
+     * @param merchInfo
+     * @return
+     */
+    int insert(MerchInfo merchInfo);
+
+}

+ 23 - 0
src/main/java/com/ematou/wxbase/service/MerchInfoService.java

@@ -0,0 +1,23 @@
+package com.ematou.wxbase.service;
+
+import com.ematou.wxbase.common.web.R;
+import com.ematou.wxbase.entity.MerchInfo;
+
+/**
+ * 商户信息 service
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/17 15:12
+ */
+public interface MerchInfoService {
+
+    /**
+     * 插入商户信息
+     *
+     * @param merchInfo
+     * @return
+     */
+    R insert(MerchInfo merchInfo);
+
+}

+ 41 - 0
src/main/java/com/ematou/wxbase/service/impl/MerchInfoServiceImpl.java

@@ -0,0 +1,41 @@
+package com.ematou.wxbase.service.impl;
+
+import com.ematou.wxbase.common.web.R;
+import com.ematou.wxbase.entity.MerchInfo;
+import com.ematou.wxbase.mapper.MerchInfoMapper;
+import com.ematou.wxbase.service.MerchInfoService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+
+/**
+ * [类描述]
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/17 15:13
+ */
+@Service
+public class MerchInfoServiceImpl implements MerchInfoService {
+
+    @Resource
+    private MerchInfoMapper merchInfoMapper;
+
+    /**
+     * 插入商户信息
+     *
+     * @param merchInfo
+     * @return
+     */
+    @Override
+    public R insert(MerchInfo merchInfo) {
+        int insert = merchInfoMapper.insert(merchInfo);
+
+        if (insert > 0)
+            return R.success(null);
+        else
+            return R.error("新增商户信息失败");
+
+    }
+
+}

+ 12 - 0
src/main/resources/mybatis/MerchInfoMapper.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ematou.wxbase.mapper.MerchInfoMapper">
+
+    <!-- 插入商户信息 -->
+    <insert id="insert">
+        INSERT INTO merch_info(merch_sn, merch_name) VALUES (#{merchSn}, #{merchName});
+    </insert>
+
+</mapper>

+ 2 - 5
src/test/java/com/ematou/wxbase/EidTokenTest.java

@@ -1,7 +1,5 @@
 package com.ematou.wxbase;
 
-import com.ematou.wxbase.service.EidTokenRecordService;
-import com.ematou.wxbase.service.TokenRecordService;
 import com.tencentcloudapi.common.Credential;
 import com.tencentcloudapi.common.exception.TencentCloudSDKException;
 import com.tencentcloudapi.common.profile.ClientProfile;
@@ -12,7 +10,6 @@ import com.tencentcloudapi.faceid.v20180301.models.GetEidTokenResponse;
 import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 
 /**
@@ -25,7 +22,7 @@ import org.springframework.boot.test.context.SpringBootTest;
 @SpringBootTest
 public class EidTokenTest {
 
-    private static final Logger logger = LoggerFactory.getLogger(TokenRecordService.class);
+    Logger log = LoggerFactory.getLogger(EidTokenTest.class);
 
     private final static String secretId = "AKIDIRYotrdCZnqkT0LTVzJSQFrGmLoALLJA";
     private final static String secretKey = "jICxWrJchWBg8RYO2RZYLwMXh0bR6imd";
@@ -51,7 +48,7 @@ public class EidTokenTest {
             // 输出json格式的字符串回包
             System.out.println(GetEidTokenResponse.toJsonString(resp));
         } catch (TencentCloudSDKException e) {
-            logger.error("腾讯云 SDK Error", e);
+            log.error("腾讯云 SDK Error", e);
         }
     }
 

+ 30 - 0
src/test/java/com/ematou/wxbase/MerchInfoServiceTest.java

@@ -0,0 +1,30 @@
+package com.ematou.wxbase;
+
+import com.ematou.wxbase.entity.MerchInfo;
+import com.ematou.wxbase.service.MerchInfoService;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+/**
+ * E证通 token 记录 service 测试类
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/2/16 17:02
+ */
+@SpringBootTest
+public class MerchInfoServiceTest {
+
+    @Autowired
+    private MerchInfoService service;
+
+    @Test
+    public void testInsert() {
+        MerchInfo merchInfo = new MerchInfo();
+        merchInfo.setMerchSn("mhbs990053989883052032");
+        merchInfo.setMerchName("中网科技");
+        System.out.println(service.insert(merchInfo));
+    }
+
+}