Przeglądaj źródła

Merge branch 'vip_price_827' into online1

yonge 3 lat temu
rodzic
commit
d9b6ffb124

+ 11 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicCompareRankingDto.java

@@ -2,8 +2,6 @@ package com.ym.mec.biz.dal.dto;
 
 import io.swagger.annotations.ApiModelProperty;
 
-import java.math.BigDecimal;
-
 /**
  * @Author Joburgess
  * @Date 2021/8/11 0011
@@ -45,6 +43,9 @@ public class MusicCompareRankingDto {
 
     @ApiModelProperty("是否是会员")
     private int vipUser;
+    
+    @ApiModelProperty("学生总数")
+    private int studentNum;
 
     public Integer getUserId() {
         return userId;
@@ -141,4 +142,12 @@ public class MusicCompareRankingDto {
     public void setScore(int score) {
         this.score = score;
     }
+
+	public int getStudentNum() {
+		return studentNum;
+	}
+
+	public void setStudentNum(int studentNum) {
+		this.studentNum = studentNum;
+	}
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScore.java

@@ -206,7 +206,7 @@ public class SysMusicScore {
 	public java.util.Date getCreateTime(){
 		return this.createTime;
 	}
-			
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScoreAccompaniment.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.dal.entity;
 
 import com.ym.mec.biz.dal.enums.ClientTypeEnum;
+
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 /**
@@ -55,6 +56,8 @@ public class SysMusicScoreAccompaniment {
 
 	//是否显示指法
 	private Boolean isShowFingering = true;
+	
+	private Boolean isOpenMetronome;
 
 	private String memo;
 
@@ -214,6 +217,14 @@ public class SysMusicScoreAccompaniment {
 		return this.updateTime;
 	}
 			
+	public Boolean getIsOpenMetronome() {
+		return isOpenMetronome;
+	}
+
+	public void setIsOpenMetronome(Boolean isOpenMetronome) {
+		this.isOpenMetronome = isOpenMetronome;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

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

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.service;
 
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 import java.util.Set;
 
@@ -15,6 +16,7 @@ import com.ym.mec.biz.dal.page.ArrearageStudentsQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.BaseService;
+
 import org.apache.ibatis.annotations.Param;
 
 public interface MusicGroupPaymentCalenderDetailService extends BaseService<Long, MusicGroupPaymentCalenderDetail> {
@@ -30,8 +32,10 @@ public interface MusicGroupPaymentCalenderDetailService extends BaseService<Long
     /**
      * 开启缴费
      * @param ids
+     * @param startPaymentDate
+     * @param deadlinePaymentDate
      */
