瀏覽代碼

Merge branch 'mec_update_2021-11-02' of http://git.dayaedu.com/yonge/mec into im_update

zouxuan 3 年之前
父節點
當前提交
98224a38be
共有 21 個文件被更改,包括 102 次插入50 次删除
  1. 2 0
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUserRole.java
  2. 0 1
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/RoleController.java
  3. 7 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/UserController.java
  4. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleStudentPaymentDao.java
  5. 3 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SchoolDao.java
  6. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentVipPracticeExportDto.java
  7. 4 4
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ReturnFeeEnum.java
  8. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/ExportService.java
  9. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/SchoolService.java
  10. 4 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java
  11. 11 14
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  12. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SchoolServiceImpl.java
  13. 14 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SellOrderServiceImpl.java
  14. 10 8
      mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml
  15. 3 0
      mec-biz/src/main/resources/config/mybatis/SchoolMapper.xml
  16. 1 1
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml
  17. 2 2
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherSchoolController.java
  18. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java
  19. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/SchoolController.java
  20. 19 1
      mec-web/src/main/java/com/ym/mec/web/controller/education/EduOnlineMusicGroupController.java
  21. 4 4
      mec-web/src/main/java/com/ym/mec/web/controller/education/EduSchoolController.java

+ 2 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUserRole.java

