Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 years ago
parent
commit
c38afed3ce
18 changed files with 334 additions and 78 deletions
  1. 8 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDetailDao.java
  2. 6 16
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupStudentFeeDao.java
  3. 26 5
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java
  4. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalenderDetail.java
  5. 37 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicCalenderDetailQueryInfo.java
  6. 15 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicCalenderQueryInfo.java
  7. 20 0
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java
  8. 103 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java
  9. 5 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  10. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupStudentFeeServiceImpl.java
  11. 5 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  12. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  13. 1 1
      mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml
  14. 27 1
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderDetailMapper.xml
  15. 32 4
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml
  16. 0 10
      mec-biz/src/main/resources/config/mybatis/MusicGroupStudentFeeMapper.xml
  17. 16 24
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java
  18. 29 0
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderDetailController.java

+ 8 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDetailDao.java

@@ -1,9 +1,16 @@
 package com.ym.mec.biz.dal.dao;
 
+import java.util.List;
+
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.common.dal.BaseDAO;
 
 public interface MusicGroupPaymentCalenderDetailDao extends BaseDAO<Long, MusicGroupPaymentCalenderDetail> {
 
-	
+	/**
+	 * 批量新增
+	 * @param musicGroupPaymentCalenderDetailList
+	 * @return
+	 */
+	int batchInsert(List<MusicGroupPaymentCalenderDetail> musicGroupPaymentCalenderDetailList);
 }

+ 6 - 16
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupStudentFeeDao.java

@@ -1,16 +1,15 @@
 package com.ym.mec.biz.dal.dao;
 
