123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- package com.qxgmat.service.inline;
- import com.github.pagehelper.Page;
- import com.nuliji.tools.AbstractService;
- import com.nuliji.tools.exception.ParameterException;
- import com.nuliji.tools.exception.SystemException;
- import com.nuliji.tools.mybatis.Example;
- import com.qxgmat.data.dao.CourseStudentOnlineMapper;
- import com.qxgmat.data.dao.entity.CourseStudentOnline;
- import com.qxgmat.data.dao.entity.CourseTime;
- import com.qxgmat.data.relation.CourseStudentOnlineRelationMapper;
- import com.qxgmat.data.relation.entity.CourseStudentNumberRelation;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.util.Collection;
- import java.util.List;
- import java.util.Map;
- @Service
- public class CourseStudentOnlineService extends AbstractService {
- private static final Logger logger = LoggerFactory.getLogger(CourseStudentOnlineService.class);
- @Resource
- private CourseStudentOnlineMapper courseStudentOnlineMapper;
- @Resource
- private CourseStudentOnlineRelationMapper courseStudentOnlineRelationMapper;
- public Page<CourseStudentOnline> listAdmin(int page, int size, Integer courseId, Integer timeId){
- Example example = new Example(CourseStudentOnline.class);
- if(courseId != null){
- example.and(
- example.createCriteria()
- .andEqualTo("courseId", courseId)
- );
- }
- if(timeId != null){
- example.and(
- example.createCriteria()
- .andEqualTo("timeId", timeId)
- );
- }
- return select(courseStudentOnlineMapper, example, page, size);
- }
- public List<CourseStudentNumberRelation> groupByCourse(Collection ids){
- return courseStudentOnlineRelationMapper.groupByTime(ids);
- }
- public CourseStudentOnline getByUserAndTime(Integer userId, Integer timeId){
- Example example = new Example(CourseStudentOnline.class);
- example.and(
- example.createCriteria()
- .andEqualTo("userId", userId)
- .andEqualTo("timeId", timeId)
- );
- return one(courseStudentOnlineMapper, example);
- }
- public CourseStudentOnline addStudent(CourseStudentOnline course){
- CourseStudentOnline in = getByUserAndTime(course.getUserId(), course.getTimeId());
- if(in != null){
- throw new ParameterException("已添加");
- }
- return add(course);
- }
- public CourseStudentOnline add(CourseStudentOnline course){
- int result = insert(courseStudentOnlineMapper, course);
- course = one(courseStudentOnlineMapper, course.getId());
- if(course == null){
- throw new SystemException("课时添加失败");
- }
- return course;
- }
- public CourseStudentOnline edit(CourseStudentOnline course){
- CourseStudentOnline in = one(courseStudentOnlineMapper, course.getId());
- if(in == null){
- throw new ParameterException("课时不存在");
- }
- int result = update(courseStudentOnlineMapper, course);
- return course;
- }
- public boolean delete(Number id){
- CourseStudentOnline in = one(courseStudentOnlineMapper, id);
- if(in == null){
- throw new ParameterException("课时不存在");
- }
- int result = delete(courseStudentOnlineMapper, id);
- return result > 0;
- }
- public CourseStudentOnline get(Number id){
- CourseStudentOnline in = one(courseStudentOnlineMapper, id);
- if(in == null){
- throw new ParameterException("课时不存在");
- }
- return in;
- }
- public Page<CourseStudentOnline> select(int page, int pageSize){
- return select(courseStudentOnlineMapper, page, pageSize);
- }
- public Page<CourseStudentOnline> select(Integer[] ids){
- return page(()->select(courseStudentOnlineMapper, ids), 1, ids.length);
- }
- public List<CourseStudentOnline> select(Collection ids){
- return select(courseStudentOnlineMapper, ids);
- }
- }
|