|  | @@ -146,6 +146,9 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
 | 
	
		
			
				|  |  |      private MusicAlbumService musicAlbumService;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  | +    private TeacherService teacherService;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  |      private UserOrderService userOrderService;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
	
		
			
				|  | @@ -1261,23 +1264,31 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
 | 
	
		
			
				|  |  |          if (null != orderDetailVo.getRecomUserId() && orderDetailVo.getRecomUserId() != 0
 | 
	
		
			
				|  |  |                  && !orderDetailVo.getRecomUserId().equals(orderDetailVo.getMerchId())
 | 
	
		
			
				|  |  |                  && !orderDetailVo.getUserId().equals(orderDetailVo.getRecomUserId())) {
 | 
	
		
			
				|  |  | -            //获取分润收益费率
 | 
	
		
			
				|  |  | -            BigDecimal shareFeeRate = getShareFreeByGoodType(orderDetailVo.getGoodType()
 | 
	
		
			
				|  |  | -                    , orderDetailVo.getBizId());
 | 
	
		
			
				|  |  | -            //入老师账户
 | 
	
		
			
				|  |  | -            BigDecimal shareFee = platformFee.multiply(shareFeeRate).setScale(2, RoundingMode.HALF_UP);
 | 
	
		
			
				|  |  | -            if (shareFee.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  | -                AccountBizTypeEnum bizTypeEnum = AccountBizTypeEnum.valueOf(orderDetailVo.getGoodType().getCode() + "_SHARE");
 | 
	
		
			
				|  |  | -                if (null != bizTypeEnum) {
 | 
	
		
			
				|  |  | -                    //插入分润老师账户变更记录-分润老师预收
 | 
	
		
			
				|  |  | -                    HttpResponseResult<UserAccountRecord> recomRecordRes = userAccountService.accountRecord(
 | 
	
		
			
				|  |  | -                            new UserAccountRecordDto(orderDetailVo.getRecomUserId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
 | 
	
		
			
				|  |  | -                                    bizTypeEnum, orderDetailVo.getBizId(), bizTypeEnum.getMsg(), orderDetailVo.getOrderNo(), orderDetailVo.getUserId(), accountPeriodTime));
 | 
	
		
			
				|  |  | -                    if (recomRecordRes.getStatus()) {
 | 
	
		
			
				|  |  | -                        //插入平台预支
 | 
	
		
			
				|  |  | -                        platformCashAccountRecord = new PlatformCashAccountRecord(orderDetailVo.getRecomUserId(), shareFee,
 | 
	
		
			
				|  |  | -                                InOrOutEnum.OUT, PostStatusEnum.WAIT, bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getOrderNo(), accountPeriodTime);
 | 
	
		
			
				|  |  | -                        platformCashAccountRecordService.save(platformCashAccountRecord);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            // 判断是否结算给分享人
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            // 判断是否结算给老师,不结算,不写入老师入账记录
 | 
	
		
			
				|  |  | +            Teacher teacher = teacherService.getById(orderDetailVo.getRecomUserId());
 | 
	
		
			
				|  |  | +            if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                //获取分润收益费率
 | 
	
		
			
				|  |  | +                BigDecimal shareFeeRate = getShareFreeByGoodType(orderDetailVo.getGoodType()
 | 
	
		
			
				|  |  | +                        , orderDetailVo.getBizId());
 | 
	
		
			
				|  |  | +                //入老师账户
 | 
	
		
			
				|  |  | +                BigDecimal shareFee = platformFee.multiply(shareFeeRate).setScale(2, RoundingMode.HALF_UP);
 | 
	
		
			
				|  |  | +                if (shareFee.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  | +                    AccountBizTypeEnum bizTypeEnum = AccountBizTypeEnum.valueOf(orderDetailVo.getGoodType().getCode() + "_SHARE");
 | 
	
		
			
				|  |  | +                    if (null != bizTypeEnum) {
 | 
	
		
			
				|  |  | +                        //插入分润老师账户变更记录-分润老师预收
 | 
	
		
			
				|  |  | +                        HttpResponseResult<UserAccountRecord> recomRecordRes = userAccountService.accountRecord(
 | 
	
		
			
				|  |  | +                                new UserAccountRecordDto(orderDetailVo.getRecomUserId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
 | 
	
		
			
				|  |  | +                                        bizTypeEnum, orderDetailVo.getBizId(), bizTypeEnum.getMsg(), orderDetailVo.getOrderNo(), orderDetailVo.getUserId(), accountPeriodTime));
 | 
	
		
			
				|  |  | +                        if (recomRecordRes.getStatus()) {
 | 
	
		
			
				|  |  | +                            //插入平台预支
 | 
	
		
			
				|  |  | +                            platformCashAccountRecord = new PlatformCashAccountRecord(orderDetailVo.getRecomUserId(), shareFee,
 | 
	
		
			
				|  |  | +                                    InOrOutEnum.OUT, PostStatusEnum.WAIT, bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getOrderNo(), accountPeriodTime);
 | 
	
		
			
				|  |  | +                            platformCashAccountRecordService.save(platformCashAccountRecord);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 |