|
@@ -4,21 +4,21 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
import com.ym.mec.biz.dal.dto.DemoGroupApplyDto;
|
|
import com.ym.mec.biz.dal.dto.DemoGroupApplyDto;
|
|
|
|
+import com.ym.mec.biz.dal.dto.TeacherManageDemoGroupListDto;
|
|
import com.ym.mec.biz.dal.dto.VipGroupApplyBaseInfoDto;
|
|
import com.ym.mec.biz.dal.dto.VipGroupApplyBaseInfoDto;
|
|
-import com.ym.mec.biz.dal.entity.ClassGroup;
|
|
|
|
-import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper;
|
|
|
|
-import com.ym.mec.biz.dal.entity.DemoGroupClassGroupMapper;
|
|
|
|
|
|
+import com.ym.mec.biz.dal.entity.*;
|
|
import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
|
|
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
|
|
import com.ym.mec.biz.dal.page.StudentDemoGroupQueryInfo;
|
|
import com.ym.mec.biz.dal.page.StudentDemoGroupQueryInfo;
|
|
|
|
+import com.ym.mec.biz.dal.page.TeacherManageDemoGroupQueryInfo;
|
|
|
|
+import com.ym.mec.common.exception.BizException;
|
|
import com.ym.mec.common.page.PageInfo;
|
|
import com.ym.mec.common.page.PageInfo;
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
-import com.ym.mec.biz.dal.entity.DemoGroup;
|
|
|
|
import com.ym.mec.biz.service.DemoGroupService;
|
|
import com.ym.mec.biz.service.DemoGroupService;
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
@@ -54,21 +54,23 @@ public class DemoGroupServiceImpl extends BaseServiceImpl<Long, DemoGroup> impl
|
|
@Override
|
|
@Override
|
|
public void demoGroupApply(DemoGroupApplyDto demoGroupApplyDto) {
|
|
public void demoGroupApply(DemoGroupApplyDto demoGroupApplyDto) {
|
|
SysUser user = sysUserFeignService.queryUserInfo();
|
|
SysUser user = sysUserFeignService.queryUserInfo();
|
|
|
|
+
|
|
|
|
+ if(null!=demoGroupDao.findDemoGroupByTeacherId(user.getId().longValue())){
|
|
|
|
+ throw new BizException("请勿多次创建试听课!");
|
|
|
|
+ }
|
|
|
|
+
|
|
demoGroupApplyDto.setUserId(user.getId());
|
|
demoGroupApplyDto.setUserId(user.getId());
|
|
demoGroupDao.insert(demoGroupApplyDto);
|
|
demoGroupDao.insert(demoGroupApplyDto);
|
|
- ClassGroup classGroup=new ClassGroup();
|
|
|
|
- classGroup.setName(demoGroupApplyDto.getName());
|
|
|
|
- classGroup.setType(ClassGroupTypeEnum.DEMO);
|
|
|
|
- classGroup.setDelFlag(YesOrNoEnum.NO);
|
|
|
|
- classGroupDao.insert(classGroup);
|
|
|
|
- DemoGroupClassGroupMapper demoGroupClassGroupMapper=new DemoGroupClassGroupMapper();
|
|
|
|
- demoGroupClassGroupMapper.setDemoGroupId(demoGroupApplyDto.getId());
|
|
|
|
- demoGroupClassGroupMapper.setClassGroupId(classGroup.getId());
|
|
|
|
- demoGroupClassGroupMapperDao.insert(demoGroupClassGroupMapper);
|
|
|
|
demoGroupCoursesPlanDao.batchInsertByDates(demoGroupApplyDto.getCourseDates(),demoGroupApplyDto.getId());
|
|
demoGroupCoursesPlanDao.batchInsertByDates(demoGroupApplyDto.getCourseDates(),demoGroupApplyDto.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
+ public DemoGroup getDemoGroupByTeacherId() {
|
|
|
|
+ SysUser user = sysUserFeignService.queryUserInfo();
|
|
|
|
+ return demoGroupDao.findDemoGroupByTeacherId(user.getId().longValue());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
public PageInfo queryStudentDemoGroups(StudentDemoGroupQueryInfo queryInfo) {
|
|
public PageInfo queryStudentDemoGroups(StudentDemoGroupQueryInfo queryInfo) {
|
|
PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
|
|
PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
|
|
Map<String, Object> params = new HashMap<String, Object>();
|
|
Map<String, Object> params = new HashMap<String, Object>();
|
|
@@ -90,14 +92,8 @@ public class DemoGroupServiceImpl extends BaseServiceImpl<Long, DemoGroup> impl
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Override
|
|
@Override
|
|
- public void demoGroupSubscribe(Long demoGroupId) {
|
|
|
|
- SysUser user = sysUserFeignService.queryUserInfo();
|
|
|
|
- ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper();
|
|
|
|
- classGroupStudentMapper.setClassGroupId(demoGroupDao.findClassGroupIDByDemoGroupId(demoGroupId));
|
|
|
|
- classGroupStudentMapper.setUserId(user.getId());
|
|
|
|
- classGroupStudentMapper.setStatus(ClassGroupStudentStatusEnum.NORMAL);
|
|
|
|
- classGroupStudentMapperDao.insert(classGroupStudentMapper);
|
|
|
|
- createCourseScheduleAndUpdateOrganId(demoGroupId);
|
|
|
|
|
|
+ public void demoGroupSubscribe(Long demoGroupId,Long coursePlanId) {
|
|
|
|
+ createCourseScheduleAndUpdateOrganId(demoGroupId,coursePlanId);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -105,16 +101,67 @@ public class DemoGroupServiceImpl extends BaseServiceImpl<Long, DemoGroup> impl
|
|
* @Date: 2019/9/25
|
|
* @Date: 2019/9/25
|
|
* 创建上课计划及跟新所属分部列表
|
|
* 创建上课计划及跟新所属分部列表
|
|
*/
|
|
*/
|
|
- public void createCourseScheduleAndUpdateOrganId(Long demoGroupId){
|
|
|
|
|
|
+ public void createCourseScheduleAndUpdateOrganId(Long demoGroupId,Long coursePlanId){
|
|
DemoGroup demoGroup=demoGroupDao.get(demoGroupId);
|
|
DemoGroup demoGroup=demoGroupDao.get(demoGroupId);
|
|
- if(demoGroupDao.countDemoGroupStudents(demoGroupId)>0){
|
|
|
|
- courseScheduleDao.batchAddCourseSchedules(demoGroupDao.createCourseScheduleByDemoGroup(demoGroup));
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ SysUser user = sysUserFeignService.queryUserInfo();
|
|
|
|
+
|
|
|
|
+ //创建班级
|
|
|
|
+ ClassGroup classGroup=new ClassGroup();
|
|
|
|
+ classGroup.setName(demoGroup.getName());
|
|
|
|
+ classGroup.setType(ClassGroupTypeEnum.DEMO);
|
|
|
|
+ classGroup.setDelFlag(YesOrNoEnum.NO);
|
|
|
|
+ classGroupDao.insert(classGroup);
|
|
|
|
+
|
|
|
|
+ //创建试听课班级映射
|
|
|
|
+ DemoGroupClassGroupMapper demoGroupClassGroupMapper=new DemoGroupClassGroupMapper();
|
|
|
|
+ demoGroupClassGroupMapper.setDemoGroupId(demoGroup.getId());
|
|
|
|
+ demoGroupClassGroupMapper.setClassGroupId(classGroup.getId());
|
|
|
|
+ demoGroupClassGroupMapperDao.insert(demoGroupClassGroupMapper);
|
|
|
|
+
|
|
|
|
+ //创建班级学生映射
|
|
|
|
+ ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper();
|
|
|
|
+ classGroupStudentMapper.setClassGroupId(classGroup.getId());
|
|
|
|
+ classGroupStudentMapper.setUserId(user.getId());
|
|
|
|
+ classGroupStudentMapper.setStatus(ClassGroupStudentStatusEnum.NORMAL);
|
|
|
|
+ classGroupStudentMapperDao.insert(classGroupStudentMapper);
|
|
|
|
+
|
|
|
|
+ //创建课程
|
|
|
|
+ DemoGroupCoursesPlan demoGroupCoursesPlan=demoGroupCoursesPlanDao.get(coursePlanId);
|
|
|
|
+ courseScheduleDao.batchAddCourseSchedules(demoGroupDao.createCourseScheduleByDemoGroup(
|
|
|
|
+ demoGroup,
|
|
|
|
+ demoGroupCoursesPlan.getCoursesStartTime(),
|
|
|
|
+ classGroup.getId().longValue()));
|
|
|
|
+
|
|
|
|
+ //更新所属分部列表
|
|
List<Integer> organIds = demoGroupDao.organIdListByDemoGroupId(demoGroup.getId());
|
|
List<Integer> organIds = demoGroupDao.organIdListByDemoGroupId(demoGroup.getId());
|
|
organIds.add(demoGroupDao.getOrganIdByUserId(demoGroup.getUserId().longValue()));
|
|
organIds.add(demoGroupDao.getOrganIdByUserId(demoGroup.getUserId().longValue()));
|
|
HashSet<Integer> hashSet = new HashSet<>(organIds);
|
|
HashSet<Integer> hashSet = new HashSet<>(organIds);
|
|
String organIdsString = StringUtils.join(hashSet, ",");
|
|
String organIdsString = StringUtils.join(hashSet, ",");
|
|
demoGroup.setOrganIdList(organIdsString);
|
|
demoGroup.setOrganIdList(organIdsString);
|
|
demoGroupDao.update(demoGroup);
|
|
demoGroupDao.update(demoGroup);
|
|
|
|
+
|
|
|
|
+ //删除临时课程计划
|
|
|
|
+ demoGroupCoursesPlanDao.delete(coursePlanId);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public PageInfo findTeacherDemoGroups(TeacherManageDemoGroupQueryInfo queryInfo) {
|
|
|
|
+ PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
|
|
|
|
+ Map<String, Object> params = new HashMap<String, Object>();
|
|
|
|
+ MapUtil.populateMap(params, queryInfo);
|
|
|
|
+
|
|
|
|
+ List dataList = null;
|
|
|
|
+ int count = demoGroupDao.countTeacherDemoGroups(params);
|
|
|
|
+ if (count > 0) {
|
|
|
|
+ pageInfo.setTotal(count);
|
|
|
|
+ params.put("offset", pageInfo.getOffset());
|
|
|
|
+ dataList = demoGroupDao.findTeacherDemoGroups(params);
|
|
|
|
+ }
|
|
|
|
+ if (count == 0) {
|
|
|
|
+ dataList = new ArrayList<>();
|
|
|
|
+ }
|
|
|
|
+ pageInfo.setRows(dataList);
|
|
|
|
+ return pageInfo;
|
|
}
|
|
}
|
|
}
|
|
}
|