licailing před 5 roky
rodič
revize
f2b4ce1d46

+ 4 - 2
src/main/java/com/izouma/dingdong/config/KsherPaySdk.java

@@ -4,11 +4,12 @@ import com.alibaba.fastjson.JSONObject;
 import org.apache.commons.codec.binary.Base64;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.http.NameValuePair;
+import org.apache.http.impl.client.HttpClients;
 import org.apache.http.message.BasicNameValuePair;
 import org.apache.http.client.HttpClient;
 import org.apache.http.HttpResponse;
 import org.apache.http.client.methods.HttpPost;
-import org.apache.http.impl.client.DefaultHttpClient;
+//import org.apache.http.impl.client.DefaultHttpClient;
 import org.apache.http.client.entity.UrlEncodedFormEntity;
 
 import java.security.Signature;
@@ -151,7 +152,8 @@ public class KsherPaySdk {
      * @return
      */
     public String KsherPost(String url, Map params) throws Exception {
-        HttpClient client = new DefaultHttpClient();
+//        HttpClient client = new DefaultHttpClient();
+        HttpClient client = HttpClients.createDefault();
         HttpPost post = new HttpPost(PayDomain + url);
         //设置公共参数
         params.put("appid", this.appid);

+ 2 - 2
src/main/java/com/izouma/dingdong/domain/User.java

@@ -101,8 +101,8 @@ public class User extends BaseEntity implements Serializable {
     @ApiModelProperty(value = "多少时间不可点单", name = "notOrder")
     private Integer notOrder;
 
-    //默认用户名
+/*    //默认用户名
     public String getDefaultUsername(String phone) {
         return phone.replace(phone.substring(3, 7), "****");
-    }
+    }*/
 }

+ 36 - 4
src/main/java/com/izouma/dingdong/service/ConsumptionService.java

@@ -3,6 +3,7 @@ package com.izouma.dingdong.service;
 import com.izouma.dingdong.config.KsherPaySdk;
 import com.izouma.dingdong.domain.OrderInfo;
 import com.izouma.dingdong.enums.PayMethod;
+import com.izouma.dingdong.exception.BusinessException;
 import com.izouma.dingdong.utils.SnowflakeIdWorker;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
@@ -20,7 +21,20 @@ public class ConsumptionService {
     @Value("${ksher.private_key}")
     private String privateKey;
 
-    public void payOrder(OrderInfo orderInfo) {
+/*    @Value("${wx.mp.app_id}")
+    private String channelSubAppid;*/
+
+    /*
+    支付类型
+    CNY 人民币
+    THB 泰株
+     */
+    private String feeType = "CNY";
+
+    /*
+    app支付 只能微信和支付宝
+    */
+    public void appPay(OrderInfo orderInfo) {
         //ksher支付SDK
         KsherPaySdk ksherPaySdk = new KsherPaySdk(appid, privateKey);
         //商家产生的唯一no
@@ -29,11 +43,29 @@ public class ConsumptionService {
         Integer total = orderInfo.getRealAmount().multiply(BigDecimal.valueOf(100)).intValue();
         //支付方式
         String channel = "wechat";
-        if (PayMethod.ALI_PAY.equals(orderInfo.getPayMethod())){
+        if (PayMethod.ALI_PAY.equals(orderInfo.getPayMethod())) {
             channel = "alipay";
         }
 
-        //调app支付
-        //ksherPaySdk.AppPay(mchOrderNo,"CNY",)
+        try {
+            //调app支付
+            ksherPaySdk.AppPay(mchOrderNo, feeType, channel, null, null, total);
+        } catch (Exception e) {
+            log.info("支付异常", e);
+            throw new BusinessException(e.getMessage());
+        }
+    }
+
+    /*
+    聚合支付
+     */
+    public void cardPay(OrderInfo orderInfo) {
+        //ksher支付SDK
+        KsherPaySdk ksherPaySdk = new KsherPaySdk(appid, privateKey);
+        //商家产生的唯一no
+        String mchOrderNo = String.valueOf(new SnowflakeIdWorker(1, 1).nextId());
+        //支付方式
+        String channel = "ktbcard";
+        //ksherPaySdk.GatewayPay(mchOrderNo,feeType)
     }
 }

+ 3 - 5
src/main/java/com/izouma/dingdong/service/UserService.java

@@ -50,12 +50,10 @@ public class UserService {
     public User register(String phone, String password, Identity identity) {
         User user = userRepo.findByPhoneAndIdentity(phone, identity);
         if (ObjectUtil.isNull(user)) {
-/*            if (RIDER.equals(identity)) {
-                throw new BusinessException("未注册");
-            }*/
+            //String nickname = phone.replace(phone.substring(3, 7), "****");
             user = User.builder()
-                    .username(phone)
-                    .nickname(user.getDefaultUsername(phone))
+                    .username(UUID.randomUUID().toString())
+                    .nickname(phone)
                     .blacklist(false)
                     .enabled(true)
                     .phone(phone)

+ 21 - 0
src/test/java/com/izouma/dingdong/contorller/AuthControllerTest.java

@@ -0,0 +1,21 @@
+package com.izouma.dingdong.contorller;
+
+import com.izouma.dingdong.enums.Identity;
+import com.izouma.dingdong.web.AuthenticationController;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class AuthControllerTest {
+    @Autowired
+    private AuthenticationController controller;
+
+    @Test
+    public void test(){
+        System.out.println(controller.loginByRegister("9999", "9999", Identity.RIDER));
+    }
+}