瀏覽代碼

恒隆停车收费

fllmoyu 5 年之前
父節點
當前提交
ee7d6432e5

+ 2 - 2
web/src/main/java/com/jpsoft/smart/modules/pay/alipay/AlipayController.java

@@ -427,11 +427,11 @@ public class AlipayController {
                         map.put("carNum",parkingRecord.getCarNum());
                         map.put("consumeMoney",parkingRecord.getPayAmount().floatValue());
                         map.put("feeAmount",parkingRecord.getPayAmount().floatValue());
-                  //      jsonObject = parkApiUtil.httpRequest("/ipms/integration/kingdo/payment/success",accessToken,"POST",map);
+                        jsonObject = parkApiUtil.httpRequest("/ipms/integration/kingdo/payment/success",accessToken,"POST",map);
                     }else {
                         map.put("deviceCode",parkingRecord.getParkingDeviceNo());
                         map.put("feeAmount",parkingRecord.getPayAmount().floatValue());
-               //         jsonObject = parkApiUtil.httpRequest("/ipms/payment/bydevice/success",accessToken,"POST",map);
+                        jsonObject = parkApiUtil.httpRequest("/ipms/payment/bydevice/success",accessToken,"POST",map);
 
                     }
 

+ 11 - 11
web/src/main/java/com/jpsoft/smart/modules/pay/weixin/WxPayController.java

