| | |
| | | |
| | | import com.panzhihua.applets.umf.MyAESUtil; |
| | | import com.panzhihua.applets.umf.UmfPayUtil; |
| | | import com.panzhihua.applets.unionpay.Query; |
| | | import com.panzhihua.applets.unionpay.QueryEntiy; |
| | | import com.panzhihua.applets.unionpay.Refund; |
| | | import com.panzhihua.common.model.dtos.wx.UnionpayCarWash; |
| | | import com.panzhihua.common.model.vos.R; |
| | |
| | | public void payCallbackAll(HttpServletRequest request, HttpServletResponse response) { |
| | | //获取联动发送请求的参数 |
| | | String requestParam = request.getQueryString(); |
| | | log.error("花城洗车请求参数 :" + requestParam); |
| | | System.out.println("花城洗车请求参数 :" + requestParam); |
| | | //调用异步通知解析方法 |
| | | UmfService service = new UmfServiceImpl("53461",file); |
| | |
| | | |
| | | /** |
| | | * 银联支付回调专用 银联方面只能是有个post |
| | | * @param request |
| | | * @param response |
| | | */ |
| | | @PostMapping("wxNotifyAllUnionpay") |
| | | public void payCallbackAllUnionpay(HttpServletRequest request, HttpServletResponse response) { |
| | | public void payCallbackAllUnionpay(@RequestParam("merOrderId") String merOrderId, HttpServletResponse response) |
| | | { |
| | | //获取联动发送请求的参数 |
| | | String requestParam = request.getQueryString(); |
| | | log.error("花城洗车请求参数 :" + requestParam); |
| | | log.error("花城洗车请求参数 :" + merOrderId); |
| | | log.error("花城洗车请求参数response :" + response.toString()); |
| | | //调用异步通知解析方法 |
| | | UmfService service = new UmfServiceImpl("53461",file); |
| | | Map respMap = null; |
| | | try { |
| | | respMap = service.notifyDataParserMap(requestParam); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | if(respMap.get("error_code").equals("0000")){ |
| | | //调用uu洗车支付成功回调 |
| | | Map map=new HashMap(); |
| | | map.put("orderId",respMap.get("order_id")); |
| | | HttpClientUtil.sendPostByJson("https://uu-api.imashuo.com/notify/wx/pzh-pay",JSONObject.toJSONString(map), |
| | | 1,"appid","10000"); |
| | | log.error("花城洗车回调成功 :" + respMap.get("order_id")); |
| | | String content=Query.query(merOrderId); |
| | | QueryEntiy queryEntiy=JSONObject.parseObject(content,QueryEntiy.class); |
| | | log.error("花城洗车请求参数queryEntiy :" + queryEntiy.toString()); |
| | | if(queryEntiy.getErrCode().equals("SUCCESS")) |
| | | { |
| | | //查询银联单号对应的洗车单号 |
| | | R r=communityService.carWashById(merOrderId); |
| | | if(r.getCode()==200) |
| | | { |
| | | |
| | | HashMap unionpayCarWash= (HashMap) r.getData(); |
| | | //调用uu洗车支付成功回调 |
| | | Map map=new HashMap(); |
| | | map.put("orderId",unionpayCarWash.get("carWashId")); |
| | | HttpClientUtil.sendPostByJson("https://uu-api.imashuo.com/notify/wx/pzh-pay",JSONObject.toJSONString(map), |
| | | 1,"appid","10000"); |
| | | log.error("花城洗车回调成功 :" + queryEntiy.getMerOrderId()+" : 洗车号" |
| | | +unionpayCarWash.get("carWashId")+" : 银联号"+unionpayCarWash.get("unionpayOrderId")); |
| | | } |
| | | |
| | | } |
| | | //调用SDK生成返回联动平台字符串,加到CONTENT中 |
| | | String resMetaData = service.responseUMFMap(respMap); |
| | | response.setContentType("text/html;charset=utf-8"); |
| | | PrintWriter out = null; |
| | | try { |
| | |
| | | } |
| | | out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); |
| | | out.println("<HTML>"); |
| | | out.println("<HEAD><META NAME=\"MobilePayPlatform\" CONTENT=\"" + resMetaData + "\" /></HEAD>"); |
| | | out.println("<HEAD><META NAME=\"MobilePayPlatform\" CONTENT=\"" + content + "\" /></HEAD>"); |
| | | out.println("<BODY>"); |
| | | out.println("</BODY>"); |
| | | out.println("</HTML>"); |
| | |
| | | if(desMap.get("orderId")!=null) |
| | | { |
| | | R r=communityService.queryById(desMap.get("orderId")); |
| | | UnionpayCarWash wash=(UnionpayCarWash)r.getData(); |
| | | if(wash!=null) |
| | | if(r.getCode()==200) |
| | | { |
| | | String re=Refund.sendOrder(wash.getMoney(),wash.getUnionpayOrderId()); |
| | | map.put("unionpay","退款成功"); |
| | | HashMap wash= (HashMap) r.getData(); |
| | | if(wash!=null) |
| | | { |
| | | String re=Refund.sendOrder(wash.get("money").toString(), |
| | | wash.get("unionpayOrderId").toString()); |
| | | map.put("unionpay","退款成功"); |
| | | log.error("花城洗车银联退款成功 :" + re); |
| | | } |
| | | |
| | | } |
| | | } |
| | | return R.ok(map); |