Browse Source

Merge branch 'saas' of http://git.dayaedu.com/yonge/mec into master_saas

 Conflicts:
	mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleStudentPaymentDao.java
	mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java
	mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml
zouxuan 3 years ago
parent
commit
06ebfcfc4e

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

@@ -571,11 +571,10 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
 
     List<BaseNameDto> queryLastOverTeacher(@Param("studentIds") List<Integer> studentIds, @Param("groupType") String groupType);
 
-	List<Mapper> queryUserMusicGroupCourseNumByClassTime(@Param("groupType") GroupType groupType, @Param("musicGroupIds") Set<String> musicGroupIds,
+    List<Mapper> queryUserMusicGroupCourseNumByClassTime(@Param("groupType") GroupType groupType, @Param("musicGroupIds") Set<String> musicGroupIds,
 			@Param("userId") Integer userId, @Param("startDate") Date startDate, @Param("endDate") Date endDate);
 
-
-    Boolean hasStudentMusicTheoryCourseInfo(@Param("organId") String organId, @Param("tenantId") Integer tenantId, @Param("groupType") String groupType);
+	Boolean hasStudentMusicTheoryCourseInfo(@Param("organId") String organId, @Param("tenantId") Integer tenantId, @Param("groupType") String groupType);
 
     List<ExportStudentCourseInfoDto> queryStudentCourseInfo(@Param("organId") String organId, @Param("tenantId") Integer tenantId, @Param("groupType") String groupType);
 }

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

@@ -270,18 +270,13 @@ public interface ExportService {
     //保存下载记录
     ManagerDownload saveManagerDownload(ExportTypeEnum exportTypeEnum, Integer userId);
 
-    @Async
-    abstract void orderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException;
+    void orderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException;
 
+    void routeOrderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException;
 
-    @Async
-    abstract void routeOrderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException;
+    void superFindCourseSchedules(EndCourseScheduleQueryInfo queryInfo, ManagerDownload managerDownload) throws FileNotFoundException;
 
-    @Async
-    abstract void superFindCourseSchedules(EndCourseScheduleQueryInfo queryInfo, ManagerDownload managerDownload) throws FileNotFoundException;
-
-    @Async
-    abstract void studentVipPractice(String organId, ManagerDownload managerDownload, Integer tenantId,List<String> headColumns) throws FileNotFoundException;
+    void studentVipPractice(String organId, ManagerDownload managerDownload, Integer tenantId,List<String> headColumns) throws FileNotFoundException;
 
     void queryStudentCourseInfo(String organId, Integer tenantId, String vip, ManagerDownload managerDownload, List<String> headColumns,ExportEnum exportEnum) throws FileNotFoundException;
 }

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