@@ -239,10 +239,10 @@ public class WxPayController {
 
     @ApiOperation(value = "停车微信JSAPI支付")
     @PostMapping("/parkingWxPay")
-    public MessageResult parkingWxPay(String id) {
+    public MessageResult parkingWxPay(@RequestBody Map<String,Object> map) {
         MessageResult msgResult = new MessageResult<>();
         try {
-            ParkingRecord parkingRecord = parkingRecordService.get(id);
+            ParkingRecord parkingRecord = parkingRecordService.get(map.get("id").toString());
 
             parkingRecord.setUpdateTime(new Date());
 
@@ -288,7 +288,7 @@ public class WxPayController {
                 //    .openid(parkingRecord.getOpenId())
                     .build()
                 //    .createSign("jzjdwy11111111111111111111111111", SignType.HMACSHA256);
-                    .createSign(wxJpsoftProperties.getMchKey(), SignType.HMACSHA256);
+                    .createSign("xxd33333333333333333333333333333", SignType.HMACSHA256);
 
             String xmlResult = WxPayApi.pushOrder(false, params);
             logger.info(xmlResult);
@@ -311,8 +311,8 @@ public class WxPayController {
 
             String prepayId = resultMap.get("prepay_id");
 
-            Map<String, String> packageParams = WxPayKit.prepayIdCreateSign(prepayId, wxJpsoftProperties.getAppId(),
-                    wxJpsoftProperties.getMchKey(), SignType.HMACSHA256);
+            Map<String, String> packageParams = WxPayKit.prepayIdCreateSign(prepayId, "wx907e84ad32e6e142",
+                    "xxd33333333333333333333333333333", SignType.HMACSHA256);
 
             msgResult.setData(packageParams);
             msgResult.setResult(true);
@@ -340,7 +340,7 @@ public class WxPayController {
         Date payTime = DateUtil.parse(payTimeStr);
 
         // 注意此处签名方式需与统一下单的签名类型一致 WxPayApiConfigKit.getWxPayApiConfig().getPartnerKey()
-        if (WxPayKit.verifyNotify(params, wxJpsoftProperties.getMchKey(), SignType.HMACSHA256)) {
+        if (WxPayKit.verifyNotify(params, "xxd33333333333333333333333333333", SignType.HMACSHA256)) {
             if (WxPayKit.codeIsOk(returnCode)) {
                 // 更新订单信息
 
@@ -375,18 +375,18 @@ public class WxPayController {
                             map.put("carNum",parkingRecord.getCarNum());
                             map.put("consumeMoney",parkingRecord.getPayAmount().floatValue());
                             map.put("feeAmount",parkingRecord.getPayAmount().floatValue());
-                        //     jsonObject = parkApiUtil.httpRequest("/ipms/integration/kingdo/payment/success",accessToken,"POST",map);
+                             jsonObject = parkApiUtil.httpRequest("/ipms/integration/kingdo/payment/success",accessToken,"POST",map);
                         }else {
                             map.put("deviceCode",parkingRecord.getParkingDeviceNo());
                             map.put("feeAmount",parkingRecord.getPayAmount().floatValue());
-                       //      jsonObject = parkApiUtil.httpRequest("/ipms/payment/bydevice/success",accessToken,"POST",map);
+                             jsonObject = parkApiUtil.httpRequest("/ipms/payment/bydevice/success",accessToken,"POST",map);
 
                         }
 
 
-                        if (!jsonObject.getString("errMsg").equals("success")) {
-                            log.error(jsonObject.getString("errMsg"));
-                        }
+//                        if (!jsonObject.getString("errMsg").equals("success")) {
+//                            log.error(jsonObject.getString("errMsg"));
+//                        }
 
 
 

+ 24 - 20
web/src/main/java/com/jpsoft/smart/modules/wechat/controller/WxController.java

@@ -1000,7 +1000,7 @@ public class WxController {
 
 
              //   parkingRecord.setPayAmount(payAmount);
-                parkingRecord.setPayAmount(new BigDecimal(0.01));
+                parkingRecord.setPayAmount(payAmount);
 
 
                 parkingRecord.setSerialNumber(serialNumber);
@@ -1092,36 +1092,38 @@ public class WxController {
 
             HashMap<String, Object> map = new HashMap<>();
             map.put("deviceCode", deviceCode);
-        //    net.sf.json.JSONObject jsonObject = parkApiUtil.httpRequest("/ipms/payment/bydevice", accessToken, "POST", map);
+            net.sf.json.JSONObject jsonObject1 = parkApiUtil.httpRequest("/ipms/payment/bydevice", accessToken, "POST", map);
 
 
             //测试死数据,部署是删除
-            net.sf.json.JSONObject jsonObject1 = new net.sf.json.JSONObject();
-            jsonObject1.put("errMsg","success");
-            HashMap<String,Object> ceMap = new HashMap<>();
-            ceMap.put("carNumImgUrl","http://172.7.2.185:8082/d/1000033$1$0$0/20170629/10/2859-427-1.jpg");
-            ceMap.put("carImgUrl", "http://172.7.2.185:8082/d/1000033$1$0$0/20170629/10/2859-427-0.jpg");
-            ceMap.put("carNum","鄂D1234");
-            ceMap.put("carType",1);
-            ceMap.put("chargeDetail","停车时长42秒,收费金额0.01元");
-            ceMap.put("inParkTime",1586926518000L);
-            ceMap.put("ownerType",0);
-            ceMap.put("parkCode","null_yu");
-            ceMap.put("parkName","yu");
-            ceMap.put("parkTime",42);
-            ceMap.put("state",1);
-            ceMap.put("receivableMoney",0.01);
-            jsonObject1.put("data",ceMap);
+//            net.sf.json.JSONObject jsonObject1 = new net.sf.json.JSONObject();
+//            jsonObject1.put("errMsg","success");
+//            HashMap<String,Object> ceMap = new HashMap<>();
+//            ceMap.put("carNumImgUrl","http://172.7.2.185:8082/d/1000033$1$0$0/20170629/10/2859-427-1.jpg");
+//            ceMap.put("carImgUrl", "http://172.7.2.185:8082/d/1000033$1$0$0/20170629/10/2859-427-0.jpg");
+//            ceMap.put("carNum","鄂D1234");
+//            ceMap.put("carType",1);
+//            ceMap.put("chargeDetail","停车时长42秒,收费金额0.01元");
+//            ceMap.put("inParkTime",1586926518000L);
+//            ceMap.put("ownerType",0);
+//            ceMap.put("parkCode","null_yu");
+//            ceMap.put("parkName","yu");
+//            ceMap.put("parkTime",42);
+//            ceMap.put("state",1);
+//            ceMap.put("receivableMoney",0.01);
+//            jsonObject1.put("data",ceMap);
 
             if (jsonObject1.getString("errMsg").equals("success")) {
 
                 net.sf.json.JSONObject dataJson = (net.sf.json.JSONObject) jsonObject1.get("data");
                 Integer state = dataJson.getInt("state");
                 HashMap<String, Object> dataMap = new HashMap<>();
-                if (dataJson.size()>0) {
+                if (dataJson.size()>0 && state ==1) {
+                    System.out.println(dataJson.toString());
 
                     BigDecimal parkingTime = new BigDecimal(dataJson.getString("parkTime"));
-                    Date inParkingTime = DateUtil.date(dataJson.getLong("inParkTime"));
+                    Date inParkingTime = DateUtil.parse(dataJson.getString("inParkTime"));
+                  //  Date inParkingTime = DateUtil.date(dataJson.getLong("inParkTime"));
                     BigDecimal payAmount = new BigDecimal(dataJson.getString("receivableMoney"));
                     String serialNumber = com.jpsoft.smart.modules.common.utils.StringUtils.getOutTradeNo();
                     ParkingRecord parkingRecord = new ParkingRecord();
@@ -1167,6 +1169,8 @@ public class WxController {
                     dataMap.put("receivableMoney", dataJson.getString("receivableMoney"));*/
 
                     data = dataMap;
+                }else {
+                    return new MessageResult(false, "无收费数据", data, 400);
                 }