58 lines
2.0 KiB
Java
58 lines
2.0 KiB
Java
package com.sv.wx;
|
|
|
|
import com.WeiXinApplication;
|
|
import com.sv.dto.api.MemberLessonTicketDetailDTO;
|
|
import com.sv.entity.MemberRefund;
|
|
import com.sv.entity.Order;
|
|
import com.sv.mapper.MemberRefundMapper;
|
|
import com.sv.service.api.OrderService;
|
|
import com.sv.service.api.config.WechatPayService;
|
|
import com.ydd.framework.core.exception.ServiceException;
|
|
import org.junit.Test;
|
|
import org.junit.runner.RunWith;
|
|
import org.springframework.boot.test.context.SpringBootTest;
|
|
import org.springframework.test.context.junit4.SpringRunner;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import javax.annotation.Resource;
|
|
import java.math.BigDecimal;
|
|
|
|
@RunWith(SpringRunner.class)
|
|
@SpringBootTest(classes={WeiXinApplication.class})
|
|
public class WxServiceTest {
|
|
|
|
@Resource
|
|
WechatPayService wechatPayService;
|
|
@Resource
|
|
OrderService orderService;
|
|
@Resource
|
|
MemberRefundMapper memberRefundMapper;
|
|
|
|
@Test
|
|
public void refund(){
|
|
// wechatPayService.createUnifiedOrder("testlmq20231224",new BigDecimal(0.02),"127.0.0.1","JSAPI", 535);
|
|
// 根据orderSn查出对应订单信息
|
|
String orderSn = "231231014749545739";
|
|
Integer memberId = 535;
|
|
Order order = orderService.findOrderSn(orderSn,memberId);
|
|
if (order == null){
|
|
throw new ServiceException(com.sv.exception.api.ExceptionCodeTemplate.ORDER_ERROR);
|
|
}
|
|
|
|
MemberRefund memberRefund = new MemberRefund();
|
|
memberRefund.setMemberId(memberId);
|
|
memberRefund.setLessonId(1);
|
|
memberRefund.setMoney(order.getPrice());
|
|
// memberRefund.setMoney(new BigDecimal(0.01));
|
|
memberRefund.setOrderSn(orderSn);
|
|
memberRefund.setTransactionId(order.getTradeSn());
|
|
memberRefund.setOrderId(order.getId());
|
|
memberRefund.setOutRefundNo(orderService.createSn());//商户退款单号
|
|
memberRefund.setPlatformId(1);
|
|
memberRefundMapper.insert(memberRefund);
|
|
wechatPayService.refundInputMoney(memberRefund,new BigDecimal(0.01));
|
|
|
|
}
|
|
|
|
}
|