-import com.ym.mec.biz.dal.dto.SimpleUserDto;
-import com.ym.mec.biz.dal.dto.UpdateStudentFeeDto;
-import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
-import com.ym.mec.common.dal.BaseDAO;
-import org.apache.ibatis.annotations.Param;
-
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
+
+import org.apache.ibatis.annotations.Param;
+
+import com.ym.mec.biz.dal.dto.UpdateStudentFeeDto;
+import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
+import com.ym.mec.common.dal.BaseDAO;
 
 public interface MusicGroupStudentFeeDao extends BaseDAO<Long, MusicGroupStudentFee> {
 
@@ -104,15 +103,6 @@ public interface MusicGroupStudentFeeDao extends BaseDAO<Long, MusicGroupStudent
 	Integer countStudentNoPayNum(String musicGroupId);
 
 	/**
-	 * 获取当前乐团对应缴费状态的学院
-	 * @param musicGroupId
-	 * @param paymentStatus
-	 * @return
-	 */
-	List<SimpleUserDto> findStudentWithMusicGroupAndPaymentStatus(@Param("musicGroupId") String musicGroupId,
-																  @Param("paymentStatus")MusicGroupStudentFee.PaymentStatus paymentStatus);
-
-	/**
 	 * 根据乐团声部修改学员课程费用
 	 * @param musicGroupId
 	 * @param subjectId

+ 26 - 5
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java

@@ -7,12 +7,23 @@ import java.util.Date;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
+import com.ym.mec.common.enums.BaseEnum;
 
 /**
  * 对应数据库表(music_group_payment_calender):
  */
 public class MusicGroupPaymentCalender implements Comparable<MusicGroupPaymentCalender> {
 
+	public enum FeeType implements BaseEnum<String, FeeType> {
+		OFFLINE, ONLINE, ALL;
+
+		@Override
+		public String getCode() {
+			return this.name();
+		}
+
+	}
+
 	/**  */
 	private Long id;
 
@@ -27,16 +38,18 @@ public class MusicGroupPaymentCalender implements Comparable<MusicGroupPaymentCa
 	/** 开始缴费日期 */
 	@ApiModelProperty(value = "开始缴费日期", required = false)
 	private java.util.Date startPaymentDate;
-	
+
 	private Date deadlinePaymentDate;
-	
+
 	private PaymentStatusEnum paymentStatus;
-	
+
 	private Integer expectNum;
-	
+
 	private Integer actualNum;
-	
+
 	private String memo;
+	
+	private FeeType type;
 
 	/**  */
 	private java.util.Date createTime;
@@ -132,6 +145,14 @@ public class MusicGroupPaymentCalender implements Comparable<MusicGroupPaymentCa
 		this.memo = memo;
 	}
 
+	public FeeType getType() {
+		return type;
+	}
+
+	public void setType(FeeType type) {
+		this.type = type;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalenderDetail.java

@@ -16,7 +16,7 @@ public class MusicGroupPaymentCalenderDetail {
 	private Long musicGroupPaymentCalenderId;
 	
 	/**  */
-	private Long userId;
+	private Integer userId;
 	
 	/**  */
 	private java.math.BigDecimal expectAmount;
@@ -55,11 +55,11 @@ public class MusicGroupPaymentCalenderDetail {
 		return this.musicGroupPaymentCalenderId;
 	}
 			
-	public void setUserId(Long userId){
+	public void setUserId(Integer userId){
 		this.userId = userId;
 	}
 	
-	public Long getUserId(){
+	public Integer getUserId(){
 		return this.userId;
 	}
 			

+ 37 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicCalenderDetailQueryInfo.java

@@ -0,0 +1,37 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
+import com.ym.mec.common.page.QueryInfo;
+
+public class MusicCalenderDetailQueryInfo extends QueryInfo {
+
+	private Integer userId;
+
+	private PaymentStatusEnum paymentStatus;
+
+	private Long id;
+
+	public Integer getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Integer userId) {
+		this.userId = userId;
+	}
+
+	public PaymentStatusEnum getPaymentStatus() {
+		return paymentStatus;
+	}
+
+	public void setPaymentStatus(PaymentStatusEnum paymentStatus) {
+		this.paymentStatus = paymentStatus;
+	}
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+}

+ 15 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicCalenderQueryInfo.java

@@ -0,0 +1,15 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.common.page.QueryInfo;
+
+public class MusicCalenderQueryInfo extends QueryInfo {
+	private String musicGroupId;
+
+	public String getMusicGroupId() {
+		return musicGroupId;
+	}
+
+	public void setMusicGroupId(String musicGroupId) {
+		this.musicGroupId = musicGroupId;
+	}
+}

+ 20 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java

@@ -8,6 +8,13 @@ import java.util.Date;
 import java.util.List;
 
 public interface MusicGroupPaymentCalenderService extends BaseService<Long, MusicGroupPaymentCalender> {
+	
+	/**
+	 * 创建缴费信息
+	 * @param musicGroupPaymentCalender
+	 * @return
+	 */
+	boolean create(MusicGroupPaymentCalender musicGroupPaymentCalender);
 
 	/**
 	 * 批量新增、修改乐团缴费周期
@@ -22,4 +29,17 @@ public interface MusicGroupPaymentCalenderService extends BaseService<Long, Musi
 	 * @return
 	 */
 	Date getNextPaymentDate(String musicGroupId, Date latestPaidDate, MusicGroupStudentFee fee);
+
+	/**
+	 * 修改缴费日期
+	 * @param startTime
+	 * @param id
+	 */
+    void updateStartTime(Date startTime, Long id);
+
+	/**
+	 * 删除
+	 * @param id
+	 */
+	void del(Long id);
 }

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

@@ -1,5 +1,8 @@
 package com.ym.mec.biz.service.impl;
 
+import static com.ym.mec.biz.dal.enums.PaymentStatusEnum.NO;
+
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.Date;
@@ -12,10 +15,16 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
+import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDetailDao;
+import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
+import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
+import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
 import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.util.date.DateUtil;
 
@@ -25,6 +34,12 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 	@Autowired
 	private MusicGroupPaymentCalenderDao musicGroupPaymentCalenderDao;
 
+	@Autowired
+	private MusicGroupPaymentCalenderDetailDao musicGroupPaymentCalenderDetailDao;
+
+	@Autowired
+	private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
+
 	@Override
 	public BaseDAO<Long, MusicGroupPaymentCalender> getDAO() {
 		return musicGroupPaymentCalenderDao;
@@ -32,6 +47,57 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
+	public boolean create(MusicGroupPaymentCalender musicGroupPaymentCalender) {
+		Date date = new Date();
+		List<MusicGroupStudentFee> list = null;
+
+		musicGroupPaymentCalender.setCreateTime(date);
+		musicGroupPaymentCalender.setUpdateTime(date);
+		musicGroupPaymentCalender.setDeadlinePaymentDate(DateUtil.addDays(musicGroupPaymentCalender.getStartPaymentDate(), 3));
+		if (date.after(musicGroupPaymentCalender.getDeadlinePaymentDate())) {
+			musicGroupPaymentCalender.setPaymentStatus(PaymentStatusEnum.YES);
+		} else if (date.after(musicGroupPaymentCalender.getStartPaymentDate())) {
+			musicGroupPaymentCalender.setPaymentStatus(PaymentStatusEnum.OPEN);
+			// 统计缴费人数
+			list = musicGroupStudentFeeDao.queryByMusicGroupId(musicGroupPaymentCalender.getMusicGroupId());
+			if (list == null) {
+				list = new ArrayList<MusicGroupStudentFee>();
+			}
+			musicGroupPaymentCalender.setExpectNum(list.size());
+		} else {
+			musicGroupPaymentCalender.setPaymentStatus(PaymentStatusEnum.NO);
+		}
+
+		this.insert(musicGroupPaymentCalender);
+
+		List<MusicGroupPaymentCalenderDetail> musicGroupPaymentCalenderDetailList = new ArrayList<MusicGroupPaymentCalenderDetail>();
+		if (musicGroupPaymentCalender.getPaymentStatus() == PaymentStatusEnum.OPEN) {
+			if (list != null && list.size() > 0) {
+				MusicGroupPaymentCalenderDetail musicGroupPaymentCalenderDetail = null;
+				// 创建缴费明细
+				for (MusicGroupStudentFee mgsf : list) {
+					musicGroupPaymentCalenderDetail = new MusicGroupPaymentCalenderDetail();
+					musicGroupPaymentCalenderDetail.setMusicGroupPaymentCalenderId(musicGroupPaymentCalender.getId());
+					musicGroupPaymentCalenderDetail.setCreateTime(date);
+					musicGroupPaymentCalenderDetail.setExpectAmount(mgsf.getCourseFee());
+					musicGroupPaymentCalenderDetail.setPaymentStatus(PaymentStatus.NON_PAYMENT);
+					musicGroupPaymentCalenderDetail.setUpdateTime(date);
+					musicGroupPaymentCalenderDetail.setUserId(mgsf.getUserId());
+
+					musicGroupPaymentCalenderDetailList.add(musicGroupPaymentCalenderDetail);
+				}
+			}
+		}
+
+		if (musicGroupPaymentCalenderDetailList.size() > 0) {
+			musicGroupPaymentCalenderDetailDao.batchInsert(musicGroupPaymentCalenderDetailList);
+		}
+
+		return true;
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public void batchInsert(List<MusicGroupPaymentCalender> musicGroupPaymentCalenders) {
 		if (musicGroupPaymentCalenders != null && musicGroupPaymentCalenders.size() > 0) {
 			musicGroupPaymentCalenderDao.delByGroupId(musicGroupPaymentCalenders.get(0).getMusicGroupId());
@@ -44,15 +110,15 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 	@Override
 	public Date getNextPaymentDate(String musicGroupId, Date latestPaidDate, MusicGroupStudentFee fee) {
 		List<Integer> months = null;
-		if(fee != null){
+		if (fee != null) {
 			String paymentPeriodList = fee.getPaymentPeriodList();
-			if(StringUtils.isEmpty(paymentPeriodList)){
+			if (StringUtils.isEmpty(paymentPeriodList)) {
 				return null;
 			} else {
 				months = Arrays.asList(paymentPeriodList.split(",")).stream().map(x -> Integer.parseInt(x)).collect(Collectors.toList());
 				Collections.sort(months);
 			}
-		}else {
+		} else {
 			List<MusicGroupPaymentCalender> musicGroupPaymentCalenderList = musicGroupPaymentCalenderDao.findByMusicGroupId(musicGroupId);
 			if (musicGroupPaymentCalenderList != null && musicGroupPaymentCalenderList.size() > 0) {
 				months = musicGroupPaymentCalenderList.stream().map(e -> e.getPaymentMonth()).sorted().collect(Collectors.toList());
@@ -85,4 +151,38 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		}
 		return null;
 	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void updateStartTime(Date startTime, Long id) {
+		if (startTime == null || id == null) {
+			throw new BizException("参数校验失败");
+		}
+		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderDao.get(id);
+		if (calender == null) {
+			throw new BizException("缴费信息不存在");
+		}
+		if (calender.getPaymentStatus() == null || calender.getPaymentStatus() != NO) {
+			throw new BizException("修改失败,缴费状态不匹配");
+		}
+		calender.setStartPaymentDate(startTime);
+		calender.setUpdateTime(new Date());
+		musicGroupPaymentCalenderDao.update(calender);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void del(Long id) {
+		if (id == null) {
+			throw new BizException("参数校验失败");
+		}
+		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderDao.get(id);
+		if (calender == null) {
+			throw new BizException("缴费信息不存在");
+		}
+		if (calender.getPaymentStatus() == null || calender.getPaymentStatus() != NO) {
+			throw new BizException("删除失败,缴费状态不匹配");
+		}
+		musicGroupPaymentCalenderDao.delete(id);
+	}
 }

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

@@ -939,7 +939,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         //生成学员费用表
         List<MusicGroupStudentFee> musicGroupStudentFees = musicGroupStudentFeeDao.initMusicGroupStudentFee(musicGroupId);
         if (musicGroupStudentFees != null && musicGroupStudentFees.size() > 0) {
-            musicGroupStudentFeeDao.batchInsert(musicGroupStudentFees, musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null, null), "PAID_COMPLETED");
+            musicGroupStudentFeeDao.batchInsert(musicGroupStudentFees, null, "PAID_COMPLETED");
         }
         musicGroupStudentFeeDao.batchUpdateCalenders(musicGroupId);
         //记录操作日志
@@ -1251,13 +1251,13 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         musicGroupDao.update(musicGroup);
 
         // 重新设置下次缴费时间
-        List<MusicGroupStudentFee> fees = musicGroupStudentFeeDao.queryByMusicGroupId(musicGroupId);
+        /*List<MusicGroupStudentFee> fees = musicGroupStudentFeeDao.queryByMusicGroupId(musicGroupId);
         Date date = new Date();
         fees.forEach(e -> {
             e.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null, e));
             e.setUpdateTime(date);
         });
-        musicGroupStudentFeeDao.batchUpdate(fees);
+        musicGroupStudentFeeDao.batchUpdate(fees);*/
 //        musicGroupStudentFeeDao.updateNextPaymentDate(musicGroupId, musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null));
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, "恢复乐团", sysUser.getId(), ""));
 
@@ -1604,7 +1604,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
                 musicGroupStudentFee.setLatestPaidTime(date);
                 musicGroupStudentFee.setPaymentStatus(PaymentStatus.PAID_COMPLETED);
                 musicGroupStudentFee.setTemporaryCourseFee(new BigDecimal(0));
-                musicGroupStudentFee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, musicGroupStudentFee.getNextPaymentDate(), musicGroupStudentFee));
+//                musicGroupStudentFee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, musicGroupStudentFee.getNextPaymentDate(), musicGroupStudentFee));
                 musicGroupStudentFeeDao.update(musicGroupStudentFee);
                 return null;
             } else {
@@ -1680,7 +1680,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             musicGroupStudentFee.setLatestPaidTime(date);
             musicGroupStudentFee.setPaymentStatus(PaymentStatus.PAID_COMPLETED);
             musicGroupStudentFee.setTemporaryCourseFee(new BigDecimal(0));
-            musicGroupStudentFee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, musicGroupStudentFee.getNextPaymentDate(), musicGroupStudentFee));
+//            musicGroupStudentFee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, musicGroupStudentFee.getNextPaymentDate(), musicGroupStudentFee));
             musicGroupStudentFeeDao.update(musicGroupStudentFee);
 
             //插入交易明细

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

@@ -95,7 +95,7 @@ public class MusicGroupStudentFeeServiceImpl extends BaseServiceImpl<Long, Music
 		if(fee == null){
 			throw new BizException("学员缴费信息不存在");
 		}
-		fee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(studentFeeDto.getMusicGroupId(),null,fee));
+//		fee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(studentFeeDto.getMusicGroupId(),null,fee));
 		musicGroupStudentFeeDao.update(fee);
 	}
 

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

@@ -609,7 +609,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                 MusicGroupSubjectPlan musicOneSubjectClassPlan = musicGroupSubjectPlanDao.getMusicOneSubjectClassPlan(musicGroupId, studentRegistration.getActualSubjectId());
                 studentAddDto.setCourseFee(musicOneSubjectClassPlan.getFee());
             }
-            Date nextPaymentDate = musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null, null);
+//            Date nextPaymentDate = musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId, null, null);
 
             StudentPaymentOrder waitPayOrder = studentPaymentOrderService.findMusicGroupApplyOrderByStatus(userId, studentRegistration.getMusicGroupId(), DealStatusEnum.WAIT_PAY);
 
@@ -656,7 +656,10 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             }
             musicGroupStudentFeeDao.insert(new MusicGroupStudentFee(musicGroupId,
                     userId, studentRegistration.getSubjectId(), studentAddDto.getCourseFee(),
-                    nextPaymentDate, studentAddDto.getTemporaryCourseFee(), paymentStatus));
+                    null, studentAddDto.getTemporaryCourseFee(), paymentStatus));
+//            musicGroupStudentFeeDao.insert(new MusicGroupStudentFee(musicGroupId,
+//                    userId, studentRegistration.getSubjectId(), studentAddDto.getCourseFee(),
+//                    nextPaymentDate, studentAddDto.getTemporaryCourseFee(), paymentStatus));
             musicGroupStudentFeeDao.updateCalender(userId, musicGroupId);
             studentPaymentOrder.setExpectAmount(reduce);
             //当前学员是否以前存在过当前乐团

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

