gongfuzhu 1 年間 前
コミット
8d2f6a7418

+ 62 - 28
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/xiaoju/XiaoJuApi.java

@@ -3,15 +3,19 @@ package com.zswl.cloud.springBtach.server.core.api.xiaoju;
 import com.xiaoju.open.oil.commons.config.OilConfig;
 import com.xiaoju.open.oil.core.QueryClient;
 import com.xiaoju.open.oil.core.QueryClientFactory;
+import com.xiaoju.open.oil.interfaces.domain.AllowanceInfo;
+import com.xiaoju.open.oil.interfaces.request.QueryApiStorePriceRequest;
+import com.xiaoju.open.oil.interfaces.request.QueryCalPriceRequest;
+import com.xiaoju.open.oil.interfaces.request.QueryStoreDetailRequest;
 import com.xiaoju.open.oil.interfaces.request.QueryTokenRequest;
+import com.xiaoju.open.oil.interfaces.response.QueryApiStorePriceResponse;
+import com.xiaoju.open.oil.interfaces.response.QueryCalPriceResponse;
+import com.xiaoju.open.oil.interfaces.response.QueryStoreDetailResponse;
 import com.xiaoju.open.oil.interfaces.response.QueryTokenResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import javax.crypto.Cipher;
-import javax.crypto.spec.IvParameterSpec;
-import javax.crypto.spec.SecretKeySpec;
-import java.util.Base64;
+import java.util.List;
 
 
 @Component
@@ -20,7 +24,7 @@ public class XiaoJuApi {
     @Autowired
     OilConfig oilConfig;
 
-    public String queryToken(){
+    public String queryToken() {
 
         QueryTokenRequest queryTokenRequest = new QueryTokenRequest();
         queryTokenRequest.setAppSecret(oilConfig.getAppSecret());
@@ -29,28 +33,58 @@ public class XiaoJuApi {
         return queryTokenResponse.getAccessToken();
     }
 
-    public static String encrypt(String data, String dataSecret, String dataSecretIv) {
-        try {
-            if (dataSecret == null) {
-                System.out.print("Key为空null");
-                return null;
-            } else if (dataSecret.length() != 16) {
-                System.out.print("Key长度不是16位");
-                return null;
-            } else {
-                byte[] raw = dataSecret.getBytes("UTF-8");
-                SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
-                Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
-                IvParameterSpec iv = new IvParameterSpec(dataSecretIv.getBytes());
-                cipher.init(1, skeySpec, iv);
-                byte[] encrypted = cipher.doFinal(data.getBytes());
-                String str = Base64.getEncoder().encodeToString(encrypted);
-                str = str.replaceAll("\r", "");
-                str = str.replaceAll("\n", "");
-                return str;
-            }
-        } catch (Exception var9) {
-            return null;
-        }
+
+    public QueryStoreDetailResponse queryStoreDetail(String userId, String storeId,Float latitude,Float longitude) {
+
+        QueryStoreDetailRequest queryStoreDetailRequest = new QueryStoreDetailRequest();
+
+        queryStoreDetailRequest.setLat(latitude);
+        queryStoreDetailRequest.setLon(longitude);
+        queryStoreDetailRequest.setOutUserId(userId);
+        queryStoreDetailRequest.setStoreId(storeId);
+        queryStoreDetailRequest.setOpenChannel(1);
+
+        QueryClient queryClient = QueryClientFactory.create(oilConfig);
+
+        return queryClient.api().queryStoreDetail(queryStoreDetailRequest);
+    }
+
+    // 查询门店价格
+    public List<QueryApiStorePriceResponse> queryStorePrice(String userId, List<String> storeIdList) {
+
+        QueryApiStorePriceRequest queryApiStorePriceRequest = new QueryApiStorePriceRequest();
+        queryApiStorePriceRequest.setOpenChannel(1);
+        queryApiStorePriceRequest.setOutUserId(userId);
+        queryApiStorePriceRequest.setStoreIds(storeIdList);
+        QueryClient queryClient = QueryClientFactory.create(oilConfig);
+
+        return queryClient.api().queryStorePrice(queryApiStorePriceRequest);
+
     }
+
+    // 价格计算
+    public QueryCalPriceResponse queryCalPrice(String userId, String storeId,String itemName,Integer amount, AllowanceInfo allowanceInfo) {
+        QueryCalPriceRequest queryCalPriceRequest = new QueryCalPriceRequest();
+        queryCalPriceRequest.setStoreId(storeId);
+        queryCalPriceRequest.setOpenChannel(1);
+        queryCalPriceRequest.setOutUserId(userId);
+        queryCalPriceRequest.setItemName(itemName);
+        queryCalPriceRequest.setAmount(amount);
+
+        // 优惠券
+//        List<AllowanceInfo> allowanceInfos = new ArrayList<>();
+//        AllowanceInfo allowanceInfo = new AllowanceInfo();
+//        allowanceInfo.setAllowanceId("E1-4ji-1kiJSL");
+//        allowanceInfo.setAllowanceType(2);
+//        allowanceInfos.add(allowanceInfo);
+        queryCalPriceRequest.setPromotionInfo(List.of(allowanceInfo));
+
+        QueryClient queryClient = QueryClientFactory.create(oilConfig);
+
+        return queryClient.api().queryCalPrice(queryCalPriceRequest);
+
+
+    }
+
+
 }