Bläddra i källkod

Merge branch 'grade_feature' into test

周箭河 4 år sedan
förälder
incheckning
0a768deaf1
26 ändrade filer med 320 tillägg och 48 borttagningar
  1. 10 0
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java
  2. 4 3
      mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysUserMapper.xml
  3. 7 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentDao.java
  4. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupStudentsDto.java
  5. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Organization.java
  6. 24 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Student.java
  7. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java
  8. 37 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/FivePlusGradeEnum.java
  9. 27 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/GradeTypeEnum.java
  10. 37 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SixPlusGradeEnum.java
  11. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/OrganizationService.java
  12. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentService.java
  13. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/InspectionItemPlanServiceImpl.java
  14. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/InspectionItemServiceImpl.java
  15. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/InspectionServiceImpl.java
  16. 26 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrganizationServiceImpl.java
  17. 9 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  18. 15 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  19. 10 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java
  20. 6 2
      mec-biz/src/main/resources/config/mybatis/OrganizationMapper.xml
  21. 2 1
      mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml
  22. 16 0
      mec-biz/src/main/resources/config/mybatis/StudentMapper.xml
  23. 6 0
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  24. 13 12
      mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java
  25. 16 12
      mec-student/src/main/java/com/ym/mec/student/controller/StudentManageController.java
  26. 6 0
      mec-web/src/main/java/com/ym/mec/web/controller/TaskController.java

+ 10 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java

@@ -107,6 +107,9 @@ public class SysUser implements Serializable{
 	@ApiModelProperty(value = "年级",required = false)
 	private String currentGrade;
 
+	@ApiModelProperty(value = "年级(数字表示)",required = false)
+	private Integer currentGradeNum;
+
 	@ApiModelProperty(value = "班级",required = false)
 	private String currentClass;
 
@@ -412,4 +415,11 @@ public class SysUser implements Serializable{
 		return ToStringBuilder.reflectionToString(this);
 	}
 
+	public Integer getCurrentGradeNum() {
+		return currentGradeNum;
+	}
+
+	public void setCurrentGradeNum(Integer currentGradeNum) {
+		this.currentGradeNum = currentGradeNum;
+	}
 }

+ 4 - 3
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysUserMapper.xml

@@ -31,6 +31,7 @@
         <result column="wechat_id_" property="wechatId"/>
         <result column="is_super_admin_" property="isSuperAdmin"/>
         <result column="current_grade_" property="currentGrade"/>
+        <result column="current_grade_num_" property="currentGradeNum"/>
         <result column="current_class_" property="currentClass"/>
         <result column="certificate_type_" property="certificateType"/>
     </resultMap>
@@ -53,9 +54,9 @@
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="SysUser">
-		SELECT su.*,sr.current_class_,sr.current_grade_
-        FROM sys_user su LEFT JOIN student_registration sr ON su.id_ = sr.user_id_
-        WHERE su.id_ = #{id} LIMIT 1
+		SELECT su.*,s.current_class_,s.current_grade_num_
+        FROM sys_user su LEFT JOIN student s ON su.id_ = s.user_id_
+        WHERE su.id_ = #{id}
 	</select>
 
     <!-- 全查询 -->

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

