| | |
| | | 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; |
| | |
| | | } |
| | | @Test |
| | | public void agentProfit() { |
| | | memberProfitService.agentProfit(new Date()); |
| | | memberProfitService.agentProfit(null); |
| | | } |
| | | |
| | | |
| | | @Test |
| | | public void staticProfit() { |
| | | memberProfitService.staticProfit(new Date()); |
| | | } |
| | | // @Test |
| | | // public void staticProfit() { |
| | | // memberProfitService.staticProfit(new Date()); |
| | | // } |
| | | |
| | | @Test |
| | | public void thankfulProfit() { |
| | |
| | | @Autowired |
| | | private MallOrderInfoMapper mallOrderInfoMapper; |
| | | |
| | | @Autowired |
| | | private MallMemberMapper mallMemberMapper; |
| | | |
| | | @Autowired |
| | | private MallMoneyFlowMapper mallMoneyFlowMapper; |
| | | |
| | | @Autowired |
| | | private IApiMallMemberWalletService memberWalletService; |
| | | |
| | | @Autowired |
| | | private AgentProducer agentProducer; |
| | | |
| | | @Test |
| | | public void directorProfitTest() { |
| | | memberProfitService.storeAndDirectorProfit(new Date()); |
| | | 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 |
| | |
| | | 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 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); |
| | | // } |
| | | } |