|  | @@ -26,6 +26,7 @@ import com.yonge.toolset.base.exception.BizException;
 | 
	
		
			
				|  |  |  import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 | 
	
		
			
				|  |  |  import com.yonge.toolset.utils.date.DateUtil;
 | 
	
		
			
				|  |  |  import com.yonge.toolset.utils.obj.ObjectUtil;
 | 
	
		
			
				|  |  | +import lombok.Data;
 | 
	
		
			
				|  |  |  import lombok.extern.slf4j.Slf4j;
 | 
	
		
			
				|  |  |  import org.apache.commons.collections.CollectionUtils;
 | 
	
		
			
				|  |  |  import org.apache.commons.lang3.StringUtils;
 | 
	
	
		
			
				|  | @@ -907,6 +908,46 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public UserTenantAlbumRecordWrapper.LastUserTenantAlbumRecord last(Long userId,Long albumId) {
 | 
	
		
			
				|  |  | +        //获取最近有效期最近的一条记录,(没过期)
 | 
	
		
			
				|  |  | +        UserTenantAlbumRecord record = this.lambdaQuery()
 | 
	
		
			
				|  |  | +                .eq(UserTenantAlbumRecord::getUserId, userId)
 | 
	
		
			
				|  |  | +                .eq(UserTenantAlbumRecord::getEfficientFlag, true)
 | 
	
		
			
				|  |  | +                .eq(albumId != null, UserTenantAlbumRecord::getTenantAlbumId, albumId)
 | 
	
		
			
				|  |  | +                .orderByAsc(UserTenantAlbumRecord::getEndTime)
 | 
	
		
			
				|  |  | +                .orderByAsc(UserTenantAlbumRecord::getId)
 | 
	
		
			
				|  |  | +                .last("limit 1")
 | 
	
		
			
				|  |  | +                .one();
 | 
	
		
			
				|  |  | +        UserTenantAlbumRecordWrapper.LastUserTenantAlbumRecord lastUserTenantAlbumRecord = new UserTenantAlbumRecordWrapper.LastUserTenantAlbumRecord();
 | 
	
		
			
				|  |  | +        Long tenantAlbumId = null;
 | 
	
		
			
				|  |  | +        Date endTime = null;
 | 
	
		
			
				|  |  | +        if (record != null) {
 | 
	
		
			
				|  |  | +            tenantAlbumId = record.getTenantAlbumId();
 | 
	
		
			
				|  |  | +            endTime = record.getEndTime();
 | 
	
		
			
				|  |  | +        }else {
 | 
	
		
			
				|  |  | +            //获取最近一条记录已过期的记录
 | 
	
		
			
				|  |  | +            record = this.lambdaQuery()
 | 
	
		
			
				|  |  | +                    .eq(UserTenantAlbumRecord::getUserId, userId)
 | 
	
		
			
				|  |  | +                    .eq(UserTenantAlbumRecord::getEfficientFlag, false)
 | 
	
		
			
				|  |  | +                    .eq(albumId != null, UserTenantAlbumRecord::getTenantAlbumId, albumId)
 | 
	
		
			
				|  |  | +                    .orderByDesc(UserTenantAlbumRecord::getEndTime)
 | 
	
		
			
				|  |  | +                    .orderByAsc(UserTenantAlbumRecord::getId)
 | 
	
		
			
				|  |  | +                    .last("limit 1")
 | 
	
		
			
				|  |  | +                    .one();
 | 
	
		
			
				|  |  | +            if (record != null) {
 | 
	
		
			
				|  |  | +                tenantAlbumId = record.getTenantAlbumId();
 | 
	
		
			
				|  |  | +                endTime = record.getEndTime();
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        if (tenantAlbumId != null){
 | 
	
		
			
				|  |  | +            TenantAlbum tenantAlbum = tenantAlbumService.getById(tenantAlbumId);
 | 
	
		
			
				|  |  | +            lastUserTenantAlbumRecord.setTenantAlbumName(tenantAlbum.getName());
 | 
	
		
			
				|  |  | +            lastUserTenantAlbumRecord.setEndTime(endTime);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        return lastUserTenantAlbumRecord;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      private void sendVipDeductionMessage(Long userId, Integer num,PeriodEnum period,String reason,String tenantAlbumName) {
 | 
	
		
			
				|  |  |          // 添加VIP时长短信
 |