package cc.mrbird.febs;
|
|
import cc.mrbird.febs.common.entity.FebsResponse;
|
import cc.mrbird.febs.common.enumerates.MallMoneyFlowTypeEnum;
|
import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
|
import cc.mrbird.febs.common.exception.FebsException;
|
import cc.mrbird.febs.common.utils.AppContants;
|
import cc.mrbird.febs.common.utils.LoginUserUtil;
|
import cc.mrbird.febs.common.utils.MallUtils;
|
import cc.mrbird.febs.mall.entity.MallMember;
|
import cc.mrbird.febs.mall.entity.MallMoneyFlow;
|
import cc.mrbird.febs.mall.entity.MallOrderInfo;
|
import cc.mrbird.febs.mall.entity.MallOrderItem;
|
import cc.mrbird.febs.mall.mapper.MallMemberMapper;
|
import cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper;
|
import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
|
import cc.mrbird.febs.mall.mapper.MallOrderItemMapper;
|
import cc.mrbird.febs.mall.quartz.OrderSettlementJob;
|
import cc.mrbird.febs.mall.service.IAgentService;
|
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
|
import cc.mrbird.febs.mall.service.IMallAchieveService;
|
import cc.mrbird.febs.mall.service.IMemberProfitService;
|
import cc.mrbird.febs.pay.model.*;
|
import cc.mrbird.febs.pay.service.UnipayService;
|
import cc.mrbird.febs.rabbit.consumer.AgentConsumer;
|
import cc.mrbird.febs.rabbit.producter.AgentProducer;
|
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
import org.junit.jupiter.api.Test;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.boot.test.context.SpringBootTest;
|
|
import java.math.BigDecimal;
|
import java.text.DecimalFormat;
|
import java.util.Date;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @author wzy
|
* @date 2022-06-02
|
**/
|
@SpringBootTest
|
public class ProfitTest {
|
|
@Autowired
|
private AgentConsumer agentConsumer;
|
|
@Autowired
|
private IAgentService agentService;
|
|
@Autowired
|
private IMemberProfitService memberProfitService;
|
|
@Test
|
public void dynamicProfit() {
|
memberProfitService.dynamicProfit(21L);
|
}
|
@Test
|
public void agentProfit() {
|
memberProfitService.agentProfit(null);
|
}
|
|
|
// @Test
|
// public void staticProfit() {
|
// memberProfitService.staticProfit(new Date());
|
// }
|
|
@Test
|
public void thankfulProfit() {
|
memberProfitService.thankfulProfit(new Date());
|
}
|
|
@Test
|
public void rankProfit() {
|
memberProfitService.rankProfit();
|
}
|
|
@Autowired
|
private MallOrderInfoMapper mallOrderInfoMapper;
|
|
@Autowired
|
private MallMemberMapper mallMemberMapper;
|
|
@Autowired
|
private MallMoneyFlowMapper mallMoneyFlowMapper;
|
|
@Autowired
|
private IApiMallMemberWalletService memberWalletService;
|
|
@Autowired
|
private AgentProducer agentProducer;
|
|
@Test
|
public void directorProfitTest() {
|
MallMember member = mallMemberMapper.selectById(1L);
|
MallOrderInfo orderInfo = mallOrderInfoMapper.selectOrderByMemberIdAndId(member.getId(), 577L);
|
if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) {
|
throw new FebsException("订单不存在");
|
}
|
|
if (orderInfo.getStatus() != OrderStatusEnum.WAIT_FINISH.getValue()) {
|
throw new FebsException("该状态不能确认收货");
|
}
|
|
orderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
|
orderInfo.setReceivingTime(new Date());
|
mallOrderInfoMapper.updateById(orderInfo);
|
/**
|
* 通过支付流水记录,返回下单金额
|
*/
|
MallMoneyFlow payFlow = mallMoneyFlowMapper.selectOneByMemberIdAndOrderNoAndTypeAndStatusAndIsReturn(
|
member.getId(),
|
orderInfo.getOrderNo(),
|
MallMoneyFlowTypeEnum.PAY.getCode(),
|
MallMoneyFlow.STATUS_SUCCESS,
|
MallMoneyFlow.IS_RETURN_N);
|
if(ObjectUtil.isNotEmpty(payFlow)){
|
memberWalletService.addBalance(payFlow.getAmount().negate(),payFlow.getRtMemberId());
|
payFlow.setIsReturn(MallMoneyFlow.IS_RETURN_Y);
|
mallMoneyFlowMapper.updateById(payFlow);
|
}
|
//产生补贴流水记录
|
agentProducer.sendDirectRewardMsg(orderInfo.getId());
|
}
|
|
@Autowired
|
private MallOrderItemMapper mallOrderItemMapper;
|
|
@Autowired
|
private IMallAchieveService mallAchieveService;
|
|
@Test
|
public void achieveTest() {
|
List<MallOrderItem> items = mallOrderItemMapper.selectList(null);
|
for (MallOrderItem item : items) {
|
mallAchieveService.add(item.getId());
|
}
|
}
|
//
|
// @Test
|
// public void paramTest() {
|
// Map<String, Integer> map = new HashMap<>();
|
// BigDecimal amount = new BigDecimal("100");
|
// map.put("amount", 1);
|
// changeAmount(map);
|
// System.out.println(map.get("amount"));
|
// }
|
//
|
// public void changeAmount(Map<String, Integer> amount) {
|
// amount.put("amount", 2);
|
// }
|
//
|
// @Test
|
// public void scorePool(){
|
// memberProfitService.scorePool();
|
// }
|
//
|
// @Test
|
// public void staticProfit(){
|
// memberProfitService.staticProfit(null);
|
// }
|
//
|
// @Autowired
|
// private OrderSettlementJob orderSettlementJob;
|
//
|
// @Test
|
// public void orderSettlementJobTest() {
|
//// orderSettlementJob.normalGoodsSettlementJob();
|
//
|
// mallAchieveService.add(83L);
|
// }
|
//
|
//
|
// @Autowired
|
// private UnipayService unipayService;
|
// @Test
|
// public void unipay(){
|
// UnipayDto unipayDto = new UnipayDto();
|
// unipayDto.setAmount(new BigDecimal("0.01"));
|
// unipayDto.setFrpCode("ALIPAY_H5");
|
// unipayDto.setTradeMerchantNo("777180800385820");
|
//// unipayDto.setFrpCode("WEIXIN_APP3");
|
// unipayDto.setOrderNo("2022082316415386395");
|
// unipayDto.setProductName("洗护套装");
|
// unipayService.unipay(unipayDto);
|
// }
|
// @Test
|
// public void getAgreeMentPaySms(){
|
// AgreeMentPaySmsDto agreeMentPaySmsDto = new AgreeMentPaySmsDto();
|
// agreeMentPaySmsDto.setOrderNo("2022082617305930328");
|
//
|
// BigDecimal value = new BigDecimal("0.1").setScale(2, BigDecimal.ROUND_DOWN);
|
// DecimalFormat decimalFormat = new DecimalFormat("0.00#");
|
// String strVal = decimalFormat.format(value);
|
// agreeMentPaySmsDto.setOrderAmount(new BigDecimal(strVal));
|
// agreeMentPaySmsDto.setName("肖永");
|
// agreeMentPaySmsDto.setCreatedTime(DateUtil.now());
|
// agreeMentPaySmsDto.setIdType("1");
|
// agreeMentPaySmsDto.setIdCardNum("430321199310113713");
|
// agreeMentPaySmsDto.setBankNo("6222031901002389639");
|
// agreeMentPaySmsDto.setPhone("15274802129");
|
// String agreeMentPaySms = unipayService.getAgreeMentPaySms(agreeMentPaySmsDto);
|
// if("JS000000".equals(agreeMentPaySms)){
|
// System.out.println("获取成功");
|
// }else{
|
// System.out.println(agreeMentPaySms);
|
// }
|
// }
|
//
|
// @Test
|
// public void agreementSign(){
|
// AgreementSignDto agreementSignDto = new AgreementSignDto();
|
// agreementSignDto.setOrderNo("2022082614465345250");
|
// agreementSignDto.setSmsCode("841243");
|
// unipayService.agreementSign(agreementSignDto);
|
// }
|
//
|
// @Test
|
// public void agreementPay(){
|
// AgreementPayDto agreementPayDto = new AgreementPayDto();
|
// agreementPayDto.setOrderNo("2022082614465345250");
|
//
|
// BigDecimal value = new BigDecimal("0.1").setScale(2, BigDecimal.ROUND_DOWN);
|
// DecimalFormat decimalFormat = new DecimalFormat("0.00#");
|
// String strVal = decimalFormat.format(value);
|
// agreementPayDto.setOrderAmount(new BigDecimal(strVal));
|
// agreementPayDto.setOrderTime(DateUtil.now());
|
// agreementPayDto.setOrderDesc("测试");
|
// agreementPayDto.setBankNo("6222031901002389639");
|
// unipayService.agreementPay(agreementPayDto);
|
// }
|
//
|
// @Test
|
// public void singlePay(){
|
// /**
|
// * 调用汇聚代付
|
// */
|
// String orderNo = MallUtils.getOrderNum("W");
|
// SinglePayDto singlePayDto = new SinglePayDto();
|
// singlePayDto.setMerchantOrderNo(orderNo);
|
// singlePayDto.setReceiverAccountNoEncBankNo("6222031903210023839639");
|
// singlePayDto.setReceiverAccountNoEncName("肖永");
|
// singlePayDto.setReceiverAccountType("201");
|
// BigDecimal paidAmount = new BigDecimal(1.00);
|
// singlePayDto.setPaidAmount(paidAmount);
|
// singlePayDto.setCurrency("201");
|
// singlePayDto.setIsChecked("202");
|
// singlePayDto.setPaidDesc("用户提现");
|
// singlePayDto.setPaidUse("202");
|
// String singlePayRep = unipayService.singlePay(singlePayDto);
|
//
|
// System.out.println(singlePayRep);
|
// }
|
}
|