Browse Source

Merge branch 'saas' into master_saas

yonge 2 years ago
parent
commit
ebead66ced
21 changed files with 471 additions and 22 deletions
  1. 0 7
      audio-analysis/src/main/java/com/yonge/netty/server/handler/NettyChannelManager.java
  2. 11 0
      audio-analysis/src/main/java/com/yonge/netty/server/handler/NettyServerHandler.java
  3. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudTeacherFreeCourseDao.java
  4. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleRewardsRulesDao.java
  5. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleSwDao.java
  6. 145 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleSw.java
  7. 70 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseScheduleSWQueryInfo.java
  8. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleRewardsRulesService.java
  9. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleSwService.java
  10. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleRewardsRulesServiceImpl.java
  11. 23 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleSwServiceImpl.java
  12. 9 6
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  13. 5 0
      mec-biz/src/main/resources/config/mybatis/CloudTeacherFreeCourseMapper.xml
  14. 1 1
      mec-biz/src/main/resources/config/mybatis/CourseScheduleRewardsMapper.xml
  15. 134 0
      mec-biz/src/main/resources/config/mybatis/CourseScheduleSwMapper.xml
  16. 3 3
      mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml
  17. 1 1
      mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/SettleAccountService.java
  18. 28 0
      mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleSwController.java
  19. 4 0
      mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java
  20. 8 0
      mec-web/src/main/java/com/ym/mec/web/controller/StudentPaymentOrderController.java
  21. 4 0
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

+ 0 - 7
audio-analysis/src/main/java/com/yonge/netty/server/handler/NettyChannelManager.java

