| 
					
				 | 
			
			
				@@ -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); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 |