@@ -16,7 +16,7 @@ import java.util.Map;
 import java.util.Set;
 
 public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Student> {
-	
+
 	Student getLocked(Integer userId);
 
     int lockUser(@Param("userId") Integer userId);
@@ -185,4 +185,10 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
      * @return java.util.List<com.ym.mec.biz.dal.entity.Subject>
      */
     List<Subject> getStudentSubjects(@Param("studentIds") Set<Integer> studentIds);
+
+    /**
+     * 更新学生班级
+     * @return
+     */
+    int updateGrade();
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupStudentsDto.java

@@ -52,6 +52,9 @@ public class MusicGroupStudentsDto{
     @ApiModelProperty(value = "是否新增学员(1是0否)",required = false)
     private Integer isNewStudent;
 
+    @ApiModelProperty(value = "入团时间",required = false)
+    private Date registerTime;
+
     private Boolean isActive = false;
 
     private Boolean hasCourse;
@@ -303,4 +306,12 @@ public class MusicGroupStudentsDto{
     public void setCurrentGradeDate(Date currentGradeDate) {
         this.currentGradeDate = currentGradeDate;
     }
+
+    public Date getRegisterTime() {
+        return registerTime;
+    }
+
+    public void setRegisterTime(Date registerTime) {
+        this.registerTime = registerTime;
+    }
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Organization.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.entity;
 
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -51,6 +52,9 @@ public class Organization {
 	@ApiModelProperty(value = "地址",required = false)
 	private String address;
 
+	@ApiModelProperty(value = "学年制",required = false)
+	private GradeTypeEnum gradeType;
+
 	@ApiModelProperty(value = "子节点列表",required = false)
 	private List<Organization> organizations;
 
@@ -155,4 +159,11 @@ public class Organization {
 		return ToStringBuilder.reflectionToString(this);
 	}
 
+	public GradeTypeEnum getGradeType() {
+		return gradeType;
+	}
+
+	public void setGradeType(GradeTypeEnum gradeType) {
+		this.gradeType = gradeType;
+	}
 }

+ 24 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Student.java

@@ -48,6 +48,12 @@ public class Student extends SysUser {
 	@ApiModelProperty(value = "加油包:0:默认不可用;1:可用;2:已使用;")
 	private Integer comeOnPackage;
 
+	@ApiModelProperty(value = "年级 1-13")
+	private Integer currentGradeNum;
+
+	@ApiModelProperty(value = "班级")
+	private String currentClass;
+
 	public Student(Integer userId, String subjectIdList) {
 		this.userId = userId;
 		this.subjectIdList = subjectIdList;
@@ -169,4 +175,22 @@ public class Student extends SysUser {
 	public void setTeacherName(String teacherName) {
 		this.teacherName = teacherName;
 	}
+
+	public Integer getCurrentGradeNum() {
+		return currentGradeNum;
+	}
+
+	public void setCurrentGradeNum(Integer currentGradeNum) {
+		this.currentGradeNum = currentGradeNum;
+	}
+
+	@Override
+	public String getCurrentClass() {
+		return currentClass;
+	}
+
+	@Override
+	public void setCurrentClass(String currentClass) {
+		this.currentClass = currentClass;
+	}
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java

@@ -43,6 +43,9 @@ public class StudentRegistration {
     @ApiModelProperty(value = "当前所在年级", required = false)
     private String currentGrade;
 
+    @ApiModelProperty(value = "年级(数字表示)", required = false)
+    private Integer currentGradeNum;
+
     @ApiModelProperty(value = "年级年份", required = false)
     private Date currentGradeDate;
 
@@ -423,4 +426,12 @@ public class StudentRegistration {
     public void setCurrentGradeDate(Date currentGradeDate) {
         this.currentGradeDate = currentGradeDate;
     }
+
+    public Integer getCurrentGradeNum() {
+        return currentGradeNum;
+    }
+
+    public void setCurrentGradeNum(Integer currentGradeNum) {
+        this.currentGradeNum = currentGradeNum;
+    }
 }

+ 37 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/FivePlusGradeEnum.java

@@ -0,0 +1,37 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+public enum FivePlusGradeEnum implements BaseEnum<Integer, FivePlusGradeEnum> {
+	GRADE1(1, "一年级"),
+	GRADE2(2, "二年级"),
+	GRADE3(3, "三年级"),
+	GRADE4(4, "四年级"),
+	GRADE5(5, "五年级"),
+	GRADE6(6, "六年级/初一"),
+	GRADE7(7, "七年级/初二"),
+	GRADE8(8, "八年级/初三"),
+	GRADE9(9, "九年级/初四"),
+	GRADE10(10, "高一"),
+	GRADE11(11, "高二"),
+	GRADE12(12, "高三");
+
+	private Integer code;
+
+	private String desc;
+
+	private FivePlusGradeEnum(Integer code, String desc) {
+		this.code = code;
+		this.desc = desc;
+	}
+
+	@Override
+	public Integer getCode() {
+		return code;
+	}
+
+	public String getDesc() {
+		return desc;
+	}
+
+}

+ 27 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/GradeTypeEnum.java

@@ -0,0 +1,27 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+public enum GradeTypeEnum implements BaseEnum<Integer, GradeTypeEnum> {
+	SIX_PLUS(0, "6+3学制"),
+	FIVE_PLUS(1, "5+4学制");
+
+	private Integer code;
+
+	private String desc;
+
+	private GradeTypeEnum(Integer code, String desc) {
+		this.code = code;
+		this.desc = desc;
+	}
+
+	@Override
+	public Integer getCode() {
+		return code;
+	}
+
+	public String getDesc() {
+		return desc;
+	}
+
+}

+ 37 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SixPlusGradeEnum.java

@@ -0,0 +1,37 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+public enum SixPlusGradeEnum implements BaseEnum<Integer, SixPlusGradeEnum> {
+	GRADE1(1, "一年级"),
+	GRADE2(2, "二年级"),
+	GRADE3(3, "三年级"),
+	GRADE4(4, "四年级"),
+	GRADE5(5, "五年级"),
+	GRADE6(6, "六年级"),
+	GRADE7(7, "七年级/初一"),
+	GRADE8(8, "八年级/初二"),
+	GRADE9(9, "九年级/初三"),
+	GRADE10(10, "高一"),
+	GRADE11(11, "高二"),
+	GRADE12(12, "高三");
+
+	private Integer code;
+
+	private String desc;
+
+	private SixPlusGradeEnum(Integer code, String desc) {
+		this.code = code;
+		this.desc = desc;
+	}
+
+	@Override
+	public Integer getCode() {
+		return code;
+	}
+
+	public String getDesc() {
+		return desc;
+	}
+
+}

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/OrganizationService.java

@@ -1,11 +1,13 @@
 package com.ym.mec.biz.service;
 
 import com.ym.mec.biz.dal.entity.Organization;
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
 import com.ym.mec.biz.dal.page.OrganizationQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 
 import java.util.List;
+import java.util.Map;
 
 public interface OrganizationService extends BaseService<Integer, Organization> {
 
@@ -27,4 +29,10 @@ public interface OrganizationService extends BaseService<Integer, Organization>
      * @return
      */
     String getOrganName(String organId);
+
+    /**
+     * 获取分部学年制的年级列表
+     * @param id
+     */
+    Map<Integer, String> getGradeList(Integer id);
 }

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

@@ -35,4 +35,9 @@ public interface StudentService extends BaseService<Integer, Student> {
      * @param teacherId
      */
     void batchUpdateAdviser(Integer teacherId,String studentIds);
+
+    /**
+     * 升级学生的年级
+     */
+    Integer updateGrade();
 }

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

@@ -50,7 +50,7 @@ public class InspectionItemPlanServiceImpl extends BaseServiceImpl<Long, Inspect
     @Override
     public PageInfo<InspectionItemPlan> getPageList(InspectionItemPlanQueryInfo queryInfo) {
         PageInfo<InspectionItemPlan> pageInfo = this.queryPage(queryInfo);
-        if (pageInfo.getTotal() > 0) {
+        if (pageInfo.getRows().size() > 0) {
             Integer attendanceRange = Integer.valueOf(sysConfigDao.findConfigValue(SysConfigService.ATTENDANCE_RANGE));
             List<Long> planIds = pageInfo.getRows().stream().map(InspectionItemPlan::getId).collect(Collectors.toList());
             List<CheckItemDto> lastCheckItems = inspectionItemPlanConclusionDao.getLastCheckItem(planIds);

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

@@ -45,7 +45,7 @@ public class InspectionItemServiceImpl extends BaseServiceImpl<Long, InspectionI
             queryInfo.setEndTime(DateUtil.getLastTimeWithDay(DateUtil.getLastDayOfMonth(queryInfo.getEndTime())));
         }
         PageInfo<InspectionItem> pageInfo = this.queryPage(queryInfo);
-        if (pageInfo.getTotal() <= 0) {
+        if (pageInfo.getRows().size() <= 0) {
             return pageInfo;
         }
         List<InspectionItem> rows = pageInfo.getRows();

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

@@ -41,7 +41,7 @@ public class InspectionServiceImpl extends BaseServiceImpl<Long, Inspection> imp
             queryInfo.setEndTime(DateUtil.getLastTimeWithDay(DateUtil.getLastDayOfMonth(queryInfo.getMonth())));
         }
         PageInfo<Inspection> pageInfo = this.queryPage(queryInfo);
-        if (pageInfo.getTotal() > 0) {
+        if (pageInfo.getRows().size() > 0) {
             List<Inspection> rows = pageInfo.getRows();
             List<Long> inspectionIds = rows.stream().map(Inspection::getId).collect(Collectors.toList());
             List<InspectionItem> itemCountAndTimes = inspectionItemDao.getItemCountAndTimes(inspectionIds);

+ 26 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrganizationServiceImpl.java

@@ -1,9 +1,12 @@
 package com.ym.mec.biz.service.impl;
 
-import java.util.List;
+import java.util.*;
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.enums.FivePlusGradeEnum;
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
+import com.ym.mec.biz.dal.enums.SixPlusGradeEnum;
 import com.ym.mec.common.exception.BizException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -18,7 +21,7 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 
 @Service
 public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organization> implements OrganizationService {
-	
+
 	@Autowired
 	private OrganizationDao organizationDao;
 	@Autowired
@@ -54,7 +57,7 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 	}
 
 
-	private Organization getTree(Organization org){
+    private Organization getTree(Organization org){
 		//得到根节点对象
 		//获取子节点list
 		List<Organization> byParentId = organizationDao.findByParentId(org.getId(), null);
@@ -69,4 +72,24 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		}
 			return org;
 	}
+
+	@Override
+	public Map<Integer, String> getGradeList(Integer id) {
+		Organization organization = organizationDao.get(id);
+		Map<Integer, String> gradeMap = new HashMap<>();
+
+		if(organization.getGradeType().equals(GradeTypeEnum.FIVE_PLUS)){
+			FivePlusGradeEnum[] fivePlusGradeEnums = FivePlusGradeEnum.values();
+			for (FivePlusGradeEnum fivePlusGradeEnum : fivePlusGradeEnums) {
+				gradeMap.put(fivePlusGradeEnum.getCode(),fivePlusGradeEnum.getDesc());
+			}
+		}
+		if(organization.getGradeType().equals(GradeTypeEnum.SIX_PLUS)){
+			SixPlusGradeEnum[] sixPlusGradeEnums = SixPlusGradeEnum.values();
+			for (SixPlusGradeEnum sixPlusGradeEnum : sixPlusGradeEnums) {
+				gradeMap.put(sixPlusGradeEnum.getCode(),sixPlusGradeEnum.getDesc());
+			}
+		}
+		return gradeMap;
+	}
 }

+ 9 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -552,11 +552,15 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Transactional(rollbackFor = Exception.class)
     public void updateUser(SysUser sysUser) {
         studentManageDao.updateUser(sysUser);
-        StudentRegistration studentRegistration = new StudentRegistration();
-        studentRegistration.setUserId(sysUser.getId());
-        studentRegistration.setCurrentClass(sysUser.getCurrentClass());
-        studentRegistration.setCurrentGrade(sysUser.getCurrentGrade());
-        studentRegistrationDao.updateCurrentClass(studentRegistration);
+        Student student = studentDao.get(sysUser.getId());
+        student.setCurrentGradeNum(sysUser.getCurrentGradeNum());
+        student.setCurrentClass(sysUser.getCurrentClass());
+        studentDao.update(student);
+//        StudentRegistration studentRegistration = new StudentRegistration();
+//        studentRegistration.setUserId(sysUser.getId());
+//        studentRegistration.setCurrentClass(sysUser.getCurrentClass());
+//        studentRegistration.setCurrentGrade(sysUser.getCurrentGrade());
+//        studentRegistrationDao.updateCurrentClass(studentRegistration);
     }
 
     @Override

+ 15 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -363,6 +363,10 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
         }else {
             studentRegistrationDao.insert(studentRegistration);
         }
+        //更新年级信息
+        student.setCurrentGradeNum(studentRegistration.getCurrentGradeNum());
+        student.setCurrentClass(studentRegistration.getCurrentClass());
+        studentDao.update(student);
 
         // 增加报名学生数
         musicGroupSubjectPlanService.addApplyStudentNum(studentRegistration.getMusicGroupId(), studentRegistration.getSubjectId(), 1);
@@ -806,7 +810,11 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             } else {
                 studentRegistrationDao.insertBasic(studentRegistration);
             }
-            studentRegistrationDao.updateCurrentClass(studentRegistration);
+            Student student = studentDao.get(userId);
+            student.setCurrentGradeNum(studentRegistration.getCurrentGradeNum());
+            student.setCurrentClass(studentRegistration.getCurrentClass());
+            studentDao.update(student);
+            //studentRegistrationDao.updateCurrentClass(studentRegistration);
 
             //统计变更学员数
             groupEventSource.musicGroupStudentChangeEvent(musicGroupId, StudentMusicGroupStatusEnum.NORMAL, new ArrayList<>(Arrays.asList(userId)));
@@ -1405,7 +1413,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     }
 
     @Override
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     public StudentRegistration updateStudent(StudentRegistration studentRegistration) {
         if(StringUtils.isBlank(studentRegistration.getCertificateType())){
             studentRegistration.setCertificateType(CertificateTypeEnum.IDENTITY.getCode());
@@ -1420,6 +1428,11 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
         student.setGender(studentRegistration.getGender());
         update(studentRegistration);
         studentRegistrationDao.updateUser(student.getUserId(),student.getName(), student.getParentsName(), student.getIdCardNo(), student.getGender(),studentRegistration.getCertificateType());
+        //更新年级信息
+        Student studentInfo = studentDao.get(studentRegistration.getUserId());
+        studentInfo.setCurrentGradeNum(studentRegistration.getCurrentGradeNum());
+        studentInfo.setCurrentClass(studentRegistration.getCurrentClass());
+        studentDao.update(studentInfo);
         // 添加用户电子签章账户
         if(CertificateTypeEnum.IDENTITY.getCode().equals(studentRegistration.getCertificateType())){
             contractService.register(student.getUserId(), student.getParentsName(), student.getIdCardNo(), student.getParentsPhone());

+ 10 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java

@@ -9,6 +9,7 @@ import java.util.Map;
 import java.util.stream.Collectors;
 
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.common.page.QueryInfo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
@@ -35,7 +36,7 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 	private StudentDao studentDao;
 	@Autowired
 	private CourseScheduleDao courseScheduleDao;
-	
+
 	@Autowired
 	private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
 
@@ -82,7 +83,7 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 		Map<Integer,StudentCourseTimesDto> map = studentCourseTimesDtoList.stream().collect(Collectors.toMap(StudentCourseTimesDto::getUserId, s -> s));
 		//查询服务指标为0的用户
 		List<Student> unlabeledStudentList = studentDao.queryByOperatingTempTag(0);
-		
+
 		List<Student> updateStudentList = new ArrayList<Student>();
 		StudentCourseTimesDto dto = null;
 		for(Student s : unlabeledStudentList){
@@ -108,11 +109,11 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 				updateStudentList.add(s);
 			}
 		}
-		
+
 		if(updateStudentList.size() > 0){
 			studentDao.batchUpdate(updateStudentList);
 		}
-		
+
 		return true;
 	}
 
@@ -172,4 +173,9 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 		studentDao.batchUpdateAdviser(teacherId,studentIds);
 	}
 
+	@Override
+	public Integer updateGrade() {
+		return studentDao.updateGrade();
+	}
+
 }

+ 6 - 2
mec-biz/src/main/resources/config/mybatis/OrganizationMapper.xml

@@ -18,6 +18,7 @@
         <result column="linkman_" property="linkman"/>
         <result column="mobile_" property="mobile"/>
         <result column="address_" property="address"/>
+        <result column="grade_type_" property="gradeType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -33,8 +34,8 @@
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.Organization" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
-        INSERT INTO organization (id_,name_,area_id_,create_time_,update_time_,register_date_,linkman_,mobile_,address_)
-        VALUES(#{id},#{name},#{areaId},now(),now(),#{registerDate},#{linkman},#{mobile},#{address})
+        INSERT INTO organization (id_,name_,area_id_,create_time_,update_time_,register_date_,linkman_,mobile_,address_,grade_type_)
+        VALUES(#{id},#{name},#{areaId},now(),now(),#{registerDate},#{linkman},#{mobile},#{address},#{gradeType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -65,6 +66,9 @@
             <if test="address != null">
                 address_ = #{address},
             </if>
+            <if test="gradeType != null">
+                grade_type_ = #{gradeType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>

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

@@ -493,13 +493,14 @@
         <result property="paymentPeriodList" column="payment_period_list_"/>
         <result column="care_package_" property="carePackage"/>
         <result column="come_on_package_" property="comeOnPackage"/>
+        <result column="registerTime" property="registerTime"/>
     </resultMap>
     <select id="queryMusicGroupStudent" resultMap="MusicGroupStudentsDto">
         SELECT sr.user_id_,su.username_ real_name_,su.gender_,su.phone_ parents_phone_,sr.current_grade_,sr.current_grade_date_,
         sr.current_class_,sr.music_group_status_ student_status_,CASE WHEN sr.payment_status_ = 2 THEN 1 ELSE 0 END payment_status_,
         s.name_ subject_name_,sr.music_group_id_,CASE WHEN su.password_ IS NULL THEN 0 ELSE 1 END isActive_,
         IF(DATE_FORMAT(sr.create_time_,'%Y-%m-%d') > DATE_FORMAT(mg.payment_expire_date_,'%Y-%m-%d'),1,0) is_new_student_,
-        stu.care_package_,stu.come_on_package_
+        stu.care_package_,stu.come_on_package_,sr.create_time_ registerTime
         FROM student_registration sr
         LEFT JOIN sys_user su ON sr.user_id_ = su.id_
         LEFT JOIN `subject` s ON s.id_ = sr.actual_subject_id_

+ 16 - 0
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -19,6 +19,8 @@
         <result column="update_time_" property="updateTime"/>
         <result column="care_package_" property="carePackage"/>
         <result column="come_on_package_" property="comeOnPackage"/>
+        <result column="current_grade_num" property="currentGradeNum"/>
+        <result column="current_class_" property="currentClass"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -103,6 +105,12 @@
             <if test="comeOnPackage != null">
                 come_on_package_=#{comeOnPackage},
             </if>
+            <if test="currentGradeNum != null">
+                current_grade_num_=#{currentGradeNum},
+            </if>
+            <if test="currentClass != null">
+                current_class_=#{currentClass},
+            </if>
                 update_time_ = NOW()
         </set>
         WHERE user_id_ = #{userId}
@@ -644,4 +652,12 @@
             AND sub.id_ IS NOT NULL
         ORDER BY sub.id_ DESC
     </select>
+
+    <update id="updateGrade"><![CDATA[
+        UPDATE student SET current_grade_num_=current_grade_num_+1
+        WHERE current_grade_num_>=1
+          AND current_grade_num_<= 11
+        ]]>
+    </update>
+
 </mapper>

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

@@ -15,6 +15,7 @@
         <result column="current_grade_" property="currentGrade"/>
         <result column="current_grade_date_" property="currentGradeDate"/>
         <result column="current_grade_" property="currentGrade"/>
+        <result column="current_grade_num_" property="currentGradeNum"/>
         <result column="current_class_" property="currentClass"/>
         <result column="subject_id_" property="subjectId"/>
         <result column="actual_subject_id_" property="actualSubjectId"/>
@@ -117,6 +118,7 @@
             <if test="name!=null">name_,</if>
             <if test="musicGroupId!=null">music_group_id_,</if>
             <if test="currentGrade!=null">current_grade_,</if>
+            <if test="currentGradeNum!=null">current_grade_num_,</if>
             <if test="currentGradeDate!=null">current_grade_date_,</if>
             <if test="currentClass!=null">current_class_,</if>
             <if test="subjectId!=null">subject_id_,</if>
@@ -141,6 +143,7 @@
             <if test="name!=null">#{name},</if>
             <if test="musicGroupId!=null">#{musicGroupId},</if>
             <if test="currentGrade!=null">#{currentGrade},</if>
+            <if test="currentGradeNum!=null">#{currentGradeNum},</if>
             <if test="currentGradeDate!=null">#{currentGradeDate},</if>
             <if test="currentClass!=null">#{currentClass},</if>
             <if test="subjectId!=null">#{subjectId},</if>
@@ -180,6 +183,9 @@
             <if test="currentGrade != null">
                 current_grade_ = #{currentGrade},
             </if>
+            <if test="currentGradeNum != null">
+                current_grade_num_ = #{currentGradeNum},
+            </if>
             <if test="currentGradeDate != null">
                 current_grade_date_ = #{currentGradeDate},
             </if>

+ 13 - 12
mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java

@@ -1,5 +1,8 @@
 package com.ym.mec.student.controller;
 
+import com.ym.mec.biz.dal.dao.OrganizationDao;
+import com.ym.mec.biz.dal.entity.*;
+import com.ym.mec.biz.service.*;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -24,25 +27,13 @@ import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDetailDao;
 import com.ym.mec.biz.dal.dao.StudentPreRegistrationDao;
 import com.ym.mec.biz.dal.dto.RegisterPayDto;
-import com.ym.mec.biz.dal.entity.Goods;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum;
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
-import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
-import com.ym.mec.biz.dal.entity.StudentPreRegistration;
-import com.ym.mec.biz.dal.entity.StudentRegistration;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
-import com.ym.mec.biz.service.MusicGroupService;
-import com.ym.mec.biz.service.MusicGroupSubjectPlanService;
-import com.ym.mec.biz.service.StudentPaymentOrderDetailService;
-import com.ym.mec.biz.service.StudentPaymentOrderService;
-import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
@@ -72,6 +63,8 @@ public class MusicGroupController extends BaseController {
     
     @Autowired
     private StudentPreRegistrationDao studentPreRegistrationDao;
+    @Autowired
+    private OrganizationService organizationService;
     
     @ApiOperation("预报名")
     @PostMapping(value = "/preRegister")
@@ -348,4 +341,12 @@ public class MusicGroupController extends BaseController {
 
         return succeed(orderDetail);
     }
+
+    @ApiOperation(value = "获取乐团的年级列表")
+    @GetMapping("/getGradeList")
+    @ApiImplicitParams({@ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String")})
+    public HttpResponseResult<Map<Integer,String>> getGradeList(String musicGroupId) {
+        MusicGroup musicGroup = musicGroupService.get(musicGroupId);
+        return succeed(organizationService.getGradeList(musicGroup.getOrganId()));
+    }
 }

+ 16 - 12
mec-student/src/main/java/com/ym/mec/student/controller/StudentManageController.java

@@ -1,10 +1,11 @@
 package com.ym.mec.student.controller;
 
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
+import com.ym.mec.biz.service.*;
+import com.ym.mec.common.entity.HttpResponseResult;
+import io.swagger.annotations.*;
 
 import java.util.Date;
+import java.util.Map;
 
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -22,15 +23,6 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dto.CashAccountDetail;
 import com.ym.mec.biz.dal.entity.SysSuggestion;
 import com.ym.mec.biz.dal.entity.SysUserBankCard;
-import com.ym.mec.biz.service.ClassGroupService;
-import com.ym.mec.biz.service.ImGroupNoticeService;
-import com.ym.mec.biz.service.StudentManageService;
-import com.ym.mec.biz.service.SubjectService;
-import com.ym.mec.biz.service.SysSuggestionService;
-import com.ym.mec.biz.service.SysUserBankCardService;
-import com.ym.mec.biz.service.SysUserCashAccountDetailService;
-import com.ym.mec.biz.service.SysUserCashAccountService;
-import com.ym.mec.biz.service.UploadFileService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.UploadReturnBean;
 import com.ym.mec.common.filters.TenantIdThreadLocal;
@@ -59,6 +51,8 @@ public class StudentManageController extends BaseController {
     private StudentManageService studentManageService;
     @Autowired
     private SubjectService subjectService;
+    @Autowired
+    private OrganizationService organizationService;
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StudentManageController.class);
 
@@ -210,4 +204,14 @@ public class StudentManageController extends BaseController {
         return succeed(subjectService.findSubSubjects(tenantId));
     }
 
+    @ApiOperation(value = "获取用户所在分部的年级列表)")
+    @GetMapping("studentManage/getGradeList")
+    public HttpResponseResult<Map<Integer,String>> getGradeList() {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null){
+            return failed("请重新登录");
+        }
+        return succeed(organizationService.getGradeList(sysUser.getOrganId()));
+    }
+
 }

+ 6 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TaskController.java

@@ -340,4 +340,10 @@ public class TaskController extends BaseController {
 	public void inspectionPlan(){
 		inspectionItemPlanService.pushNotice();
 	}
+
+	//每年9.1升级学员的班级
+	@GetMapping("/updateGrade")
+	public void updateGrade(){
+		studentService.updateGrade();
+	}
 }