@@ -63,8 +63,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	@Autowired
 	private ImFeignService imFeignService;
 	@Autowired
-	private SysConfigDao configDao;
-	@Autowired
 	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
 	@Autowired
 	private StudentDao studentDao;

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

@@ -550,7 +550,7 @@
             mg.id_ music_group_id_,
             mg.name_ music_group_name_,
             s.id_ school_id_,
-            s.name_ school_name_
+            CASE WHEN cg.type_ IN ("HIGH_ONLINE","MUSIC_NETWORK") THEN '网络教室' ELSE s.name_ END school_name_
         FROM
             course_schedule_teacher_salary csts
             LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_

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

@@ -38,6 +38,15 @@
 		VALUES(#{id},#{musicGroupPaymentCalenderId},#{userId},#{expectAmount},#{actualAmount},#{paymentStatus},#{userStatus},#{payTime},#{updateTime},#{createTime})
 	</insert>
 
+    <insert id="batchInsert" parameterType="com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail">
+        INSERT INTO music_group_payment_calender_detail
+		(id_,music_group_payment_calender_id_,user_id_,expect_amount_,actual_amount_,payment_status_,user_status_,pay_time_,update_time_,create_time_)
+		VALUES
+		<foreach collection="list" item="item" separator=",">
+            (#{item.id},#{item.musicGroupPaymentCalenderId},#{item.userId},#{item.expectAmount},#{item.actualAmount},#{item.paymentStatus},#{item.userStatus},#{item.payTime},#{item.updateTime},#{item.createTime})
+        </foreach>
+    </insert>
+
 	<!-- 根据主键查询一条记录 -->
 	<update id="update"
 		parameterType="com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail">
@@ -85,12 +94,29 @@
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="MusicGroupPaymentCalenderDetail"
 		parameterType="map">
-		SELECT * FROM music_group_payment_calender_detail ORDER BY id_
+		SELECT * FROM music_group_payment_calender_detail
+		<where>
+			<if test="userId != null">
+				user_id_ = #{userId}
+			</if>
+			<if test="paymentStatus != null">
+				payment_status_ = #{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+			</if>
+		</where>
+		ORDER BY create_time_
 		<include refid="global.limit" />
 	</select>
 
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM music_group_payment_calender_detail
+		<where>
+			<if test="userId != null">
+				user_id_ = #{userId}
+			</if>
+			<if test="paymentStatus != null">
+				payment_status_ = #{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+			</if>
+		</where>
 	</select>
 </mapper>

+ 32 - 4
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml

@@ -11,6 +11,12 @@
         <result column="music_group_id_" property="musicGroupId"/>
         <result column="payment_month_" property="paymentMonth"/>
         <result column="start_payment_date_" property="startPaymentDate"/>
+        <result column="deadline_payment_date_" property="deadlinePaymentDate"/>
+        <result column="payment_status_" property="paymentStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="expect_num_" property="expectNum"/>
+        <result column="actual_num_" property="actualNum"/>
+        <result column="memo_" property="memo"/>
+        <result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
     </resultMap>
@@ -29,8 +35,9 @@
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO music_group_payment_calender
-        (id_,music_group_id_,payment_month_,start_payment_date_,create_time_,update_time_)
-        VALUES(#{id},#{musicGroupId},#{paymentMonth},#{startPaymentDate},now(),now())
+        (music_group_id_,payment_month_,start_payment_date_,deadline_payment_date_,payment_status_,expect_num_,actual_num_,memo_,type_,create_time_,update_time_)
+        VALUES(#{musicGroupId},#{paymentMonth},#{startPaymentDate},#{deadlinePaymentDate},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+        #{expectNum},#{actualNum},#{memo},#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now())
     </insert>
     <insert id="batchAdd">
         INSERT INTO music_group_payment_calender
@@ -45,6 +52,24 @@
     <update id="update" parameterType="com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender">
         UPDATE music_group_payment_calender
         <set>
+            <if test="type != null">
+                type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
+            <if test="deadlinePaymentDate != null">
+                deadline_payment_date_ = #{deadlinePaymentDate},
+            </if>
+            <if test="paymentStatus != null">
+                payment_status_ = #{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
+            <if test="expectNum != null">
+                expect_num_ = #{expectNum},
+            </if>
+            <if test="actualNum != null">
+                actual_num_ = #{actualNum},
+            </if>
+            <if test="memo != null">
+                memo_ = #{memo},
+            </if>
             <if test="startPaymentDate != null">
                 start_payment_date_ = #{startPaymentDate},
             </if>
@@ -72,13 +97,16 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="MusicGroupPaymentCalender" parameterType="map">
-        SELECT * FROM music_group_payment_calender ORDER BY id_
+        SELECT * FROM music_group_payment_calender mgpc
+        WHERE mgpc.music_group_id_ = #{musicGroupId}
+        ORDER BY mgpc.update_time_ DESC
         <include refid="global.limit"/>
     </select>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM music_group_payment_calender
+		SELECT COUNT(mgpc.id_) FROM music_group_payment_calender mgpc
+        WHERE mgpc.music_group_id_ = #{musicGroupId}
 	</select>
     <select id="findByMusicGroupId" resultMap="MusicGroupPaymentCalender">
         SELECT * FROM music_group_payment_calender mgpc

+ 0 - 10
mec-biz/src/main/resources/config/mybatis/MusicGroupStudentFeeMapper.xml

@@ -194,16 +194,6 @@
         SELECT * FROM music_group_student_fee_ WHERE music_group_id_ = #{musicGroupId}
     </select>
 
-    <select id="findStudentWithMusicGroupAndPaymentStatus" resultType="com.ym.mec.biz.dal.dto.SimpleUserDto">
-        SELECT
-            DISTINCT su.id_ userId,
-            su.real_name_ userName,
-            su.avatar_ avatar
-        FROM music_group_student_fee_ mgsf
-        LEFT JOIN sys_user su ON su.id_=mgsf.user_id_
-        WHERE music_group_id_='19120116225600001' AND payment_status_='PAID_COMPLETED'
-    </select>
-
     <update id="batchUpdate" parameterType="java.util.List">
     	<foreach collection="list" item="item" index="index" open="" close="" separator=";">
         UPDATE music_group_student_fee_

+ 16 - 24
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java

@@ -1,25 +1,18 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
+import com.ym.mec.biz.dal.page.MusicCalenderQueryInfo;
+import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
+import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-
-import java.util.Date;
-import java.util.List;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
-import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
-import com.ym.mec.common.controller.BaseController;
-import com.ym.mec.common.page.QueryInfo;
+import java.util.Date;
+import java.util.List;
 
 @RequestMapping("musicGroupPaymentCalender")
 @Api(tags = "乐团缴费日历服务")
@@ -33,7 +26,7 @@ public class MusicGroupPaymentCalenderController extends BaseController {
     @PostMapping("/add")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/add')")
     public Object add(MusicGroupPaymentCalender musicGroupPaymentCalender) {
-        musicGroupPaymentCalenderService.insert(musicGroupPaymentCalender);
+        musicGroupPaymentCalenderService.create(musicGroupPaymentCalender);
         return succeed();
     }
 
@@ -46,26 +39,25 @@ public class MusicGroupPaymentCalenderController extends BaseController {
     }
 
     @ApiOperation(value = "删除乐团缴费日历")
-    @PostMapping("/del/{id}")
+    @PostMapping("/del")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/del')")
-    public Object del(@ApiParam(value = "乐团缴费日历编号", required = true) @PathVariable("id") Long id) {
-        musicGroupPaymentCalenderService.delete(id);
+    public Object del(Long id) {
+        musicGroupPaymentCalenderService.del(id);
         return succeed();
     }
 
     @ApiOperation(value = "修改乐团缴费日历")
-    @PostMapping("/update")
-    @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/update')")
-    public Object update(MusicGroupPaymentCalender musicGroupPaymentCalender) {
-        musicGroupPaymentCalender.setUpdateTime(new Date());
-        musicGroupPaymentCalenderService.update(musicGroupPaymentCalender);
+    @PostMapping("/updateStartTime")
+    @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/updateStartTime')")
+    public Object updateStartTime(Date startTime,Long id) {
+        musicGroupPaymentCalenderService.updateStartTime(startTime,id);
         return succeed();
     }
 
     @ApiOperation(value = "分页查询乐团缴费日历列表")
     @GetMapping("/queryPage")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/queryPage')")
-    public Object queryPage(QueryInfo queryInfo) {
+    public Object queryPage(MusicCalenderQueryInfo queryInfo) {
         return succeed(musicGroupPaymentCalenderService.queryPage(queryInfo));
     }
 }

+ 29 - 0
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderDetailController.java

@@ -0,0 +1,29 @@
+package com.ym.mec.web.controller;
+
+import com.ym.mec.biz.dal.page.MusicCalenderDetailQueryInfo;
+import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RequestMapping("musicGroupPaymentCalenderDetail")
+@Api(tags = "乐团缴费明细")
+@RestController
+public class MusicGroupPaymentCalenderDetailController extends BaseController {
+
+    @Autowired
+    private MusicGroupPaymentCalenderDetailService musicGroupPaymentCalenderDetailService;
+
+    @ApiOperation(value = "分页查询乐团缴费日历列表")
+    @GetMapping("/queryPage")
+    @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalenderDetail/queryPage')")
+    public Object queryPage(MusicCalenderDetailQueryInfo queryInfo) {
+        return succeed(musicGroupPaymentCalenderDetailService.queryPage(queryInfo));
+    }
+}