diff --git a/src/main/java/com/rnt/controller/WeixinPayController.java b/src/main/java/com/rnt/controller/WeixinPayController.java index 7faf92e..148f0e9 100644 --- a/src/main/java/com/rnt/controller/WeixinPayController.java +++ b/src/main/java/com/rnt/controller/WeixinPayController.java @@ -267,24 +267,8 @@ public class WeixinPayController extends Controller { public void orderPayView() { //订单id String parkOrderId = this.getPara("parkOrderId"); - PayOrder payOrder = new PayOrder(); - String payOrderId = SequenceUtil.getNextOrderId(SequenceTypeEnum.ORDER_PAY_WXGZH.value()); - payOrder.setPayOrderId(payOrderId); - payOrder.setPaySrcType(Integer.valueOf(PayOrderEnum.PAY_RESOURCE_TYPE_SERVICE.getValue())); - payOrder.setRltOrderId(parkOrderId); - payOrder.setPayOrderTitle(PayOrderEnum.PAY_ORDER_TYPE_PAY.getValue()); - payOrder.setPayType(Integer.valueOf(PayOrderEnum.PAY_TYPE_WXGZH.getValue())); - payOrder.setPayOrderState(Integer.valueOf(PayOrderEnum.PAY_ORDER_STATE_WAIT_PAY.getValue())); - payOrder.setPayorderStateTime(new Date()); - payOrder.setDataState(DataStatusEnum.DATA_STATUS_VALID.value()); - payOrder.setCreateDate(new Date()); - payOrder.setModfiyDate(new Date()); - logger.info("支付单save请求数据为: payOrder=" + JSONObject.toJSONString(payOrder)); - Boolean flag = payOrder.save(); - logger.info("支付单save 响应为: flag=" + flag); - - this.getRequest().setAttribute("parkOrderId", parkOrderId); - setAttr("payOrderId", payOrderId); + + setAttr("parkOrderId", parkOrderId); render("pay.html"); } @@ -469,8 +453,26 @@ public class WeixinPayController extends Controller { BizResult bizResult = new BizResult<>(); String orderId = getPara("orderId"); String openId = getPara("openId"); - String payOrderId = getPara("payOrderId"); + String payOrderId = SequenceUtil.getNextOrderId(SequenceTypeEnum.ORDER_PAY_WXGZH.value()); logger.info("开始获取公众号支付JS支付参数: orderId=" + orderId + "; openId=" + openId + "; payOrderId=" + payOrderId); + + PayOrder payOrder = new PayOrder(); + + payOrder.setPayOrderId(payOrderId); + payOrder.setPaySrcType(Integer.valueOf(PayOrderEnum.PAY_RESOURCE_TYPE_SERVICE.getValue())); + payOrder.setRltOrderId(orderId); + payOrder.setPayOrderTitle(PayOrderEnum.PAY_ORDER_TYPE_PAY.getValue()); + payOrder.setPayType(Integer.valueOf(PayOrderEnum.PAY_TYPE_WXGZH.getValue())); + payOrder.setPayOrderState(Integer.valueOf(PayOrderEnum.PAY_ORDER_STATE_WAIT_PAY.getValue())); + payOrder.setPayorderStateTime(new Date()); + payOrder.setDataState(DataStatusEnum.DATA_STATUS_VALID.value()); + payOrder.setCreateDate(new Date()); + payOrder.setModfiyDate(new Date()); + logger.info("支付单save请求数据为: payOrder=" + JSONObject.toJSONString(payOrder)); + Boolean flag = payOrder.save(); + logger.info("支付单save 响应为: flag=" + flag); + + //订单ID if (StringKit.isEmpty(orderId)) { bizResult.setCode(ErrorType.PARAMM_NULL.getCode()); @@ -486,24 +488,7 @@ public class WeixinPayController extends Controller { return; } - PayOrder payOrder = PayOrder.dao.findFirst("select * from td_b_pay_order t where t.pay_order_id = ?", - payOrderId); - - if (null == payOrder) { - bizResult.setCode(ErrorType.PARAMM_NULL.getCode()); - bizResult.setMsg("支付单不存在"); - renderJson(bizResult); - return; - } - - // 判断支付单状态 支付单状态:0-待支付 1-成功 2-失败(作废) - if (null == payOrder.getPayOrderState() || 0 != payOrder.getPayOrderState()) { - logger.info("支付单状态不正确,支付单状态为: orderState=" + payOrder.getPayOrderState()); - bizResult.setCode(ErrorType.PARAMM_NULL.getCode()); - bizResult.setMsg("支付单状态不正确"); - renderJson(bizResult); - return; - } + Order order = Order.dao.findFirst("select * from td_b_order t where t.order_id = ?", orderId); if (null == order) { @@ -680,7 +665,7 @@ public class WeixinPayController extends Controller { payOrderFlow.setPayOrderId(payOrderId); payOrderFlow.setTradeNo(transId); //传回的金额以 分 为单位,转换为double,然后转换为 BigDecimal类型 - payOrderFlow.setBuyerPayAmount(new BigDecimal(new Double(totalFee) / 100)); + payOrderFlow.setBuyerPayAmount(new BigDecimal(new Double(totalFee))); //付款时间 payOrderFlow.setGmtPayment(new Date()); //处理环节 diff --git a/src/main/java/com/rnt/service/IRainQueryService.java b/src/main/java/com/rnt/service/IRainQueryService.java index 45e6c24..93c5f48 100644 --- a/src/main/java/com/rnt/service/IRainQueryService.java +++ b/src/main/java/com/rnt/service/IRainQueryService.java @@ -73,4 +73,25 @@ public class IRainQueryService { return JSONObject.toJSON(rs)+""; } + + public static void main(String[] args) { + Prop prop = PropKit.use("a_little_config.txt"); + String rs = ""; + Long time = System.currentTimeMillis(); + String md5 = MD5Utils.enMD5(prop.get("irain.appid")+prop.get("irain.appsecret")+time); + Map params = new HashMap<>(); + params.put("appid", prop.get("irain.appid")); + params.put("sign", md5); + params.put("timestamp", time); + params.put("vpl_number", "苏B1B566"); + params.put("park_code", "734861a1e8656ffa51bdd90829941ca9"); + + try { + logger.info("irain 查询停车费用入参:" + JSONObject.toJSONString(params)); + rs = HttpClientTutorial.httpPostRequest(prop.get("irain.url")+"/bill/Query", params); + logger.info("irain 查询停车费用返回:" + JSONObject.toJSONString(rs)); + } catch (Exception e) { + logger.info("irain 查询停车费用出错:" + e); + } + } } diff --git a/src/main/resources/a_little_config.txt b/src/main/resources/a_little_config.txt index 2e9d9aa..3d92a11 100644 --- a/src/main/resources/a_little_config.txt +++ b/src/main/resources/a_little_config.txt @@ -25,6 +25,8 @@ zf.druid.url=jdbc:mysql://10.117.185.28:3306/zt_order?useUnicode=true&characterE zf.druid.username=order zf.druid.password=MySQL5.7;123 + + zf.druid.initialSize=1 zf.druid.minIdle=1 zf.druid.maxActive=20 @@ -40,7 +42,7 @@ zf.druid.testOnWhileIdle=true #Redis config redis.host=127.0.0.1 redis.port=6379 -#redis.password=redis_63790 +redis.password=myredis # 微信服务器回调所用的 token diff --git a/src/main/resources/a_little_config_pro.txt b/src/main/resources/a_little_config_pro.txt deleted file mode 100644 index c92811a..0000000 --- a/src/main/resources/a_little_config_pro.txt +++ /dev/null @@ -1,78 +0,0 @@ - -devMode = true - -######## park库 -park.druid.url=jdbc:mysql://61.177.139.228:13906/zteits-park?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true -park.druid.username=zteits -park.druid.password=Zteits;123456 -park.druid.initialSize=1 -park.druid.minIdle=1 -park.druid.maxActive=20 -park.druid.filters=stat,wall -park.druid.maxWait=60000 -park.druid.timeBetweenEvictionRunsMillis=3000 -park.druid.minEvictableIdleTimeMillis=300000 -park.druid.validationQuery=SELECT 'x' -park.druid.testOnBorrow=true -park.druid.testOnReturn=false -park.druid.testOnWhileIdle=true - -####### zf库 -zf.druid.url=jdbc:mysql://61.177.139.228:13906/zteits-zf?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true -zf.druid.username=zteits -zf.druid.password=Zteits;123456 -zf.druid.initialSize=1 -zf.druid.minIdle=1 -zf.druid.maxActive=20 -zf.druid.filters=stat,wall -zf.druid.maxWait=60000 -zf.druid.timeBetweenEvictionRunsMillis=3000 -zf.druid.minEvictableIdleTimeMillis=300000 -zf.druid.validationQuery=SELECT 'x' -zf.druid.testOnBorrow=true -zf.druid.testOnReturn=false -zf.druid.testOnWhileIdle=true - -#Redis config -redis.host=192.168.129.137 -redis.port=6379 -#redis.password=redis_63790 - - -# 微信服务器回调所用的 token -token=mytoken - -# 测试用的账号 -appId=wx077cae81383034aa -appSecret=d4624c36b6795d1d99dcf0547af5443d - -#是否对消息进行加密,是否对消息进行加密,对应于微信平台的消息加解密方式,false支持明文模式及兼容模式,true支持安全模式及兼容模式 -#encryptMessage=true -#encodingAesKey=yourEncodingAesKey - -#路径配置 -#app.host=http://wxgzh.rnting.com -#app.staticHost=http://wxgzh.rnting.com/static - -app.host=http://120.26.116.79 -app.staticHost=http://120.26.116.79/static - -#weixin pay -#是否支持信用卡支付 -pay.noCredit=true - - -#雪花算法 工作id,数据中心id -datacenterId=01 -workerId=01 - -#irain -irain.url=http://api.parkingwang.com:8280 -#irain艾润 -irain.appid=avakrky0gk1m7n00 -#irain -irain.appsecret=rrr6uz3aqvutpsq2lsna0k18cea4mabw -#irain aes -irain.aes=avakrky0gk1m7n00 -irain.park_code=734861a1e8656ffa51bdd90829941ca9 - diff --git a/src/main/webapp/WEB-INF/pages/check.html b/src/main/webapp/WEB-INF/pages/check.html index c14c76b..ce26ea4 100644 --- a/src/main/webapp/WEB-INF/pages/check.html +++ b/src/main/webapp/WEB-INF/pages/check.html @@ -70,7 +70,6 @@
-
@@ -177,7 +176,6 @@ flg = false; $('#showTooltips').attr('class', 'weui-btn weui-btn_primary weui-btn_disabled'); var parkOrderId = $('#parkOrderId').val(); - var payOrderId = $('#payOrderId').val(); if (parkOrderId.length < 1) { $.toptip("订单Id为空", 2000, "error"); $('#showTooltips').attr('class', 'weui-btn weui-btn_primary'); @@ -185,8 +183,7 @@ return false; } var req = { - orderId: parkOrderId, - payOrderId:payOrderId + orderId: parkOrderId } $.ajax({ @@ -212,12 +209,12 @@ function jsApiCall(payParam) { WeixinJSBridge.invoke( 'getBrandWCPayRequest', - payParam, + JSON.parse(payParam), function (res) { if (res.err_msg == "get_brand_wcpay_request:ok") { - $.alert("亲!支付成功!"); + //$.alert("亲!支付成功!"); //支付成功 - windows.location.href = mUrl.paySuccessView + '&payMoney=' + totleMoney; + window.location.href = mUrl.paySuccessView + '&payMoney=' + totleMoney; } else { //支付失败 diff --git a/src/main/webapp/WEB-INF/pages/pay.html b/src/main/webapp/WEB-INF/pages/pay.html index fcb2202..28440c8 100644 --- a/src/main/webapp/WEB-INF/pages/pay.html +++ b/src/main/webapp/WEB-INF/pages/pay.html @@ -51,7 +51,6 @@ -
@@ -182,7 +181,6 @@ flg = false; $('#showTooltips').attr('class', 'weui-btn weui-btn_primary weui-btn_disabled'); var parkOrderId = $('#parkOrderId').val(); - var payOrderId = $('#payOrderId').val(); if (parkOrderId.length < 1) { $.toptip("亲!订单Id为空", 2000, "error"); $('#showTooltips').attr('class', 'weui-btn weui-btn_primary'); @@ -190,8 +188,7 @@ return false; } var req = { - orderId: parkOrderId, - payOrderId:payOrderId + orderId: parkOrderId } $.ajax({ @@ -226,13 +223,14 @@ if (res.err_msg == "get_brand_wcpay_request:ok") { //$.alert("亲!支付成功!"); //支付成功 - windows.location.href = mUrl.paySuccessView + '&payMoney=' + totleMoney; + window.location.href = mUrl.paySuccessView + '&payMoney=' + totleMoney; } else { $('#showTooltips').attr('class', 'weui-btn weui-btn_primary'); flg = true; //支付失败 - $.alert('亲!支付失败了 '+JSON.stringify(res)); + $.alert('亲!支付失败了!'); + //$.alert('亲!支付失败了 '+JSON.stringify(res)); //windows.location.href='${host}/pay/payFail'; } diff --git a/src/main/webapp/WEB-INF/pages/paysuccess.html b/src/main/webapp/WEB-INF/pages/paysuccess.html index 2298441..445aa5a 100644 --- a/src/main/webapp/WEB-INF/pages/paysuccess.html +++ b/src/main/webapp/WEB-INF/pages/paysuccess.html @@ -28,7 +28,7 @@
@@ -37,7 +37,20 @@ - + + +