|
@@ -16,11 +16,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import com.google.common.collect.Maps;
|
|
|
+import com.ym.mec.biz.dal.dao.*;
|
|
|
import com.ym.mec.biz.dal.dto.*;
|
|
|
import com.ym.mec.biz.dal.dto.VipGroupClassGroupMapper;
|
|
|
import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.dal.enums.*;
|
|
|
import com.ym.mec.biz.dal.mapper.LiveGroupPlusMapper;
|
|
|
+import com.ym.mec.biz.dal.vo.ImLiveBroadcastRoomVo;
|
|
|
import com.ym.mec.biz.dal.wrapper.LiveGroupWrapper;
|
|
|
import com.ym.mec.biz.service.*;
|
|
|
import org.apache.commons.collections.MapUtils;
|
|
@@ -41,33 +43,6 @@ import org.springframework.util.CollectionUtils;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupTeacherMapperDao;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupTeacherSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.EmployeeDao;
|
|
|
-import com.ym.mec.biz.dal.dao.GroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.OrganizationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentApplyRefundsDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentAttendanceDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentPauseInfoDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SubjectDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SysConfigDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SysUserCashAccountDetailDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SysUserCashAccountLogDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherDefaultVipGroupSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupActivityDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupDefaultClassesCycleDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupDefaultClassesUnitPriceDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupStudentCoursePriceDao;
|
|
|
import com.ym.mec.biz.dal.entity.StudentApplyRefunds.StudentApplyRefundsStatus;
|
|
|
import com.ym.mec.biz.dal.page.ActivityUserQueryInfo;
|
|
|
import com.ym.mec.biz.dal.page.StudentVipGroupQueryInfo;
|
|
@@ -223,6 +198,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
@Autowired
|
|
|
private SubjectService subjectService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SysMessageConfigDao sysMessageConfigDao;
|
|
|
+
|
|
|
private static final Logger LOGGER = LoggerFactory.getLogger(VipGroup.class);
|
|
|
|
|
|
@Override
|
|
@@ -437,6 +415,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
classGroupTeacherSalaryDao.update(classGroupTeacherSalary);
|
|
|
}
|
|
|
|
|
|
+ vipGroup.getVipGroupApplyBaseInfo().setName(vipGroup.getLiveBroadcastRoom().getRoomTitle());
|
|
|
//课程信息调整
|
|
|
List<CourseSchedule> courseSchedules = vipGroup.getCourseSchedules();
|
|
|
ClassGroup finalClassGroup = classGroup;
|
|
@@ -576,6 +555,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
}
|
|
|
className.append(StringUtils.join(studentNames, ","));
|
|
|
vipGroupApplyBaseInfoDto.setName(className.toString());
|
|
|
+
|
|
|
+ vipGroupApplyBaseInfoDto.setName(vipGroup.getLiveBroadcastRoom().getRoomTitle());
|
|
|
vipGroupDao.insert(vipGroupApplyBaseInfoDto);
|
|
|
|
|
|
Map<String, BigDecimal> costInfo = Maps.newHashMap();
|
|
@@ -968,7 +949,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
}
|
|
|
|
|
|
VipGroupDefaultClassesUnitPrice vipGroupDefaultClassesUnitPrice = vipGroupDefaultClassesUnitPriceDao.getByVipGroupCategory(vipGroup.getVipGroupApplyBaseInfo().getVipGroupCategoryId(),
|
|
|
- vipGroup.getVipGroupApplyBaseInfo().getOrganId(), vipGroup.getVipGroupApplyBaseInfo().getGroupType());
|
|
|
+ vipGroup.getVipGroupApplyBaseInfo().getOrganId(), vipGroup.getVipGroupApplyBaseInfo().getGroupType(),null);
|
|
|
|
|
|
if (Objects.isNull(vipGroupDefaultClassesUnitPrice)) {
|
|
|
vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
|
|
@@ -2785,7 +2766,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
vipGroup.setStatus(VipGroupStatusEnum.PROGRESS);
|
|
|
classGroup.setDelFlag(0);
|
|
|
VipGroupDefaultClassesUnitPrice vipGroupDefaultClassesUnitPrice = vipGroupDefaultClassesUnitPriceDao.getByVipGroupCategory(vipGroup.getVipGroupCategoryId(),
|
|
|
- vipGroup.getOrganId(), vipGroup.getGroupType());
|
|
|
+ vipGroup.getOrganId(), vipGroup.getGroupType(),null);
|
|
|
//生成课表
|
|
|
List<CourseSchedule> courseSchedules = JSON.parseArray(vipGroup.getCourseSchedulesJson(), CourseSchedule.class);
|
|
|
classGroup.setTotalClassTimes(courseSchedules.size());
|
|
@@ -4526,7 +4507,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
Integer tenantId = vipGroup.getTenantId();
|
|
|
classGroup.setDelFlag(0);
|
|
|
VipGroupDefaultClassesUnitPrice vipGroupDefaultClassesUnitPrice = vipGroupDefaultClassesUnitPriceDao.getByVipGroupCategory(vipGroup.getVipGroupCategoryId(),
|
|
|
- vipGroup.getOrganId(), vipGroup.getGroupType());
|
|
|
+ null, vipGroup.getGroupType(),tenantId);
|
|
|
//生成课表
|
|
|
List<CourseSchedule> courseSchedules = JSON.parseArray(vipGroup.getCourseSchedulesJson(), CourseSchedule.class);
|
|
|
classGroup.setTotalClassTimes(courseSchedules.size());
|
|
@@ -4590,7 +4571,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
} else {
|
|
|
courseScheduleStudentPayment.setExpectPrice(divide);
|
|
|
}
|
|
|
- courseScheduleStudentPayment.setOriginalPrice(TeachModeEnum.ONLINE.equals(courseSchedule.getTeachMode()) ? vipGroupDefaultClassesUnitPrice.getOnlineClassesUnitPrice() : vipGroupDefaultClassesUnitPrice.getOfflineClassesUnitPrice());
|
|
|
+ courseScheduleStudentPayment.setOriginalPrice(vipGroupDefaultClassesUnitPrice.getOfflineClassesUnitPrice());
|
|
|
courseScheduleStudentPayment.setActualPrice(courseScheduleStudentPayment.getExpectPrice());
|
|
|
courseScheduleStudentPayments.add(courseScheduleStudentPayment);
|
|
|
}
|
|
@@ -4954,6 +4935,15 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ SysMessageConfig sysMessageConfig = sysMessageConfigDao.queryByType(MessageTypeEnum.JIGUANG_LIVE_COURSE_START.getCode());
|
|
|
+ String teacherUrl = sysMessageConfig.getUrl();
|
|
|
+ sysMessageConfig = sysMessageConfigDao.queryByType(MessageTypeEnum.JIGUANG_LIVE_COURSE_START_STUDENT.getCode());
|
|
|
+ String studentUrl = sysMessageConfig.getUrl();
|
|
|
+ sysMessageConfig = sysMessageConfigDao.queryByType(MessageTypeEnum.IM_LIVE_COURSE_START_GROUP.getCode());
|
|
|
+ String imUrl = sysMessageConfig.getUrl();
|
|
|
+
|
|
|
+
|
|
|
for (CourseSchedule courseSchedule : courseSchedules) {
|
|
|
|
|
|
// 获取班级名
|
|
@@ -4969,7 +4959,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
userMap.put(actualTeacherId, actualTeacherId.toString());
|
|
|
|
|
|
sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.JIGUANG_LIVE_COURSE_START,
|
|
|
- userMap, null, 0, null, "TEACHER", classGroup.getName());
|
|
|
+ userMap, null, 0,teacherUrl , "TEACHER", classGroup.getName());
|
|
|
}
|
|
|
|
|
|
// 通知学生
|
|
@@ -4981,12 +4971,14 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
});
|
|
|
|
|
|
sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.JIGUANG_LIVE_COURSE_START_STUDENT,
|
|
|
- userMap, null, 0, null, "STUDENT", classGroup.getName());
|
|
|
+ userMap, null, 0, studentUrl, "STUDENT", classGroup.getName());
|
|
|
}
|
|
|
+ ImLiveBroadcastRoomVo imLiveBroadcastRoomVo = imLiveBroadcastRoomService.queryRoomInfo(courseSchedule.getLiveRoomId());
|
|
|
|
|
|
- // im消息 TODO
|
|
|
- sysMessageService.batchSendImGroupMessage(MessageTypeEnum.IM_LIVE_COURSE_START_GROUP, courseSchedule.getActualTeacherId().toString(), "extra",
|
|
|
- new String[]{classGroup.getId().toString()},null);
|
|
|
+ // im消息
|
|
|
+ imUrl = MessageFormatter.arrayFormat(imUrl,courseSchedule.getId(), imLiveBroadcastRoomVo.getSubjectId());
|
|
|
+ sysMessageService.batchSendImGroupMessage(MessageTypeEnum.IM_LIVE_COURSE_START_GROUP, courseSchedule.getActualTeacherId().toString(), imUrl,
|
|
|
+ new String[]{classGroup.getId().toString()},null, classGroup.getName());
|
|
|
|
|
|
}
|
|
|
|