|
@@ -1,17 +1,22 @@
|
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.StudentDao;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.*;
|
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumPurchaseMapper;
|
|
|
import com.yonge.cooleshow.biz.dal.service.*;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.StudentVo;
|
|
|
import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumWrapper;
|
|
|
+import com.yonge.cooleshow.common.enums.YesOrNoEnum;
|
|
|
import com.yonge.toolset.base.exception.BizException;
|
|
|
import com.yonge.toolset.base.util.StringUtil;
|
|
|
import com.yonge.toolset.mybatis.support.PageUtil;
|
|
@@ -62,6 +67,15 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
|
|
|
@Autowired
|
|
|
private UserTenantAlbumRecordMapper userTenantAlbumRecordMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private StudentDao studentDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private TenantAlbumPurchaseMapper tenantAlbumPurchaseMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private UserTenantAlbumRecordService userTenantAlbumRecordService;
|
|
|
+
|
|
|
/**
|
|
|
* 查询详情
|
|
|
* @param id 详情ID
|
|
@@ -72,7 +86,11 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
|
|
|
|
|
|
return baseMapper.selectById(id);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ public StudentVo detailStudent(Long userId) {
|
|
|
+ return studentDao.detail(userId);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 分页查询
|
|
|
* @param page IPage<UserTenantAlbumRecord>
|
|
@@ -221,6 +239,8 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
|
|
|
@Override
|
|
|
public TenantAlbumWrapper.TenantAlbum detailAlbum(String albumId) {
|
|
|
|
|
|
+ TenantAlbumWrapper.TenantAlbum album = new TenantAlbumWrapper.TenantAlbum();
|
|
|
+
|
|
|
//如果没传专辑id 则查询对应机构的专辑详情
|
|
|
SysUser sysUser = sysUserFeignService.queryUserInfo();
|
|
|
if (sysUser == null) {
|
|
@@ -249,7 +269,37 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
|
|
|
tenantAlbumId = Long.parseLong(albumId);
|
|
|
}
|
|
|
|
|
|
- TenantAlbumWrapper.TenantAlbum album = new TenantAlbumWrapper.TenantAlbum();
|
|
|
+ StudentVo detail = detailStudent(sysUser.getId());
|
|
|
+ // 判断是否是机构学生 机构学生 检测机构专辑购买记录
|
|
|
+ TenantInfo tenantInfo = tenantInfoService.detail(detail.getTenantId());
|
|
|
+ if (tenantInfo != null) {
|
|
|
+ album.setTenantName(tenantInfo.getName());
|
|
|
+ QueryWrapper<TenantAlbumPurchase> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.lambda().eq(TenantAlbumPurchase::getTenantId, detail.getTenantId());
|
|
|
+ Integer count = tenantAlbumPurchaseMapper.selectCount(queryWrapper);
|
|
|
+ if (count > 0) {
|
|
|
+ album.setTenantAlbumStatus(1);
|
|
|
+ }
|
|
|
+ UserTenantAlbumRecord record =
|
|
|
+ userTenantAlbumRecordService.getNewestByTenantIdAndUserId(tenantInfo.getId(), detail.getUserId(),
|
|
|
+ ClientEnum.STUDENT);
|
|
|
+ if (record == null || record.getEndTime().getTime() < System.currentTimeMillis()) {
|
|
|
+ album.setTenantAlbumFlag(YesOrNoEnum.NO);
|
|
|
+ } else {
|
|
|
+ album.setTenantAlbumStatus(2);
|
|
|
+ album.setTenantAlbumFlag(YesOrNoEnum.YES);
|
|
|
+ album.setTenantAlbumStartTime(record.getStartTime());
|
|
|
+ album.setTenantAlbumEndTime(record.getEndTime());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
//查询是否已经购买专辑
|
|
|
Long buyTenantAlbumId = userTenantAlbumRecordMapper.ifBuy(tenantAlbumId,sysUser.getId());
|