Selaa lähdekoodia

Merge remote-tracking branch 'origin/master'

Joburgess 5 vuotta sitten
vanhempi
commit
16ebf9da2c
21 muutettua tiedostoa jossa 193 lisäystä ja 74 poistoa
  1. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseScheduleTeacherSalaryQueryInfo.java
  2. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/EndCourseScheduleQueryInfo.java
  3. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupStudentQueryInfo.java
  4. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/PracticeGroupQueryInfo.java
  5. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/SporadicChargeInfoQueryInfo.java
  6. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentManageQueryInfo.java
  7. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentPaymentOrderQueryInfo.java
  8. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentRegistrationQueryInfo.java
  9. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/VipGroupQueryInfo.java
  10. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  11. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleEvaluateServiceImpl.java
  12. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  13. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  14. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java
  15. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SporadicChargeInfoImpl.java
  16. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  17. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  18. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  19. 1 1
      mec-biz/src/main/resources/config/contracts/practice.ftl
  20. 62 1
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java
  21. 26 69
      mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseScheduleTeacherSalaryQueryInfo.java

@@ -22,6 +22,16 @@ public class CourseScheduleTeacherSalaryQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "课程类型",required = false)
     private String courseScheduleType;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public Integer getOrganId() {
         return organId;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/EndCourseScheduleQueryInfo.java

@@ -57,6 +57,16 @@ public class EndCourseScheduleQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "教学点编号")
     private Integer schoolId;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public Integer getSchoolId() {
         return schoolId;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupStudentQueryInfo.java

@@ -29,6 +29,16 @@ public class MusicGroupStudentQueryInfo extends QueryInfo {
   @ApiModelProperty(value = "缴费状态  PAID_COMPLETED(完成缴费), NON_PAYMENT(未缴费), PROCESSING(缴费中)",required = false)
   private String paymentStatus;
 
+  private boolean isExport = false;
+
+  public boolean getIsExport() {
+    return isExport;
+  }
+
+  public void setIsExport(boolean export) {
+    isExport = export;
+  }
+
   public Integer getClassGroupId() {
     return classGroupId;
   }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/PracticeGroupQueryInfo.java

@@ -14,6 +14,16 @@ public class PracticeGroupQueryInfo extends QueryInfo {
 
     private Long practiceId;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public Long getPracticeId() {
         return practiceId;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/SporadicChargeInfoQueryInfo.java

@@ -15,6 +15,16 @@ public class SporadicChargeInfoQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "类型",required = false)
     private String type;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public String getType() {
         return type;
     }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentManageQueryInfo.java

@@ -32,7 +32,7 @@ public class StudentManageQueryInfo extends QueryInfo {
 
     private Boolean isMake;
 
-    private Boolean isExport;
+    private Boolean isExport = false;
 
     private Boolean hasCourse;
 

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentPaymentOrderQueryInfo.java

@@ -32,6 +32,16 @@ public class StudentPaymentOrderQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "订单类型",required = false)
     private String orderType;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public String getOrganId() {
         return organId;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentRegistrationQueryInfo.java

@@ -25,6 +25,16 @@ public class StudentRegistrationQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "用户名或手机号",required = false)
     private String name;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public String getName() {
         return name;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/VipGroupQueryInfo.java

@@ -18,6 +18,16 @@ public class VipGroupQueryInfo extends QueryInfo {
 
     private String status;
 
+    private boolean isExport = false;
+
+    public boolean getIsExport() {
+        return isExport;
+    }
+
+    public void setIsExport(boolean export) {
+        isExport = export;
+    }
+
     public String getStatus() {
         return status;
     }

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

@@ -988,7 +988,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                 Map<Integer, Long> reportMap = courseScheduleEvaluates.stream().collect(Collectors.toMap(CourseScheduleEvaluate::getClassGroupId, CourseScheduleEvaluate::getId));
                 if(reportMap.containsKey(teacherClassGroupDto.getClassGroupId().intValue())){
                     teacherClassGroupDto.setHasReport(true);
-                    String studyReportUrl = sysConfigDao.findConfigValue(SysConfigService.TEACHER_STUDY_REPORT_URL);
+                    String studyReportUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_STUDY_REPORT_URL);
                     teacherClassGroupDto.setStudyReportUrl(studyReportUrl+teacherClassGroupDto.getClassGroupId());
                 }else if(classGroupNoStartClassTimes.intValue()==0 && classGroupTeacherMap.get(teacherClassGroupDto.getClassGroupId().intValue()).equals(user.getId())){
                    String studyReportUrl = sysConfigDao.findConfigValue(SysConfigService.TEACHER_STUDY_REPORT_URL);

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

@@ -68,7 +68,7 @@ public class CourseScheduleEvaluateServiceImpl extends BaseServiceImpl<Long, Cou
         Map<Integer, String> push = new HashMap<>(1);
         push.put(practiceGroup.getStudentId(), practiceGroup.getStudentId().toString());
         String baseUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
-        String memo = baseUrl + "/#/study?classGroupId=" + classGroup.getId();
+        String memo = baseUrl + "/#/reportDetail?classGroupId=" + classGroup.getId();
         BasicUserDto teacherInfo = teacherDao.findTeacherInfo(courseScheduleEvaluate.getTeacherId());
 
         sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.PUSH_STUDY_REPORT, push, null, 0, memo, "STUDENT",

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -2884,6 +2884,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         params.put("courseScheduleIds", courseScheduleIdSet);
         List<CourseScheduleEndDto> results = new ArrayList<>();
         int count = courseScheduleDao.endCountCourseSchedules(params);
+        if(queryInfo.getIsExport() && count > 2000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         if (count > 0) {
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -584,6 +584,9 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
         List<TeacherSalaryDto> dataList = null;
         int count = courseScheduleTeacherSalaryDao.countSalaries(params);
+        if(queryInfo.getIsExport() && count > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         if (count > 0) {
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -2002,6 +2002,9 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 
         List<PracticeGroupDto> dataList = null;
         int count = practiceGroupDao.countPracticeGroupByOrgan(params);
+        if(queryInfo.getIsExport() && count > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         if (count > 0) {
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SporadicChargeInfoImpl.java

@@ -138,6 +138,9 @@ public class SporadicChargeInfoImpl extends BaseServiceImpl<Integer, SporadicCha
         PageInfo<SporadicChargeInfo> pageInfo = queryPage(queryInfo);
         List<SporadicChargeInfo> rows = pageInfo.getRows();
         if (rows != null && rows.size() > 0) {
+            if(queryInfo.getIsExport() && rows.size() > 50000){
+                throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+            }
             Set<Integer> organIds = rows.stream().map(e -> e.getOrganId()).collect(Collectors.toSet());
             List<Integer> userIds = rows.stream().map(e -> e.getUserId()).collect(Collectors.toList());
             if(userIds == null){

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

@@ -260,6 +260,9 @@ public class StudentManageServiceImpl implements StudentManageService {
 
         List<MusicGroupStudentsDto> dataList = null;
         int count = studentManageDao.countMusicGroupStudent(params);
+        if(queryInfo.getIsExport() && count > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         if (count > 0) {
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -147,6 +147,9 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 
         List<StudentApplyDetailDto> dataList = null;
         int count = studentRegistrationDao.queryStudentDetailCount(params);
+        if(queryInfo.getIsExport() && count > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         if (count > 0) {
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -546,6 +546,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		List<VipGroup> dataList = null;
 		int count = vipGroupDao.countVipGroupByOrgan(params);
+		if(queryInfo.getIsExport() && count > 50000){
+			throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+		}
 		if (count > 0) {
 			pageInfo.setTotal(count);
 			params.put("offset", pageInfo.getOffset());

+ 1 - 1
mec-biz/src/main/resources/config/contracts/practice.ftl

@@ -94,7 +94,7 @@
                 <th>费用</th>
             </tr>
             <tr>
-                <td style="text-align: center;">陪练课</td>
+                <td style="text-align: center;">网管课</td>
                 <td style="text-align: center;">${courseSectionNum}</td>
                 <td style="text-align: center;">${startDate?string("yyyy-MM-dd")}/${endDate?string("yyyy-MM-dd")}</td>
                 <td style="text-align: center;">${fee?string("0.00")}</td>

+ 62 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -26,6 +26,7 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
@@ -34,7 +35,7 @@ import java.util.stream.Collectors;
 
 @RequestMapping
 @Api(tags = "数据导出服务")
-@Controller
+@RestController
 public class ExportController extends BaseController {
 
     @Autowired
@@ -66,10 +67,54 @@ public class ExportController extends BaseController {
     @Autowired
     private SporadicChargeInfoService sporadicChargeInfoService;
 
+
+    @ApiOperation(value = "导出学员是否有课")
+    @PostMapping("export/studentHasCourse")
+    @PreAuthorize("@pcs.hasPermissions('export/studentHasCourse')")
+    public void studentHasCourse(HttpServletResponse response, StudentManageQueryInfo queryInfo) {
+        queryInfo.setRows(99999);
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            throw new BizException("用户信息获取失败");
+        }
+        if(!sysUser.getIsSuperAdmin()){
+            Employee employee = employeeDao.get(sysUser.getId());
+            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+                queryInfo.setOrganId(employee.getOrganIdList());
+            }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+                throw new BizException("用户所在分部异常");
+            }else {
+                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+                if(!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))){
+                    throw new BizException("非法请求");
+                }
+            }
+        }
+        queryInfo.setIsExport(true);
+        List<StudentManageListDto> rows = studentManageService.findStudentsByOrganId(queryInfo).getRows();
+        try {
+            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "学员编号", "学员姓名", "性别", "家长姓名",
+                    "家长联系电话", "是否激活", "是否有课", "是否预约陪练课","是否有陪练课", "课程余额(元)",
+                    "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态"}, new String[]{
+                    "organName", "userId", "username", "gender.description", "parentsName", "parentsPhone",
+                    "isActive.msg","hasCourse.msg","isMake.msg","hasPracticeCourse.msg","courseBalance","musicGroupName",
+                    "subjectName","musicGroupStatus","vipGroupName","vipGroupStatus"}, rows);
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            workbook.write(response.getOutputStream());
+            workbook.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+
     @ApiOperation(value = "导出陪练课列表")
     @GetMapping("export/practiceGroupList")
     @PreAuthorize("@pcs.hasPermissions('export/practiceGroupList')")
     public void queryAll(HttpServletResponse response,PracticeGroupQueryInfo queryInfo) {
+        queryInfo.setIsExport(true);
         queryInfo.setRows(999999999);
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
@@ -114,6 +159,7 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/vipGroupList')")
     public void queryAll(HttpServletResponse response,VipGroupQueryInfo queryInfo) {
         queryInfo.setRows(999999999);
+        queryInfo.setIsExport(true);
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
@@ -158,6 +204,7 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/superFindCourseSchedules')")
     public void superFindCourseSchedules(EndCourseScheduleQueryInfo queryInfo,HttpServletResponse response){
         queryInfo.setRows(999999999);
+        queryInfo.setIsExport(true);
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
@@ -198,6 +245,7 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/sporadicChargeInfo')")
     public void queryPage(SporadicChargeInfoQueryInfo queryInfo,HttpServletResponse response) {
         queryInfo.setRows(999999999);
+        queryInfo.setIsExport(true);
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
@@ -262,6 +310,9 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('order/musicalListExport')")
     public void musicalListExport(HttpServletResponse response, String musicGroupId) {
         List<Goods> musicalList = studentPaymentOrderDetailService.getMusicalList(musicGroupId);
+        if(musicalList.size() > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "乐团", "商品类型", "商品名称", "型号", "数量"}, new String[]{
                     "brief", "memo", "type.desc", "name", "specification", "sellCount"}, musicalList);
@@ -280,6 +331,9 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('order/musicalListDetailExport')")
     public void musicalListDetailExport(HttpServletResponse response, String musicGroupId) {
         List<musicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
+        if(musicalList.size() > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "乐团", "学员编号", "学员姓名", "购买商品", "采购方式", "乐器金额", "教辅金额", "课程金额", "订单总价"}, new String[]{
                     "organName", "musicGroupName", "userId", "username", "goodsNames", "kitGroupPurchaseTypeEnum.msg", "musicalAmount", "accessoriesAmount", "courseAmount", "orderAmount"}, musicalList);
@@ -297,6 +351,7 @@ public class ExportController extends BaseController {
     @PostMapping(value = "studentRegistration/queryStudentApplyDetailExport")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/queryStudentApplyDetailExport')")
     public void queryStudentApplyDetailExport(StudentRegistrationQueryInfo queryInfo, HttpServletResponse response) {
+        queryInfo.setIsExport(true);
         List<StudentApplyDetailDto> studentApplyDetail = studentRegistrationService.queryStudentDetailPage(queryInfo).getRows();
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"学生姓名", "家长姓名", "年级", "班级", "性别", "服从调剂", "报名专业", "实际专业", "联系电话", "学员缴费状态", "乐器购买方式"}, new String[]{
@@ -315,6 +370,7 @@ public class ExportController extends BaseController {
     @RequestMapping("courseScheduleTeacherSalary/export")
     @PreAuthorize("@pcs.hasPermissions('courseScheduleTeacherSalary/export')")
     public void export(CourseScheduleTeacherSalaryQueryInfo queryInfo, HttpServletResponse response) {
+        queryInfo.setIsExport(true);
         List<TeacherSalaryDto> teacherSalaries = courseScheduleTeacherSalaryService.querySalaries(queryInfo).getRows();
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"用户编号", "用户名", "手机号", "课程类型", "实际薪水", "补助", "结算时间", "教师角色"}, new String[]{
@@ -341,9 +397,13 @@ public class ExportController extends BaseController {
             }
         }
         queryInfo.setRows(999999999);
+        queryInfo.setIsExport(true);
         Map<String, Object> params = new HashMap<String, Object>();
         MapUtil.populateMap(params, queryInfo);
         List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentOrderService.ExportQueryPage(params);
+        if(studentPaymentOrderExportDtos.size() > 50000){
+            throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
+        }
 
         long i = 1;
         for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
@@ -464,6 +524,7 @@ public class ExportController extends BaseController {
     @RequestMapping("export/musicGroupStudent")
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupStudent')")
     public void queryMusicGroupStudent(MusicGroupStudentQueryInfo queryInfo, HttpServletResponse response) {
+        queryInfo.setIsExport(true);
         queryInfo.setRows(99999);
         PageInfo<MusicGroupStudentsDto> musicGroupStudentsDtoPageInfo = studentManageService.queryMusicGroupStudent(queryInfo);
         try {

+ 26 - 69
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -3,7 +3,6 @@ package com.ym.mec.web.controller;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
-import com.ym.mec.biz.dal.dto.StudentManageListDto;
 import com.ym.mec.biz.dal.dto.UpdateStudentFeeDto;
 import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.page.*;
@@ -14,24 +13,24 @@ import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.QueryInfo;
-import com.ym.mec.util.date.DateUtil;
-import com.ym.mec.util.excel.POIUtil;
 import io.swagger.annotations.*;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletResponse;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
 @Api(tags = "学生管理")
 @RestController
+@RequestMapping("studentManage")
 public class StudentManageController extends BaseController {
 
     @Autowired
@@ -48,50 +47,8 @@ public class StudentManageController extends BaseController {
     private EmployeeDao employeeDao;
 
     private final Logger LOGGER = LoggerFactory.getLogger(this.getClass());
-    @ApiOperation(value = "导出学员是否有课")
-    @PostMapping("export/studentHasCourse")
-    @PreAuthorize("@pcs.hasPermissions('export/studentHasCourse')")
-    public void studentHasCourse(HttpServletResponse response, StudentManageQueryInfo queryInfo) {
-        queryInfo.setRows(99999);
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            throw new BizException("用户信息获取失败");
-        }
-        if(!sysUser.getIsSuperAdmin()){
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            }else if(StringUtils.isEmpty(employee.getOrganIdList())){
-                throw new BizException("用户所在分部异常");
-            }else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if(!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))){
-                    throw new BizException("非法请求");
-                }
-            }
-        }
-        queryInfo.setIsExport(true);
-//        List<StudentManageListDto> rows = studentManageService.queryHasCourseStudent(queryInfo);
-        List<StudentManageListDto> rows = studentManageService.findStudentsByOrganId(queryInfo).getRows();
-        try {
-            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "学员编号", "学员姓名", "性别", "家长姓名",
-                    "家长联系电话", "是否激活", "是否有课", "是否预约陪练课","是否有陪练课", "课程余额(元)",
-                    "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态"}, new String[]{
-                    "organName", "userId", "username", "gender.description", "parentsName", "parentsPhone",
-                    "isActive.msg","hasCourse.msg","isMake.msg","hasPracticeCourse.msg","courseBalance","musicGroupName",
-                    "subjectName","musicGroupStatus","vipGroupName","vipGroupStatus"}, rows);
-            response.setContentType("application/octet-stream");
-            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
-            response.flushBuffer();
-            workbook.write(response.getOutputStream());
-            workbook.close();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-    }
-
     @ApiOperation(value = "获取学生列表")
-    @GetMapping("studentManage/queryStudentList")
+    @GetMapping("/queryStudentList")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryStudentList')")
     public Object queryStudentList(StudentManageQueryInfo queryInfo){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -116,14 +73,14 @@ public class StudentManageController extends BaseController {
     }
 
     @ApiOperation(value = "学员注册")
-    @PostMapping("studentManage/register")
+    @PostMapping("/register")
     @PreAuthorize("@pcs.hasPermissions('studentManage/register')")
     public Object studentRegister(SysUser sysUser){
         return succeed(studentManageService.studentRegister(sysUser));
     }
 
     @ApiOperation(value = "修改学员信息")
-    @PostMapping("studentManage/studentUpdate")
+    @PostMapping("/studentUpdate")
     @PreAuthorize("@pcs.hasPermissions('studentManage/studentUpdate')")
     public Object studentUpdate(Integer id, String phone, String username, Integer gender, String realName, Date birthdate,String nation){
         SysUser sysUser = new SysUser();
@@ -138,14 +95,14 @@ public class StudentManageController extends BaseController {
     }
 
     @ApiOperation(value = "乐团管理--乐团详情--获取学员列表")
-    @GetMapping("studentManage/queryMusicGroupStudent")
+    @GetMapping("/queryMusicGroupStudent")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryMusicGroupStudent')")
     public Object queryMusicGroupStudent(MusicGroupStudentQueryInfo queryInfo){
         return succeed(studentManageService.queryMusicGroupStudent(queryInfo));
     }
 
     @ApiOperation(value = "乐团管理--乐团详情--学员列表--查看班级")
-    @GetMapping("studentManage/queryStudentClassGroup")
+    @GetMapping("/queryStudentClassGroup")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryStudentClassGroup')")
     @ApiImplicitParams({@ApiImplicitParam(name = "teacherId", value = "学生编号", required = true, dataType = "Integer"),
             @ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String")})
@@ -157,70 +114,70 @@ public class StudentManageController extends BaseController {
     }
 
     @ApiOperation(value = "乐团管理--乐团详情--学员列表,汇总数据接口")
-    @GetMapping("studentManage/musicGroupStudentsSum")
+    @GetMapping("/musicGroupStudentsSum")
     @PreAuthorize("@pcs.hasPermissions('studentManage/musicGroupStudentsSum')")
     public Object musicGroupStudentsSum(String musicGroupId){
         return succeed(studentManageService.musicGroupStudentsSum(musicGroupId));
     }
 
     @ApiOperation(value = "乐团管理--乐团详情--点名总览")
-    @GetMapping("studentManage/queryMusicGroupStudentsSign")
+    @GetMapping("/queryMusicGroupStudentsSign")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryMusicGroupStudentsSign')")
     public Object queryMusicGroupStudentsSign(StudentSignQueryInfo queryInfo){
         return succeed(studentManageService.queryMusicGroupStudentsSign(queryInfo));
     }
 
     @ApiOperation(value = "根据学生ID获取学生基本报名信息")
-    @GetMapping("studentManage/findStudentBaseInfo")
+    @GetMapping("/findStudentBaseInfo")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentBaseInfo')")
     public Object findStudentBaseInfo(@ApiParam(value = "学生编号", required = true) Integer userId){
         return succeed(studentManageService.findStudentManageBaseInfo(userId));
     }
 
     @ApiOperation(value = "根据学生ID获取其所在的乐团")
-    @GetMapping("studentManage/findStudentMusicGroups")
+    @GetMapping("/findStudentMusicGroups")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentMusicGroups')")
     public Object findStudentMusicGroups(@ApiParam(value = "学生编号", required = true) Integer userId){
         return succeed(studentManageService.findStudentMusicGroupsByUserId(userId));
     }
 
     @ApiOperation(value = "根据乐团获取排课列表")
-    @GetMapping("studentManage/findStudentCourses")
+    @GetMapping("/findStudentCourses")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentCourses')")
     public Object findStudentCourses(StudentManageCourseQueryInfo queryInfo){
         return succeed(studentManageService.findStudentCourseList(queryInfo));
     }
 
     @ApiOperation(value = "获取学生签到列表")
-    @GetMapping("studentManage/findStudentAttendances")
+    @GetMapping("/findStudentAttendances")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentAttendances')")
     public Object findStudentAttendances(StudentManageAttendanceQueryInfo queryInfo){
         return succeed(studentManageService.findStudentAttendances(queryInfo));
     }
 
     @ApiOperation(value = "获取学生vip课程")
-    @GetMapping("studentManage/findStudentVipGroups")
+    @GetMapping("/findStudentVipGroups")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentVipGroups')")
     public Object findStudentVipGroups(StudentManageCourseQueryInfo queryInfo){
         return succeed(studentManageService.findStudentVipGroups(queryInfo));
     }
 
     @ApiOperation(value = "获取学生vip班级列表")
-    @GetMapping("studentManage/findStudentVipGroupClass")
+    @GetMapping("/findStudentVipGroupClass")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentVipGroupClass')")
     public Object findStudentVipGroupClass(StudentManageVipClassQueryInfo queryInfo){
         return succeed(studentManageService.findStudentVipGroupClass(queryInfo));
     }
 
     @ApiOperation(value = "获取用户默认账户基本信息")
-    @GetMapping("studentManage/getUserCashAccountBaseInfo")
+    @GetMapping("/getUserCashAccountBaseInfo")
     @PreAuthorize("@pcs.hasPermissions('studentManage/getUserCashAccountBaseInfo')")
     public Object getUserCashAccountBaseInfo(Integer userId){
         return succeed(studentManageService.getStudentAccountBaseInfo(userId));
     }
 
     @ApiOperation(value = "获取学员扣费记录列表")
-    @GetMapping("studentManage/queryStudentPayment")
+    @GetMapping("/queryStudentPayment")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryStudentPayment')")
     public Object queryStudentPayment(TeacherPaymentRecordInfo queryInfo){
         return succeed(studentManageService.queryStudentPayment(queryInfo));
@@ -231,7 +188,7 @@ public class StudentManageController extends BaseController {
      * @param mobile
      * @return
      */
-    @GetMapping(value = "studentManage/queryUserByPhone")
+    @GetMapping(value = "/queryUserByPhone")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryUserByPhone')")
     public Object queryUserByPhone(String mobile) {
         return succeed(studentRegistrationService.queryUserByPhone(mobile));
@@ -241,7 +198,7 @@ public class StudentManageController extends BaseController {
      * 修改学员缴费金额和缴费周期
      * @return
      */
-    @PostMapping(value = "studentManage/updateStudentFee")
+    @PostMapping(value = "/updateStudentFee")
     @PreAuthorize("@pcs.hasPermissions('studentManage/updateStudentFee')")
     public Object updateStudentFee(UpdateStudentFeeDto studentFeeDto) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -257,7 +214,7 @@ public class StudentManageController extends BaseController {
      * 修改学员缴费周期锁定状态
      * @return
      */
-    @PostMapping(value = "studentManage/updateStudentFeeIsLock")
+    @PostMapping(value = "/updateStudentFeeIsLock")
     @PreAuthorize("@pcs.hasPermissions('studentManage/updateStudentFeeIsLock')")
     public Object updateStudentFeeIsLock(UpdateStudentFeeDto studentFeeDto) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -273,7 +230,7 @@ public class StudentManageController extends BaseController {
      * 获取学员缴费日历信息
      * @return
      */
-    @GetMapping(value = "studentManage/findMusicGroupStudentFee")
+    @GetMapping(value = "/findMusicGroupStudentFee")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findMusicGroupStudentFee')")
     public Object findMusicGroupStudentFee(Integer studentId,String musicGroupId) {
         if(studentId == null || StringUtils.isEmpty(musicGroupId)){
@@ -290,7 +247,7 @@ public class StudentManageController extends BaseController {
      * 获取课程学员作业列表
      * @return
      */
-    @GetMapping(value = "studentManage/findStudentCourseHomeworks")
+    @GetMapping(value = "/findStudentCourseHomeworks")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentCourseHomeworks')")
     public Object findStudentCourseHomeworks(QueryInfo queryInfo) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -304,7 +261,7 @@ public class StudentManageController extends BaseController {
      * 获取课程学员作业列表
      * @return
      */
-    @GetMapping(value = "studentManage/sumStudentAttendance")
+    @GetMapping(value = "/sumStudentAttendance")
     @PreAuthorize("@pcs.hasPermissions('studentManage/sumStudentAttendance')")
     public Object sumStudentAttendance(Integer courseScheduleId) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();