Procházet zdrojové kódy

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge před 5 roky
rodič
revize
ecbb1b02e1
36 změnil soubory, kde provedl 819 přidání a 276 odebrání
  1. 32 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java
  2. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/GoodsDao.java
  3. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupSubjectGoodsGroupDao.java
  4. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupSubjectPlanDao.java
  5. 45 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseScheduleDto.java
  6. 46 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupSubjectGoodsAndInfo.java
  7. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java
  8. 14 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/DemoGroupCoursesPlan.java
  9. 12 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Goods.java
  10. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupSubjectGoodsGroup.java
  11. 61 40
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java
  12. 17 6
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentDemoGroupQueryInfo.java
  13. 28 1
      mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java
  14. 10 1
      mec-biz/src/main/java/com/ym/mec/biz/service/GoodsService.java
  15. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupSubjectGoodsGroupService.java
  16. 21 1
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupSubjectPlanService.java
  17. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/service/SubjectService.java
  18. 28 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  19. 6 8
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/DemoGroupServiceImpl.java
  20. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java
  21. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/GoodsServiceImpl.java
  22. 7 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupSubjectGoodsGroupServiceImpl.java
  23. 53 6
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupSubjectPlanServiceImpl.java
  24. 99 99
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java
  25. 87 0
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  26. 7 3
      mec-biz/src/main/resources/config/mybatis/DemoGroupCoursesPlanMapper.xml
  27. 5 4
      mec-biz/src/main/resources/config/mybatis/DemoGroupMapper.xml
  28. 1 1
      mec-biz/src/main/resources/config/mybatis/EmployeeMapper.xml
  29. 3 0
      mec-biz/src/main/resources/config/mybatis/GoodsMapper.xml
  30. 89 90
      mec-biz/src/main/resources/config/mybatis/MusicGroupSubjectGoodsGroupMapper.xml
  31. 6 0
      mec-biz/src/main/resources/config/mybatis/MusicGroupSubjectPlanMapper.xml
  32. 1 1
      mec-student/src/main/java/com/ym/mec/student/config/ResourceServerConfig.java
  33. 25 0
      mec-student/src/main/java/com/ym/mec/student/controller/RegisterController.java
  34. 3 4
      mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseScheduleController.java
  35. 17 4
      mec-student/src/main/java/com/ym/mec/student/controller/StudentDemoGroupController.java
  36. 40 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherCourseScheduleController.java

+ 32 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -39,6 +39,22 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     /**
      * @Author: Joburgess
      * @Date: 2019/9/17
+     * 根据日期获取学生当日排课信息
+     */
+    List<CourseScheduleDto> getStudentCourseSchedulesWithDate(@Param("classDate") Date classDate,
+                                                              @Param("studentId") Long studentId);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/17
+     * 根据日期获取老师当日排课信息
+     */
+    List<CourseScheduleDto> getTeacherCourseSchedulesWithDate(@Param("classDate") Date classDate,
+                                                              @Param("teacherId") Long teacherId);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/17
      * 根据乐团ID删除排课
      */
     int deleteCourseSchedulesByMusicGroupID(@Param("musicGroupID") Long musicGroupID);
@@ -53,6 +69,22 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 
     /**
      * @Author: Joburgess
+     * @Date: 2019/9/27
+     * 获取学生有课日期
+     */
+    List<Date> getStudentCourseScheduleDate(@Param("studentId") Long studentId,
+                                            @Param("month") Date month);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/27
+     * 获取教师有课日期
+     */
+    List<Date> getTeacherCourseScheduleDate(@Param("teacherId") Long teacherId,
+                                            @Param("month") Date month);
+
+    /**
+     * @Author: Joburgess
      * @Date: 2019/9/23
      * 统计教师在一天内有时间重复的课数
      */

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/GoodsDao.java

