Parcourir la source

Merge branch 'dev' of yeshijie/wlyy2.0 into dev

叶仕杰 il y a 3 ans
Parent
commit
0dc4e0fbd2

+ 2 - 18
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/patient/PayEndpoint.java

@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.care.exception.BusinessException;
import com.yihu.jw.care.exception.BusinessException;
import com.yihu.jw.care.service.doorCoach.PatientDoorCoachOrderService;
import com.yihu.jw.care.service.doorCoach.PatientDoorCoachOrderService;
import com.yihu.jw.care.service.pay.PayService;
import com.yihu.jw.care.service.pay.PayService;
import com.yihu.jw.care.util.WxpayUtil;
import com.yihu.jw.care.util.XMLUtil;
import com.yihu.jw.care.util.XMLUtil;
import com.yihu.jw.entity.order.BusinessOrderDO;
import com.yihu.jw.entity.order.BusinessOrderDO;
import com.yihu.jw.entity.order.BusinessOrderRefundDO;
import com.yihu.jw.entity.order.BusinessOrderRefundDO;
@ -29,8 +28,6 @@ import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.util.List;
import java.util.List;
import java.util.Map;
import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
/**
/**
 * Created with IntelliJ IDEA.
 * Created with IntelliJ IDEA.
@ -161,19 +158,6 @@ public class PayEndpoint extends EnvelopRestEndpoint {
        }
        }
    }
    }
    @GetMapping(value = "open/testPay")
    @ApiOperation(value = "测试wap支付")
    public Envelop testPay() {
        try{
            SortedMap<String, String> reqMap = new TreeMap<>();
            String s = WxpayUtil.createUnifiedorder(reqMap);
            System.out.println("测试wap支付="+s);
            return Envelop.getSuccess(s);
        }catch (Exception e){
            return failedObjEnvelopException2(e);
        }
    }
    @PostMapping(value = "applyRefund")
    @PostMapping(value = "applyRefund")
    @ApiOperation(value = "申请退款")
    @ApiOperation(value = "申请退款")
    public Envelop applyRefund(
    public Envelop applyRefund(
@ -303,9 +287,9 @@ public class PayEndpoint extends EnvelopRestEndpoint {
//            orderDO.setResponseParam(paramsJson);
//            orderDO.setResponseParam(paramsJson);
            // 判断total_amount是否确实为该订单的实际金额(即商户订单创建时的金额),
            // 判断total_amount是否确实为该订单的实际金额(即商户订单创建时的金额),
            String totalFee = params.get("refund_fee");
            String totalFee = params.get("refund_fee");
            BigDecimal payTotalFee = new BigDecimal(totalFee).setScale(2).divide(new BigDecimal(100), BigDecimal.ROUND_HALF_EVEN);
            BigDecimal payTotalFee = new BigDecimal(totalFee);
            log.info("【微信支付退款】支付金额:{}", payTotalFee);
            log.info("【微信支付退款】支付金额:{}", payTotalFee);
            if (new BigDecimal(orderDO.getRefundPrice()).compareTo(payTotalFee) != 0) {
            if (new BigDecimal(orderDO.getRefundPrice()*100).compareTo(payTotalFee) != 0) {
                //通知资金与实际资金不对称,可能是攻击行为!
                //通知资金与实际资金不对称,可能是攻击行为!
                log.info("通知资金与实际资金不对称,可能是攻击行为!");
                log.info("通知资金与实际资金不对称,可能是攻击行为!");
                return XMLUtil.setXML("SUCCESS", "OK");
                return XMLUtil.setXML("SUCCESS", "OK");

+ 3 - 2
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/pay/PayService.java

@ -44,6 +44,7 @@ import org.springframework.util.Assert;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;
import java.io.InputStream;
import java.math.BigDecimal;
import java.util.*;
import java.util.*;
@ -397,8 +398,8 @@ public class PayService {
        orderRefundDO.setPatientName(patientDO.getName());
        orderRefundDO.setPatientName(patientDO.getName());
        orderRefundDO.setRefundDesc(description);
        orderRefundDO.setRefundDesc(description);
        orderRefundDO = orderRefundDao.save(orderRefundDO);
        orderRefundDO = orderRefundDao.save(orderRefundDO);
        Integer orderPrice = orderRefundDO.getOrderPrice().intValue();
        Integer refundPrice1 = orderRefundDO.getRefundPrice().intValue();
        Integer orderPrice = new BigDecimal(orderRefundDO.getOrderPrice()*100).intValue();
        Integer refundPrice1 = new BigDecimal(orderRefundDO.getRefundPrice()*100).intValue();
        Map<String,Object> map = businessOrderService.refund(wechatId,orderRefundDO.getOrderNo(),orderRefundDO.getOutRefundNo(),orderPrice.toString(),refundPrice1.toString(),orderRefundDO.getRefundDesc());
        Map<String,Object> map = businessOrderService.refund(wechatId,orderRefundDO.getOrderNo(),orderRefundDO.getOutRefundNo(),orderPrice.toString(),refundPrice1.toString(),orderRefundDO.getRefundDesc());
        log.info("map"+map);
        log.info("map"+map);
        addHttpLog("1",businessOrderDO.getOrderNo(),null,map.toString());
        addHttpLog("1",businessOrderDO.getOrderNo(),null,map.toString());