Browse Source

Merge branch 'feature/0721-tenant' into develop

# Conflicts:
#	cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/StudentServiceImpl.java
yuanliang 1 year ago
parent
commit
bb8e7accf4

+ 19 - 15
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/StudentServiceImpl.java

@@ -17,18 +17,12 @@ import com.yonge.cooleshow.biz.dal.dao.TeacherDao;
 import com.yonge.cooleshow.biz.dal.dao.UserBindingTeacherDao;
 import com.yonge.cooleshow.biz.dal.dto.search.QueryMyFollowSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentSearch;
-import com.yonge.cooleshow.biz.dal.entity.ImGroupMember;
-import com.yonge.cooleshow.biz.dal.entity.Student;
-import com.yonge.cooleshow.biz.dal.entity.StudentTotal;
-import com.yonge.cooleshow.biz.dal.entity.Subject;
-import com.yonge.cooleshow.biz.dal.entity.Teacher;
-import com.yonge.cooleshow.biz.dal.entity.TenantAlbumPurchase;
-import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
-import com.yonge.cooleshow.biz.dal.entity.UserBindingTeacher;
-import com.yonge.cooleshow.biz.dal.entity.UserTenantAlbumRecord;
+import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.mapper.SysUserMapper;
+import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumPurchaseMapper;
+import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumRefMapper;
 import com.yonge.cooleshow.biz.dal.service.ImGroupMemberService;
 import com.yonge.cooleshow.biz.dal.service.ImGroupService;
 import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
@@ -120,7 +114,10 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
     private SysConfigService sysConfigService;
 
     @Autowired
-    private TenantAlbumPurchaseMapper tenantAlbumPurchaseMapper;
+    private TenantAlbumRefMapper tenantAlbumRefMapper;
+
+    @Autowired
+    private TenantAlbumMapper tenantAlbumMapper;
 
     @Autowired
     private EmployeeDao employeeDao;
@@ -191,11 +188,18 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
         TenantInfo tenantInfo = tenantInfoService.detail(detail.getTenantId());
         if (tenantInfo != null) {
             studentHomeVo.setTenantName(tenantInfo.getName());
-            QueryWrapper<TenantAlbumPurchase> queryWrapper = new QueryWrapper<>();
-            queryWrapper.lambda().eq(TenantAlbumPurchase::getTenantId, detail.getTenantId());
-            Integer count = tenantAlbumPurchaseMapper.selectCount(queryWrapper);
-            if (count > 0) {
-                studentHomeVo.setTenantAlbumStatus(1);
+            QueryWrapper<TenantAlbumRef> queryWrapper = new QueryWrapper<>();
+            queryWrapper.lambda().eq(TenantAlbumRef::getTenantId, detail.getTenantId());
+            List<TenantAlbumRef> albumRefs = tenantAlbumRefMapper.selectList(queryWrapper);
+            if (!albumRefs.isEmpty()) {
+                List<Long> albIds = albumRefs.stream().map(TenantAlbumRef::getTenantAlbumId).distinct().collect(Collectors.toList());
+                QueryWrapper<TenantAlbum> query = new QueryWrapper<>();
+                query.lambda().in(TenantAlbum::getId, albIds)
+                        .eq(TenantAlbum::getStatus,true);
+                Integer count = tenantAlbumMapper.selectCount(query);
+                if (count > 0) {
+                    studentHomeVo.setTenantAlbumStatus(1);
+                }
             }
             UserTenantAlbumRecord record =
                     userTenantAlbumRecordService.getNewestByTenantIdAndUserId(tenantInfo.getId(), detail.getUserId(),

+ 3 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantActivationCodeWrapper.java

@@ -58,6 +58,9 @@ public class TenantActivationCodeWrapper {
         @ApiModelProperty("激活手机号码")
         private String activationPhone;
 
+        @ApiModelProperty("激活时间计算到月 yyyy-MM")
+        private String activationTime;
+
         @ApiModelProperty("激活开始")
         private Date activationStartTime;
 

+ 18 - 0
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TenantActivationCodeController.java

@@ -35,6 +35,7 @@ import com.yonge.toolset.utils.easyexcel.ExcelUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.joda.time.DateTime;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -51,6 +52,10 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.servlet.http.HttpServletResponse;
 import java.io.File;
 import java.text.MessageFormat;
+import java.text.ParsePosition;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
 import java.util.List;
 
 
@@ -94,6 +99,19 @@ public class TenantActivationCodeController extends BaseController {
         TenantInfo tenantInfo = getTenantInfo();
         query.setTenantId(tenantInfo.getId());
         // 查询数据
+        String activationTime = query.getActivationTime();
+        if (StringUtils.isNotEmpty(activationTime)) {
+            Date parse = new SimpleDateFormat("yyyy-MM").parse(activationTime, new ParsePosition(0));
+            query.setActivationStartTime(parse);
+            Calendar instance = Calendar.getInstance();
+            instance.setTime(parse);
+            instance.add(Calendar.MONTH, 1);
+            instance.add(Calendar.DATE, -1);
+            instance.set(Calendar.HOUR_OF_DAY, 23);
+            instance.set(Calendar.MINUTE, 59);
+            instance.set(Calendar.MILLISECOND, 59);
+            query.setActivationEndTime(parse);
+        }
         IPage<TenantActivationCodeWrapper.TenantActivationCode> pages =
                 tenantActivationCodeService.selectPage(QueryInfo.getPage(query), query);
         PageInfo<TenantActivationCodeWrapper.TenantActivationCode> pageInfo = QueryInfo.pageInfo(pages,