Browse Source

一卡通api

yq 3 năm trước cách đây
mục cha
commit
45151c978c

+ 1 - 1
src/main/java/com/usky/dxtop/common/utils/QRCodeUtil.java

@@ -164,7 +164,7 @@ public class QRCodeUtil {
     public static void main(String[] args) throws Exception {
         // 存放在二维码中的内容
         String scanPayApi = TopApi.generateScanPayApi(TopApi.getOrderNumber(),
-                1,
+                null,
                 "测试回调",null,null,null,null,null,null);
         // 嵌入二维码的图片路径
 //        String imgPath = "C:/Users/pc/Desktop/dog.jpg";

+ 2 - 2
src/main/java/com/usky/dxtop/controller/web/TestController.java

@@ -45,7 +45,7 @@ public class TestController {
 
     public static void main(String[] args) {
 //        //交易查询
-//        TreeMap<String, String> param = TopApi.generateDealSelectParam("d3d15e03925e4962b95f204c1f6bd5e8", null, null, null);
+//        TreeMap<String, String> param = TopApi.generateDealSelectParam("d5514494a1a74c74adf2f1f3c6b6bf11", null, null, null);
 //        String format = String.format("%s&sign=%s", TopApi.joinParam(param),
 //                TopApi.signData(param));
 //        String s = HttpUtils.sendGet(TopApi.DEAL_SELECT_URL, format);
@@ -58,7 +58,7 @@ public class TestController {
 //        String s1 = HttpUtils.sendGet(TopApi.RETURN_DEAL_URL, format1);
 //        System.out.println(s1);
 
-        TreeMap<String, String> param2 = TopApi.generateUnifyParam(1, TopApi.SCAN_NOTIFY_URL, null, null, null, null, "W01", null, null, null, null, null, null);
+        TreeMap<String, String> param2 = TopApi.generateUnifyParam(1, TopApi.SCAN_NOTIFY_URL, null, null, null, null, "A01", null, null, null, null, null, null);
         String format1 = String.format("%s?%s&sign=%s",TopApi.UNIFY_URL,TopApi.joinParam(param2),
             TopApi.signData(param2));
         System.out.println(format1);

+ 71 - 0
src/main/java/com/usky/dxtop/service/api/OneCardApi.java

@@ -0,0 +1,71 @@
+package com.usky.dxtop.service.api;
+
+
+import java.util.TreeMap;
+
+/**
+ * @author yq
+ * @date 2021/8/26 9:06
+ */
+public class OneCardApi {
+
+    private static final String URL = "http://183.129.209.98:19001";
+
+    private static final Integer VERSION = 3;
+    /**
+     * 寻卡地址
+     */
+    private static final String FIND_URL = String.format("%s/%s",URL,"partner/find");
+    /**
+     * 读卡
+     */
+    private static final String GET_CARD_URL = String.format("%s/%s",URL,"partner/get");
+    /**
+     * 卡消费
+     */
+    private static final String PAY_URL = String.format("%s/%s",URL,"partner/pay");
+    /**
+     * 卡消费撤单
+     */
+    private static final String UN_PAY_URL = String.format("%s/%s",URL,"partner/unpay");
+    /**
+     * 卡充值
+     */
+    private static final String CHARGE = String.format("%s/%s",URL,"partner/change");
+    /**
+     * 取消卡充值
+     */
+    private static final String UN_CHANGE = String.format("%s/%s",URL,"partner/unchange");
+    /**
+     * 查看终端的充值和消费流水(含撤单)
+     */
+    private static final String RECONCILIATION = String.format("%s/%s",URL,"partner/reconciliation");
+    /**
+     * 卡日志查询
+     */
+    private static final String LOGS = String.format("%s/%s",URL,"partner/logs");
+
+
+    public static TreeMap<String, Object> getCommonParam(){
+        TreeMap<String, Object> tMap = new TreeMap<>();
+        tMap.put("v",3);
+        tMap.put("shop",3);
+        tMap.put("term",3);
+        tMap.put("oper",3);
+        tMap.put("format","json");
+        return tMap;
+    }
+
+    /**
+     * 寻卡参数
+     * @param t
+     * @param q
+     * @return
+     */
+    public static TreeMap<String, Object> getFindParam(Integer t,String q){
+        TreeMap<String, Object> commonParam = getCommonParam();
+        commonParam.put("t",t);
+        commonParam.put("q",q);
+        return commonParam;
+    }
+}

+ 3 - 39
src/main/java/com/usky/dxtop/service/api/TopApi.java

@@ -5,10 +5,7 @@ import com.usky.dxtop.common.utils.DateUtils;
 import com.usky.dxtop.common.utils.StringUtils;
 import com.usky.dxtop.common.utils.sign.Md5Utils;
 import com.usky.dxtop.common.utils.uuid.UUID;
-import org.apache.logging.log4j.core.util.UuidUtil;
-import org.omg.CORBA.PUBLIC_MEMBER;
 
-import java.sql.SQLTransactionRollbackException;
 import java.util.Map;
 import java.util.TreeMap;
 
@@ -95,14 +92,7 @@ public class TopApi {
                 signData(params));
     }
 
-    /**
-     * 生成交易查询参数
-     * @param merchantOrderNo
-     * @param storeNo
-     * @param trxid
-     * @param groupNo
-     * @return
-     */
+
     public static TreeMap<String, String> generateDealSelectParam(String merchantOrderNo,String storeNo,String trxid,String groupNo){
         TreeMap<String, String> tMap = new TreeMap<>();
         tMap.put("version",VERSION);
@@ -114,17 +104,7 @@ public class TopApi {
         return tMap;
     }
 
-    /**
-     * 退款api
-     * @param amount
-     * @param orderNo
-     * @param oriMerchantOrderNo
-     * @param trxid
-     * @param refundType
-     * @param remark
-     * @param groupNo
-     * @return
-     */
+
     public static TreeMap<String, String> generateReturnDealParam(Integer amount,String orderNo,String oriMerchantOrderNo,
                                                                   String trxid,String refundType,String remark,String groupNo){
         TreeMap<String, String> tMap = new TreeMap<>();
@@ -141,23 +121,7 @@ public class TopApi {
         return tMap;
     }
 
-    /**
-     * 统一支队接口
-     * @param amount
-     * @param notifyUrl
-     * @param backUrl
-     * @param note
-     * @param orderName
-     * @param acct
-     * @param payType
-     * @param validTime
-     * @param subAppid
-     * @param remark
-     * @param asinfo
-     * @param groupNo
-     * @param consumerIp
-     * @return
-     */
+
     public static TreeMap<String, String> generateUnifyParam(Integer amount,String notifyUrl,
                                                              String backUrl,String note,String orderName,String acct,
                                                              String payType,String validTime,String subAppid,

+ 61 - 0
src/main/java/com/usky/dxtop/service/emun/OneCardResult.java

@@ -0,0 +1,61 @@
+package com.usky.dxtop.service.emun;
+
+import com.sun.jna.platform.unix.solaris.LibKstat;
+
+/**
+ * @author yq
+ * @date 2021/8/26 9:08
+ */
+public enum OneCardResult {
+
+    SUCCESS(1,"成功"),
+
+    ERROR(2,"未知错误"),
+
+    PARAM_ILLEGAL(3,"参数不合法"),
+
+    NO_PRODUCT(4,"找不见项目"),
+
+    DATABASE_ERROR(5,"数据库错误"),
+
+    NO_OPERATOR(6,"禁止操作"),
+
+    SIGN_ERROR(8,"签名不合法"),
+
+    INVALID_MONEY(9,"无效金额"),
+
+    INVALID_CARD(10,"无效卡"),
+
+    CART_PAST(12,"卡过期"),
+
+    CARD_LOCK(13,"卡锁定"),
+
+    NO_MONEY(14,"余额不足"),
+
+    CMD_ILLEGAL(30,"不合法的终端"),
+
+    CMD_LOCK(31,"终端被禁止"),
+
+    CMD_QUOTA(32,"终端配额不足");
+
+
+
+
+    private Integer code;
+
+    private String description;
+
+    OneCardResult(Integer code,String description){
+        this.code = code;
+        this.description = description;
+    }
+
+    public Integer getCode(){
+        return code;
+    }
+
+    public String getDescription(){
+        return description;
+    }
+
+}