|
@@ -12,35 +12,102 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
-import com.yonge.cooleshow.biz.dal.dao.*;
|
|
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.CourseScheduleDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.CourseScheduleRecordDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.CourseScheduleRepliedDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.CourseScheduleStudentPaymentDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.HolidaysFestivalsDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.PianoRoomTimeDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.TeacherFreeTimeDao;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.UserBindingTeacherDao;
|
|
import com.yonge.cooleshow.biz.dal.dto.PracticeScheduleDto;
|
|
import com.yonge.cooleshow.biz.dal.dto.PracticeScheduleDto;
|
|
import com.yonge.cooleshow.biz.dal.dto.UserAccountRecordDto;
|
|
import com.yonge.cooleshow.biz.dal.dto.UserAccountRecordDto;
|
|
import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
|
|
import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.HomeworkSearch;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.HomeworkSearch;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.MyCourseSearch;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.MyCourseSearch;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.PracticeTeacherSearch;
|
|
import com.yonge.cooleshow.biz.dal.dto.search.PracticeTeacherSearch;
|
|
-import com.yonge.cooleshow.biz.dal.entity.*;
|
|
|
|
-import com.yonge.cooleshow.biz.dal.enums.*;
|
|
|
|
-import com.yonge.cooleshow.biz.dal.service.*;
|
|
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseCalendarEntity;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseGroup;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseSchedule;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseScheduleDate;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseScheduleRecord;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseScheduleStudentPayment;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseScheduleTeacherSalary;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.CourseTimeEntity;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.HolidaysFestivals;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.PianoRoomTime;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.PlatformCashAccountRecord;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Student;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.TeacherFreeTime;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.TeacherSubjectPrice;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.UserBindingTeacher;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.UserOrderDetail;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.AccountBizTypeEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.CourseGroupEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.CourseScheduleEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.RoomTypeEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.TeacherSalaryEnum;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.CourseGroupService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.CourseScheduleService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.CourseScheduleStudentPaymentService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.CourseScheduleTeacherSalaryService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.HolidaysFestivalsService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.ImGroupService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.LiveRoomService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.PlatformCashAccountRecordService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.RedisCacheService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.StudentService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SysConfigService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SysMessageService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherFreeTimeService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.UserAccountRecordService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.UserAccountService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.service.UserOrderService;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.support.WrapperUtil;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.ArrangeCourseVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CountVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseAdjustVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseCompleteVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseScheduleRecordVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseScheduleStudentPaymentVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseScheduleStudentVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseStudent;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.CourseStudentVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.DateChangeVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.DateVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.MyCourseVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.PianoClassVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.PianoRoomTimeVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.PracticeTeacherVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.StudentHomePage;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.TeacherLiveCourseInfoVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.TodayNotRepliedAndNotDecorateHomeworkVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
|
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.res.OrderCreateRes;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.course.CourseScheduleWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.course.CourseScheduleWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.liveroom.LiveRoomWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.liveroom.LiveRoomWrapper;
|
|
-import com.yonge.cooleshow.common.enums.PostStatusEnum;
|
|
|
|
-import com.yonge.cooleshow.common.enums.YesOrNoEnum;
|
|
|
|
-import com.yonge.toolset.payment.util.DistributedLock;
|
|
|
|
-import com.yonge.toolset.mybatis.support.PageUtil;
|
|
|
|
-import com.yonge.cooleshow.biz.dal.support.WrapperUtil;
|
|
|
|
-import com.yonge.cooleshow.biz.dal.vo.*;
|
|
|
|
-import com.yonge.cooleshow.biz.dal.vo.res.OrderCreateRes;
|
|
|
|
import com.yonge.cooleshow.common.constant.SysConfigConstant;
|
|
import com.yonge.cooleshow.common.constant.SysConfigConstant;
|
|
import com.yonge.cooleshow.common.entity.HttpResponseResult;
|
|
import com.yonge.cooleshow.common.entity.HttpResponseResult;
|
|
import com.yonge.cooleshow.common.enums.CacheNameEnum;
|
|
import com.yonge.cooleshow.common.enums.CacheNameEnum;
|
|
|
|
+import com.yonge.cooleshow.common.enums.PostStatusEnum;
|
|
|
|
+import com.yonge.cooleshow.common.enums.YesOrNoEnum;
|
|
import com.yonge.toolset.base.exception.BizException;
|
|
import com.yonge.toolset.base.exception.BizException;
|
|
import com.yonge.toolset.base.page.PageInfo;
|
|
import com.yonge.toolset.base.page.PageInfo;
|
|
|
|
+import com.yonge.toolset.mybatis.support.PageUtil;
|
|
|
|
+import com.yonge.toolset.payment.util.DistributedLock;
|
|
import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
|
|
import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
|
|
import com.yonge.toolset.utils.date.DateUtil;
|
|
import com.yonge.toolset.utils.date.DateUtil;
|
|
import com.yonge.toolset.utils.obj.ObjectUtil;
|
|
import com.yonge.toolset.utils.obj.ObjectUtil;
|
|
-
|
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.redisson.api.RLock;
|
|
import org.redisson.api.RLock;
|
|
@@ -54,7 +121,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.math.RoundingMode;
|
|
import java.math.RoundingMode;
|
|
-import java.text.MessageFormat;
|
|
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.time.Instant;
|
|
import java.time.Instant;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
@@ -63,7 +129,19 @@ import java.time.ZoneId;
|
|
import java.time.format.DateTimeFormatter;
|
|
import java.time.format.DateTimeFormatter;
|
|
import java.time.temporal.ChronoUnit;
|
|
import java.time.temporal.ChronoUnit;
|
|
import java.time.temporal.TemporalAdjusters;
|
|
import java.time.temporal.TemporalAdjusters;
|
|
-import java.util.*;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Arrays;
|
|
|
|
+import java.util.Collection;
|
|
|
|
+import java.util.Collections;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.HashSet;
|
|
|
|
+import java.util.Iterator;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.Objects;
|
|
|
|
+import java.util.Optional;
|
|
|
|
+import java.util.Set;
|
|
import java.util.concurrent.TimeUnit;
|
|
import java.util.concurrent.TimeUnit;
|
|
import java.util.function.BiConsumer;
|
|
import java.util.function.BiConsumer;
|
|
import java.util.function.BiFunction;
|
|
import java.util.function.BiFunction;
|
|
@@ -535,10 +613,21 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
|
|
int weekNum = firstDay.getDayOfWeek().getValue();
|
|
int weekNum = firstDay.getDayOfWeek().getValue();
|
|
JSONArray jsonArray = teacherPracticeTime.get(weekNum);
|
|
JSONArray jsonArray = teacherPracticeTime.get(weekNum);
|
|
if (Objects.nonNull(jsonArray)) {
|
|
if (Objects.nonNull(jsonArray)) {
|
|
- List<CourseTimeEntity> timeEntities = jsonArray.stream()
|
|
|
|
|
|
+
|
|
|
|
+ List<CourseTimeEntity> entities = Lists.newArrayList();
|
|
|
|
+ for (Object object : jsonArray) {
|
|
|
|
+ if (object instanceof JSONObject) {
|
|
|
|
+ entities.add(getCourseTimeEntity(entity, (JSONObject) object));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ List<CourseTimeEntity> timeEntities = entities.stream()
|
|
|
|
+ .filter(x -> checkTime(x, star, end))
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ /*List<CourseTimeEntity> timeEntities = jsonArray.stream()
|
|
.map(t -> getCourseTimeEntity(entity, (JSONObject) t))
|
|
.map(t -> getCourseTimeEntity(entity, (JSONObject) t))
|
|
.filter(f -> checkTime(f, star, end))
|
|
.filter(f -> checkTime(f, star, end))
|
|
- .collect(Collectors.toList());
|
|
|
|
|
|
+ .collect(Collectors.toList());*/
|
|
entity.setCourseTime(timeEntities);
|
|
entity.setCourseTime(timeEntities);
|
|
}
|
|
}
|
|
list.add(entity);
|
|
list.add(entity);
|