Browse Source

Merge branch 'feature/1113-vipCourse' of http://git.dayaedu.com/yonge/cooleshow into develop-new

zouxuan 11 months ago
parent
commit
0adcdfcd66

+ 12 - 2
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/MemberPriceSettingsController.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.enums.EVipType;
 import com.yonge.cooleshow.biz.dal.service.MemberPriceSettingsService;
 import com.yonge.cooleshow.biz.dal.service.SysUserService;
 import com.yonge.cooleshow.biz.dal.vo.MemberPriceSettingsVo;
+import com.yonge.cooleshow.biz.dal.wrapper.ActivityPlayWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.base.page.PageInfo;
@@ -21,6 +22,7 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -52,7 +54,7 @@ public class MemberPriceSettingsController extends BaseController {
 	@GetMapping("/groupList")
 	@ApiOperation(value = "按分类分组")
 	@PreAuthorize("@pcs.hasPermissions('memberPriceSettings/groupList')")
-	public HttpResponseResult<Map<EVipType, List<MemberPriceSettingsVo>>> groupList() {
+	public HttpResponseResult<List<ActivityPlayWrapper.GroupListDto>> groupList() {
 		MemberPriceSettingsSearch query = new MemberPriceSettingsSearch();
 		query.setStatus(true);
 		query.setSearchType("VIP,SVIP,DISCOUNT");
@@ -61,7 +63,15 @@ public class MemberPriceSettingsController extends BaseController {
 		IPage<MemberPriceSettingsVo> pages = memberPriceSettingsService.selectPage(PageUtil.getPage(query), query);
 		List<MemberPriceSettingsVo> records = pages.getRecords();
 		if (CollectionUtils.isNotEmpty(records)) {
-			return succeed(records.stream().collect(Collectors.groupingBy(MemberPriceSettingsVo::getVipType)));
+			List<ActivityPlayWrapper.GroupListDto> groupListDto = new ArrayList<>();
+			Map<EVipType, List<MemberPriceSettingsVo>> collect = records.stream().collect(Collectors.groupingBy(MemberPriceSettingsVo::getVipType));
+			collect.forEach((k, v) -> {
+				ActivityPlayWrapper.GroupListDto dto = new ActivityPlayWrapper.GroupListDto();
+				dto.setType(k.getCode());
+				dto.setMemberList(v);
+				groupListDto.add(dto);
+			});
+			return succeed(groupListDto);
 		}
 		return succeed();
 	}

+ 7 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/ActivityPlanServiceImpl.java

@@ -102,6 +102,9 @@ public class ActivityPlanServiceImpl extends ServiceImpl<ActivityPlanDao, Activi
     @Autowired
     private TeacherService teacherService;
 
+    @Autowired
+    private VipCardRecordService vipCardRecordService;
+
     //保存/更新拓展字段
     private static final Map<ActivityTypeEnum, Consumer<ActivityPlanDto>> saveOrUpdateExpand = new HashMap<>();
     //开始活动(活动刚开始触发)
@@ -331,6 +334,10 @@ public class ActivityPlanServiceImpl extends ServiceImpl<ActivityPlanDao, Activi
             item.setActivityId(activityId);
             if(activityPlan.getActivityType() == ActivityTypeEnum.MEMBER){
                 item.setHideFlag(true);
+                VipCardRecord cardRecord = vipCardRecordService.getById(item.getVipCardId());
+                if(cardRecord != null){
+                    item.setUnit(UnitEnum.valueOf(cardRecord.getType().getCode()));
+                }
             }
         }
 

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseGroupServiceImpl.java

@@ -597,7 +597,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
     public List<CourseTimeEntity> lockCourseToCache(CheckCourseTimeDto dto) {
 
         for (CourseTimeEntity coursePlanDto : dto.getTimeList()) {
-            coursePlanDto.setFreeEndTime(DateUtil.offsetMinute(coursePlanDto.getStartTime(), dto.getCourseFreeMinutes()));
+            coursePlanDto.setFreeEndTime(DateUtil.offsetMinute(coursePlanDto.getEndTime(), dto.getCourseFreeMinutes()));
         }
         // true:趣纠课PRACTICE     false:LIVE直播课
         boolean courseTypeFlag = Lists.newArrayList(CourseScheduleEnum.PRACTICE,CourseScheduleEnum.VIP).contains(CourseScheduleEnum.existCourseType(dto.getCourseType(), "课程类型不正确!"));

+ 4 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java

@@ -607,17 +607,17 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
      *
       */
     private  List<CourseTimeEntity> getPlanTime(List<CourseTimeEntity> timeList, CourseTimeEntity time) {
-        List<CourseTimeEntity> result = new ArrayList<>(timeList);
+        List<CourseTimeEntity> result = new ArrayList<>();
         if (CollectionUtils.isEmpty(timeList)) {
             result.add(time);
             return result;
         }
         for (CourseTimeEntity trainingPlanTimeDetail : timeList) {
             if (time.getStartTime().compareTo(trainingPlanTimeDetail.getStartTime()) < 0) {
-                if (time.getFreeEndTime().compareTo(trainingPlanTimeDetail.getStartTime()) <= 0) {
+                if (time.getEndTime().compareTo(trainingPlanTimeDetail.getStartTime()) <= 0) {
                     result.add(time);
                     return result;
-                } else if (time.getFreeEndTime().compareTo(trainingPlanTimeDetail.getFreeEndTime()) <= 0) {
+                } else if (time.getEndTime().compareTo(trainingPlanTimeDetail.getFreeEndTime()) <= 0) {
                     CourseTimeEntity trainingPlanTimeDetail1 = new CourseTimeEntity();
                     trainingPlanTimeDetail1.setStartTime(time.getStartTime());
                     trainingPlanTimeDetail1.setEndTime(trainingPlanTimeDetail.getStartTime());
@@ -631,7 +631,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
                     time.setStartTime(trainingPlanTimeDetail.getEndTime());
                 }
             } else if (time.getStartTime().compareTo(trainingPlanTimeDetail.getFreeEndTime()) <= 0) {
-                if (time.getFreeEndTime().compareTo(trainingPlanTimeDetail.getFreeEndTime()) > 0) {
+                if (time.getEndTime().compareTo(trainingPlanTimeDetail.getFreeEndTime()) > 0) {
                     time.setStartTime(trainingPlanTimeDetail.getFreeEndTime());
                 } else {
                     return result;

+ 32 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/ActivityPlayWrapper.java

@@ -0,0 +1,32 @@
+package com.yonge.cooleshow.biz.dal.wrapper;
+
+import com.yonge.cooleshow.biz.dal.vo.MemberPriceSettingsVo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ * 曲谱表
+ * 2022-12-07 10:16:58
+ */
+@ApiModel(value = "MusicSheetWrapper对象", description = "曲谱表查询对象")
+public class ActivityPlayWrapper {
+
+    @Data
+    @Builder
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupListDto{
+        @ApiModelProperty("分类")
+        private String type;
+
+        @ApiModelProperty("会员列表")
+        private List<MemberPriceSettingsVo> memberList;
+	}
+
+}