周箭河 4 лет назад
Родитель
Сommit
13769336e2

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentManageListDto.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.dto;
 
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.common.enums.UserGenderEnum;
 import io.swagger.annotations.ApiModelProperty;
@@ -42,6 +43,9 @@ public class StudentManageListDto {
     @ApiModelProperty(value = "年级",required = false)
     private String currentGrade;
 
+    @ApiModelProperty(value = "年级(数字表示)",required = false)
+    private Integer currentGradeNum;
+
     @ApiModelProperty(value = "课程余额")
     private BigDecimal courseBalance;
 
@@ -91,6 +95,9 @@ public class StudentManageListDto {
     @ApiModelProperty(value = "加油包:0:默认不可用;1:可用;2:已使用;")
     private Integer comeOnPackage;
 
+    @ApiModelProperty(value = "0 - 6+3年制    1 - 5+4年制")
+    private GradeTypeEnum gradeType;
+
     public String getContractVersions() {
         return contractVersions;
     }
@@ -346,4 +353,20 @@ public class StudentManageListDto {
 	public void setIsSignedContract(boolean isSignedContract) {
 		this.isSignedContract = isSignedContract;
 	}
+
+    public Integer getCurrentGradeNum() {
+        return currentGradeNum;
+    }
+
+    public void setCurrentGradeNum(Integer currentGradeNum) {
+        this.currentGradeNum = currentGradeNum;
+    }
+
+    public GradeTypeEnum getGradeType() {
+        return gradeType;
+    }
+
+    public void setGradeType(GradeTypeEnum gradeType) {
+        this.gradeType = gradeType;
+    }
 }

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

@@ -2,6 +2,7 @@ package com.ym.mec.biz.service;
 
 import java.text.ParseException;
 
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
 import org.springframework.http.ResponseEntity;
 
 import com.ym.mec.biz.dal.entity.Student;
@@ -40,4 +41,12 @@ public interface StudentService extends BaseService<Integer, Student> {
      * 升级学生的年级
      */
     Integer updateGrade();
+
+    /**
+     * 根据学制和年级数字获取年级
+     * @param gradeType
+     * @param gradeNum
+     * @return
+     */
+    String getStudentGrade(GradeTypeEnum gradeType,Integer gradeNum);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -182,6 +182,8 @@ public class StudentManageServiceImpl implements StudentManageService {
 //                if(!subject.getId().equals(dto.getUserId())) continue;
 //                dto.setSubjectName(subject.getName());
 //            }
+            //年级
+            dto.setCurrentGrade(studentService.getStudentGrade(dto.getGradeType(),dto.getCurrentGradeNum()));
         }
 
         if (queryInfo.getIsExport()) {

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java

@@ -9,6 +9,9 @@ import java.util.Map;
 import java.util.stream.Collectors;
 
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+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.page.QueryInfo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
@@ -178,4 +181,23 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 		return studentDao.updateGrade();
 	}
 
+	@Override
+	public String getStudentGrade(GradeTypeEnum gradeType, Integer gradeNum) {
+		String grade = "";
+		if(GradeTypeEnum.FIVE_PLUS.equals(gradeType)){
+			FivePlusGradeEnum[] fivePlusGradeEnums = FivePlusGradeEnum.values();
+			for (FivePlusGradeEnum fivePlusGradeEnum : fivePlusGradeEnums) {
+				if(fivePlusGradeEnum.getCode().equals(gradeNum))continue;
+				grade = fivePlusGradeEnum.getDesc();
+			}
+		}
+		if(GradeTypeEnum.SIX_PLUS.equals(gradeType)){
+			SixPlusGradeEnum[] sixPlusGradeEnums = SixPlusGradeEnum.values();
+			for (SixPlusGradeEnum sixPlusGradeEnum : sixPlusGradeEnums) {
+				if(!sixPlusGradeEnum.getCode().equals(gradeNum)) continue;
+				grade = sixPlusGradeEnum.getDesc();
+			}
+		}
+		return grade;
+	}
 }

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

@@ -44,6 +44,7 @@
         <result property="username" column="username_"/>
         <result property="birthdate" column="birthdate_"/>
         <result property="currentGrade" column="current_grade_"/>
+        <result property="currentGradeNum" column="current_grade_num_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result property="currentClass" column="current_class_"/>
         <result property="isActive" column="isActive_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result property="hasCourse" column="hasCourse_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
@@ -66,6 +67,7 @@
         <result property="isSignedContract" column="is_signed_contract_"/>
         <result column="care_package_" property="carePackage"/>
         <result column="come_on_package_" property="comeOnPackage"/>
+        <result column="grade_type_" property="gradeType"/>
     </resultMap>
 
     <sql id="queryCondition">
@@ -152,9 +154,10 @@
     </update>
 
     <select id="findStudentsByOrganId" resultMap="studentManageListDto">
-        SELECT o.`name_` organ_name_,s.`user_id_` ,su.`username_` ,su.`phone_` parents_phone_,su.`real_name_` ,su.`gender_` , su.organ_id_,
+        SELECT o.`name_` organ_name_,o.grade_type_,s.`user_id_` ,su.`username_` ,su.`phone_` parents_phone_,su.`real_name_` ,su.`gender_` , su.organ_id_,
 		tu.`real_name_` teacher_name_,CASE s.service_tag_ WHEN 2 THEN 0 ELSE s.service_tag_ END service_tag_ ,s.`operating_tag_` , s.care_package_, s.come_on_package_, suca.`course_balance_` ,
-		sub.`name_` music_group_subject_ ,su.birthdate_,s.subject_id_list_,s.teacher_id_,case when su.password_ is null then false else true end isActive_,s.is_new_user_,case when sut.user_id_ is null then 0 else 1 end is_signed_contract_
+		sub.`name_` music_group_subject_ ,su.birthdate_,s.subject_id_list_,s.teacher_id_,s.current_grade_num_,s.current_class_,
+        case when su.password_ is null then false else true end isActive_,s.is_new_user_,case when sut.user_id_ is null then 0 else 1 end is_signed_contract_
 		FROM `student` s LEFT JOIN `sys_user` su on s.`user_id_` = su.`id_`
 		LEFT JOIN `organization` o on o.`id_` = su.`organ_id_`
 		LEFT JOIN `sys_user` tu on tu.`id_` = s.`teacher_id_`