| 
 | 
 | 
 package com.sunyo.energy.location.controller;
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
 import com.alibaba.fastjson.JSONObject;
 | 
| 
 | 
 | 
 import com.google.gson.internal.$Gson$Preconditions;
 | 
| 
 | 
 | 
 import com.sunyo.energy.location.controller.response.ResultJson;
 | 
| 
 | 
 | 
 import com.sunyo.energy.location.dao.PayRecordsMapper;
 | 
| 
 | 
 | 
 import com.sunyo.energy.location.dao.PayResponseMapper;
 | 
| 
...
 | 
...
 | 
@@ -107,111 +108,125 @@ public class PayRseponeController { | 
| 
 | 
 | 
         payResponse.setPaytype(PAYTYPE);
 | 
| 
 | 
 | 
         payResponse.setSign(SIGN);
 | 
| 
 | 
 | 
         try {
 | 
| 
 | 
 | 
             int msg = 0;
 | 
| 
 | 
 | 
             int i = payResponseMapperl.insertSelective(payResponse);
 | 
| 
 | 
 | 
             log.info("插入数据库{},信息{}",i, payResponse);
 | 
| 
 | 
 | 
             if (i > 0) {
 | 
| 
 | 
 | 
                 msg = 1;
 | 
| 
 | 
 | 
                 PayRecords payRecords = new PayRecords();
 | 
| 
 | 
 | 
                 // 支付类型
 | 
| 
 | 
 | 
                 if (!"".equals(ACC_TYPE)) {
 | 
| 
 | 
 | 
                     if ("WX".equals(ACC_TYPE)) {
 | 
| 
 | 
 | 
                         payRecords.setPayfesstype(false);
 | 
| 
 | 
 | 
                     } else {
 | 
| 
 | 
 | 
                         payRecords.setPayfesstype(true);
 | 
| 
 | 
 | 
                     }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                 }
 | 
| 
 | 
 | 
                 if ("Y".equals(SUCCESS)) {
 | 
| 
 | 
 | 
                     payRecords.setOrdernumber(ORDERID);
 | 
| 
 | 
 | 
                     payRecords.setReamke3("1");
 | 
| 
 | 
 | 
                 } else {
 | 
| 
 | 
 | 
                     payRecords.setOrdernumber(ORDERID);
 | 
| 
 | 
 | 
                     payRecords.setReamke3("0");
 | 
| 
 | 
 | 
                 }
 | 
| 
 | 
 | 
                 /**
 | 
| 
 | 
 | 
                  * 修改订单支付状态
 | 
| 
 | 
 | 
                  */
 | 
| 
 | 
 | 
                 payRecordsMapper.updateOrderStatus(payRecords);
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                 // 查询是水还是电
 | 
| 
 | 
 | 
                 boolean selectType = payRecordsMapper.selectType(ORDERID);
 | 
| 
 | 
 | 
                 if (selectType) {
 | 
| 
 | 
 | 
                     // 查询该订单设备编号
 | 
| 
 | 
 | 
                     String eeId = payRecordsMapper.findOrderNumber(ORDERID);
 | 
| 
 | 
 | 
                     if (!"".equals(eeId)) {
 | 
| 
 | 
 | 
                         // 通知充值电费
 | 
| 
 | 
 | 
                         int eeResult = electricityMeterService.rechargeDevices(eeId, PAYMENT, "0", ORDERID);
 | 
| 
 | 
 | 
                         if (eeResult > 0) {
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                             log.info("电表信息充值成功{}",eeResult);
 | 
| 
 | 
 | 
                             /**
 | 
| 
 | 
 | 
                              * 修改电表充值状态
 | 
| 
 | 
 | 
                               */
 | 
| 
 | 
 | 
                             int i1 = payRecordsMapper.updateByPrimaryKey(payRecords);
 | 
| 
 | 
 | 
                             log.info("修改电表订单状态{}, 修改信息{}", i1, payRecords);
 | 
| 
 | 
 | 
                             if (i1 > 0) {
 | 
| 
 | 
 | 
                                 WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                 JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                 jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                 jsonObject.put("success", "Y");
 | 
| 
 | 
 | 
                                 webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                 log.info("通知前端消息结果");
 | 
| 
 | 
 | 
                             } else {
 | 
| 
 | 
 | 
                                 WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                 JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                 jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                 jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                                 webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                             }
 | 
| 
 | 
 | 
             int msg = 0;
 | 
| 
 | 
 | 
             /**
 | 
| 
 | 
 | 
              * 解决建行反馈多次原因
 | 
| 
 | 
 | 
              */
 | 
| 
 | 
 | 
             if(payResponseMapperl.count(ORDERID) == 0){
 | 
| 
 | 
 | 
                 int i = payResponseMapperl.insertSelective(payResponse);
 | 
| 
 | 
 | 
                 log.info("插入数据库{},信息{}",i, payResponse);
 | 
| 
 | 
 | 
                 if (i > 0) {
 | 
| 
 | 
 | 
                     msg = 1;
 | 
| 
 | 
 | 
                     PayRecords payRecords = new PayRecords();
 | 
| 
 | 
 | 
                     // 支付类型
 | 
| 
 | 
 | 
                     if (!"".equals(ACC_TYPE)) {
 | 
| 
 | 
 | 
                         if ("WX".equals(ACC_TYPE)) {
 | 
| 
 | 
 | 
                             payRecords.setPayfesstype(false);
 | 
| 
 | 
 | 
                         } else {
 | 
| 
 | 
 | 
                             WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                             JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                             jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                             jsonObject.put("success", "S");
 | 
| 
 | 
 | 
                             webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                             payRecords.setPayfesstype(true);
 | 
| 
 | 
 | 
                         }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                     }
 | 
| 
 | 
 | 
                 } else {
 | 
| 
 | 
 | 
                     // 查询该订单设备编号
 | 
| 
 | 
 | 
                     String wmId = payRecordsMapper.findOrderNumber(ORDERID);
 | 
| 
 | 
 | 
                     // 通知充值水费
 | 
| 
 | 
 | 
                     if (!"".equals(wmId)) {
 | 
| 
 | 
 | 
                         ResultJson resultJson = waterMeterService.payWater(PAYMENT, wmId);
 | 
| 
 | 
 | 
                         if ("200".equals(resultJson.getCode())) {
 | 
| 
 | 
 | 
                             log.info("水表信息充值成功{}",resultJson.getCode());
 | 
| 
 | 
 | 
                             /**
 | 
| 
 | 
 | 
                              * 修改订单充值状态
 | 
| 
 | 
 | 
                               */
 | 
| 
 | 
 | 
                             int i1 = payRecordsMapper.updateByPrimaryKey(payRecords);
 | 
| 
 | 
 | 
                             log.info("修改水表订单状态{}, 修改信息{}", i1, payRecords);
 | 
| 
 | 
 | 
                             if (i1 > 0) {
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                                 WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                 JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                 jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                 jsonObject.put("success", "Y");
 | 
| 
 | 
 | 
                                 webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                 log.info("通知前端消息结果");
 | 
| 
 | 
 | 
                             } else {
 | 
| 
 | 
 | 
                                 WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                 JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                 jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                 jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                                 webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                     if ("Y".equals(SUCCESS)) {
 | 
| 
 | 
 | 
                         payRecords.setOrdernumber(ORDERID);
 | 
| 
 | 
 | 
                         payRecords.setReamke3("1");
 | 
| 
 | 
 | 
                         /**
 | 
| 
 | 
 | 
                          * 修改订单支付状态
 | 
| 
 | 
 | 
                          */
 | 
| 
 | 
 | 
                         payRecordsMapper.updateOrderStatus(payRecords);
 | 
| 
 | 
 | 
                         // 查询是水还是电
 | 
| 
 | 
 | 
                         boolean selectType = payRecordsMapper.selectType(ORDERID);
 | 
| 
 | 
 | 
                         if (selectType) {
 | 
| 
 | 
 | 
                             // 查询该订单设备编号
 | 
| 
 | 
 | 
                             String eeId = payRecordsMapper.findOrderNumber(ORDERID);
 | 
| 
 | 
 | 
                             if (!"".equals(eeId)) {
 | 
| 
 | 
 | 
                                 // 通知充值电费
 | 
| 
 | 
 | 
                                 int eeResult = electricityMeterService.rechargeDevices(eeId, PAYMENT, "0", ORDERID);
 | 
| 
 | 
 | 
                                 if (eeResult > 0) {
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                                     log.info("电表信息充值成功{}",eeResult);
 | 
| 
 | 
 | 
                                     /**
 | 
| 
 | 
 | 
                                      * 修改电表充值状态
 | 
| 
 | 
 | 
                                      */
 | 
| 
 | 
 | 
                                     int i1 = payRecordsMapper.updateByPrimaryKey(payRecords);
 | 
| 
 | 
 | 
                                     log.info("修改电表订单状态{}, 修改信息{}", i1, payRecords);
 | 
| 
 | 
 | 
                                     if (i1 > 0) {
 | 
| 
 | 
 | 
                                         WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                         JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                         jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                         jsonObject.put("success", "Y");
 | 
| 
 | 
 | 
                                         webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                         log.info("通知前端消息结果");
 | 
| 
 | 
 | 
                                     } else {
 | 
| 
 | 
 | 
                                         WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                         JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                         jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                         jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                                         webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                     }
 | 
| 
 | 
 | 
                                 } else {
 | 
| 
 | 
 | 
                                     WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                     JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                     jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                     jsonObject.put("success", "S");
 | 
| 
 | 
 | 
                                     webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                 }
 | 
| 
 | 
 | 
                             }
 | 
| 
 | 
 | 
                         } else {
 | 
| 
 | 
 | 
                             WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                             JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                             jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                             jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                             webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                             // 查询该订单设备编号
 | 
| 
 | 
 | 
                             String wmId = payRecordsMapper.findOrderNumber(ORDERID);
 | 
| 
 | 
 | 
                             // 通知充值水费
 | 
| 
 | 
 | 
                             if (!"".equals(wmId)) {
 | 
| 
 | 
 | 
                                 ResultJson resultJson = waterMeterService.payWater(PAYMENT, wmId);
 | 
| 
 | 
 | 
                                 if ("200".equals(resultJson.getCode())) {
 | 
| 
 | 
 | 
                                     log.info("水表信息充值成功{}",resultJson.getCode());
 | 
| 
 | 
 | 
                                     /**
 | 
| 
 | 
 | 
                                      * 修改订单充值状态
 | 
| 
 | 
 | 
                                      */
 | 
| 
 | 
 | 
                                     int i1 = payRecordsMapper.updateByPrimaryKey(payRecords);
 | 
| 
 | 
 | 
                                     log.info("修改水表订单状态{}, 修改信息{}", i1, payRecords);
 | 
| 
 | 
 | 
                                     if (i1 > 0) {
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                                         WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                         JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                         jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                         jsonObject.put("success", "Y");
 | 
| 
 | 
 | 
                                         webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                         log.info("通知前端消息结果");
 | 
| 
 | 
 | 
                                     } else {
 | 
| 
 | 
 | 
                                         WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                         JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                         jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                         jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                                         webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                     }
 | 
| 
 | 
 | 
                                 } else {
 | 
| 
 | 
 | 
                                     WebSocketServer webSocketServer = new WebSocketServer();
 | 
| 
 | 
 | 
                                     JSONObject jsonObject = new JSONObject();
 | 
| 
 | 
 | 
                                     jsonObject.put("orderNumber", ORDERID);
 | 
| 
 | 
 | 
                                     jsonObject.put("success", "N");
 | 
| 
 | 
 | 
                                     webSocketServer.broadcast(jsonObject.toJSONString());
 | 
| 
 | 
 | 
                                 }
 | 
| 
 | 
 | 
                             }
 | 
| 
 | 
 | 
                         }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                     } else {
 | 
| 
 | 
 | 
                         payRecords.setOrdernumber(ORDERID);
 | 
| 
 | 
 | 
                         payRecords.setReamke3("0");
 | 
| 
 | 
 | 
                         /**
 | 
| 
 | 
 | 
                          * 修改订单支付状态
 | 
| 
 | 
 | 
                          */
 | 
| 
 | 
 | 
                         payRecordsMapper.updateOrderStatus(payRecords);
 | 
| 
 | 
 | 
                     }
 | 
| 
 | 
 | 
                 }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
                 return i == 1 ? new ResultJson("200", "支付回执信息接受成功") : new ResultJson("500", "支付回执信息接受失败");
 | 
| 
 | 
 | 
             }else {
 | 
| 
 | 
 | 
                 return 1 == 1 ? new ResultJson("200", "2次调用") : new ResultJson("500", "2次调用");
 | 
| 
 | 
 | 
             }
 | 
| 
 | 
 | 
             return i == 1 ? new ResultJson("200", "支付回执信息接受成功") : new ResultJson("500", "支付回执信息接受失败");
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
         }catch (Exception e){
 | 
| 
 | 
 | 
             e.printStackTrace();
 | 
| 
 | 
 | 
             log.info("系统异常-----------");
 | 
| 
...
 | 
...
 | 
@@ -219,4 +234,5 @@ public class PayRseponeController { | 
| 
 | 
 | 
         }
 | 
| 
 | 
 | 
     }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
 } | 
...
 | 
...
 | 
 |