@@ -17,6 +17,8 @@ public class SysUserRole {
 	public static Integer ADMISSIONS_DIRECTOR = 6;
 	public static Integer ADMISSIONS_DIRECTOR = 6;
 	//教学主任、乐队指导
 	//教学主任、乐队指导
 	public static Integer DEAN_OF_STUDIES = 7;
 	public static Integer DEAN_OF_STUDIES = 7;
+	//维修技师
+	public static Integer REPAIR = 37;
 	//总部管理员
 	//总部管理员
 	public static Integer ADMINISTRATOR = 25;
 	public static Integer ADMINISTRATOR = 25;
 
 

+ 0 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/RoleController.java

@@ -39,7 +39,6 @@ public class RoleController extends BaseController {
 	private SysRoleMenuService sysRoleMenuService;
 	private SysRoleMenuService sysRoleMenuService;
 	@Autowired
 	@Autowired
 	private SysMenuService sysMenuService;
 	private SysMenuService sysMenuService;
-
 	@Autowired
 	@Autowired
 	private SysUserRoleService sysUserRoleService;
 	private SysUserRoleService sysUserRoleService;
 
 

+ 7 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/UserController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.auth.web.controller;
 package com.ym.mec.auth.web.controller;
 
 
+import com.ym.mec.common.page.QueryInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiImplicitParams;
@@ -316,6 +317,12 @@ public class UserController extends BaseController {
 	public Object getRole() {
 	public Object getRole() {
 		AuthUser user = SecurityUtils.getUser();
 		AuthUser user = SecurityUtils.getUser();
 		if (user != null) {
 		if (user != null) {
+			SysUser sysUser = sysUserService.get(user.getUserId());
+			if(sysUser.getIsSuperAdmin()){
+				QueryInfo queryInfo = new QueryInfo();
+				queryInfo.setRows(9999);
+				return succeed(sysRoleService.queryPage(queryInfo).getRows());
+			}
 			return succeed(sysRoleService.findRoleByUserId(user.getUserId()));
 			return succeed(sysRoleService.findRoleByUserId(user.getUserId()));
 		}
 		}
 		return failed();
 		return failed();

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleStudentPaymentDao.java

@@ -568,7 +568,7 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
     * @author zx
     * @author zx
     * @date 2021/11/5 11:30
     * @date 2021/11/5 11:30
     */
     */
-    boolean hasCourse(@Param("organId") Integer organId);
+    boolean hasCourse(@Param("organId") String organId);
 
 
     /**
     /**
     * @description:  报表中心学员小课记录导出
     * @description:  报表中心学员小课记录导出
@@ -577,5 +577,5 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
     * @author zx
     * @author zx
     * @date 2021/11/5 11:54 
     * @date 2021/11/5 11:54 
     */
     */
-    List<StudentVipPracticeExportDto> exportStudentVipPractice(@Param("organId") Integer organId);
+    List<StudentVipPracticeExportDto> exportStudentVipPractice(@Param("organId") String organId);
 }
 }

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

@@ -49,7 +49,9 @@ public interface SchoolDao extends BaseDAO<Integer, School> {
      */
      */
     List<School> findVipSchoolByUserId(@Param("userId") Integer userId,
     List<School> findVipSchoolByUserId(@Param("userId") Integer userId,
                                        @Param("organId") String organId,
                                        @Param("organId") String organId,
-                                       @Param("isDefault") Integer isDefault);
+                                       @Param("isDefault") Integer isDefault,
+                                       @Param("search") String search);
+
     List<School> findVipSchoolByUserId2(@Param("userId") Integer userId,
     List<School> findVipSchoolByUserId2(@Param("userId") Integer userId,
                                        @Param("organId") String organId);
                                        @Param("organId") String organId);
 
 

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentVipPracticeExportDto.java

@@ -33,6 +33,16 @@ public class StudentVipPracticeExportDto{
 
 
     private String teacherName;
     private String teacherName;
 
 
+    private String organName;
+
+    public String getOrganName() {
+        return organName;
+    }
+
+    public void setOrganName(String organName) {
+        this.organName = organName;
+    }
+
     public String getVipOverTeacherIds() {
     public String getVipOverTeacherIds() {
         return vipOverTeacherIds;
         return vipOverTeacherIds;
     }
     }

+ 4 - 4
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ReturnFeeEnum.java

@@ -6,10 +6,10 @@ import com.ym.mec.common.enums.BaseEnum;
  * 退费类型 (VIP vip退课,关闭,PRACTICE 网管课关闭,MUSIC 退团,GOODS 退商品)
  * 退费类型 (VIP vip退课,关闭,PRACTICE 网管课关闭,MUSIC 退团,GOODS 退商品)
  */
  */
 public enum ReturnFeeEnum implements BaseEnum<String, ReturnFeeEnum> {
 public enum ReturnFeeEnum implements BaseEnum<String, ReturnFeeEnum> {
-	VIP("VIP", "退学、关闭"),
-	PRACTICE("PRACTICE", "关闭网管课"),
-	MUSIC("MUSIC", "退团"),
-	GOODS("GOODS", "退货");
+	VIP("VIP", "VIP退学"),
+	PRACTICE("PRACTICE", "网管课关闭"),
+	MUSIC("MUSIC", "乐团退团"),
+	GOODS("GOODS", "商品退费");
 
 
 	private String code;
 	private String code;
 
 

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

@@ -40,5 +40,5 @@ public interface ExportService {
     * @author zx
     * @author zx
     * @date 2021/11/5 11:38 
     * @date 2021/11/5 11:38 
     */
     */
-    void studentVipPractice(Integer organId, ManagerDownload managerDownload) throws FileNotFoundException;
+    void studentVipPractice(String organId, ManagerDownload managerDownload) throws FileNotFoundException;
 }
 }

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

@@ -33,7 +33,7 @@ public interface SchoolService extends BaseService<Integer, School> {
      * @param teacherId:
      * @param teacherId:
      * @return java.util.List<com.ym.mec.biz.dal.entity.School>
      * @return java.util.List<com.ym.mec.biz.dal.entity.School>
      */
      */
-    List<School> findVipSchoolByTeacher(Integer teacherId,String organId,Integer isDefault);
+    List<School> findVipSchoolByTeacher(Integer teacherId,String organId,Integer isDefault,String search);
 
 
     /**
     /**
      * @describe 获取教师vip课教学点
      * @describe 获取教师vip课教学点

+ 4 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -885,7 +885,8 @@ public class ExportServiceImpl implements ExportService {
     }
     }
 
 
     @Override
     @Override
-    public void studentVipPractice(Integer organId, ManagerDownload managerDownload) throws FileNotFoundException {
+    @Async
+    public void studentVipPractice(String organId, ManagerDownload managerDownload) throws FileNotFoundException {
         List<StudentVipPracticeExportDto> studentVipPracticeExportDtos = courseScheduleStudentPaymentDao.exportStudentVipPractice(organId);
         List<StudentVipPracticeExportDto> studentVipPracticeExportDtos = courseScheduleStudentPaymentDao.exportStudentVipPractice(organId);
         for (StudentVipPracticeExportDto studentVipPracticeExportDto : studentVipPracticeExportDtos) {
         for (StudentVipPracticeExportDto studentVipPracticeExportDto : studentVipPracticeExportDtos) {
             String vipOverTeacherIds = studentVipPracticeExportDto.getVipOverTeacherIds();
             String vipOverTeacherIds = studentVipPracticeExportDto.getVipOverTeacherIds();
@@ -908,9 +909,9 @@ public class ExportServiceImpl implements ExportService {
 
 
         HSSFWorkbook workbook = null;
         HSSFWorkbook workbook = null;
         try {
         try {
-            String[] header = {"学员编号", "学生姓名", "VIP已结束课时数", "VIP未开始课时数", "已结束VIP上课老师编号", "已结束VIP上课老师",
+            String[] header = {"分部", "学员编号", "学生姓名", "VIP已结束课时数", "VIP未开始课时数", "已结束VIP上课老师编号", "已结束VIP上课老师",
                     "网管课已结束课时数", "网管课未开始课时数", "已结束网管课上课老师编号", "已结束网管课上课老师", "指导老师编号", "指导老师"};
                     "网管课已结束课时数", "网管课未开始课时数", "已结束网管课上课老师编号", "已结束网管课上课老师", "指导老师编号", "指导老师"};
-            String[] body = {"userId", "username", "vipOverNum", "vipNotStartNum", "vipOverTeacherIds", "vipOverTeacherNames"
+            String[] body = {"organName","userId", "username", "vipOverNum", "vipNotStartNum", "vipOverTeacherIds", "vipOverTeacherNames"
                     , "practiceOverNum", "practiceNotStartNum", "practiceOverTeacherIds", "practiceOverTeacherNames","teacherId","teacherName"};
                     , "practiceOverNum", "practiceNotStartNum", "practiceOverTeacherIds", "practiceOverTeacherNames","teacherId","teacherName"};
             workbook = POIUtil.exportExcel(header, body, studentVipPracticeExportDtos);
             workbook = POIUtil.exportExcel(header, body, studentVipPracticeExportDtos);
             workbook.write(fileOutputStream);
             workbook.write(fileOutputStream);

+ 11 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -547,21 +547,18 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         if (musicGroup == null) {
         if (musicGroup == null) {
             throw new BizException("乐团信息查询失败");
             throw new BizException("乐团信息查询失败");
         }
         }
-        if (musicGroup.getStatus() == MusicGroupStatusEnum.PRE_APPLY || musicGroup.getStatus() == MusicGroupStatusEnum.PAY) {
-            Map<Integer, String> receiverList = null;
-            if(musicGroup.getStatus() == MusicGroupStatusEnum.PRE_APPLY){
-                List<StudentPreRegistration> studentPreRegistrationList = studentPreRegistrationDao.queryByMusicGroupId(musicGroupId);
-                receiverList = studentPreRegistrationList.stream().collect(Collectors.toMap(StudentPreRegistration::getUserId, StudentPreRegistration::getPhone));
-            }else {
-                receiverList = MapUtil.convertMybatisMap(studentRegistrationDao.findMapByMusicGroupId(musicGroupId, 2));
-            }
-
-            String meetingDateStr = sdf_ymdhms.format(meetingDate);
-            sysMessageService.batchSendImGroupMessage(MessageTypeEnum.STUDENT_SMS_IM_MUSIC_GROUP_PARENT_MEETING_NOTICE, userId + "", null, new String[]{musicGroupId}, null, meetingDateStr, address);
-            sysMessageService.batchSendMessage(MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_IM_MUSIC_GROUP_PARENT_MEETING_NOTICE, receiverList, null, 1, null, null, meetingDateStr, address);
-            return true;
+        Map<Integer, String> receiverList = null;
+        if(musicGroup.getStatus() == MusicGroupStatusEnum.PRE_APPLY){
+            List<StudentPreRegistration> studentPreRegistrationList = studentPreRegistrationDao.queryByMusicGroupId(musicGroupId);
+            receiverList = studentPreRegistrationList.stream().collect(Collectors.toMap(StudentPreRegistration::getUserId, StudentPreRegistration::getPhone));
+        }else {
+            receiverList = MapUtil.convertMybatisMap(studentRegistrationDao.findMapByMusicGroupId(musicGroupId, 2));
         }
         }
-        return false;
+
+        String meetingDateStr = sdf_ymdhms.format(meetingDate);
+        sysMessageService.batchSendImGroupMessage(MessageTypeEnum.STUDENT_SMS_IM_MUSIC_GROUP_PARENT_MEETING_NOTICE, userId + "", null, new String[]{musicGroupId}, null, meetingDateStr, address);
+        sysMessageService.batchSendMessage(MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_IM_MUSIC_GROUP_PARENT_MEETING_NOTICE, receiverList, null, 1, null, null, meetingDateStr, address);
+        return true;
     }
     }
 
 
     @Override
     @Override

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

@@ -49,8 +49,8 @@ public class SchoolServiceImpl extends BaseServiceImpl<Integer, School>  impleme
 	}
 	}
 
 
 	@Override
 	@Override
-	public List<School> findVipSchoolByTeacher(Integer teacherId,String organId,Integer isDefault) {
-		return schoolDao.findVipSchoolByUserId(teacherId,organId,isDefault);
+	public List<School> findVipSchoolByTeacher(Integer teacherId,String organId,Integer isDefault,String search) {
+		return schoolDao.findVipSchoolByUserId(teacherId,organId,isDefault,search);
 	}
 	}
 
 
 	@Override
 	@Override

+ 14 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SellOrderServiceImpl.java

@@ -20,6 +20,8 @@ import java.math.BigDecimal;
 import java.util.*;
 import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
+import static com.ym.mec.biz.dal.enums.GroupType.GOODS_SELL;
+
 @Service
 @Service
 public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> implements SellOrderService {
 public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> implements SellOrderService {
     @Autowired
     @Autowired
@@ -33,7 +35,7 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
     @Autowired
     @Autowired
     private SysPaymentConfigService sysPaymentConfigService;
     private SysPaymentConfigService sysPaymentConfigService;
     @Autowired
     @Autowired
-    private SysUserCashAccountService sysUserCashAccountService;
+    private SysUserCashAccountLogDao sysUserCashAccountLogDao;
     @Autowired
     @Autowired
     private GoodsService goodsService;
     private GoodsService goodsService;
     @Autowired
     @Autowired
@@ -407,9 +409,18 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
             sellOrderDao.update(sellOrder);
             sellOrderDao.update(sellOrder);
 
 
             //2、金额退到余额
             //2、金额退到余额
-//            if (reBackFee && sellOrder.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
+            if (reBackFee && sellOrder.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
+                SysUserCashAccountLog sysUserCashAccountLog = new SysUserCashAccountLog();
+                sysUserCashAccountLog.setReturnFeeType(ReturnFeeEnum.GOODS);
+                sysUserCashAccountLog.setOrganId(sellOrder.getOrganId());
+                sysUserCashAccountLog.setUserId(sellOrder.getUserId());
+                sysUserCashAccountLog.setGroupType(GOODS_SELL);
+                sysUserCashAccountLog.setComment("商品退费");
+                sysUserCashAccountLog.setGroupId(sellOrder.getId().toString());
+                sysUserCashAccountLog.setAmount(sellOrder.getExpectAmount().multiply(new BigDecimal(0.995)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP));
+                sysUserCashAccountLogDao.insert(sysUserCashAccountLog);
 //                sysUserCashAccountService.updateBalance(sellOrder.getUserId(), sellOrder.getExpectAmount().multiply(new BigDecimal(0.995)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP), PlatformCashAccountDetailTypeEnum.REFUNDS, "订单:" + sellOrder.getOrderId() + " 商品id:" + sellOrder.getGoodsId() + "退货");
 //                sysUserCashAccountService.updateBalance(sellOrder.getUserId(), sellOrder.getExpectAmount().multiply(new BigDecimal(0.995)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP), PlatformCashAccountDetailTypeEnum.REFUNDS, "订单:" + sellOrder.getOrderId() + " 商品id:" + sellOrder.getGoodsId() + "退货");
-//            }
+            }
         }
         }
         //3、退货
         //3、退货
         if (sellOrders.get(0).getAccountType() != null) {
         if (sellOrders.get(0).getAccountType() != null) {

+ 10 - 8
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -838,8 +838,8 @@
 		LEFT JOIN sys_user su ON s.user_id_ = su.id_
 		LEFT JOIN sys_user su ON s.user_id_ = su.id_
 		LEFT JOIN course_schedule_student_payment cssp FORCE INDEX(group_type_) ON cssp.user_id_ = s.user_id_
 		LEFT JOIN course_schedule_student_payment cssp FORCE INDEX(group_type_) ON cssp.user_id_ = s.user_id_
 		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
 		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
-		<if test="organId != null">
-			AND su.organ_id_ = #{organId}
+		<if test="organId != null and organId != ''">
+			AND FIND_IN_SET(su.organ_id_,#{organId})
 		</if>
 		</if>
 		LIMIT 1
 		LIMIT 1
 	</select>
 	</select>
@@ -860,17 +860,18 @@
 		<result property="practiceNotStartTeacherNames" column="practice_not_start_teacher_names_"/>
 		<result property="practiceNotStartTeacherNames" column="practice_not_start_teacher_names_"/>
 		<result property="teacherId" column="teacher_id_"/>
 		<result property="teacherId" column="teacher_id_"/>
 		<result property="teacherName" column="real_name_"/>
 		<result property="teacherName" column="real_name_"/>
+		<result property="organName" column="organ_name_"/>
 	</resultMap>
 	</resultMap>
 	<select id="exportStudentVipPractice" resultMap="StudentVipPracticeExportDto">
 	<select id="exportStudentVipPractice" resultMap="StudentVipPracticeExportDto">
-		SELECT s.user_id_,su.username_,
+		SELECT s.user_id_,su.username_,o.name_ organ_name_,
 		COUNT(CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN 1 ELSE NULL END) vip_over_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN 1 ELSE NULL END) vip_over_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ = 'NOT_START' THEN 1 ELSE NULL END) vip_not_start_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ = 'NOT_START' THEN 1 ELSE NULL END) vip_not_start_num_,
-		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN sut.id_ ELSE NULL END) ORDER BY cs.class_date_,start_class_time_ DESC) vip_over_teacher_ids_,
-		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN sut.real_name_ ELSE NULL END) ORDER BY cs.class_date_,start_class_time_ DESC) vip_over_teacher_names_,
+		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN sut.id_ ELSE NULL END) ORDER BY cs.class_date_ ASC,start_class_time_ ASC) vip_over_teacher_ids_,
+		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' THEN sut.real_name_ ELSE NULL END) ORDER BY cs.class_date_ ASC,start_class_time_ ASC) vip_over_teacher_names_,
 		COUNT(CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN 1 ELSE NULL END) practice_over_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN 1 ELSE NULL END) practice_over_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ = 'NOT_START' THEN 1 ELSE NULL END) practice_not_start_num_,
 		COUNT(CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ = 'NOT_START' THEN 1 ELSE NULL END) practice_not_start_num_,
-		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN sut.id_ ELSE NULL END) ORDER BY cs.class_date_,start_class_time_ DESC) practice_over_teacher_ids_,
-		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN sut.real_name_ ELSE NULL END) ORDER BY cs.class_date_,start_class_time_ DESC) practice_over_teacher_names_,
+		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN sut.id_ ELSE NULL END) ORDER BY cs.class_date_ ASC,start_class_time_ ASC) practice_over_teacher_ids_,
+		GROUP_CONCAT(DISTINCT (CASE WHEN cssp.group_type_ = 'PRACTICE' AND cs.status_ != 'NOT_START' THEN sut.real_name_ ELSE NULL END) ORDER BY cs.class_date_ ASC,start_class_time_ ASC) practice_over_teacher_names_,
 		s.teacher_id_,ste.real_name_
 		s.teacher_id_,ste.real_name_
 		FROM student s
 		FROM student s
 		LEFT JOIN course_schedule_student_payment cssp FORCE INDEX(group_type_) ON cssp.user_id_ = s.user_id_
 		LEFT JOIN course_schedule_student_payment cssp FORCE INDEX(group_type_) ON cssp.user_id_ = s.user_id_
@@ -878,9 +879,10 @@
 		LEFT JOIN sys_user su ON s.user_id_ = su.id_
 		LEFT JOIN sys_user su ON s.user_id_ = su.id_
 		LEFT JOIN sys_user ste ON s.teacher_id_ = ste.id_
 		LEFT JOIN sys_user ste ON s.teacher_id_ = ste.id_
 		LEFT JOIN sys_user sut ON cs.actual_teacher_id_ = sut.id_
 		LEFT JOIN sys_user sut ON cs.actual_teacher_id_ = sut.id_
+		LEFT JOIN organization o ON o.id_ = su.organ_id_
 		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
 		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
 		<if test="organId != null">
 		<if test="organId != null">
-			AND su.organ_id_ = #{organId}
+			AND FIND_IN_SET(su.organ_id_,#{organId})
 		</if>
 		</if>
 		GROUP BY s.user_id_
 		GROUP BY s.user_id_
 	</select>
 	</select>

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

@@ -147,6 +147,9 @@
         <if test="organId != null">
         <if test="organId != null">
         AND ((FIND_IN_SET(organ_id_,#{organId}) and user_id_ is NULL) or user_id_ = #{userId})
         AND ((FIND_IN_SET(organ_id_,#{organId}) and user_id_ is NULL) or user_id_ = #{userId})
         </if>
         </if>
+        <if test="search != null and search != ''">
+            AND (name_ LIKE CONCAT('%',#{search},'%') OR address_ LIKE CONCAT('%',#{search},'%'))
+        </if>
     </select>
     </select>
     <select id="findVipSchoolByUserId2" resultMap="School">
     <select id="findVipSchoolByUserId2" resultMap="School">
         SELECT * FROM school WHERE del_flag_ != 1
         SELECT * FROM school WHERE del_flag_ != 1

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

@@ -563,7 +563,7 @@
         FROM
         FROM
         (SELECT SUM(CASE WHEN expect_amount_ IS NULL THEN 0 ELSE expect_amount_ END) a FROM student_payment_order
         (SELECT SUM(CASE WHEN expect_amount_ IS NULL THEN 0 ELSE expect_amount_ END) a FROM student_payment_order
          WHERE group_type_ = 'VIP' AND type_ = 'SMALL_CLASS_TO_BUY' AND music_group_id_ = #{vipGroupId} AND status_ = 'SUCCESS') a,
          WHERE group_type_ = 'VIP' AND type_ = 'SMALL_CLASS_TO_BUY' AND music_group_id_ = #{vipGroupId} AND status_ = 'SUCCESS') a,
-        (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) b FROM sys_user_cash_account_log WHERE group_id_ = #{vipGroupId}) b,
+        (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) b FROM sys_user_cash_account_log WHERE group_id_ = #{vipGroupId} AND group_type_ = 'VIP') b,
         (SELECT SUM(CASE WHEN actual_price_ IS NULL THEN 0 ELSE actual_price_ END) c FROM activity_user_mapper WHERE vip_group_id_ = #{vipGroupId}) c,
         (SELECT SUM(CASE WHEN actual_price_ IS NULL THEN 0 ELSE actual_price_ END) c FROM activity_user_mapper WHERE vip_group_id_ = #{vipGroupId}) c,
         (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) d FROM sys_user_cash_account_detail WHERE group_id_ = #{vipGroupId}) d,
         (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) d FROM sys_user_cash_account_detail WHERE group_id_ = #{vipGroupId}) d,
         (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) e FROM sys_user_courses_account_detail WHERE group_id_ = #{vipGroupId}) e
         (SELECT SUM(CASE WHEN amount_ IS NULL THEN 0 ELSE amount_ END) e FROM sys_user_courses_account_detail WHERE group_id_ = #{vipGroupId}) e

+ 2 - 2
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherSchoolController.java

@@ -90,7 +90,7 @@ public class TeacherSchoolController extends BaseController {
 
 
     @ApiOperation(value = "获取教师vip课教学点")
     @ApiOperation(value = "获取教师vip课教学点")
     @GetMapping("/findVipSchoolByTeacher2")
     @GetMapping("/findVipSchoolByTeacher2")
-    public Object findVipSchoolByTeacher2(Integer isDefault){
+    public Object findVipSchoolByTeacher2(Integer isDefault,String search){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if(sysUser == null){
         if(sysUser == null){
             return failed(HttpStatus.FORBIDDEN,"请登录");
             return failed(HttpStatus.FORBIDDEN,"请登录");
@@ -104,6 +104,6 @@ public class TeacherSchoolController extends BaseController {
         if (StringUtils.isNoneBlank(teacher.getFlowOrganRange())) {
         if (StringUtils.isNoneBlank(teacher.getFlowOrganRange())) {
             organIdList += "," + teacher.getFlowOrganRange();
             organIdList += "," + teacher.getFlowOrganRange();
         }
         }
-        return succeed(schoolService.findVipSchoolByTeacher(sysUser.getId(),organIdList,isDefault));
+        return succeed(schoolService.findVipSchoolByTeacher(sysUser.getId(),organIdList,isDefault,search));
     }
     }
 }
 }

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

@@ -1503,7 +1503,7 @@ public class ExportController extends BaseController {
     @ApiOperation(value = "学员小课记录导出")
     @ApiOperation(value = "学员小课记录导出")
     @RequestMapping("export/studentVipPractice")
     @RequestMapping("export/studentVipPractice")
     @PreAuthorize("@pcs.hasPermissions('export/studentVipPractice')")
     @PreAuthorize("@pcs.hasPermissions('export/studentVipPractice')")
-    public HttpResponseResult exportStudentVipPractice(Integer organId) throws IOException {
+    public HttpResponseResult exportStudentVipPractice(String organId) throws IOException {
         boolean hasCourse = courseScheduleStudentPaymentDao.hasCourse(organId);
         boolean hasCourse = courseScheduleStudentPaymentDao.hasCourse(organId);
         if (!hasCourse) {
         if (!hasCourse) {
             return failed("没有可导出的数据");
             return failed("没有可导出的数据");

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

@@ -129,6 +129,6 @@ public class SchoolController extends BaseController {
         if(StringUtils.isNotEmpty(teacher.getFlowOrganRange())){
         if(StringUtils.isNotEmpty(teacher.getFlowOrganRange())){
             organId += "," + teacher.getFlowOrganRange();
             organId += "," + teacher.getFlowOrganRange();
         }
         }
-        return succeed(schoolService.findVipSchoolByTeacher(userId,organId,null));
+        return succeed(schoolService.findVipSchoolByTeacher(userId,organId,null,null));
     }
     }
 }
 }

+ 19 - 1
mec-web/src/main/java/com/ym/mec/web/controller/education/EduOnlineMusicGroupController.java

@@ -2,6 +2,7 @@ package com.ym.mec.web.controller.education;
 
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.auth.api.entity.SysUserRole;
 import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dto.OnlineMusicGroupCourseDto;
 import com.ym.mec.biz.dal.dto.OnlineMusicGroupCourseDto;
@@ -17,6 +18,7 @@ import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.page.PageInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -56,7 +58,23 @@ public class EduOnlineMusicGroupController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             return failed("用户信息获取失败");
             return failed("用户信息获取失败");
         }
         }
-        queryInfo.setRepairUserId(sysUser.getId());
+		List<Integer> userRole = employeeDao.queryUserRole(sysUser.getId());
+        //如果当前用户只有维修技师角色,那么只能看到他所管理的课程组的信息
+		if (!sysUser.getIsSuperAdmin() && userRole.size() == 1 && userRole.contains(SysUserRole.REPAIR)) {
+            queryInfo.setRepairUserId(sysUser.getId());
+		}else {
+            Employee employee = employeeDao.get(sysUser.getId());
+            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+                queryInfo.setOrganId(employee.getOrganIdList());
+            }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+                return failed("用户所在分部异常");
+            }else {
+                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+                if(!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))){
+                    return failed("非法请求");
+                }
+            }
+        }
         queryInfo.setStatus(MusicGroupStatusEnum.PROGRESS);
         queryInfo.setStatus(MusicGroupStatusEnum.PROGRESS);
         return succeed(musicGroupService.findEduTeacherMusicGroups(queryInfo));
         return succeed(musicGroupService.findEduTeacherMusicGroups(queryInfo));
     }
     }

+ 4 - 4
mec-web/src/main/java/com/ym/mec/web/controller/education/EduSchoolController.java

@@ -38,7 +38,7 @@ public class EduSchoolController extends BaseController {
 
 
     @ApiOperation(value = "获取教师vip课教学点")
     @ApiOperation(value = "获取教师vip课教学点")
     @GetMapping("/findVipSchoolByTeacher")
     @GetMapping("/findVipSchoolByTeacher")
-    public Object findVipSchoolByTeacher(@ApiParam(value = "教师编号", required = true) Integer userId){
+    public Object findVipSchoolByTeacher(@ApiParam(value = "教师编号", required = true) Integer userId,String search){
         Teacher teacher = teacherDao.get(userId);
         Teacher teacher = teacherDao.get(userId);
         if (teacher == null) {
         if (teacher == null) {
             return failed("用户信息获取失败");
             return failed("用户信息获取失败");
@@ -50,12 +50,12 @@ public class EduSchoolController extends BaseController {
         if(StringUtils.isEmpty(teacher.getFlowOrganRange())){
         if(StringUtils.isEmpty(teacher.getFlowOrganRange())){
             organId += "," + teacher.getFlowOrganRange();
             organId += "," + teacher.getFlowOrganRange();
         }
         }
-        return succeed(schoolService.findVipSchoolByTeacher(userId,organId,null));
+        return succeed(schoolService.findVipSchoolByTeacher(userId,organId,null,search));
     }
     }
 
 
     @ApiOperation(value = "获取教师vip课教学点")
     @ApiOperation(value = "获取教师vip课教学点")
     @GetMapping("/findVipSchoolByTeacher2")
     @GetMapping("/findVipSchoolByTeacher2")
-    public Object findVipSchoolByTeacher2(Integer userId,Integer isDefault){
+    public Object findVipSchoolByTeacher2(Integer userId,Integer isDefault,String search){
         Teacher teacher = null;
         Teacher teacher = null;
         if(userId != null){
         if(userId != null){
             teacher = teacherDao.get(userId);
             teacher = teacherDao.get(userId);
@@ -73,6 +73,6 @@ public class EduSchoolController extends BaseController {
         if (StringUtils.isNoneBlank(teacher.getFlowOrganRange())) {
         if (StringUtils.isNoneBlank(teacher.getFlowOrganRange())) {
             organIdList += "," + teacher.getFlowOrganRange();
             organIdList += "," + teacher.getFlowOrganRange();
         }
         }
-        return succeed(schoolService.findVipSchoolByTeacher(teacher.getId(),organIdList,isDefault));
+        return succeed(schoolService.findVipSchoolByTeacher(teacher.getId(),organIdList,isDefault,search));
     }
     }
 }
 }