@@ -11,6 +11,7 @@ public interface GoodsDao extends BaseDAO<Integer, Goods> {
 
     /**
      * 通过科目编号查询商品(教材、辅件)列表
+     *
      * @param subjectId
      * @return
      */
@@ -18,8 +19,18 @@ public interface GoodsDao extends BaseDAO<Integer, Goods> {
 
     /**
      * 根据商品分类查找商品数量
+     *
      * @param goodsCategoryId
      * @return
      */
     int findGoodsNumByCategoryId(@Param("goodsCategoryId") Integer goodsCategoryId);
+
+    /**
+     * 根据ids获取商品信息
+     *
+     * @param ids
+     * @return
+     */
+    List<Goods> findGoodsByIds(@Param("ids") String ids);
+
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupSubjectGoodsGroupDao.java

@@ -22,5 +22,5 @@ public interface MusicGroupSubjectGoodsGroupDao extends BaseDAO<Long, MusicGroup
      * @param subId
      * @return
      */
-    List<MusicGroupSubjectGoodsGroup> findGoodsGroup(@Param("musicGroupId") Integer musicGroupId, @Param("subId") String subId);
+    List<MusicGroupSubjectGoodsGroup> findGoodsGroup(@Param("musicGroupId") Integer musicGroupId, @Param("subId") Integer subId);
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupSubjectPlanDao.java

@@ -15,4 +15,14 @@ public interface MusicGroupSubjectPlanDao extends BaseDAO<Integer, MusicGroupSub
      * @return
      */
     List<MusicGroupSubjectPlan> getMusicSubjectClassPlan(@Param("musicGroupId") int musicGroupId);
+
+
+    /**
+     * 获取乐团声部报名缴费商品信息
+     *
+     * @param musicGroupId
+     * @param subjectId
+     * @return
+     */
+    MusicGroupSubjectPlan getMusicOneSubjectClassPlan(@Param("musicGroupId") int musicGroupId, @Param("subjectId") int subjectId);
 }

+ 45 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseScheduleDto.java

@@ -1,9 +1,9 @@
 package com.ym.mec.biz.dal.dto;
 
-import io.swagger.annotations.ApiModelProperty;
-
 import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
+import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
+import io.swagger.annotations.ApiModelProperty;
 
 /**
  * @Author Joburgess
@@ -11,14 +11,57 @@ import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
  */
 public class CourseScheduleDto extends CourseSchedule {
 
+    @ApiModelProperty(value = "教师名称",required = false)
+    private String teacherName;
+
     /** 班级名称 */
     @ApiModelProperty(value = "班级名称",required = false)
     private String classGroupName;
 
+    @ApiModelProperty(value = "学校名称",required = false)
+    private String schoolName;
+
+    @ApiModelProperty(value = "班级编号,房间号",required = false)
+    private String sealClassId;
+
+    public String getSealClassId() {
+        return sealClassId;
+    }
+
+    public void setSealClassId(String sealClassId) {
+        this.sealClassId = sealClassId;
+    }
+
+    private StudentAttendanceStatusEnum attendanceStatus;
+
+    public String getSchoolName() {
+        return schoolName;
+    }
+
+    public void setSchoolName(String schoolName) {
+        this.schoolName = schoolName;
+    }
+
+    public StudentAttendanceStatusEnum getAttendanceStatus() {
+        return attendanceStatus;
+    }
+
+    public void setAttendanceStatus(StudentAttendanceStatusEnum attendanceStatus) {
+        this.attendanceStatus = attendanceStatus;
+    }
+
     /** 班级类型(普通班级、合奏班级) */
     @ApiModelProperty(value = "班级类型(普通班级、合奏班级、提高课班级、VIP班级)",required = false)
     private ClassGroupTypeEnum type;
 
+    public String getTeacherName() {
+        return teacherName;
+    }
+
+    public void setTeacherName(String teacherName) {
+        this.teacherName = teacherName;
+    }
+
     public String getClassGroupName() {
         return classGroupName;
     }

+ 46 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupSubjectGoodsAndInfo.java

@@ -0,0 +1,46 @@
+package com.ym.mec.biz.dal.dto;
+
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 乐团报名缴费相关信息
+ */
+public class MusicGroupSubjectGoodsAndInfo {
+
+    //课程信息
+    private Map CourseScheduleInfo;
+
+    //乐团声部商品信息
+    private List<MusicGroupSubjectGoodsGroup> musicGroupSubjectGoodsGroupList;
+
+    //乐团计划及收费信息
+    private MusicGroupSubjectPlan musicGroupSubjectPlan;
+
+    public Map getCourseScheduleInfo() {
+        return CourseScheduleInfo;
+    }
+
+    public void setCourseScheduleInfo(Map courseScheduleInfo) {
+        CourseScheduleInfo = courseScheduleInfo;
+    }
+
+    public List<MusicGroupSubjectGoodsGroup> getMusicGroupSubjectGoodsGroupList() {
+        return musicGroupSubjectGoodsGroupList;
+    }
+
+    public void setMusicGroupSubjectGoodsGroupList(List<MusicGroupSubjectGoodsGroup> musicGroupSubjectGoodsGroupList) {
+        this.musicGroupSubjectGoodsGroupList = musicGroupSubjectGoodsGroupList;
+    }
+
+    public MusicGroupSubjectPlan getMusicGroupSubjectPlan() {
+        return musicGroupSubjectPlan;
+    }
+
+    public void setMusicGroupSubjectPlan(MusicGroupSubjectPlan musicGroupSubjectPlan) {
+        this.musicGroupSubjectPlan = musicGroupSubjectPlan;
+    }
+}

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.entity;
 
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.ym.mec.biz.dal.enums.CourseStatusEnum;
 import com.ym.mec.biz.dal.enums.TeachModeEnum;
 
@@ -10,6 +11,7 @@ import org.apache.commons.lang3.builder.ToStringBuilder;
 /**
  * 对应数据库表(course_schedule):
  */
+@JsonInclude(JsonInclude.Include.NON_NULL)
 public class CourseSchedule {
 
 	/**  */

+ 14 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/DemoGroupCoursesPlan.java

@@ -1,5 +1,7 @@
 package com.ym.mec.biz.dal.entity;
 
+import com.ym.mec.biz.dal.enums.YesOrNoEnum;
+import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 /**
@@ -18,7 +20,18 @@ public class DemoGroupCoursesPlan {
 	
 	/**  */
 	private java.util.Date createTime;
-	
+
+	@ApiModelProperty(value = "预约状态",required = false)
+	private YesOrNoEnum status;
+
+	public YesOrNoEnum getStatus() {
+		return status;
+	}
+
+	public void setStatus(YesOrNoEnum status) {
+		this.status = status;
+	}
+
 	public void setId(Long id){
 		this.id = id;
 	}

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Goods.java

@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import java.math.BigDecimal;
+import java.util.List;
 
 /**
  * 对应数据库表(goods):
@@ -92,6 +93,9 @@ public class Goods {
 	/** 发布时间 */
 	@ApiModelProperty(value = "附件商品列表编号(用逗号分开)",required = false)
 	private String complementGoodsIdList;
+
+	/** 辅件列表 */
+	private List<Goods> goodsList;
 	
 	/** 创建时间 */
 	private java.util.Date createTime;
@@ -274,6 +278,14 @@ public class Goods {
 	public java.util.Date getUpdateTime(){
 		return this.updateTime;
 	}
+
+	public List<Goods> getGoodsList() {
+		return goodsList;
+	}
+
+	public void setGoodsList(List<Goods> goodsList) {
+		this.goodsList = goodsList;
+	}
 			
 	@Override
 	public String toString() {

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupSubjectGoodsGroup.java

@@ -39,6 +39,8 @@ public class MusicGroupSubjectGoodsGroup {
 
 	@ApiModelProperty(value = "商品名称列表",required = false)
 	private List<String> goodsName;
+
+	private List<Goods> goodsList;
 	
 	/**  */
 	private java.util.Date createTime;
@@ -135,4 +137,11 @@ public class MusicGroupSubjectGoodsGroup {
 		return ToStringBuilder.reflectionToString(this);
 	}
 
+	public List<Goods> getGoodsList() {
+		return goodsList;
+	}
+
+	public void setGoodsList(List<Goods> goodsList) {
+		this.goodsList = goodsList;
+	}
 }

+ 61 - 40
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java

@@ -14,26 +14,32 @@ public class StudentRegistration {
 
 	/**  */
 	private Long id;
-	
+
 	/**  */
 	@ApiModelProperty(value = "学生编号",required = false)
 	private Integer userId;
 
 	@ApiModelProperty(value = "学生姓名",required = true)
 	private String name;
-	
+
+	@ApiModelProperty(value = "性别(0,女  1,男",required = true)
+	private String gender;
+
+	@ApiModelProperty(value = "身份证号",required = true)
+	private String idCardNo;
+
 	/** 所属乐团(对应 music_group 表id) */
 	@ApiModelProperty(value = "所属乐团(对应 music_group 表id)",required = false)
 	private Integer musicGroupId;
-	
+
 	/** 当前所在年级 */
 	@ApiModelProperty(value = "当前所在年级",required = false)
 	private String currentGrade;
-	
+
 	/** 当前所在班级 */
 	@ApiModelProperty(value = "当前所在班级",required = false)
 	private String currentClass;
-	
+
 	/** 报名科目 */
 	@ApiModelProperty(value = "报名科目",required = true)
 	private Integer subjectId;
@@ -41,25 +47,25 @@ public class StudentRegistration {
 	/** 报名科目 */
 	@ApiModelProperty(value = "实际科目",hidden = true)
 	private Integer actualSubjectId;
-	
+
 	/** 是否允许调剂 */
 	@ApiModelProperty(value = "是否允许调剂",required = false)
 	private YesOrNoEnum isAllowAdjust;
-	
+
 	/** 器材购买方式(团购、自备) */
 	@ApiModelProperty(value = "器材购买方式(团购、自备)",required = false)
 	private KitPurchaseMethodEnum kitPurchaseMethod;
-	
+
 	/**  */
 	@ApiModelProperty(value = "备注",required = false)
 	private String remark;
-	
+
 	/**  */
 	private java.util.Date createTime;
-	
+
 	/**  */
 	private java.util.Date updateTime;
-	
+
 	/** 家长姓名 */
 	@ApiModelProperty(value = "家长姓名",required = false)
 	private String parentsName;
@@ -67,22 +73,22 @@ public class StudentRegistration {
 	/** 家长姓名 */
 	@ApiModelProperty(value = "家长电话",required = false)
 	private String parentsPhone;
-	
+
 	/** 家长单位 */
 	@ApiModelProperty(value = "家长单位",required = false)
 	private String parentsCompany;
-	
+
 	/** 缴费状态(1-已缴费 0-未交费) */
 	@ApiModelProperty(value = "缴费状态(1-已缴费 0-未交费)",required = false)
 	private YesOrNoEnum paymentStatus;
 
 	@ApiModelProperty(value = "班级id",hidden = true)
 	private Integer ClassGroupId;
-	
+
 	/** 最后缴费日期 */
 	@ApiModelProperty(value = "最后缴费日期",required = false)
 	private java.util.Date lastPaymentDate;
-	
+
 	/** 预计下次缴费日期 */
 	@ApiModelProperty(value = "预计下次缴费日期",required = false)
 	private java.util.Date nextPaymentDate;
@@ -106,47 +112,47 @@ public class StudentRegistration {
 	public void setId(Long id){
 		this.id = id;
 	}
-	
+
 	public Long getId(){
 		return this.id;
 	}
-			
+
 	public void setUserId(Integer userId){
 		this.userId = userId;
 	}
-	
+
 	public Integer getUserId(){
 		return this.userId;
 	}
-			
+
 	public void setMusicGroupId(Integer musicGroupId){
 		this.musicGroupId = musicGroupId;
 	}
-	
+
 	public Integer getMusicGroupId(){
 		return this.musicGroupId;
 	}
-			
+
 	public void setCurrentGrade(String currentGrade){
 		this.currentGrade = currentGrade;
 	}
-	
+
 	public String getCurrentGrade(){
 		return this.currentGrade;
 	}
-			
+
 	public void setCurrentClass(String currentClass){
 		this.currentClass = currentClass;
 	}
-	
+
 	public String getCurrentClass(){
 		return this.currentClass;
 	}
-			
+
 	public void setSubjectId(Integer subjectId){
 		this.subjectId = subjectId;
 	}
-	
+
 	public Integer getSubjectId(){
 		return this.subjectId;
 	}
@@ -174,39 +180,39 @@ public class StudentRegistration {
 	public void setRemark(String remark){
 		this.remark = remark;
 	}
-	
+
 	public String getRemark(){
 		return this.remark;
 	}
-			
+
 	public void setCreateTime(java.util.Date createTime){
 		this.createTime = createTime;
 	}
-	
+
 	public java.util.Date getCreateTime(){
 		return this.createTime;
 	}
-			
+
 	public void setUpdateTime(java.util.Date updateTime){
 		this.updateTime = updateTime;
 	}
-	
+
 	public java.util.Date getUpdateTime(){
 		return this.updateTime;
 	}
-			
+
 	public void setParentsName(String parentsName){
 		this.parentsName = parentsName;
 	}
-	
+
 	public String getParentsName(){
 		return this.parentsName;
 	}
-			
+
 	public void setParentsCompany(String parentsCompany){
 		this.parentsCompany = parentsCompany;
 	}
-	
+
 	public String getParentsCompany(){
 		return this.parentsCompany;
 	}
@@ -218,15 +224,15 @@ public class StudentRegistration {
 	public void setLastPaymentDate(java.util.Date lastPaymentDate){
 		this.lastPaymentDate = lastPaymentDate;
 	}
-	
+
 	public java.util.Date getLastPaymentDate(){
 		return this.lastPaymentDate;
 	}
-			
+
 	public void setNextPaymentDate(java.util.Date nextPaymentDate){
 		this.nextPaymentDate = nextPaymentDate;
 	}
-	
+
 	public java.util.Date getNextPaymentDate(){
 		return this.nextPaymentDate;
 	}
@@ -246,10 +252,25 @@ public class StudentRegistration {
 	public void setName(String name) {
 		this.name = name;
 	}
-			
+
+	public String getIdCardNo() {
+		return idCardNo;
+	}
+
+	public void setIdCardNo(String idCardNo) {
+		this.idCardNo = idCardNo;
+	}
+
+	public String getGender() {
+		return gender;
+	}
+
+	public void setGender(String gender) {
+		this.gender = gender;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);
 	}
-
 }

+ 17 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentDemoGroupQueryInfo.java

@@ -12,8 +12,11 @@ public class StudentDemoGroupQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "科目ID,多个逗号分隔",required = false)
     private String subjectIds;
 
-    @ApiModelProperty(value = "开始时间,多个逗号分隔",required = false)
-    private String startTimes;
+    @ApiModelProperty(value = "开始时间",required = false)
+    private String startTime;
+
+    @ApiModelProperty(value = "结束时间",required = false)
+    private String endTime;
 
     public String getSubjectIds() {
         return subjectIds;
@@ -23,11 +26,19 @@ public class StudentDemoGroupQueryInfo extends QueryInfo {
         this.subjectIds = subjectIds;
     }
 
-    public String getStartTimes() {
-        return startTimes;
+    public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
     }
 
-    public void setStartTimes(String startTimes) {
-        this.startTimes = startTimes;
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
     }
 }

+ 28 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java

@@ -5,7 +5,6 @@ import com.ym.mec.biz.dal.dto.CourseScheduleDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceDto;
 import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.common.service.BaseService;
-import org.apache.ibatis.annotations.Param;
 
 import java.util.Date;
 import java.util.List;
@@ -43,12 +42,40 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
     /**
      * @Author: Joburgess
      * @Date: 2019/9/17
+     * 根据日期获取当日排课信息
+     */
+    List<CourseScheduleDto> getStudentCourseSchedulesWithDate(Date classDate);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/17
+     * 根据日期获取当日排课信息
+     */
+    List<CourseScheduleDto> getTeacherCourseSchedulesWithDate(Date classDate);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/17
      * 根据月份获取乐团在该月有课的日期
      */
     List<Date> getCourseScheduleDateByMonth(Long musicGroupID, Date month);
 
     /**
      * @Author: Joburgess
+     * @Date: 2019/9/17
+     * 根据学生获取乐团在该月有课的日期
+     */
+    List<Date> getCourseScheduleDateByStudent(Date month);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/9/17
+     * 根据学生获取乐团在该月有课的日期
+     */
+    List<Date> getCourseScheduleDateByTeacher(Date month);
+
+    /**
+     * @Author: Joburgess
      * @Date: 2019/9/23
      * 课时调整
      */

+ 10 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/GoodsService.java

@@ -11,16 +11,25 @@ public interface GoodsService extends BaseService<Integer, Goods> {
 
     /**
      * 通过科目编号查询商品(教材、辅件)列表
+     *
      * @param subjectId
      * @return
      */
-    List<Goods> findGoodsBySubId(Integer subjectId,Integer goodsCategoryId);
+    List<Goods> findGoodsBySubId(Integer subjectId, Integer goodsCategoryId);
 
     /**
      * 根据商品分类id查找商品数量
+     *
      * @param goodsCategoryId
      * @return
      */
     int findGoodsNumByCategoryId(@Param("goodsCategoryId") Integer goodsCategoryId);
 
+    /**
+     * 根据ids获取商品信息
+     * @param ids
+     * @return
+     */
+    List<Goods> findGoodsByIds(String ids);
+
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupSubjectGoodsGroupService.java

@@ -3,6 +3,16 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
 import com.ym.mec.common.service.BaseService;
 
+import java.util.List;
+
 public interface MusicGroupSubjectGoodsGroupService extends BaseService<Long, MusicGroupSubjectGoodsGroup> {
 
+    /**
+     * 获取乐团声部对应的商品
+     * @param musicGroupId
+     * @param subId
+     * @return
+     */
+    List<MusicGroupSubjectGoodsGroup> findGoodsGroup(Integer musicGroupId, Integer subId);
+
 }

+ 21 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupSubjectPlanService.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfo;
 import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
 import com.ym.mec.common.service.BaseService;
 
@@ -11,9 +12,28 @@ public interface MusicGroupSubjectPlanService extends BaseService<Integer, Music
 
     /**
      * 获取乐团声部招生计划
+     *
      * @param musicGroupId
      * @return
      */
-    List<MusicGroupSubjectPlan> getMusicSubjectClassPlan(@Param("musicGroupId") int musicGroupId);
+    List<MusicGroupSubjectPlan> getMusicSubjectClassPlan(int musicGroupId);
+
+
+    /**
+     * 获取单一乐团声部招生计划
+     *
+     * @param musicGroupId
+     * @return
+     */
+    MusicGroupSubjectPlan getMusicOneSubjectClassPlan(int musicGroupId, int subjectId);
+
+    /**
+     * 获取乐团声部报名缴费商品信息
+     *
+     * @param musicGroupId
+     * @param subjectId
+     * @return
+     */
+    MusicGroupSubjectGoodsAndInfo getSubjectGoodsAndInfo(Integer musicGroupId, Integer subjectId);
 
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SubjectService.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.QueryConditionDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.SubjectGoodsMapper;
 import com.ym.mec.biz.dal.page.SubjectQueryInfo;
@@ -17,6 +18,7 @@ public interface SubjectService extends BaseService<Integer, Subject> {
 
     /**
      * 通过乐团编号查询科目列表
+     *
      * @param musicGroupId
      * @return
      */
@@ -24,6 +26,7 @@ public interface SubjectService extends BaseService<Integer, Subject> {
 
     /**
      * 分页查询科目树状列表
+     *
      * @param queryInfo
      * @return
      */
@@ -31,6 +34,7 @@ public interface SubjectService extends BaseService<Integer, Subject> {
 
     /**
      * 通过乐团收费类型,获取默认的声部列表
+     *
      * @param musicGroupId
      * @return
      */
@@ -38,6 +42,7 @@ public interface SubjectService extends BaseService<Integer, Subject> {
 
     /**
      * 通过乐团编号获取声部列表以及声部报名、缴费、计划人数
+     *
      * @param musicGroupId
      * @return
      */
@@ -45,12 +50,14 @@ public interface SubjectService extends BaseService<Integer, Subject> {
 
     /**
      * 修改、新增科目树状列表
+     *
      * @param subject
      */
     void upSetSubject(Subject subject);
 
     /**
      * 修改、保存声部与乐器关联
+     *
      * @param subjectGoodsMappers
      */
     void markGoods(List<SubjectGoodsMapper> subjectGoodsMappers);

+ 28 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ym.mec.biz.service.impl;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
 import com.ym.mec.biz.dal.dto.ClassDateAdjustDto;
 import com.ym.mec.biz.dal.dto.CourseScheduleDto;
@@ -10,7 +12,6 @@ import com.ym.mec.biz.service.CourseScheduleService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-
 import com.ym.mec.util.date.DateUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,6 +28,8 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 	
 	@Autowired
 	private CourseScheduleDao courseScheduleDao;
+	@Autowired
+	private SysUserFeignService sysUserFeignService;
 
 	@Override
 	public BaseDAO<Long, CourseSchedule> getDAO() {
@@ -64,6 +67,30 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		return courseScheduleDao.getCourseScheduleDateByMonth(musicGroupID,month);
 	}
 
+	@Override
+	public List<Date> getCourseScheduleDateByStudent(Date month) {
+		SysUser user = sysUserFeignService.queryUserInfo();
+		return courseScheduleDao.getStudentCourseScheduleDate(user.getId().longValue(),month);
+	}
+
+	@Override
+	public List<Date> getCourseScheduleDateByTeacher(Date month) {
+		SysUser user = sysUserFeignService.queryUserInfo();
+		return courseScheduleDao.getTeacherCourseScheduleDate(user.getId().longValue(),month);
+	}
+
+	@Override
+	public List<CourseScheduleDto> getStudentCourseSchedulesWithDate(Date classDate) {
+		SysUser user = sysUserFeignService.queryUserInfo();
+		return courseScheduleDao.getStudentCourseSchedulesWithDate(classDate,user.getId().longValue());
+	}
+
+	@Override
+	public List<CourseScheduleDto> getTeacherCourseSchedulesWithDate(Date classDate) {
+		SysUser user = sysUserFeignService.queryUserInfo();
+		return courseScheduleDao.getTeacherCourseSchedulesWithDate(classDate,user.getId().longValue());
+	}
+
 	/**
 	 * 判断课程安排中是否存在冲突
 	 * 计算课程课次

+ 6 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/DemoGroupServiceImpl.java

@@ -5,24 +5,21 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.DemoGroupApplyDto;
 import com.ym.mec.biz.dal.dto.EducationDemoGroupListDto;
-import com.ym.mec.biz.dal.dto.TeacherManageDemoGroupListDto;
-import com.ym.mec.biz.dal.dto.VipGroupApplyBaseInfoDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.StudentDemoGroupQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherManageDemoGroupQueryInfo;
+import com.ym.mec.biz.service.DemoGroupService;
+import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.util.collection.MapUtil;
 import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-
-import com.ym.mec.biz.service.DemoGroupService;
-import com.ym.mec.common.dal.BaseDAO;
-import com.ym.mec.common.service.impl.BaseServiceImpl;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
@@ -142,8 +139,9 @@ public class DemoGroupServiceImpl extends BaseServiceImpl<Long, DemoGroup>  impl
 		demoGroup.setOrganIdList(organIdsString);
 		demoGroupDao.update(demoGroup);
 
-		//删除临时课程计划
-		demoGroupCoursesPlanDao.delete(coursePlanId);
+		//修改课程预约状态
+		demoGroupCoursesPlan.setStatus(YesOrNoEnum.YES);
+		demoGroupCoursesPlanDao.update(demoGroupCoursesPlan);
 	}
 
 	@Override

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java

@@ -23,7 +23,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.client.RestTemplate;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -66,6 +65,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		employee.setPassword(new BCryptPasswordEncoder().encode(ParamEnum.INIT_PASSWORD.getCode().toString()));
 		employee.setUserType(SysUserType.SYSTEM);
 		teacherDao.addSysUser(employee);
+		employee.setUserId(employee.getId());
         employeeDao.insert(employee);
 		ImResult imResult = imFeignService.register(new ImUserModel(employee.getId().toString(), employee.getUsername(), employee.getAvatar()));
 		employee.setImToken(imResult.getToken());

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/GoodsServiceImpl.java

@@ -30,4 +30,9 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 	public int findGoodsNumByCategoryId(Integer goodsCategoryId){
 		return goodsDao.findGoodsNumByCategoryId(goodsCategoryId);
 	}
+
+	@Override
+	public List<Goods> findGoodsByIds(String ids) {
+		return goodsDao.findGoodsByIds(ids);
+	}
 }

+ 7 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupSubjectGoodsGroupServiceImpl.java

@@ -9,6 +9,8 @@ import com.ym.mec.biz.service.MusicGroupSubjectGoodsGroupService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 
+import java.util.List;
+
 @Service
 public class MusicGroupSubjectGoodsGroupServiceImpl extends BaseServiceImpl<Long, MusicGroupSubjectGoodsGroup>  implements MusicGroupSubjectGoodsGroupService {
 	
@@ -19,5 +21,9 @@ public class MusicGroupSubjectGoodsGroupServiceImpl extends BaseServiceImpl<Long
 	public BaseDAO<Long, MusicGroupSubjectGoodsGroup> getDAO() {
 		return musicGroupSubjectGoodsGroupDao;
 	}
-	
+
+	@Override
+    public List<MusicGroupSubjectGoodsGroup> findGoodsGroup(Integer musicGroupId, Integer subId) {
+        return musicGroupSubjectGoodsGroupDao.findGoodsGroup(musicGroupId, subId);
+    }
 }

+ 53 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupSubjectPlanServiceImpl.java

@@ -1,17 +1,24 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
+import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfo;
+import com.ym.mec.biz.dal.entity.MusicGroup;
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
+import com.ym.mec.biz.dal.enums.GoodsType;
+import com.ym.mec.biz.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.ym.mec.biz.dal.dao.MusicGroupSubjectPlanDao;
 import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
 import com.ym.mec.biz.dal.entity.StudentRegistration;
-import com.ym.mec.biz.service.MusicGroupSubjectPlanService;
-import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 @Service
 public class MusicGroupSubjectPlanServiceImpl extends BaseServiceImpl<Integer, MusicGroupSubjectPlan> implements MusicGroupSubjectPlanService {
@@ -20,7 +27,16 @@ public class MusicGroupSubjectPlanServiceImpl extends BaseServiceImpl<Integer, M
     private MusicGroupSubjectPlanDao musicGroupSubjectPlanDao;
 
     @Autowired
-	private StudentRegistrationService studentRegistrationService;
+    private StudentRegistrationService studentRegistrationService;
+
+    @Autowired
+    private GoodsService goodsService;
+
+    @Autowired
+    private MusicGroupSubjectGoodsGroupService musicGroupSubjectGoodsGroupService;
+
+    @Autowired
+    private MusicGroupService musicGroupService;
 
     @Override
     public BaseDAO<Integer, MusicGroupSubjectPlan> getDAO() {
@@ -31,9 +47,40 @@ public class MusicGroupSubjectPlanServiceImpl extends BaseServiceImpl<Integer, M
     public List<MusicGroupSubjectPlan> getMusicSubjectClassPlan(int musicGroupId) {
         List<MusicGroupSubjectPlan> musicSubjectClassPlans = musicGroupSubjectPlanDao.getMusicSubjectClassPlan(musicGroupId);
         for (MusicGroupSubjectPlan musicSubjectClassPlan : musicSubjectClassPlans) {
-			Integer noClassStuCount = studentRegistrationService.getNoClassStuCountBySubjectId(musicGroupId, musicSubjectClassPlan.getSubjectId());
-			musicSubjectClassPlan.setNoClassStudentNum(noClassStuCount);
-		}
+            Integer noClassStuCount = studentRegistrationService.getNoClassStuCountBySubjectId(musicGroupId, musicSubjectClassPlan.getSubjectId());
+            musicSubjectClassPlan.setNoClassStudentNum(noClassStuCount);
+        }
         return musicSubjectClassPlans;
     }
+
+    @Override
+    public MusicGroupSubjectPlan getMusicOneSubjectClassPlan(int musicGroupId, int subjectId) {
+        return musicGroupSubjectPlanDao.getMusicOneSubjectClassPlan(musicGroupId, subjectId);
+    }
+
+    @Override
+    public MusicGroupSubjectGoodsAndInfo getSubjectGoodsAndInfo(Integer musicGroupId, Integer subjectId) {
+        MusicGroup musicGroup = musicGroupService.get(musicGroupId.toString());
+
+        //课程形态
+        Map<String, Object> courseForm = JSON.parseObject(musicGroup.getCourseForm(), Map.class);
+
+        //乐团计划及收费信息
+        MusicGroupSubjectPlan musicOneSubjectClassPlan = this.getMusicOneSubjectClassPlan(musicGroupId, subjectId);
+
+        //乐团乐器及辅件信息
+        List<MusicGroupSubjectGoodsGroup> goodsGroups = musicGroupSubjectGoodsGroupService.findGoodsGroup(musicGroupId, subjectId);
+        goodsGroups.forEach(goodsGroup -> {
+            if (goodsGroup.getType().equals(GoodsType.INSTRUMENT)) {
+                goodsGroup.getGoodsList().forEach(goods -> {
+                    goods.setGoodsList(goodsService.findGoodsByIds(goods.getComplementGoodsIdList()));
+                });
+            }
+        });
+        MusicGroupSubjectGoodsAndInfo musicGroupSubjectGoodsAndInfo = new MusicGroupSubjectGoodsAndInfo();
+        musicGroupSubjectGoodsAndInfo.setMusicGroupSubjectPlan(musicOneSubjectClassPlan);
+        musicGroupSubjectGoodsAndInfo.setCourseScheduleInfo(courseForm);
+        musicGroupSubjectGoodsAndInfo.setMusicGroupSubjectGoodsGroupList(goodsGroups);
+        return musicGroupSubjectGoodsAndInfo;
+    }
 }

+ 99 - 99
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java

@@ -26,67 +26,67 @@ import java.util.List;
 @Service
 public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  implements SubjectService {
 
-	@Autowired
-	private SubjectDao subjectDao;
-	@Autowired
-	private StudentRegistrationDao studentRegistrationDao;
-	@Autowired
-	private SubjectGoodsMapperDao subjectGoodsMapperDao;
-	@Autowired
-	private SysUserFeignService sysUserFeignService;
-
-	@Override
-	public BaseDAO<Integer, Subject> getDAO() {
-		return subjectDao;
-	}
-
-	@Override
-	public List<Subject> findSubByMusicGroupId(Integer musicGroupId) {
-		return subjectDao.findSubByMusicGroupId(musicGroupId);
-	}
-
-	@Override
-	public PageInfo<Subject> queryPageTree(SubjectQueryInfo queryInfo) {
-		PageInfo<Subject> pageInfo = queryPage(queryInfo);
-		for (Subject subject:pageInfo.getRows()) {
-			subject = getTree(subject,queryInfo.getDelFlag());
-		}
-		return pageInfo;
-	}
-
-	@Override
-	public List<Subject> findDefaultSubByGroupId(Integer musicGroupId) {
-		return subjectDao.findDefaultSubByGroupId(musicGroupId);
-	}
-
-	@Override
-	public List<SubjectApplyDetailDto> findSubApplyDetail(Integer musicGroupId) {
-		List<SubjectApplyDetailDto> subApplyDetail = subjectDao.findSubApplyDetail(musicGroupId);
-		subApplyDetail.forEach(detail ->{
-			detail.setPayNum(studentRegistrationDao.countPayNum(musicGroupId,detail.getSubjectId()));
-		});
-		return subApplyDetail;
-	}
-
-	@Override
-	public void upSetSubject(Subject subject) {
-		Integer parentId = upset(subject, null);
-		List<Subject> subjects = subject.getSubjects();
-		if(subjects != null && subjects.size() > 0){
-			subjects.forEach(e->{
-				upset(e, parentId);
-			});
-		}
-	}
-
-	@Override
-	public void markGoods(List<SubjectGoodsMapper> subjectGoodsMappers) {
-		subjectGoodsMappers.forEach(e->{
+    @Autowired
+    private SubjectDao subjectDao;
+    @Autowired
+    private StudentRegistrationDao studentRegistrationDao;
+    @Autowired
+    private SubjectGoodsMapperDao subjectGoodsMapperDao;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+    @Override
+    public BaseDAO<Integer, Subject> getDAO() {
+        return subjectDao;
+    }
+
+    @Override
+    public List<Subject> findSubByMusicGroupId(Integer musicGroupId) {
+        return subjectDao.findSubByMusicGroupId(musicGroupId);
+    }
+
+    @Override
+    public PageInfo<Subject> queryPageTree(SubjectQueryInfo queryInfo) {
+        PageInfo<Subject> pageInfo = queryPage(queryInfo);
+        for (Subject subject:pageInfo.getRows()) {
+            subject = getTree(subject,queryInfo.getDelFlag());
+        }
+        return pageInfo;
+    }
+
+    @Override
+    public List<Subject> findDefaultSubByGroupId(Integer musicGroupId) {
+        return subjectDao.findDefaultSubByGroupId(musicGroupId);
+    }
+
+    @Override
+    public List<SubjectApplyDetailDto> findSubApplyDetail(Integer musicGroupId) {
+        List<SubjectApplyDetailDto> subApplyDetail = subjectDao.findSubApplyDetail(musicGroupId);
+        subApplyDetail.forEach(detail ->{
+            detail.setPayNum(studentRegistrationDao.countPayNum(musicGroupId,detail.getSubjectId()));
+        });
+        return subApplyDetail;
+    }
+
+    @Override
+    public void upSetSubject(Subject subject) {
+        Integer parentId = upset(subject, null);
+        List<Subject> subjects = subject.getSubjects();
+        if(subjects != null && subjects.size() > 0){
+            subjects.forEach(e->{
+                upset(e, parentId);
+            });
+        }
+    }
+
+    @Override
+    public void markGoods(List<SubjectGoodsMapper> subjectGoodsMappers) {
+        subjectGoodsMappers.forEach(e->{
             upsetGoods(e);
         });
-	}
+    }
 
-	private void upsetGoods(SubjectGoodsMapper subjectGoodsMapper){
+    private void upsetGoods(SubjectGoodsMapper subjectGoodsMapper){
         if(subjectGoodsMapper.getId() != null){
             if(subjectGoodsMapper.getDelFlag()){
                 subjectGoodsMapperDao.delete(subjectGoodsMapper.getId());
@@ -97,45 +97,45 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject>  imple
         }else {
             subjectGoodsMapperDao.insert(subjectGoodsMapper);
         }
-	}
-
-
-	private Integer upset(Subject subject,Integer parentId){
-		if(parentId != null){
-			subject.setParentSubjectId(parentId);
-		}
-		if(subject.getId() != null){
-			subject.setUpdateTime(new Date());
-			subjectDao.update(subject);
-		}else {
-			subjectDao.insert(subject);
-		}
-		return subject.getId();
-	}
-
-	private Subject getTree(Subject sub,YesOrNoEnum yesOrNoEnum){
-		//得到根节点对象
-		//获取子节点list
-		List<Subject> subjects = subjectDao.findByParentId(sub.getCode(),yesOrNoEnum);
-		//如果存在子节点
-		if(subjects != null && subjects.size() > 0) {
-			//将子节点list放入父节点对象
-			sub.setSubjects(subjects);
-			//遍历子节点....
-			for (Subject subject : subjects) {
-				getTree(subject,yesOrNoEnum);
-			}
-		}
-		return sub;
-	}
-
-	@Override
-	public List<Subject> findTeacherSubjects() {
-		return subjectDao.findTeacherSubjects(sysUserFeignService.queryUserInfo().getId().longValue());
-	}
-
-	@Override
-	public List<ConditionDto> findSubjectConditions() {
-		return subjectDao.findSubjectConditions();
-	}
+    }
+
+
+    private Integer upset(Subject subject,Integer parentId){
+        if(parentId != null){
+            subject.setParentSubjectId(parentId);
+        }
+        if(subject.getId() != null){
+            subject.setUpdateTime(new Date());
+            subjectDao.update(subject);
+        }else {
+            subjectDao.insert(subject);
+        }
+        return subject.getId();
+    }
+
+    private Subject getTree(Subject sub,YesOrNoEnum yesOrNoEnum){
+        //得到根节点对象
+        //获取子节点list
+        List<Subject> subjects = subjectDao.findByParentId(sub.getCode(),yesOrNoEnum);
+        //如果存在子节点
+        if(subjects != null && subjects.size() > 0) {
+            //将子节点list放入父节点对象
+            sub.setSubjects(subjects);
+            //遍历子节点....
+            for (Subject subject : subjects) {
+                getTree(subject,yesOrNoEnum);
+            }
+        }
+        return sub;
+    }
+
+    @Override
+    public List<Subject> findTeacherSubjects() {
+        return subjectDao.findTeacherSubjects(sysUserFeignService.queryUserInfo().getId().longValue());
+    }
+
+    @Override
+    public List<ConditionDto> findSubjectConditions() {
+        return subjectDao.findSubjectConditions();
+    }
 }

+ 87 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -23,8 +23,12 @@
     </resultMap>
 
     <resultMap type="com.ym.mec.biz.dal.dto.CourseScheduleDto" id="courseScheduleDto" extends="CourseSchedule">
+        <result column="teacher_name_" property="teacherName"/>
         <result column="name_" property="classGroupName"/>
         <result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="school_name_" property="schoolName"/>
+        <result column="attendance_status_" property="attendanceStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="seal_class_id_" property="sealClassId"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -210,6 +214,54 @@
         WHERE cs.class_date_=DATE_FORMAT(#{classDate},'%Y%m%d')
     </select>
 
+    <select id="getStudentCourseSchedulesWithDate" resultMap="courseScheduleDto">
+        SELECT
+            cg.id_ seal_class_id_,
+            cg.name_,
+            cg.type_,
+            cs.id_,
+            cs.class_date_,
+            CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
+            CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
+            cs.status_,
+	        su.username_ teacher_name_,
+	        sa.status_ attendance_status_
+        FROM
+            course_schedule cs
+            LEFT JOIN sys_user su ON cs.teacher_id_=su.id_
+            LEFT JOIN class_group cg ON cs.class_group_id_ = cg.id_
+            LEFT JOIN class_group_student_mapper cgsm ON cgsm.class_group_id_ = cs.class_group_id_
+	        LEFT JOIN student_attendance sa ON cs.id_=sa.course_schedule_id_ AND sa.user_id_=#{studentId}
+        WHERE
+            cs.class_date_ = DATE_FORMAT(#{classDate},'%Y%m%d')
+            AND cgsm.user_id_ = #{studentId}
+    </select>
+
+    <select id="getTeacherCourseSchedulesWithDate" resultMap="courseScheduleDto">
+        SELECT
+            cg.id_ seal_class_id_,
+            cg.name_,
+            su.username_ teacher_name_,
+            cg.type_,
+            cs.id_,
+            cs.class_date_,
+            CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
+            CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
+            cs.status_,
+	        s.name_ school_name_,
+	        ta.status_ attendance_status_
+        FROM
+            course_schedule cs
+            LEFT JOIN sys_user su ON cs.teacher_id_=su.id_
+            LEFT JOIN class_group cg ON cs.class_group_id_ = cg.id_
+            LEFT JOIN music_group mg ON cg.music_group_id_=mg.id_
+            LEFT JOIN school s ON mg.school_id_=s.id_
+	        LEFT JOIN teacher_attendance ta ON cs.id_=ta.class_group_id_ AND ta.teacher_id_=#{teacherId}
+        WHERE
+            cs.class_date_ = DATE_FORMAT(#{classDate},'%Y%m%d')
+            AND cs.teacher_id_ = #{teacherId}
+    </select>
+
     <select id="getCourseScheduleDateByMonth" resultType="java.util.Date">
         SELECT
             cs.class_date_
@@ -303,4 +355,39 @@
             #{classGroup.id}
         </foreach>
     </select>
+
+    <select id="getStudentCourseScheduleDate" resultType="java.util.Date">
+        SELECT
+            cs.class_date_
+        FROM
+            class_group_student_mapper cgsm
+            LEFT JOIN course_schedule cs ON cgsm.class_group_id_ = cs.class_group_id_
+        WHERE
+            cgsm.user_id_ = #{studentId}
+            <if test="month==null">
+                AND DATE_FORMAT( NOW(), '%Y%m' ) = DATE_FORMAT( cs.class_date_, '%Y%m' )
+            </if>
+            <if test="month!=null">
+                AND DATE_FORMAT( #{month}, '%Y%m' ) = DATE_FORMAT( cs.class_date_, '%Y%m' )
+            </if>
+        GROUP BY
+            cs.class_date_
+    </select>
+
+    <select id="getTeacherCourseScheduleDate" resultType="java.util.Date">
+        SELECT
+        cs.class_date_
+        FROM
+        course_schedule cs ON cgsm.class_group_id_ = cs.class_group_id_
+        WHERE
+        cs.teacher_id_ = #{teacherId}
+        <if test="month==null">
+            AND DATE_FORMAT( NOW(), '%Y%m' ) = DATE_FORMAT( cs.class_date_, '%Y%m' )
+        </if>
+        <if test="month!=null">
+            AND DATE_FORMAT( #{month}, '%Y%m' ) = DATE_FORMAT( cs.class_date_, '%Y%m' )
+        </if>
+        GROUP BY
+        cs.class_date_
+    </select>
 </mapper>

+ 7 - 3
mec-biz/src/main/resources/config/mybatis/DemoGroupCoursesPlanMapper.xml

@@ -11,6 +11,7 @@
 		<result column="demo_group_id_" property="demoGroupId" />
 		<result column="courses_start_time_" property="coursesStartTime" />
 		<result column="create_time_" property="createTime" />
+		<result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
 	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -30,10 +31,10 @@
 		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
 		</selectKey>
 		-->
-		INSERT INTO demo_group_courses_plan (demo_group_id_,courses_start_time_,create_time_)
+		INSERT INTO demo_group_courses_plan (demo_group_id_,courses_start_time_,create_time_,status_)
 		VALUE
 		<foreach collection="dates" item="date" separator=",">
-			(#{demoGroupId},#{date},now())
+			(#{demoGroupId},#{date},now(),#{status})
 		</foreach>
 	</insert>
 
@@ -44,7 +45,7 @@
 		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL
 		</selectKey>
 		-->
-		INSERT INTO demo_group_courses_plan (id_,demo_group_id_,courses_start_time_,create_time_) VALUES(#{id},#{demoGroupId},#{coursesStartTime},now())
+		INSERT INTO demo_group_courses_plan (id_,demo_group_id_,courses_start_time_,create_time_,status_) VALUES(#{id},#{demoGroupId},#{coursesStartTime},now(),#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -62,6 +63,9 @@ courses_start_time_ = #{coursesStartTime},
 <if test="createTime != null">
 create_time_ = #{createTime},
 </if>
+<if test="status!=null">
+	status_=#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+</if>
 </set> WHERE id_ = #{id} 
 	</update>
 	

+ 5 - 4
mec-biz/src/main/resources/config/mybatis/DemoGroupMapper.xml

@@ -120,7 +120,6 @@ create_time_ = #{createTime},
 			'ONLINE' teach_mode_
 		FROM
 			demo_group_courses_plan dgcp
-			LEFT JOIN demo_group_class_group_mapper dgcgm ON dgcp.demo_group_id_=dgcgm.demo_group_id_
 			WHERE dgcp.demo_group_id_=#{demoGroup.id} AND dgcp.courses_start_time_ = #{startTime}
 	</select>
 	<select id="countDemoGroupStudents" resultType="java.lang.Integer">
@@ -134,13 +133,14 @@ create_time_ = #{createTime},
 
 	<sql id="demoGroupQueryCondition">
 		<where>
+			dgcp.status_=0
 			<if test="search!=null">
-				su.username like concat('%',#{search},'%')
+				AND su.username like concat('%',#{search},'%')
 			</if>
-			<if test="subjectIds!=null">
+			<if test="subjectIds!=null and subjectIds!=''">
 				AND FIND_IN_SET(dg.subject_id_,#{subjectIds})
 			</if>
-			<if test="startTimes!=null">
+			<if test="startTimes!=null and startTimes!=''">
 				AND FIND_IN_SET(dgcp.courses_start_time_,#{startTimes})
 			</if>
 		</where>
@@ -172,6 +172,7 @@ create_time_ = #{createTime},
 			count(*)
 		FROM
 			demo_group dg
+			LEFT JOIN demo_group_courses_plan dgcp ON dg.id_=dgcp.demo_group_id_
 			LEFT JOIN sys_user su ON dg.user_id_=su.id_
 		<include refid="demoGroupQueryCondition"/>
 	</select>

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/EmployeeMapper.xml

@@ -164,7 +164,7 @@
         <where>
             su.user_type_='SYSTEM'
             <if test="organId != null">
-                and FIND_IN_SET(#{organId},e.organ_id_list_)
+                and su.organ_id_=#{organId}
             </if>
             <if test="roleId != null">
                 and sr.id_ = #{roleId}

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/GoodsMapper.xml

@@ -143,4 +143,7 @@
     <select id="findGoodsNumByCategoryId" resultType="int">
         SELECT COUNT(*) FROM goods WHERE goods_category_id_ = #{goodsCategoryId}
     </select>
+    <select id="findGoodsByIds" resultMap="Goods">
+        SELECT * FROM goods WHERE FIND_IN_SET(id_,#{ids})
+    </select>
 </mapper>

+ 89 - 90
mec-biz/src/main/resources/config/mybatis/MusicGroupSubjectGoodsGroupMapper.xml

@@ -3,106 +3,105 @@
 <!-- 这个文件是自动生成的。 不要修改此文件。所有改动将在下次重新自动生成时丢失。 -->
 <mapper namespace="com.ym.mec.biz.dal.dao.MusicGroupSubjectGoodsGroupDao">
 
-	<resultMap type="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup"
-		id="MusicGroupSubjectGoodsGroup">
-		<result column="id_" property="id" />
-		<result column="name_" property="name" />
-		<result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
-		<result column="music_group_id_" property="musicGroupId" />
-		<result column="subject_id_" property="subjectId" />
-		<result column="goods_id_list_" property="goodsIdList" />
-		<result column="create_time_" property="createTime" />
-		<result column="update_time_" property="updateTime" />
-		<result column="price_" property="price" />
-	</resultMap>
+    <resultMap type="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup"
+               id="MusicGroupSubjectGoodsGroup">
+        <result column="id_" property="id"/>
+        <result column="name_" property="name"/>
+        <result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="music_group_id_" property="musicGroupId"/>
+        <result column="subject_id_" property="subjectId"/>
+        <result column="goods_id_list_" property="goodsIdList"/>
+        <result column="create_time_" property="createTime"/>
+        <result column="update_time_" property="updateTime"/>
+        <result column="price_" property="price"/>
+    </resultMap>
 
-	<!-- 根据主键查询一条记录 -->
-	<select id="get" resultMap="MusicGroupSubjectGoodsGroup">
-		SELECT
-		* FROM music_group_subject_goods_group WHERE id_ = #{id}
-	</select>
+    <!-- 根据主键查询一条记录 -->
+    <select id="get" resultMap="MusicGroupSubjectGoodsGroup">
+        SELECT
+        * FROM music_group_subject_goods_group WHERE id_ = #{id}
+    </select>
 
-	<!-- 全查询 -->
-	<select id="findAll" resultMap="MusicGroupSubjectGoodsGroup">
-		SELECT * FROM
-		music_group_subject_goods_group ORDER BY id_
-	</select>
+    <!-- 全查询 -->
+    <select id="findAll" resultMap="MusicGroupSubjectGoodsGroup">
+        SELECT *
+        FROM music_group_subject_goods_group
+        ORDER BY id_
+    </select>
 
-	<!-- 向数据库增加一条记录 -->
-	<insert id="insert"
-		parameterType="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup"
-		useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO music_group_subject_goods_group
-		(id_,name_,type_,music_group_id_,subject_id_,goods_id_list_,create_time_,update_time_,price_)
-		VALUES(#{id},#{name},#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{musicGroupId},#{subjectId},#{goodsIdList},NOW(),NOW(),#{price})
-	</insert>
+    <!-- 向数据库增加一条记录 -->
+    <insert id="insert"
+            parameterType="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup"
+            useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+        INSERT INTO music_group_subject_goods_group
+        (id_,name_,type_,music_group_id_,subject_id_,goods_id_list_,create_time_,update_time_,price_)
+        VALUES(#{id},#{name},#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{musicGroupId},#{subjectId},#{goodsIdList},NOW(),NOW(),#{price})
+    </insert>
 
     <insert id="batchInsert" parameterType="java.util.List">
-		INSERT INTO music_group_subject_goods_group (id_,name_,type_,music_group_id_,subject_id_,goods_id_list_,create_time_,update_time_,price_) VALUES
-		<foreach collection="mappers" item="item" index="index" separator=",">
-			VALUES(#{item.id},#{item.name},#{item.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{item.musicGroupId},#{item.subjectId},#{item.goodsIdList},NOW(),NOW(),#{item.price})
-		</foreach>
-	</insert>
+        INSERT INTO music_group_subject_goods_group
+        (id_,name_,type_,music_group_id_,subject_id_,goods_id_list_,create_time_,update_time_,price_) VALUES
+        <foreach collection="mappers" item="item" index="index" separator=",">
+            VALUES(#{item.id},#{item.name},#{item.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{item.musicGroupId},#{item.subjectId},#{item.goodsIdList},NOW(),NOW(),#{item.price})
+        </foreach>
+    </insert>
 
     <!-- 根据主键查询一条记录 -->
-	<update id="update"
-		parameterType="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup">
-		UPDATE music_group_subject_goods_group
-		<set>
-			<if test="price != null">
-				price_ = #{price},
-			</if>
-			<if test="subjectId != null">
-				subject_id_ = #{subjectId},
-			</if>
-			<if test="goodsIdList != null">
-				goods_id_list_ = #{goodsIdList},
-			</if>
-			<if test="updateTime != null">
-				update_time_ = #{updateTime},
-			</if>
-			<if test="type != null">
-				type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-			</if>
-			<if test="musicGroupId != null">
-				music_group_id_ = #{musicGroupId},
-			</if>
-			<if test="name != null">
-				name_ = #{name},
-			</if>
-		</set>
-		WHERE id_ = #{id}
-	</update>
+    <update id="update"
+            parameterType="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup">
+        UPDATE music_group_subject_goods_group
+        <set>
+            <if test="price != null">
+                price_ = #{price},
+            </if>
+            <if test="subjectId != null">
+                subject_id_ = #{subjectId},
+            </if>
+            <if test="goodsIdList != null">
+                goods_id_list_ = #{goodsIdList},
+            </if>
+            <if test="updateTime != null">
+                update_time_ = #{updateTime},
+            </if>
+            <if test="type != null">
+                type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
+            <if test="musicGroupId != null">
+                music_group_id_ = #{musicGroupId},
+            </if>
+            <if test="name != null">
+                name_ = #{name},
+            </if>
+        </set>
+        WHERE id_ = #{id}
+    </update>
 
-	<!-- 根据主键删除一条记录 -->
-	<delete id="delete">
-		DELETE FROM music_group_subject_goods_group
-		WHERE id_ = #{id}
-	</delete>
+    <!-- 根据主键删除一条记录 -->
+    <delete id="delete">
+        DELETE FROM music_group_subject_goods_group
+        WHERE id_ = #{id}
+    </delete>
 
-	<!-- 分页查询 -->
-	<select id="queryPage" resultMap="MusicGroupSubjectGoodsGroup"
-		parameterType="map">
-		SELECT * FROM music_group_subject_goods_group ORDER BY id_
-		<include refid="global.limit" />
-	</select>
+    <!-- 分页查询 -->
+    <select id="queryPage" resultMap="MusicGroupSubjectGoodsGroup"
+            parameterType="map">
+        SELECT * FROM music_group_subject_goods_group ORDER BY id_
+        <include refid="global.limit"/>
+    </select>
 
-	<!-- 查询当前表的总记录数 -->
-	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM
-		music_group_subject_goods_group
-	</select>
+    <!-- 查询当前表的总记录数 -->
+    <select id="queryCount" resultType="int">
+        SELECT COUNT(*)
+        FROM music_group_subject_goods_group
+    </select>
 
-	<resultMap type="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup" id="findGoodsGroupMap">
-		<result column="name_" property="name" />
-		<result column="type_" property="type" />
-		<result column="price_" property="price" />
-		<result column="id_" property="id" />
-		<collection property="goodsName" column="goods_name_" ofType="java.lang.String" javaType="java.util.List"/>
-	</resultMap>
+    <resultMap type="com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup" extends="MusicGroupSubjectGoodsGroup" id="findGoodsGroupMap">
+        <collection property="goodsList" resultMap="com.ym.mec.biz.dal.dao.GoodsDao.Goods" columnPrefix="g_" />
+    </resultMap>
     <select id="findGoodsGroup" resultMap="findGoodsGroupMap">
-		SELECT mgs.name_,mgs.type_,mgs.price_,g.name_ goods_name_,mgs.id_ FROM music_group_subject_goods_group mgs
-		LEFT JOIN goods g ON g.id_ IN (mgs.goods_id_list_)
-		WHERE mgs.music_group_id_ = #{musicGroupId} AND mgs.subject_id_ = #{subId}
-	</select>
+        SELECT mgs.*, g.id_ g_id_,g.name_ g_name_,g.market_price_  g_market_price_,g.complement_goods_id_list_ g_complement_goods_id_list_
+        FROM music_group_subject_goods_group mgs,goods g
+        WHERE FIND_IN_SET (g.id_ ,mgs.goods_id_list_)
+        AND mgs.music_group_id_ = #{musicGroupId} AND mgs.subject_id_ = #{subId}
+    </select>
 </mapper>

+ 6 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupSubjectPlanMapper.xml

@@ -97,4 +97,10 @@
         LEFT JOIN subject sb ON sb.id_ = sp.subject_id_
         WHERE sp.music_group_id_=#{musicGroupId}
     </select>
+    <select id="getMusicOneSubjectClassPlan" resultMap="MusicGroupSubjectPlan">
+        SELECT sp.*, sb.name_
+        FROM music_group_subject_plan sp
+        LEFT JOIN subject sb ON sb.id_ = sp.subject_id_
+        WHERE sp.music_group_id_=#{musicGroupId} AND sp.subject_id_=#{subjectId}
+    </select>
 </mapper>

+ 1 - 1
mec-student/src/main/java/com/ym/mec/student/config/ResourceServerConfig.java

@@ -22,7 +22,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 
 	@Override
 	public void configure(HttpSecurity http) throws Exception {
-		http.csrf().disable().authorizeRequests().antMatchers("/v2/api-docs", "/register/findSubByMusicGroupId").permitAll().anyRequest().authenticated().and().httpBasic();
+		http.csrf().disable().authorizeRequests().antMatchers("/v2/api-docs", "/register/findSubByMusicGroupId","/register/findGoodsGroups").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 25 - 0
mec-student/src/main/java/com/ym/mec/student/controller/RegisterController.java

@@ -1,7 +1,14 @@
 package com.ym.mec.student.controller;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfo;
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
+import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
 import com.ym.mec.biz.dal.entity.StudentRegistration;
 import com.ym.mec.biz.dal.entity.Subject;
+import com.ym.mec.biz.service.MusicGroupSubjectGoodsGroupService;
+import com.ym.mec.biz.service.MusicGroupSubjectPlanService;
 import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.biz.service.SubjectService;
 import com.ym.mec.common.controller.BaseController;
@@ -12,6 +19,9 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
+import java.util.List;
+
 @RequestMapping("register")
 @Api(tags = "乐团注册")
 @RestController
@@ -21,6 +31,10 @@ public class RegisterController extends BaseController {
     private StudentRegistrationService studentRegistrationService;
     @Autowired
     private SubjectService subjectService;
+    @Autowired
+    private MusicGroupSubjectPlanService musicGroupSubjectPlanService;
+    @Resource
+    private SysUserFeignService sysUserFeignService;
 
 
     @ApiOperation(value = "新增学生报名信息")
@@ -36,4 +50,15 @@ public class RegisterController extends BaseController {
     public Object findSubByMusicGroupId(Integer musicGroupId) {
         return succeed(subjectService.findSubByMusicGroupId(musicGroupId));
     }
+
+
+    @ApiOperation(value = "获取乐团声部的乐器和辅件")
+    @GetMapping("/findGoodsGroups")
+    @ApiImplicitParams({@ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "Integer")})
+    public Object findGoodsGroups(Integer musicGroupId) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        MusicGroupSubjectGoodsAndInfo subjectGoodsAndInfo = musicGroupSubjectPlanService.getSubjectGoodsAndInfo(musicGroupId, 1);
+        return succeed(subjectGoodsAndInfo);
+    }
+
 }

+ 3 - 4
mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseScheduleController.java

@@ -29,15 +29,14 @@ public class StudentCourseScheduleController extends BaseController {
 
     @ApiOperation(value = "根据月份获取乐团在该月有课的日期")
     @GetMapping("/getCourseScheduleDateByMonth")
-    public Object getCourseScheduleDateByMonth(@ApiParam(value = "乐团编号", required = true) @RequestParam Long musicGroupID,
-                                               @ApiParam(value = "月份", required = true) @RequestParam Date month) {
-        return succeed(scheduleService.getCourseScheduleDateByMonth(musicGroupID,month));
+    public Object getCourseScheduleDateByMonth(@ApiParam(value = "月份", required = true) @RequestParam Date month) {
+        return succeed(scheduleService.getCourseScheduleDateByStudent(month));
     }
 
     @ApiOperation(value = "根据日期获取当日排课")
     @GetMapping("/getCourseSchedulesWithDate")
     public Object getCourseSchedulesWithDate(@ApiParam(value = "日期", required = true) Date date){
-        return succeed(scheduleService.getCourseSchedulesWithDate(date));
+        return succeed(scheduleService.getStudentCourseSchedulesWithDate(date));
     }
 
     @ApiOperation(value = "课时调整")

+ 17 - 4
mec-student/src/main/java/com/ym/mec/student/controller/StudentDemoGroupController.java

@@ -1,14 +1,17 @@
 package com.ym.mec.student.controller;
 
+import com.ym.mec.biz.dal.dto.QueryConditionDto;
 import com.ym.mec.biz.dal.page.StudentDemoGroupQueryInfo;
 import com.ym.mec.biz.service.DemoGroupService;
+import com.ym.mec.biz.service.SubjectService;
 import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @Author Joburgess
@@ -21,10 +24,20 @@ public class StudentDemoGroupController extends BaseController {
 
     @Autowired
     private DemoGroupService demoGroupService;
+    @Autowired
+    private SubjectService subjectService;
+
+    @ApiOperation("获取试听课筛选条件")
+    @GetMapping(value = "/findQueryCondition")
+    public Object findQueryCondition(){
+        List<QueryConditionDto> conditions=new ArrayList<>();
+        conditions.add(new QueryConditionDto("乐器选择","subjectId",subjectService.findSubjectConditions()));
+        return succeed(conditions);
+    }
 
     @ApiOperation(value = "试听课列表获取")
     @PostMapping("/queryStudentDemoGroups")
-    public Object queryStudentDemoGroups(StudentDemoGroupQueryInfo queryInfo){
+    public Object queryStudentDemoGroups(@RequestBody StudentDemoGroupQueryInfo queryInfo){
         return succeed(demoGroupService.queryStudentDemoGroups(queryInfo));
     }
 

+ 40 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherCourseScheduleController.java

@@ -0,0 +1,40 @@
+package com.ym.mec.teacher.controller;
+
+import com.ym.mec.biz.service.CourseScheduleService;
+import com.ym.mec.common.controller.BaseController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Date;
+
+/**
+ * @Author Joburgess
+ * @Date 2019/9/27
+ */
+@RequestMapping("teacherCourseSchedule")
+@Api(tags = "课程计划服务")
+@RestController
+public class TeacherCourseScheduleController extends BaseController {
+
+    @Autowired
+    private CourseScheduleService scheduleService;
+
+    @ApiOperation(value = "根据月份获取乐团在该月有课的日期")
+    @GetMapping("/getCourseScheduleDateByMonth")
+    public Object getCourseScheduleDateByMonth(@ApiParam(value = "月份", required = true) @RequestParam Date month) {
+        return succeed(scheduleService.getCourseScheduleDateByTeacher(month));
+    }
+
+    @ApiOperation(value = "根据日期获取当日排课")
+    @GetMapping("/getCourseSchedulesWithDate")
+    public Object getCourseSchedulesWithDate(@ApiParam(value = "日期", required = true) Date date){
+        return succeed(scheduleService.getTeacherCourseSchedulesWithDate(date));
+    }
+
+}