|
@@ -19,6 +19,8 @@ import java.util.Objects;
|
|
|
import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import com.ym.mec.biz.dal.dao.*;
|
|
|
+import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.dal.enums.*;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -32,39 +34,6 @@ import com.alibaba.fastjson.TypeReference;
|
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.auth.api.entity.SysUserRole;
|
|
|
-import com.ym.mec.biz.dal.dao.ChargeTypeDao;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CooperationOrganDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.EmployeeDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupBuildLogDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderCourseSettingsDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDetailDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPaymentEntitiesDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPaymentStudentCourseDetailDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupPurchaseListDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupQuitDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupSubjectGoodsGroupDao;
|
|
|
-import com.ym.mec.biz.dal.dao.MusicGroupSubjectPlanDao;
|
|
|
-import com.ym.mec.biz.dal.dao.OrganizationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SchoolDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SporadicChargeInfoDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDetailDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentVisitDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SubjectChangeDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SubjectDao;
|
|
|
-import com.ym.mec.biz.dal.dao.SysConfigDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherDao;
|
|
|
import com.ym.mec.biz.dal.dto.BasicUserDto;
|
|
|
import com.ym.mec.biz.dal.dto.CloseMusicGroupDto;
|
|
|
import com.ym.mec.biz.dal.dto.CourseFormDto;
|
|
@@ -76,35 +45,7 @@ import com.ym.mec.biz.dal.dto.SporadicPayDto;
|
|
|
import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
|
|
|
import com.ym.mec.biz.dal.dto.SubjectRegisterDto;
|
|
|
import com.ym.mec.biz.dal.dto.UpdateExpectedNumDto;
|
|
|
-import com.ym.mec.biz.dal.entity.ApprovalStatus;
|
|
|
-import com.ym.mec.biz.dal.entity.ChargeType;
|
|
|
-import com.ym.mec.biz.dal.entity.ClassGroup;
|
|
|
-import com.ym.mec.biz.dal.entity.CooperationOrgan;
|
|
|
-import com.ym.mec.biz.dal.entity.CourseSchedule;
|
|
|
-import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
|
|
|
-import com.ym.mec.biz.dal.entity.Goods;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroup;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupBuildLog;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderCourseSettings;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupPurchaseList;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupQuit;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
|
|
|
import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupSubjectGoodsGroup;
|
|
|
-import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
|
|
|
-import com.ym.mec.biz.dal.entity.Organization;
|
|
|
-import com.ym.mec.biz.dal.entity.School;
|
|
|
-import com.ym.mec.biz.dal.entity.SporadicChargeInfo;
|
|
|
-import com.ym.mec.biz.dal.entity.Student;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentRegistration;
|
|
|
-import com.ym.mec.biz.dal.entity.Subject;
|
|
|
-import com.ym.mec.biz.dal.entity.SubjectChange;
|
|
|
-import com.ym.mec.biz.dal.entity.SysUserCashAccount;
|
|
|
-import com.ym.mec.biz.dal.entity.SysUserCashAccountDetail;
|
|
|
import com.ym.mec.biz.dal.page.MusicGroupQueryInfo;
|
|
|
import com.ym.mec.biz.service.ClassGroupService;
|
|
|
import com.ym.mec.biz.service.ClassGroupStudentMapperService;
|
|
@@ -180,6 +121,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
private SysUserCashAccountDetailService sysUserCashAccountDetailService;
|
|
|
|
|
|
@Autowired
|
|
|
+ private MusicGroupPaymentCalenderStudentDetailDao musicGroupPaymentCalenderStudentDetailDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private MusicGroupQuitDao musicGroupQuitDao;
|
|
|
|
|
|
@Autowired
|
|
@@ -2156,17 +2100,31 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount());
|
|
|
sysUserCashAccountDetailService.insert(rechargeDetail);
|
|
|
|
|
|
- List<MusicGroupPaymentCalenderCourseSettings> courseSettings = musicGroupPaymentCalenderCourseSettingsDao.queryCalenderCourseSettings(calenderDetail.getMusicGroupPaymentCalenderId());
|
|
|
List<StudentPaymentOrderDetail> paymentOrderDetails = new ArrayList<>();
|
|
|
- courseSettings.forEach(e -> {
|
|
|
- StudentPaymentOrderDetail studentPaymentOrderDetail = new StudentPaymentOrderDetail();
|
|
|
- studentPaymentOrderDetail.setType(OrderDetailTypeEnum.valueOf(e.getCourseType().getCode()));
|
|
|
- studentPaymentOrderDetail.setPrice(e.getCourseCurrentPrice());
|
|
|
- studentPaymentOrderDetail.setCreateTime(date);
|
|
|
- studentPaymentOrderDetail.setUpdateTime(date);
|
|
|
- studentPaymentOrderDetail.setPaymentOrderId(studentPaymentOrder.getId());
|
|
|
- paymentOrderDetails.add(studentPaymentOrderDetail);
|
|
|
- });
|
|
|
+ List<MusicGroupPaymentCalenderCourseSettings> courseSettings = musicGroupPaymentCalenderCourseSettingsDao.queryCalenderCourseSettings(calenderDetail.getMusicGroupPaymentCalenderId());
|
|
|
+ //跨团合班没有settings
|
|
|
+ if(courseSettings.size() == 0){
|
|
|
+ List<MusicGroupPaymentCalenderStudentDetail> studentDetails = musicGroupPaymentCalenderStudentDetailDao.findByBatchNoAndUserId(paymentCalender.getBatchNo(), userId);
|
|
|
+ for (MusicGroupPaymentCalenderStudentDetail studentDetail : studentDetails) {
|
|
|
+ StudentPaymentOrderDetail studentPaymentOrderDetail = new StudentPaymentOrderDetail();
|
|
|
+ studentPaymentOrderDetail.setType(OrderDetailTypeEnum.valueOf(studentDetail.getCourseType()));
|
|
|
+ studentPaymentOrderDetail.setPrice(studentDetail.getCourseCurrentPrice());
|
|
|
+ studentPaymentOrderDetail.setCreateTime(date);
|
|
|
+ studentPaymentOrderDetail.setUpdateTime(date);
|
|
|
+ studentPaymentOrderDetail.setPaymentOrderId(studentPaymentOrder.getId());
|
|
|
+ paymentOrderDetails.add(studentPaymentOrderDetail);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ courseSettings.forEach(e -> {
|
|
|
+ StudentPaymentOrderDetail studentPaymentOrderDetail = new StudentPaymentOrderDetail();
|
|
|
+ studentPaymentOrderDetail.setType(OrderDetailTypeEnum.valueOf(e.getCourseType().getCode()));
|
|
|
+ studentPaymentOrderDetail.setPrice(e.getCourseCurrentPrice());
|
|
|
+ studentPaymentOrderDetail.setCreateTime(date);
|
|
|
+ studentPaymentOrderDetail.setUpdateTime(date);
|
|
|
+ studentPaymentOrderDetail.setPaymentOrderId(studentPaymentOrder.getId());
|
|
|
+ paymentOrderDetails.add(studentPaymentOrderDetail);
|
|
|
+ });
|
|
|
+ }
|
|
|
studentPaymentOrderDetailService.batchAdd(paymentOrderDetails);
|
|
|
|
|
|
//缴费
|
|
@@ -2369,9 +2327,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
quitUserIdList.add(oldDirectorUserId);
|
|
|
|
|
|
Map<Integer,String> userRoleMap = new HashMap<Integer, String>();
|
|
|
- userRoleMap.put(teamTeacherId, null);
|
|
|
- userRoleMap.put(educationalTeacherId, null);
|
|
|
- userRoleMap.put(directorUserId, null);
|
|
|
+ userRoleMap.put(directorUserId, "乐队指导");
|
|
|
+ userRoleMap.put(educationalTeacherId, "运营主管");
|
|
|
+ userRoleMap.put(teamTeacherId, "教务老师");
|
|
|
|
|
|
classGroups.forEach(e -> {
|
|
|
imGroupMemberService.quit(e.getId().longValue(), quitUserIdList);
|
|
@@ -2404,7 +2362,6 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
courseScheduleDao.updateCourseScheduleSchool("MUSIC", musicGroupId, musicGroup.getSchoolId());
|
|
|
}
|
|
|
updateTeamTeacher(group, musicGroup);
|
|
|
-// List<Integer> months = subFeeSettingDto.getMonths();
|
|
|
|
|
|
Date date = new Date();
|
|
|
//缴费方式不同
|
|
@@ -2422,55 +2379,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
musicGroupPaymentCalenderCourseSettingsDao.deleteByMusicGroupPaymentCalenderId(calenderIds);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- //判断缴费日历是否修改
|
|
|
- /*boolean isModifiedOfCalender = false;
|
|
|
-
|
|
|
- List<MusicGroupPaymentCalender> calenderList = musicGroupPaymentCalenderDao.findByMusicGroupId(musicGroupId);
|
|
|
- if (months.size() == calenderList.size()) {
|
|
|
- for (MusicGroupPaymentCalender cal : calenderList) {
|
|
|
- if (!months.contains(cal.getPaymentMonth())) {
|
|
|
- isModifiedOfCalender = true;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- isModifiedOfCalender = true;
|
|
|
- }
|
|
|
-
|
|
|
- if (isModifiedOfCalender) {
|
|
|
- Integer num = musicGroupStudentFeeDao.countStudentNoPayNum(musicGroupId);
|
|
|
- if (num > 0) {
|
|
|
- throw new BizException("缴费周期更新失败,当前乐团有未缴费的学员");
|
|
|
- }
|
|
|
-
|
|
|
- // 删除乐团相关付费周期
|
|
|
- musicGroupPaymentCalenderDao.delByGroupId(musicGroupId);
|
|
|
- if (months != null && months.size() > 0) {
|
|
|
- // 批量插入
|
|
|
- musicGroupPaymentCalenderDao.batchAdd(months, musicGroupId);
|
|
|
- }
|
|
|
- }
|
|
|
- if (musicGroup.getStatus() == MusicGroupStatusEnum.PROGRESS) {
|
|
|
- //修改未锁定学员缴费周期
|
|
|
- String join = null;
|
|
|
- if (months != null && months.size() > 0) {
|
|
|
- join = StringUtils.join(months, ",");
|
|
|
- }
|
|
|
- musicGroupStudentFeeDao.batchUpdateCalender(join, musicGroupId);
|
|
|
- List<MusicGroupStudentFee> fees = musicGroupStudentFeeDao.queryByMusicGroupId(musicGroupId);
|
|
|
- fees.forEach(e -> {
|
|
|
- e.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null, e));
|
|
|
- e.setUpdateTime(date);
|
|
|
- });
|
|
|
- musicGroupStudentFeeDao.batchUpdate(fees);
|
|
|
- }*/
|
|
|
musicGroup.setUpdateTime(date);
|
|
|
musicGroupDao.update(musicGroup);
|
|
|
- //修改课程里面的教学点
|
|
|
-// if (!musicGroup.getSchoolId().equals(musicGroup.getSchoolId())) {
|
|
|
-// courseScheduleDao.updateByMusicGroupId(musicGroupId, musicGroup.getSchoolId());
|
|
|
-// }
|
|
|
// 删除乐团付费主体列表
|
|
|
musicGroupPaymentEntitiesDao.delByGroupId(musicGroupId);
|
|
|
//批量新增
|