|
@@ -598,15 +598,24 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
|
|
|
}else if(paymentType == SPAN_GROUP_CLASS_ADJUST){
|
|
|
MusicGroupStudentClassAdjust adjust = musicGroupStudentClassAdjustDao.findByBatchNo(batchNo);
|
|
|
//获取默认的学员缴费详情
|
|
|
- List<Integer> studentIds = JSON.parseArray(adjust.getStudentIds(), Integer.class);
|
|
|
+ List<Integer> studentIdList = JSON.parseArray(adjust.getStudentIds(), Integer.class);
|
|
|
//获取欠费学员列表
|
|
|
- List<Integer> noPaymentUserIds = musicGroupPaymentCalenderDetailDao.queryNoPaymentUserIds(musicGroup.getId(), new ArrayList<>(studentIds));
|
|
|
+ List<Integer> noPaymentUserIds = musicGroupPaymentCalenderDetailDao.queryNoPaymentUserIds(musicGroup.getId(), studentIdList);
|
|
|
if(noPaymentUserIds.size() > 0){
|
|
|
throw new BizException("操作失败:有欠费的学员不允许创建缴费");
|
|
|
}
|
|
|
+ //获取缴费状态在审核中或者已拒绝的缴费项目的学员
|
|
|
+ String studentIds = musicGroupPaymentCalenderDao.queryCalenderStudentIds(musicGroupId,batchNo);
|
|
|
+ if(StringUtils.isNotEmpty(studentIds)){
|
|
|
+ for (Integer integer : studentIdList) {
|
|
|
+ if(studentIds.contains(integer.toString())){
|
|
|
+ throw new BizException("操作失败:所选学员有待审核或已拒绝的缴费项目");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
List<MusicGroupPaymentCalenderStudentDetail> musicGroupPaymentCalenderStudentDetails = classGroupService.queryStudentPaymentCalenders(adjust.getMasterClassGroupId(),
|
|
|
- adjust.getClassGroupStudents(),studentIds);
|
|
|
+ adjust.getClassGroupStudents(),studentIdList);
|
|
|
List<MusicGroupPaymentCalenderStudentDetail> calenderStudentDetails = musicGroupPaymentCalenderDto.getMusicGroupPaymentCalenderStudentDetails();
|
|
|
|
|
|
boolean containsAll = musicGroupPaymentCalenderStudentDetails.containsAll(calenderStudentDetails);
|
|
@@ -741,7 +750,6 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
|
|
|
// 设置批次号
|
|
|
musicGroupPaymentCalender.setBatchNo(batchNo);
|
|
|
musicGroupPaymentCalenderDao.insert(musicGroupPaymentCalender);
|
|
|
-
|
|
|
List<MusicGroupPaymentCalenderCourseSettings> currentMusicGroupPaymentCalenderCourseSettings = musicGroupPaymentCalender
|
|
|
.getMusicGroupPaymentCalenderCourseSettingsList();
|
|
|
|
|
@@ -1136,6 +1144,30 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
|
|
|
}
|
|
|
}
|
|
|
MusicGroupPaymentCalender calender = musicGroupPaymentCalenders.get(0);
|
|
|
+ if(calender.getPaymentType() == ADD_STUDENT || calender.getPaymentType() == SPAN_GROUP_CLASS_ADJUST){
|
|
|
+ // 所有缴费项目已完成排课才能创建下一个缴费项目
|
|
|
+ List<String> batchNoList = new ArrayList<>();
|
|
|
+ batchNoList.add(batchNo);
|
|
|
+ String orignBatchNo = musicGroupPaymentStudentCourseDetailDao.getUnUseBatchNoWithStudentAndCourseTypeAndCourseMinutes(calender.getMusicGroupId(), null, null,batchNoList);
|
|
|
+ if (StringUtils.isNoneBlank(orignBatchNo)) {
|
|
|
+ throw new BizException("当前乐团存在未排课的缴费项目,请先完成排课再操作");
|
|
|
+ }
|
|
|
+ List<Integer> userIds = Arrays.stream(calender.getStudentIds().split(",")).mapToInt(Integer::valueOf).boxed().collect(Collectors.toList());
|
|
|
+ //获取欠费学员列表
|
|
|
+ List<Integer> noPaymentUserIds = musicGroupPaymentCalenderDetailDao.queryNoPaymentUserIds(calender.getMusicGroupId(),userIds);
|
|
|
+ if(noPaymentUserIds.size() > 0){
|
|
|
+ throw new BizException("操作失败:有欠费的学员不允许创建缴费");
|
|
|
+ }
|
|
|
+ //获取缴费状态在审核中或者已拒绝的缴费项目的学员
|
|
|
+ String studentIds = musicGroupPaymentCalenderDao.queryCalenderStudentIds(calender.getMusicGroupId(),batchNo);
|
|
|
+ if(StringUtils.isNotEmpty(studentIds)){
|
|
|
+ for (Integer integer : userIds) {
|
|
|
+ if(studentIds.contains(integer.toString())){
|
|
|
+ throw new BizException("操作失败:所选学员有待审核或已拒绝的缴费项目");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
//如果是报名,并且所有的报名都审核通过,需要修改乐团状态
|
|
|
if (calender.getPaymentType() == MUSIC_APPLY) {
|
|
|
//统计乐团还在审核中或者审核被拒的缴费
|