@@ -156,10 +156,10 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
      * @param userId       用户id
      */
     private void addUserTenant(List<Integer> tenantIds, Integer userTenantId, Integer userId) {
-        if (CollectionUtils.isEmpty(tenantIds)) {
-            throw new BizException("平台账号必须指定一个机构");
-        }
         if (Objects.nonNull(userTenantId) && userTenantId == -1) {
+            if (CollectionUtils.isEmpty(tenantIds)) {
+                throw new BizException("平台账号必须指定一个机构!");
+            }
             Date now = new Date();
             tenantIds.forEach(t -> {
                 SysUserTenant userTenant = new SysUserTenant();

+ 49 - 36
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -215,7 +215,7 @@ public class ExportServiceImpl implements ExportService {
                 exportEnum = ExportEnum.ORDER_LIST2;
             }
         }else if(exportEnum == ExportEnum.ROUTE_ORDER_LIST1 || exportEnum == ExportEnum.ROUTE_ORDER_LIST2){
-            if(sysUser.getTenantId() <= 0){
+            if(sysUser.getTenantId() <= 1){
                 exportEnum = ExportEnum.ROUTE_ORDER_LIST1;
             }else {
                 exportEnum = ExportEnum.ROUTE_ORDER_LIST2;
@@ -1391,11 +1391,14 @@ public class ExportServiceImpl implements ExportService {
         }
         queryInfo.setRoutingOrganId(null);
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.ROUTE_ORDER,sysUser.getId());
-        try {
-            this.routeOrderList(params, managerDownload, headColumns);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.routeOrderList(params, managerDownload, headColumns);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1412,11 +1415,14 @@ public class ExportServiceImpl implements ExportService {
         Integer tenantId = TenantContextHolder.getTenantId();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.STUDENT_VIP_PRACTICE,sysUser.getId());
-        try {
-            this.studentVipPractice(organId, managerDownload, tenantId,headColumns);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.studentVipPractice(organId, managerDownload, tenantId,headColumns);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1433,11 +1439,14 @@ public class ExportServiceImpl implements ExportService {
         }
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.STUDENT_VIP_COURSE_INFO,sysUser.getId());
-        try {
-            this.queryStudentCourseInfo(organId, tenantId,"VIP", managerDownload,headColumns,ExportEnum.STUDENT_VIP_COURSE_INFO);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.queryStudentCourseInfo(organId, tenantId,"VIP", managerDownload,headColumns,ExportEnum.STUDENT_VIP_COURSE_INFO);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1454,11 +1463,14 @@ public class ExportServiceImpl implements ExportService {
         }
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.STUDENT_MUSIC_THEORY_COURSE_INFO,sysUser.getId());
-        try {
-            this.queryStudentCourseInfo(organId, tenantId,"THEORY", managerDownload,headColumns,ExportEnum.STUDENT_MUSIC_THEORY_COURSE_INFO);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.queryStudentCourseInfo(organId, tenantId,"THEORY", managerDownload,headColumns,ExportEnum.STUDENT_MUSIC_THEORY_COURSE_INFO);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1491,11 +1503,14 @@ public class ExportServiceImpl implements ExportService {
             return BaseController.failed("数据集太大,不能导出.最大数据集不能超过50000");
         }
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.ORDER,sysUser.getId());
-        try {
-            this.orderList(params, managerDownload, headColumns);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.orderList(params, managerDownload, headColumns);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1520,11 +1535,14 @@ public class ExportServiceImpl implements ExportService {
             return BaseController.failed("数据集太大,不能导出.最大数据集不能超过50000");
         }
         ManagerDownload managerDownload = saveManagerDownload(ExportTypeEnum.COURSE_SCHEDULE,sysUser.getId());
-        try {
-            this.superFindCourseSchedules(queryInfo, managerDownload);
-        } catch (FileNotFoundException e) {
-            return BaseController.failed(e.getMessage());
-        }
+        ExecutorService executor = Executors.newCachedThreadPool();
+        CompletableFuture.runAsync(()->{
+            try {
+                this.superFindCourseSchedules(queryInfo, managerDownload);
+            } catch (FileNotFoundException e) {
+                e.printStackTrace();
+            }
+        },executor);
         HttpResponseResult<Object> succeed = BaseController.succeed();
         succeed.setMsg(managerDownload.getName() + "导出申请已提交,请到【报表中心-下载列表查看】");
         return succeed;
@@ -1553,7 +1571,6 @@ public class ExportServiceImpl implements ExportService {
 
 
     @Override
-    @Async
     public void orderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException {
         List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentOrderService.ExportQueryPage(params);
         long i = 1;
@@ -1870,7 +1887,6 @@ public class ExportServiceImpl implements ExportService {
     }
 
     @Override
-    @Async
     public void routeOrderList(Map<String, Object> params, ManagerDownload managerDownload,List<String> headColumns) throws FileNotFoundException {
         List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentRouteOrderDao.ExportQueryPage(params);
 
@@ -2383,7 +2399,6 @@ public class ExportServiceImpl implements ExportService {
     }
 
     @Override
-    @Async
     public void superFindCourseSchedules(EndCourseScheduleQueryInfo queryInfo, ManagerDownload managerDownload) throws FileNotFoundException {
         List<CourseScheduleEndDto> rows = courseScheduleService.endFindCourseSchedules(queryInfo).getRows();
         for (CourseScheduleEndDto row : rows) {
@@ -2424,7 +2439,6 @@ public class ExportServiceImpl implements ExportService {
     }
 
     @Override
-    @Async
     public void studentVipPractice(String organId, ManagerDownload managerDownload, Integer tenantId,List<String> headColumns) throws FileNotFoundException {
         List<StudentVipPracticeExportDto> studentVipPracticeExportDtos = courseScheduleStudentPaymentDao.exportStudentVipPractice(organId, tenantId);
         if(studentVipPracticeExportDtos != null && studentVipPracticeExportDtos.size() > 0){
@@ -2490,7 +2504,6 @@ public class ExportServiceImpl implements ExportService {
     }
 
     @Override
-    @Async
     public void queryStudentCourseInfo(String organId, Integer tenantId, String groupType, ManagerDownload managerDownload, List<String> headColumns,ExportEnum exportEnum) throws FileNotFoundException {
         List<ExportStudentCourseInfoDto> studentCourseInfoDtos = courseScheduleStudentPaymentDao.queryStudentCourseInfo(organId,tenantId,groupType);
         String basePath = new ApplicationHome(this.getClass()).getSource().getParentFile().getPath();

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

@@ -36,7 +36,7 @@
 		<result column="course_status_" property="courseStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
 		<result column="course_start_time_" property="courseStartTime"/>
 	</resultMap>
-
+	
 	<resultMap type="com.ym.mec.biz.dal.dto.Mapper" id="Mapper">
 		<result column="key_" property="key" />
 		<result column="value_" property="value" />
@@ -879,17 +879,6 @@
 		LEFT JOIN sys_user su ON su.id_ = cs.actual_teacher_id_
 		WHERE cssp.user_id_ = c.user_id_ AND CONCAT(cs.class_date_,' ',cs.start_class_time_) = c.class_date_ AND cssp.group_type_ = #{groupType}
 	</select>
-
-	<select id="queryUserMusicGroupCourseNumByClassTime" resultMap="Mapper" parameterType="map">
-		select cssp.music_group_id_ key_,count(cssp.id_) value_ from course_schedule_student_payment cssp left join course_schedule cs on cssp.course_schedule_id_ = cs.id_
-		where cssp.group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} and
-		cssp.music_group_id_ IN
-                <foreach collection="musicGroupIds" separator="," item="musicGroupId" open="(" close=")">
-                    #{musicGroupId}
-                </foreach>
-		and cssp.user_id_ = #{userId} and cs.class_date_ between #{startDate} and #{endDate}
-		group by cssp.music_group_id_
-	</select>
     <select id="hasStudentMusicTheoryCourseInfo" resultType="java.lang.Boolean">
 		SELECT CASE WHEN cssp.user_id_ = NULL THEN 0 ELSE 1 END hasCourse
 		FROM `course_schedule_student_payment` cssp
@@ -946,4 +935,15 @@
 			</if>
 		</where>
 	</sql>
+
+	<select id="queryUserMusicGroupCourseNumByClassTime" resultMap="Mapper" parameterType="map">
+		select cssp.music_group_id_ key_,count(cssp.id_) value_ from course_schedule_student_payment cssp left join course_schedule cs on cssp.course_schedule_id_ = cs.id_
+		where cssp.group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} and
+		cssp.music_group_id_ IN
+                <foreach collection="musicGroupIds" separator="," item="musicGroupId" open="(" close=")">
+                    #{musicGroupId}
+                </foreach>
+		and cssp.user_id_ = #{userId} and cs.class_date_ between #{startDate} and #{endDate}
+		group by cssp.music_group_id_
+	</select>
 </mapper>