-    String openPayment(String ids);
+    String openPayment(String ids, Date startPaymentDate, Date deadlinePaymentDate);
 
     /**
      * 根据声部获取乐团下完成缴费的学员

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

@@ -23,8 +23,8 @@ import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
-
 import com.ym.mec.util.date.DateUtil;
+
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -232,7 +232,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public String openPayment(String ids) {
+	public String openPayment(String ids, Date startPaymentDate, Date deadlinePaymentDate) {
 		if(StringUtils.isEmpty(ids)){
 			throw new BizException("参数校验失败");
 		}
@@ -243,13 +243,14 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 		}
 		int length = ids.split(",").length;
 		Date date = new Date();
+		
 		Long calenderId = calenderDetails.get(0).getMusicGroupPaymentCalenderId();
 		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderService.get(calenderId);
 		calenderDetails.forEach(e->{
 			e.setUpdateTime(date);
 			e.setOpen(1);
-			e.setStartPaymentDate(date);
-			e.setDeadlinePaymentDate(date);
+			e.setStartPaymentDate(startPaymentDate);
+			e.setDeadlinePaymentDate(deadlinePaymentDate);
 		});
 		musicGroupPaymentCalenderDetailDao.batchUpdate(calenderDetails);
 		Set<Integer> studentIds = calenderDetails.stream().map(e -> e.getUserId()).collect(Collectors.toSet());

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

@@ -309,7 +309,7 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
             if (status.equals("succeeded")) {
                 rpMap.put("tradeState", "1");
             }
-            if (status.equals("failed")) {
+            if (status.equals("failed") || (DateUtil.minutesBetween(DateUtil.addHours(payingOrder.getUpdateTime(), 2), date) > 0)) {
                 rpMap.put("tradeState", "0");
             }
 

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

@@ -184,6 +184,7 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 				head = userTrainStat.get(i);
 			}
 		}
+		head.setStudentNum(studentDao.countStudentsWithOrgan(null));
 		result.setHead(head);
 		detail.sort(Comparator.comparing(MusicCompareRankingDto::getRankNum).thenComparing(MusicCompareRankingDto::getUserId));
 		result.setDetail(detail);

+ 11 - 4
mec-biz/src/main/resources/config/mybatis/SysMusicScoreAccompanimentMapper.xml

@@ -23,6 +23,7 @@
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="is_show_fingering_" property="isShowFingering" />
+		<result column="is_open_metronome_" property="isOpenMetronome" />
 		<result column="memo_" property="memo" />
 		<result column="rank_ids_" property="rankIds" />
 		<result column="client_type_" property="clientType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
@@ -48,16 +49,16 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SysMusicScoreAccompaniment" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO sys_music_score_accompaniment (exam_song_id_,subject_id_,mp3_url_,speed_,xml_url_,create_time_,update_time_)
-		VALUES(#{examSongId},#{subjectId},#{mp3Url},#{speed},#{xmlUrl},NOW(),NOW())
+		INSERT INTO sys_music_score_accompaniment (exam_song_id_,subject_id_,mp3_url_,speed_,xml_url_,create_time_,update_time_,is_open_metronome_)
+		VALUES(#{examSongId},#{subjectId},#{mp3Url},#{speed},#{xmlUrl},NOW(),NOW(),#{isOpenMetronome})
 	</insert>
     <insert id="batchInsert">
 		INSERT INTO sys_music_score_accompaniment (exam_song_id_,subject_id_,mp3_url_,speed_,xml_url_,
-		                                           create_time_,update_time_,is_show_fingering_,memo_)
+		                                           create_time_,update_time_,is_show_fingering_,memo_,is_open_metronome_)
 		VALUES
 		<foreach collection="sysMusicScoreAccompaniments" item="item"  separator=",">
 			(#{sysMusicScoreId},#{item.subjectId},#{item.mp3Url},#{item.speed},
-			 #{item.xmlUrl},NOW(),NOW(),#{item.isShowFingering},#{item.memo})
+			 #{item.xmlUrl},NOW(),NOW(),#{item.isShowFingering},#{item.memo},#{item.isOpenMetronome})
 		</foreach>
 	</insert>
 
@@ -68,6 +69,9 @@
 		<if test="isShowFingering != null">
 			is_show_fingering_ = #{isShowFingering},
 		</if>
+		<if test="isOpenMetronome != null">
+			is_open_metronome_ = #{isOpenMetronome},
+		</if>
 		<if test="memo != null">
 			memo_ = #{memo},
 		</if>
@@ -93,6 +97,9 @@
 				<if test="item.isShowFingering != null">
 					is_show_fingering_ = #{item.isShowFingering},
 				</if>
+				<if test="item.isOpenMetronome != null">
+					is_open_metronome_ = #{item.isOpenMetronome},
+				</if>
 				<if test="item.memo != null">
 					memo_ = #{item.memo},
 				</if>

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

@@ -96,7 +96,7 @@
 		LEFT JOIN sys_music_score_categories smsc ON smsc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 		GROUP BY ses.id_
-		ORDER BY ses.order_,ses.name_
+		ORDER BY ses.music_score_categories_id_ desc,ses.order_ asc,ses.create_time_ desc
 		<include refid="global.limit"/>
 	</select>
 	

+ 12 - 3
mec-student/src/main/java/com/ym/mec/student/controller/StudentManageController.java

@@ -1,12 +1,14 @@
 package com.ym.mec.student.controller;
 
-import com.ym.mec.biz.dal.enums.SuggestionType;
-import com.ym.mec.util.date.DateUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -26,6 +28,7 @@ import com.ym.mec.biz.dal.dto.CashAccountDetail;
 import com.ym.mec.biz.dal.entity.AppVersionInfo;
 import com.ym.mec.biz.dal.entity.MemberRankSetting;
 import com.ym.mec.biz.dal.entity.Student;
+import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.SysConfig;
 import com.ym.mec.biz.dal.entity.SysSuggestion;
 import com.ym.mec.biz.dal.entity.SysUserBankCard;
@@ -49,6 +52,7 @@ import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.entity.UploadReturnBean;
 import com.ym.mec.common.filters.TenantIdThreadLocal;
 import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.upload.UploadUtil;
 
 @Api(tags = "学生管理")
@@ -147,6 +151,11 @@ public class StudentManageController extends BaseController {
 		student.setRealName(user.getRealName());
 		student.setIdCardNo(user.getIdCardNo());
 		student.setImToken(user.getImToken());
+		
+		if(StringUtils.isNotBlank(student.getSubjectIdList())){
+			List<Subject> subjectList = subjectService.findBySubjectByIdList(student.getSubjectIdList());
+			student.setSubjectNames(subjectList.stream().map(t -> t.getName()).collect(Collectors.joining(",")));
+		}
 
 		Map<String, Object> datas = new HashMap<String, Object>();
 		datas.put("student", student);

+ 17 - 10
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderDetailController.java

@@ -1,18 +1,13 @@
 package com.ym.mec.web.controller;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
-import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dto.MusicArrearageStudentDto;
-import com.ym.mec.biz.dal.entity.Employee;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.page.ArrearageStudentsQueryInfo;
-import com.ym.mec.biz.service.EmployeeService;
-import com.ym.mec.common.page.PageInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+
 import java.math.BigDecimal;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
+
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -21,11 +16,20 @@ 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 com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dto.MusicArrearageStudentDto;
 import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAddStudentDto;
+import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.entity.MusicGroup;
+import com.ym.mec.biz.dal.page.ArrearageStudentsQueryInfo;
 import com.ym.mec.biz.dal.page.MusicCalenderDetailQueryInfo;
+import com.ym.mec.biz.service.EmployeeService;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.common.page.PageInfo;
 
 @RequestMapping("musicGroupPaymentCalenderDetail")
 @Api(tags = "乐团缴费明细")
@@ -86,9 +90,12 @@ public class MusicGroupPaymentCalenderDetailController extends BaseController {
     @ApiOperation(value = "开启缴费")
     @PostMapping("/openPayment")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalenderDetail/openPayment')")
-    public HttpResponseResult openPayment(String ids) {
+    public HttpResponseResult openPayment(String ids, Date startPaymentDate, Date deadlinePaymentDate) {
         HttpResponseResult<Object> succeed = succeed();
-        succeed.setMsg(musicGroupPaymentCalenderDetailService.openPayment(ids));
+        Date date = new Date();
+        startPaymentDate = startPaymentDate == null ? date : startPaymentDate;
+		deadlinePaymentDate = deadlinePaymentDate == null ? date : deadlinePaymentDate;
+        succeed.setMsg(musicGroupPaymentCalenderDetailService.openPayment(ids, startPaymentDate, deadlinePaymentDate));
         return succeed;
     }
 

+ 2 - 2
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupQuitController.java

@@ -100,13 +100,13 @@ public class MusicGroupQuitController extends BaseController {
                 return failed("非法请求");
             }
         }
-		if (sysUser.getIsSuperAdmin() == false) {
+		/*if (sysUser.getIsSuperAdmin() == false) {
 			List<Integer> userRole = employeeService.queryUserRole(sysUser.getId());
 			// 如果当前用户只有教务老师角色,那么只能看到他所管理的课程组的信息
 			if (userRole.contains(SysUserRole.EDUCATIONAL_TEACHER) && !userRole.contains(SysUserRole.SECTION_MANAGER)) {
 				queryInfo.setEducationUserId(sysUser.getId());
 			}
-		}
+		}*/
         PageInfo<MusicGroupQuit> musicGroupQuitPageInfo = musicGroupQuitService.queryPage(queryInfo);
         List<MusicGroupQuit> rows = musicGroupQuitPageInfo.getRows();
         if (rows != null && rows.size() > 0) {