forked from kidgrow-microservices-platform

zhaoxiaohao
2020-09-25 946f257388c4d40c5ef1e0c6971f03820df13488
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/alipay/AlipayController.java
@@ -13,7 +13,7 @@
import com.kidgrow.common.utils.DateUtils;
import com.kidgrow.common.utils.QRCodeUtil;
import com.kidgrow.common.utils.StringUtils;
import com.kidgrow.oprationcenter.config.alipay.AlipayProperties;
import com.kidgrow.oprationcenter.alipay.AlipayProperties;
import com.kidgrow.oprationcenter.model.SaasClientPay;
import com.kidgrow.oprationcenter.service.ISaasClientPayService;
import io.swagger.annotations.Api;
@@ -47,7 +47,7 @@
    @PostMapping("/precreate")
    public ResultBody precreate(HttpServletResponse response) throws Exception{  //商户预创建支付订单,生成二维码
        String outTradeNo = UUID.randomUUID().toString().replaceAll("_", "");
        String outTradeNo = UUID.randomUUID().toString().replaceAll("-", "");
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("dia_id","1");
        queryWrapper.eq("pay_status",0);
@@ -72,6 +72,8 @@
        java.security.Security.addProvider(
                new org.bouncycastle.jce.provider.BouncyCastleProvider()
        );
        request.setNotifyUrl(alipayProperties.getNotifyUrl());
        request.setReturnUrl(alipayProperties.getReturnUrl());
        AlipayTradePrecreateResponse alipayTradePrecreateResponse=alipayClient.execute(request);
        if (StringUtils.isBlank(alipayTradePrecreateResponse.getQrCode())) {
            return ResultBody.failed().data("生成二维码失败");
@@ -84,18 +86,13 @@
    //数据封装
    public SaasClientPay fengData(AlipayTradePrecreateModel model){
        SaasClientPay saasClientPay = new SaasClientPay();
        saasClientPay.setCreateHospitalDepartment("");
        saasClientPay.setCreateHospitalDepartid("");
        saasClientPay.setCreateHospitalId(Long.valueOf(1L));
        saasClientPay.setPayPrice(1);
        saasClientPay.setOutTradeNo(model.getOutTradeNo());
        saasClientPay.setPayStatus(0);
        saasClientPay.setPayMethod(1);
        saasClientPay.setDiaId("1");
        saasClientPay.setId( UUID.randomUUID().toString().replaceAll("_", ""));
        saasClientPay.setId( UUID.randomUUID().toString().replaceAll("-", ""));
        saasClientPay.setCreateTime(new Date());
        saasClientPay.setCreateUserId(Long.valueOf(1L));
        saasClientPay.setCreateUserName("");
        return saasClientPay;
    }
    @ApiOperation(value = "取消订单,支付超时、支付结果未知是可撤销,超过24小时不可撤销-------暂时没有配置")
@@ -113,18 +110,23 @@
    @ApiOperation(value = "trade_success状态下异步通知接口,端口异常的接口")
    @PostMapping("/notify")
    public ResultBody notify(HttpServletRequest request) throws Exception{   //trade_success状态下异步通知接口
    public String notify(HttpServletRequest request) throws Exception{   //trade_success状态下异步通知接口
        if (check(request.getParameterMap())){
            System.out.println(request.getParameter("trade_status"));
            Map<String, String> requestMap = this.getRequestMap(request.getParameterMap());
            log.error("eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
            log.error(request.toString());
            log.error(requestMap.toString());
            log.error("eeeeeeeeeeeeeeeewwwwwwwwwwww:");
            if(requestMap.get("trade_status").equals("TRADE_SUCCESS")){
                log.error("wwwwwwwwwww");
            }
            log.error("eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
            System.out.println("异步通知 "+ Instant.now());
        }else {
            System.out.println("验签失败");
            return "fail";
        }
        return ResultBody.ok().data("订单失败");
        return "success";
    }
    @ApiOperation(value = "订单支付成功后同步返回地址")
    @PostMapping("/return")