wuxw
2020-02-08 a2a27d09de45b6eb671bb50a25b6eb6d01902beb
AppFrontService/src/main/java/com/java110/app/smo/payment/impl/ToNotifySMOImpl.java
@@ -17,6 +17,7 @@
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.*;
import org.springframework.stereotype.Service;
import org.springframework.web.client.HttpStatusCodeException;
import org.springframework.web.client.RestTemplate;
@@ -25,10 +26,11 @@
import java.io.InputStream;
import java.util.*;
@Service("toNotifySMOImpl")
public class ToNotifySMOImpl implements IToNotifySMO {
    private static final Logger logger = LoggerFactory.getLogger(AppAbstractComponentSMO.class);
    private static final String APP_ID = "";
    private static final String APP_ID = "992020011134400001";
    @Autowired
@@ -38,21 +40,12 @@
    private WechatAuthProperties wechatAuthProperties;
    @Override
    public ResponseEntity<String> toNotify(HttpServletRequest request) {
    public ResponseEntity<String> toNotify(String param, HttpServletRequest request) {
        String resXml = "";
        ResponseEntity responseEntity = null;
        try {
            InputStream inputStream = request.getInputStream();
//获取请求输入流
            ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
            byte[] buffer = new byte[1024];
            int len = 0;
            while ((len = inputStream.read(buffer)) != -1) {
                outputStream.write(buffer, 0, len);
            }
            outputStream.close();
            inputStream.close();
            Map<String, Object> map = PayUtil.getMapFromXML(new String(outputStream.toByteArray(), "utf-8"));
            Map<String, Object> map = PayUtil.getMapFromXML(param);
            logger.info("【小程序支付回调】 回调数据: \n" + map);
            String returnCode = (String) map.get("return_code");
            if ("SUCCESS".equalsIgnoreCase(returnCode)) {
@@ -162,7 +155,7 @@
        try {
            responseEntity = restTemplate.exchange(url, httpMethod, httpEntity, String.class);
        } catch (HttpStatusCodeException e) { //这里spring 框架 在4XX 或 5XX 时抛出 HttpServerErrorException 异常,需要重新封装一下
            responseEntity = new ResponseEntity<String>("请求下游系统异常," + e.getResponseBodyAsString(), e.getStatusCode());
            responseEntity = new ResponseEntity<String>( e.getResponseBodyAsString(), e.getStatusCode());
        } catch (Exception e) {
            responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
        } finally {