@@ -10,19 +10,14 @@ import java.util.concurrent.ConcurrentMap;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import com.ym.mec.util.json.JsonUtil;
-import com.yonge.netty.server.service.UserChannelContextService;
 
 @Component
 public class NettyChannelManager {
 
 	private static final Logger LOGGER = LoggerFactory.getLogger(NettyChannelManager.class);
-	
-	@Autowired
-	private UserChannelContextService userChannelContextService;
 
 	/**
 	 * {@link Channel#attr(AttributeKey)} 属性中,表示 Channel 对应的用户
@@ -89,8 +84,6 @@ public class NettyChannelManager {
 	 */
 	public void remove(Channel channel) {
 		
-		userChannelContextService.remove(channel);
-		
 		// 移除 channels
 		channels.remove(channel.id());
 

+ 11 - 0
audio-analysis/src/main/java/com/yonge/netty/server/handler/NettyServerHandler.java

@@ -14,6 +14,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.oauth2.common.OAuth2AccessToken;
 import org.springframework.stereotype.Component;
 
+import com.yonge.netty.server.service.UserChannelContextService;
+
 @Component
 @ChannelHandler.Sharable
 public class NettyServerHandler extends ChannelInboundHandlerAdapter {
@@ -22,6 +24,9 @@ public class NettyServerHandler extends ChannelInboundHandlerAdapter {
 
 	@Autowired
 	private NettyChannelManager channelManager;
+	
+	@Autowired
+	private UserChannelContextService userChannelContextService;
 
 	@Override
 	public void channelActive(ChannelHandlerContext ctx) {
@@ -31,6 +36,9 @@ public class NettyServerHandler extends ChannelInboundHandlerAdapter {
 
 	@Override
 	public void channelUnregistered(ChannelHandlerContext ctx) {
+		
+		userChannelContextService.remove(ctx.channel());
+		
 		// 从管理器中移除
 		channelManager.remove(ctx.channel());
 	}
@@ -38,6 +46,9 @@ public class NettyServerHandler extends ChannelInboundHandlerAdapter {
 	@Override
 	public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
 		LOGGER.error("[exceptionCaught][连接({}) 发生异常]", ctx.channel().id(), cause);
+		
+		userChannelContextService.remove(ctx.channel());
+		
 		// 断开连接
 		ctx.channel().close();
 	}

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudTeacherFreeCourseDao.java

@@ -4,7 +4,9 @@ import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.biz.dal.entity.CloudTeacherFreeCourse;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 public interface CloudTeacherFreeCourseDao extends BaseDAO<Long, CloudTeacherFreeCourse> {
 
@@ -13,4 +15,6 @@ public interface CloudTeacherFreeCourseDao extends BaseDAO<Long, CloudTeacherFre
     void deleteByCourseIds(@Param("courseIdList") List<Long> courseIdList);
 
     Integer countByCourseIdList(@Param("courseIdList") List<Long> courseIdList);
+
+    List<Map<Long, BigDecimal>> queryMapByClassDate(@Param("month") String month);
 }

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

@@ -70,7 +70,7 @@ public interface CourseScheduleRewardsRulesDao extends BaseDAO<Integer, CourseSc
 	 * @param lastDayOfMonth
 	 * @return
 	 */
-    List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(@Param("firstDayOfMonth") String firstDayOfMonth, @Param("lastDayOfMonth") String lastDayOfMonth);
+    List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(@Param("month") String month);
 
 	/**
 	 * 根据主键列表获取数据

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleSwDao.java

@@ -0,0 +1,9 @@
+package com.ym.mec.biz.dal.dao;
+
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.biz.dal.entity.CourseScheduleSw;
+
+public interface CourseScheduleSwDao extends BaseDAO<Long, CourseScheduleSw> {
+
+	
+}

+ 145 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleSw.java

@@ -0,0 +1,145 @@
+package com.ym.mec.biz.dal.entity;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+/**
+ * 对应数据库表(course_schedule_sw):
+ */
+public class CourseScheduleSw {
+
+	/**  */
+	private Long id;
+	
+	/**  */
+	private Integer teacherId;
+	
+	private String teacherName;
+	
+	/**  */
+	private String courseType;
+	
+	/**  */
+	private String courseName;
+	
+	/**  */
+	private String teachMode;
+	
+	private String courseStatus;
+	
+	/**  */
+	private java.util.Date classDate;
+	
+	/**  */
+	private String classTime;
+	
+	/**  */
+	private java.math.BigDecimal salary;
+	
+	/**  */
+	private java.util.Date createTime;
+	
+	/**  */
+	private java.util.Date updateTime;
+	
+	public void setId(Long id){
+		this.id = id;
+	}
+	
+	public Long getId(){
+		return this.id;
+	}
+			
+	public void setTeacherId(Integer teacherId){
+		this.teacherId = teacherId;
+	}
+	
+	public Integer getTeacherId(){
+		return this.teacherId;
+	}
+			
+	public String getTeacherName() {
+		return teacherName;
+	}
+
+	public void setTeacherName(String teacherName) {
+		this.teacherName = teacherName;
+	}
+
+	public void setCourseType(String courseType){
+		this.courseType = courseType;
+	}
+	
+	public String getCourseType(){
+		return this.courseType;
+	}
+			
+	public void setCourseName(String courseName){
+		this.courseName = courseName;
+	}
+	
+	public String getCourseName(){
+		return this.courseName;
+	}
+			
+	public void setTeachMode(String teachMode){
+		this.teachMode = teachMode;
+	}
+	
+	public String getTeachMode(){
+		return this.teachMode;
+	}
+			
+	public String getCourseStatus() {
+		return courseStatus;
+	}
+
+	public void setCourseStatus(String courseStatus) {
+		this.courseStatus = courseStatus;
+	}
+
+	public void setClassDate(java.util.Date classDate){
+		this.classDate = classDate;
+	}
+	
+	public java.util.Date getClassDate(){
+		return this.classDate;
+	}
+			
+	public void setClassTime(String classTime){
+		this.classTime = classTime;
+	}
+	
+	public String getClassTime(){
+		return this.classTime;
+	}
+			
+	public void setSalary(java.math.BigDecimal salary){
+		this.salary = salary;
+	}
+	
+	public java.math.BigDecimal getSalary(){
+		return this.salary;
+	}
+			
+	public void setCreateTime(java.util.Date createTime){
+		this.createTime = createTime;
+	}
+	
+	public java.util.Date getCreateTime(){
+		return this.createTime;
+	}
+			
+	public void setUpdateTime(java.util.Date updateTime){
+		this.updateTime = updateTime;
+	}
+	
+	public java.util.Date getUpdateTime(){
+		return this.updateTime;
+	}
+			
+	@Override
+	public String toString() {
+		return ToStringBuilder.reflectionToString(this);
+	}
+
+}

+ 70 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseScheduleSWQueryInfo.java

@@ -0,0 +1,70 @@
+package com.ym.mec.biz.dal.page;
+
+import io.swagger.annotations.ApiModelProperty;
+
+import java.util.Date;
+
+import com.ym.mec.common.page.QueryInfo;
+
+/**
+ * @Author Joburgess
+ * @Date 2019/12/27
+ */
+public class CourseScheduleSWQueryInfo extends QueryInfo {
+
+    @ApiModelProperty(value = "教师编号")
+    private String teacherIdList;
+
+    @ApiModelProperty(value = "课程创建开始时间")
+    private Date createStartDate;
+    
+    @ApiModelProperty(value = "课程创建结束时间")
+    private Date createEndDate;
+
+    @ApiModelProperty(value = "课程状态")
+    private String courseStatus;
+
+    @ApiModelProperty(value = "上课模式")
+    private String teachMode;
+
+	public String getTeacherIdList() {
+		return teacherIdList;
+	}
+
+	public void setTeacherIdList(String teacherIdList) {
+		this.teacherIdList = teacherIdList;
+	}
+
+	public Date getCreateStartDate() {
+		return createStartDate;
+	}
+
+	public void setCreateStartDate(Date createStartDate) {
+		this.createStartDate = createStartDate;
+	}
+
+	public Date getCreateEndDate() {
+		return createEndDate;
+	}
+
+	public void setCreateEndDate(Date createEndDate) {
+		this.createEndDate = createEndDate;
+	}
+
+	public String getCourseStatus() {
+		return courseStatus;
+	}
+
+	public void setCourseStatus(String courseStatus) {
+		this.courseStatus = courseStatus;
+	}
+
+	public String getTeachMode() {
+		return teachMode;
+	}
+
+	public void setTeachMode(String teachMode) {
+		this.teachMode = teachMode;
+	}
+
+}

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

@@ -55,7 +55,7 @@ public interface CourseScheduleRewardsRulesService extends BaseService<Integer,
 	 * @param lastDayOfMonth
 	 * @return
 	 */
-    List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(String firstDayOfMonth,String lastDayOfMonth);
+    List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(String month);
 
 	/**
 	 * 根据主键列表获取数据

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleSwService.java

@@ -0,0 +1,8 @@
+package com.ym.mec.biz.service;
+
+import com.ym.mec.biz.dal.entity.CourseScheduleSw;
+import com.ym.mec.common.service.BaseService;
+
+public interface CourseScheduleSwService extends BaseService<Long, CourseScheduleSw> {
+
+}

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

@@ -207,8 +207,8 @@ public class CourseScheduleRewardsRulesServiceImpl extends BaseServiceImpl<Integ
 	}
 
 	@Override
-	public List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(String firstDayOfMonth, String lastDayOfMonth) {
-		return courseScheduleRewardsDao.queryVipGroupTeacherClassTimesByMonth(firstDayOfMonth,lastDayOfMonth);
+	public List<TaskRewardsRulesDto> queryVipGroupTeacherClassTimesByMonth(String month) {
+		return courseScheduleRewardsDao.queryVipGroupTeacherClassTimesByMonth(month);
 	}
 
 	@Override

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleSwServiceImpl.java

@@ -0,0 +1,23 @@
+package com.ym.mec.biz.service.impl;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.ym.mec.biz.dal.dao.CourseScheduleSwDao;
+import com.ym.mec.biz.dal.entity.CourseScheduleSw;
+import com.ym.mec.biz.service.CourseScheduleSwService;
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
+
+@Service
+public class CourseScheduleSwServiceImpl extends BaseServiceImpl<Long, CourseScheduleSw>  implements CourseScheduleSwService {
+	
+	@Autowired
+	private CourseScheduleSwDao courseScheduleSwDao;
+
+	@Override
+	public BaseDAO<Long, CourseScheduleSw> getDAO() {
+		return courseScheduleSwDao;
+	}
+	
+}

+ 9 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -104,6 +104,8 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
     @Lazy
     private PracticeGroupService practiceGroupService;
     @Autowired
+    private CloudTeacherFreeCourseDao cloudTeacherFreeCourseDao;
+    @Autowired
     private RedisTemplate redisTemplate;
 
     private static final Logger LOGGER = LoggerFactory
@@ -931,17 +933,15 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         //扣除有异常考勤的课酬
         Map<String, Object> params = new HashMap<>();
         MapUtil.populateMap(params, queryInfo);
-        String firstDayOfMonth = DateUtil.format(DateUtil.getFirstDayOfMonth(queryInfo.getDate()),DateUtil.ISO_EXPANDED_DATE_FORMAT);
-        String lastDayOfMonth =  DateUtil.format(DateUtil.getLastDayOfMonth(queryInfo.getDate()),DateUtil.ISO_EXPANDED_DATE_FORMAT);
-        params.put("firstDayOfMonth",firstDayOfMonth);
-        params.put("lastDayOfMonth",lastDayOfMonth);
+        String month = DateUtil.format(DateUtil.getFirstDayOfMonth(queryInfo.getDate()),DateUtil.ISO_YEAR_MONTH_FORMAT);
+        params.put("month",month);
         List<ExportTeacherSalaryDto> exportTeacherSalaryDtos = new ArrayList<>();
         //乐团课
         exportTeacherSalaryDtos.addAll(courseScheduleTeacherSalaryDao.exportMusicTeacherSalary(params));
         //vip课
         List<ExportTeacherSalaryDto> exportVipTeacherSalaryDtos = courseScheduleTeacherSalaryDao.exportVipTeacherSalary(params);
         //获取有奖励的vip课  .collect(Collectors.toMap(Group::getId, group -> group));
-        List<TaskRewardsRulesDto> rewardsRulesDtos = courseScheduleRewardsRulesService.queryVipGroupTeacherClassTimesByMonth(firstDayOfMonth,lastDayOfMonth);
+        List<TaskRewardsRulesDto> rewardsRulesDtos = courseScheduleRewardsRulesService.queryVipGroupTeacherClassTimesByMonth(month);
         Map<Integer,Double> rewardMap = new HashMap<>(1000);
         Map<Integer,String> rewardNameMap = new HashMap<>(1000);
         if(rewardsRulesDtos != null && rewardsRulesDtos.size() > 0){
@@ -1034,16 +1034,19 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         if(!CollectionUtils.isEmpty(allCourseIds)){
             List<CourseScheduleStudentPayment> courseScheduleStudentPayments = courseScheduleStudentPaymentDao.findByCourseScheduleIds(new ArrayList<>(allCourseIds));
             if(!CollectionUtils.isEmpty(courseScheduleStudentPayments)){
-                courseIncomeMap = courseScheduleStudentPayments.stream().collect(Collectors.groupingBy(CourseScheduleStudentPayment::getCourseScheduleId, Collectors.mapping(CourseScheduleStudentPayment::getExpectPrice, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add))));
+                courseIncomeMap = courseScheduleStudentPayments.stream().collect(Collectors.groupingBy(CourseScheduleStudentPayment::getCourseScheduleId, Collectors.mapping(CourseScheduleStudentPayment::getActualPrice, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add))));
             }
         }
+        Map<Long,BigDecimal> courseCast = MapUtil.convertIntegerMap(cloudTeacherFreeCourseDao.queryMapByClassDate(month));
 
         for (ExportTeacherSalaryDto exportTeacherSalaryDto : exportTeacherSalaryDtos) {
+            BigDecimal castOrDefault = courseCast.getOrDefault(exportTeacherSalaryDto.getCourseScheduleId(), BigDecimal.ZERO);
             if(!courseIncomeMap.containsKey(exportTeacherSalaryDto.getCourseScheduleId())){
                 exportTeacherSalaryDto.setCourseIncome(BigDecimal.ZERO);
             }else{
                 exportTeacherSalaryDto.setCourseIncome(courseIncomeMap.get(exportTeacherSalaryDto.getCourseScheduleId()));
             }
+            exportTeacherSalaryDto.setCourseIncome(exportTeacherSalaryDto.getCourseIncome().add(castOrDefault));
         }
 
         exportTeacherSalaryDtos.sort(Comparator.comparing(ExportTeacherSalaryDto::getTeacherId));

+ 5 - 0
mec-biz/src/main/resources/config/mybatis/CloudTeacherFreeCourseMapper.xml

@@ -80,4 +80,9 @@
 			#{id}
 		</foreach>
 	</select>
+    <select id="queryMapByClassDate" resultType="java.util.Map">
+		select ctfc.course_id_ 'key',ctfc.cost_ 'value' from cloud_teacher_free_course  ctfc
+		left join course_schedule cs ON cs.id_ = ctfc.course_id_
+		where DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month}
+	</select>
 </mapper>

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

@@ -157,7 +157,7 @@
 		LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
 		LEFT JOIN vip_group_activity vga ON vga.id_ = vg.vip_group_activity_id_
 		WHERE cs.group_type_ = 'VIP' AND csts.settlement_time_ IS NOT NULL
-		AND cs.class_date_ &gt;= #{firstDayOfMonth} AND cs.class_date_ &lt;= #{lastDayOfMonth}
+		AND DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month}
 		AND FIND_IN_SET(cs.actual_teacher_id_,csrr.teacher_id_)
 		AND FIND_IN_SET(cg.subject_id_list_,csrr.subject_id_)
 		AND csts.user_id_ = cs.actual_teacher_id_

+ 134 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleSwMapper.xml

@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!-- 这个文件是自动生成的。 不要修改此文件。所有改动将在下次重新自动生成时丢失。 -->
+<mapper namespace="com.ym.mec.biz.dal.dao.CourseScheduleSwDao">
+
+	<resultMap type="com.ym.mec.biz.dal.entity.CourseScheduleSw"
+		id="CourseScheduleSw">
+		<result column="id_" property="id" />
+		<result column="teacher_id_" property="teacherId" />
+		<result column="teacher_name_" property="teacherName" />
+		<result column="course_type_" property="courseType" />
+		<result column="course_name_" property="courseName" />
+		<result column="teach_mode_" property="teachMode" />
+		<result column="course_status_" property="courseStatus" />
+		<result column="class_date_" property="classDate" />
+		<result column="class_time_" property="classTime" />
+		<result column="salary_" property="salary" />
+		<result column="create_time_" property="createTime" />
+		<result column="update_time_" property="updateTime" />
+	</resultMap>
+
+	<!-- 根据主键查询一条记录 -->
+	<select id="get" resultMap="CourseScheduleSw">
+		SELECT * FROM course_schedule_sw WHERE id_ = #{id}
+	</select>
+
+	<!-- 全查询 -->
+	<select id="findAll" resultMap="CourseScheduleSw">
+		SELECT * FROM course_schedule_sw ORDER BY id_
+	</select>
+
+	<!-- 向数据库增加一条记录 -->
+	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleSw"
+		useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
+			AS ID FROM DUAL </selectKey> -->
+		INSERT INTO course_schedule_sw
+		(id_,teacher_id_,course_type_,course_name_,teach_mode_,class_date_,class_time_,salary_,create_time_,update_time_,course_status_)
+		VALUES(#{id},#{teacherId},#{courseType},#{courseName},#{teachMode},#{classDate},#{classTime},#{salary},#{createTime},#{updateTime},#{courseStatus})
+	</insert>
+
+	<!-- 根据主键查询一条记录 -->
+	<update id="update" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleSw">
+		UPDATE course_schedule_sw
+		<set>
+			<if test="classDate != null">
+				class_date_ = #{classDate},
+			</if>
+			<if test="classTime != null">
+				class_time_ = #{classTime},
+			</if>
+			<if test="id != null">
+				id_ = #{id},
+			</if>
+			<if test="teacherId != null">
+				teacher_id_ = #{teacherId},
+			</if>
+			<if test="teachMode != null">
+				teach_mode_ = #{teachMode},
+			</if>
+			<if test="courseStatus != null">
+				course_status_ = #{courseStatus},
+			</if>
+			<if test="salary != null">
+				salary_ = #{salary},
+			</if>
+			<if test="updateTime != null">
+				update_time_ = #{updateTime},
+			</if>
+			<if test="courseType != null">
+				course_type_ = #{courseType},
+			</if>
+			<if test="courseName != null">
+				course_name_ = #{courseName},
+			</if>
+			<if test="createTime != null">
+				create_time_ = #{createTime},
+			</if>
+		</set>
+		WHERE id_ = #{id}
+	</update>
+
+	<!-- 根据主键删除一条记录 -->
+	<delete id="delete">
+		DELETE FROM course_schedule_sw WHERE id_ =
+		#{id}
+	</delete>
+
+	<!-- 分页查询 -->
+	<select id="queryPage" resultMap="CourseScheduleSw"
+		parameterType="map">
+		SELECT cs.*,ifnull(u.real_name_,u.username_) teacher_name_ FROM course_schedule_sw cs left join sys_user u on cs.teacher_id_ = u.id_ ORDER BY id_
+		<where>
+			<if test="teacherIdList != null">
+				and cs.teacher_id_ = #{teacherIdList}
+			</if>
+			<if test="courseStatus != null">
+				and cs.course_status_ = #{courseStatus}
+			</if>
+			<if test="teachMode != null">
+				and cs.teach_mode_ = #{teachMode}
+			</if>
+			<if test="createStartDate != null">
+				and date(cs.create_time_) &gt;= #{createStartDate}
+			</if>
+			<if test="createEndDate != null">
+				and date(cs.create_time_) &lt;= #{createEndDate}
+			</if>
+		</where>
+		<include refid="global.limit" />
+	</select>
+
+	<!-- 查询当前表的总记录数 -->
+	<select id="queryCount" resultType="int">
+		SELECT COUNT(*) FROM course_schedule_sw cs left join sys_user u on cs.teacher_id_ = u.id_
+		<where>
+			<if test="teacherIdList != null">
+				and cs.teacher_id_ = #{teacherIdList}
+			</if>
+			<if test="courseStatus != null">
+				and cs.course_status_ = #{courseStatus}
+			</if>
+			<if test="teachMode != null">
+				and cs.teach_mode_ = #{teachMode}
+			</if>
+			<if test="createStartDate != null">
+				and date(cs.create_time_) &gt;= #{createStartDate}
+			</if>
+			<if test="createEndDate != null">
+				and date(cs.create_time_) &lt;= #{createEndDate}
+			</if>
+		</where>
+	</select>
+</mapper>

+ 3 - 3
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -758,7 +758,7 @@
 		LEFT JOIN music_group mg ON (mg.id_ = ts.music_group_id_ AND ts.group_type_ = 'MUSIC')
 		LEFT JOIN organization mgo ON mgo.id_ = mg.organ_id_
 		LEFT JOIN charge_type ct ON ct.id_ = mg.charge_type_id_
-		WHERE cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'MUSIC' AND ts.settlement_time_ IS NOT NULL
+		WHERE DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'MUSIC' AND ts.settlement_time_ IS NOT NULL
 		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
 			and cs.type_ in (#{courseTypeList})
@@ -798,7 +798,7 @@
 		LEFT JOIN vip_group_activity vga ON vg.vip_group_activity_id_ = vga.id_
 		LEFT JOIN organization vgo ON vgo.id_ = vg.organ_id_
 		left join vip_group_category vgc on vgc.id_ = vg.vip_group_category_id_
-		WHERE vg.organ_id_ != 41 AND cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1
+		WHERE vg.organ_id_ != 41 AND DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month} AND cs.`del_flag_` != 1
 		AND cs.group_type_ = 'VIP' AND ts.settlement_time_ IS NOT NULL
 		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
@@ -839,7 +839,7 @@
 		LEFT JOIN `student_attendance` sa ON sa.`course_schedule_id_` = ts.`course_schedule_id_`
 		LEFT JOIN practice_group pg ON (pg.id_ = ts.music_group_id_ AND ts.group_type_ = 'PRACTICE')
 		LEFT JOIN organization pgo ON pgo.id_ = pg.organ_id_
-		WHERE cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'PRACTICE' AND ts.settlement_time_ IS NOT NULL
+		WHERE DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'PRACTICE' AND ts.settlement_time_ IS NOT NULL
 		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
 			and cs.type_ in (#{courseTypeList})

+ 1 - 1
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/SettleAccountService.java

@@ -32,7 +32,7 @@ public class SettleAccountService {
 		settleCountParams.put("member_id", accountInfo.getMemberId());
 		settleCountParams.put("app_id", appId);
 		settleCountParams.put("channel", "bank_account");
-		settleCountParams.put("account_info", accountInfo);
+		settleCountParams.put("account_info", accountInfoMap);
 		try {
 			Map<String, Object> resp = com.huifu.adapay.model.SettleAccount.create(settleCountParams, merchantKey);
 			if (StringUtils.equals("succeeded", resp.get("status").toString())) {

+ 28 - 0
mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleSwController.java

@@ -0,0 +1,28 @@
+package com.ym.mec.web.controller;
+
+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;
+
+import com.ym.mec.biz.dal.page.CourseScheduleSWQueryInfo;
+import com.ym.mec.biz.service.CourseScheduleSwService;
+import com.ym.mec.common.controller.BaseController;
+
+@RequestMapping("courseScheduleSw")
+@RestController
+public class CourseScheduleSwController extends BaseController {
+
+	@Autowired
+	private CourseScheduleSwService courseScheduleSwService;
+
+    @ApiOperation(value = "课表查询")
+    @GetMapping("/queryPage")
+    @PreAuthorize("@pcs.hasPermissions('courseSchedule/queryPage')")
+    public Object queryPage(CourseScheduleSWQueryInfo queryInfo){
+        return succeed(courseScheduleSwService.queryPage(queryInfo));
+    }
+}

+ 4 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -58,6 +58,10 @@ public class StudentManageController extends BaseController {
     public Object queryStudentList(@RequestBody StudentManageQueryInfo queryInfo){
         queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
         queryInfo.setIsExport(false);
+        if(queryInfo.getTenantId() == 28){
+        	queryInfo.setTenantId(1);
+        	queryInfo.setOrganId(null);
+        }
         return succeed(studentManageService.findStudentsByOrganId(queryInfo));
     }
 

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentPaymentOrderController.java

@@ -57,6 +57,14 @@ public class StudentPaymentOrderController extends BaseController {
             }
             queryInfo.setUserIds(userIds);
         }
+        if(queryInfo.getTenantId() == 28){
+        	queryInfo.setTenantId(1);
+        	queryInfo.setOrganId(null);
+        	
+        	if(StringUtils.isBlank(queryInfo.getMerNos())){
+        		queryInfo.setMerNos("H004236");
+        	}
+        }
 
         PageInfo<StudentPaymentOrderDto> studentPaymentOrderPageInfo = studentPaymentOrderService.OrderQueryPage(queryInfo);
 

+ 4 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

@@ -55,6 +55,10 @@ public class TeacherController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('teacher/queryPage')")
     public HttpResponseResult<PageInfo<Teacher>> queryPage(TeacherQueryInfo queryInfo) {
         queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
+        if(queryInfo.getTenantId() == 28){
+        	queryInfo.setTenantId(1);
+        	queryInfo.setOrganId(null);
+        }
         return succeed(teacherService.queryPageDetail(queryInfo));
     }