Quellcode durchsuchen

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge vor 5 Jahren
Ursprung
Commit
0c1bd5ba3e
21 geänderte Dateien mit 157 neuen und 40 gelöschten Zeilen
  1. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java
  2. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java
  3. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherAttendanceDao.java
  4. 7 6
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupDao.java
  5. 34 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/VipGroupSalaryBaseInfo.java
  6. 7 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/PlatformCashAccountDetailTypeEnum.java
  7. 3 1
      mec-biz/src/main/java/com/ym/mec/biz/service/ClassGroupTeacherSalaryService.java
  8. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  9. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  10. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  11. 19 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java
  12. 20 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  13. 5 0
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  14. 12 1
      mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml
  15. 1 0
      mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml
  16. 2 7
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml
  17. 6 0
      mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml
  18. 8 9
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  19. 1 1
      mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml
  20. 3 0
      mec-im/src/main/java/com/ym/SealClassApplication.java
  21. 0 6
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -518,4 +518,11 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
 	 */
 	List<CourseSchedule> findByClassGroups(@Param("classGroupIds") List<Integer> classGroupIds);
+
+	/**
+	 * 获取当前课程所有学员列表
+	 * @param courseScheduleId
+	 * @return
+	 */
+    List<Map<Integer, String>> findStudentMap(Integer courseScheduleId);
 }

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

@@ -132,4 +132,13 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
      * @return java.util.List<com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary>
      */
     List<CourseScheduleTeacherSalary> findByCourseSchedules(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+
+	/**
+	 * @describe 统计班级上老师的先上课,线下课课酬
+	 * @author Joburgess
+	 * @date 2019/11/5
+	 * @param classGroupId: 班级编号
+	 * @return java.util.List<java.util.Map<java.lang.String,java.math.BigDecimal>>
+	 */
+	List<Map<String, BigDecimal>> countTeacherOnlineOfflineSalaryByClass(@Param("classGroupId") Integer classGroupId);
 }

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherAttendanceDao.java

@@ -4,6 +4,7 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
+import com.ym.mec.biz.dal.entity.StudentAttendance;
 import org.apache.ibatis.annotations.Param;
 
 import com.ym.mec.biz.dal.dto.Mapper;
@@ -87,4 +88,11 @@ public interface TeacherAttendanceDao extends BaseDAO<Long, TeacherAttendance> {
     int countTeacherAbnormalSignInClassTimes(@Param("organId") Integer organId,
                                              @Param("date") Date date,
                                              @Param("signInStatus") Integer signInStatus);
+
+    /**
+     * 封装未签到学员列表
+     * @param courseScheduleId
+     * @return
+     */
+    List<StudentAttendance> queryNoSignStudentRecord(Integer courseScheduleId);
 }

+ 7 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupDao.java

@@ -5,6 +5,7 @@ import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.School;
 import com.ym.mec.biz.dal.entity.VipGroup;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
 
 import java.math.BigDecimal;
 import java.util.List;
@@ -118,13 +119,13 @@ public interface VipGroupDao extends BaseDAO<Long, VipGroup> {
 	VipGroupManageDetailDto getVipGroupBaseInfo(Long vipGroupId);
 
 	/**
-	 * @Author: Joburgess
-	 * @Date: 2019/10/11
-	 * @params [vipGroupId]
-	 * @return com.ym.mec.biz.dal.dto.VipGroupSalaryBaseInfo
 	 * @describe 获取vip课财务基本信息
+	 * @author Joburgess
+	 * @date 2019/11/5
+	 * @param vipGroupId: vip课编号
+	 * @return com.ym.mec.biz.dal.dto.VipGroupSalaryBaseInfo
 	 */
-	VipGroupSalaryBaseInfo getVipGroupSalaryInfo(Long vipGroupId);
+	VipGroupSalaryBaseInfo getVipGroupSalaryInfo(@Param("vipGroupId") Long vipGroupId);
 
 	/**
 	 * @Author: Joburgess
@@ -241,4 +242,4 @@ public interface VipGroupDao extends BaseDAO<Long, VipGroup> {
 	 * @return
 	 */
 	Integer queryCurrentMonthCoursesNum(Integer organId);
-}
+}

+ 34 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/VipGroupSalaryBaseInfo.java

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
 import java.math.BigDecimal;
+import java.util.Objects;
 
 /**
  * @Author Joburgess
@@ -24,6 +25,39 @@ public class VipGroupSalaryBaseInfo {
     @ApiModelProperty(value = "课酬总额")
     private BigDecimal totalSalary;
 
+    @ApiModelProperty(value = "课程总价")
+    private BigDecimal totalCoursePrice;
+
+    @ApiModelProperty(value = "教师线上课总课酬")
+    private BigDecimal totalOnlineTeacherSalary;
+
+    @ApiModelProperty(value = "教师线下课总课酬")
+    private BigDecimal totalOfflineTeacherSalary;
+
+    public BigDecimal getTotalCoursePrice() {
+        return totalCoursePrice;
+    }
+
+    public void setTotalCoursePrice(BigDecimal totalCoursePrice) {
+        this.totalCoursePrice = totalCoursePrice;
+    }
+
+    public BigDecimal getTotalOnlineTeacherSalary() {
+        return totalOnlineTeacherSalary;
+    }
+
+    public void setTotalOnlineTeacherSalary(BigDecimal totalOnlineTeacherSalary) {
+        this.totalOnlineTeacherSalary = Objects.isNull(totalOnlineTeacherSalary)?new BigDecimal(0):totalOnlineTeacherSalary;
+    }
+
+    public BigDecimal getTotalOfflineTeacherSalary() {
+        return totalOfflineTeacherSalary;
+    }
+
+    public void setTotalOfflineTeacherSalary(BigDecimal totalOfflineTeacherSalary) {
+        this.totalOfflineTeacherSalary = Objects.isNull(totalOfflineTeacherSalary)?new BigDecimal(0):totalOfflineTeacherSalary;
+    }
+
     public BigDecimal getExpectTotalSalary() {
         return expectTotalSalary;
     }

+ 7 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/PlatformCashAccountDetailTypeEnum.java

@@ -6,8 +6,13 @@ import com.ym.mec.common.enums.BaseEnum;
  * 交易类型 (RECHARGE 充值,WITHDRAW 提现,PAY_FEE 缴费,REFUNDS 退费,FILL_ACCOUNT 人工补账)
  */
 public enum PlatformCashAccountDetailTypeEnum implements BaseEnum<String, PlatformCashAccountDetailTypeEnum> {
-	RECHARGE("RECHARGE", "充值"), WITHDRAW("WITHDRAW", "提现"), PAY_FEE("PAY_FEE", "缴费"), FILL_ACCOUNT("FILL_ACCOUNT", "人工补账"), REFUNDS("REFUNDS", "退费"), REWARDS(
-			"REWARDS", "奖励"), WAGE("WAGE", "工资");
+	RECHARGE("RECHARGE", "充值"),
+	WITHDRAW("WITHDRAW", "提现"),
+	PAY_FEE("PAY_FEE", "缴费"),
+	FILL_ACCOUNT("FILL_ACCOUNT", "人工补账"),
+	REFUNDS("REFUNDS", "退费"),
+	REWARDS("REWARDS", "奖励"),
+	WAGE("WAGE", "工资");
 
 	private String code;
 

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

@@ -3,7 +3,9 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.entity.ClassGroupTeacherSalary;
 import com.ym.mec.common.service.BaseService;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 public interface ClassGroupTeacherSalaryService extends BaseService<Long, ClassGroupTeacherSalary> {
     /**
@@ -14,4 +16,4 @@ public interface ClassGroupTeacherSalaryService extends BaseService<Long, ClassG
      */
     List<ClassGroupTeacherSalary> findByMusicGroupId(String musicGroupId);
 
-}
+}

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

@@ -190,7 +190,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             SysUserCashAccount teacherCashAccount = sysUserCashAccountService.get(courseScheduleTeacherSalary.getUserId().intValue());
             SysUserCashAccountDetail teacherCashAccountDetail = new SysUserCashAccountDetail();
             teacherCashAccountDetail.setUserId(courseScheduleTeacherSalary.getUserId());
-            teacherCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.REFUNDS);
+            teacherCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.WAGE);
             teacherCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
             teacherCashAccountDetail.setAmount(actualSalary);
             teacherCashAccountDetail.setBalance(teacherCashAccount.getBalance());
@@ -371,7 +371,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             SysUserCashAccount teacherCashAccount = sysUserCashAccountService.get(courseScheduleTeacherSalary.getUserId().intValue());
             SysUserCashAccountDetail teacherCashAccountDetail = new SysUserCashAccountDetail();
             teacherCashAccountDetail.setUserId(courseScheduleTeacherSalary.getUserId());
-            teacherCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.REFUNDS);
+            teacherCashAccountDetail.setType(PlatformCashAccountDetailTypeEnum.WAGE);
             teacherCashAccountDetail.setStatus(DealStatusEnum.SUCCESS);
             teacherCashAccountDetail.setAmount(teacherSalary);
             teacherCashAccountDetail.setBalance(teacherCashAccount.getBalance());

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

@@ -41,9 +41,7 @@ public class StudentManageServiceImpl implements StudentManageService {
 
     @Override
     public PageInfo findStudentsByOrganId(StudentManageQueryInfo queryInfo) {
-        SysUser user = sysUserFeignService.queryUserInfo();
         PageInfo<StudentManageListDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
-        queryInfo.setOrganId(user.getOrganId());
         Map<String, Object> params = new HashMap<>();
         MapUtil.populateMap(params, queryInfo);
 

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

@@ -20,7 +20,6 @@ import com.ym.mec.im.ImFeignService;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
-import com.ym.mec.util.string.MessageFormatter;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -194,7 +193,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
         //增加报名学生数
 //        musicGroupSubjectPlanService.addApplyStudentNum(studentRegistration.getMusicGroupId(), studentRegistration.getSubjectId(),1);
         //报名成功后,发送短信
-        String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL + studentRegistration.getMusicGroupId());
+        String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + studentRegistration.getMusicGroupId();
         String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
         Subject subject = subjectDao.get(studentRegistration.getActualSubjectId());
         MusicGroup musicGroup = musicGroupDao.get(studentRegistration.getMusicGroupId());
@@ -203,7 +202,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
         map.put(studentRegistration.getUserId(),studentRegistration.getParentsPhone());
         sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI,
                 MessageTypeEnum.SMS_APPLY_MESSAGE,map,null,0,"",
-                studentRegistration.getParentsName(),subject.getName(),studentApplyUrl,musicGroup.getApplyExpireDate(),serverPhone);
+                studentRegistration.getParentsName(),subject.getName(),studentApplyUrl,
+                DateUtil.format(musicGroup.getApplyExpireDate(),DateUtil.DATE_FORMAT_MIN),serverPhone);
         return studentRegistration;
     }
 

+ 19 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
@@ -208,9 +209,27 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 		if(isAttendance){
 			if(SignStatusEnum.SIGN_OUT.equals(signStatus)){
 				teacherAttendanceDao.update(teacherAttendance);
+				//教师签退后,给未签到学员添加旷课记录
+				//封装未签到学员签到列表
+				List<StudentAttendance> studentAttendances = teacherAttendanceDao.queryNoSignStudentRecord(courseScheduleId);
+				studentAttendances.forEach(e->{
+					e.setTeacherId(userId);
+					e.setStatus(StudentAttendanceStatusEnum.TRUANT);
+					e.setRemark("学员未到,自动补旷课");
+				});
+				studentAttendanceDao.addStudentAttendances(studentAttendances);
 			}
 		}else{
 			teacherAttendanceDao.insert(teacherAttendance);
+			//教师到课推送
+			if(courseSchedule.getTeachMode() == TeachModeEnum.ONLINE){
+				//获取所有当前课程的学生列表
+				Map<Integer,String> userMap = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(courseScheduleDao.findStudentMap(courseScheduleId))),HashMap.class);
+				if(userMap != null && userMap.size() > 0){
+					sysMessageService.batchSendMessage(MessageSender.JIGUANG,MessageTypeEnum.STUDENT_PUSH_ONLINE_COURSE_ACTION,userMap,
+							null,0,"",courseSchedule.getName());
+				}
+			}
 		}
 	}
 

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

@@ -957,6 +957,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
     		throw new BizException("请指定vip课程!");
 		}
 
+		VipGroup vipGroup = vipGroupDao.get(queryInfo.getVipGroupId());
+
+    	if(Objects.isNull(vipGroup)){
+    		throw new BizException("未找到指定vip课");
+		}
+
 		PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
@@ -989,15 +995,29 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		if(Objects.isNull(vipGroupSalaryBaseInfo)){
 			vipGroupSalaryBaseInfo=new VipGroupSalaryBaseInfo();
 		}
+		//预计总课酬
 		if(Objects.isNull(vipGroupSalaryBaseInfo.getExpectTotalSalary())){
 			vipGroupSalaryBaseInfo.setExpectTotalSalary(new BigDecimal(0));
 		}
+		//实际总课酬
 		if(Objects.isNull(vipGroupSalaryBaseInfo.getTotalSalary())){
 			vipGroupSalaryBaseInfo.setTotalSalary(new BigDecimal(0));
 		}
+		//扣费总额
 		vipGroupSalaryBaseInfo.setTotalFeeDeduction(vipGroupSalaryBaseInfo.getExpectTotalSalary().subtract(vipGroupSalaryBaseInfo.getTotalSalary()));
+		//扣费笔数
 		vipGroupSalaryBaseInfo.setFeeDeductionNum(vipGroupDao.countVipGroupDeductionNum(queryInfo.getVipGroupId()));
 
+		ClassGroup classGroup = classGroupDao.findByVipGroup(vipGroup.getId());
+		BigDecimal studentNum=new BigDecimal(classGroup.getStudentNum());
+		//课程总价
+		vipGroupSalaryBaseInfo.setTotalCoursePrice(vipGroup.getTotalPrice().multiply(studentNum));
+
+		List<Map<String, BigDecimal>> teacherSalaryCount = courseScheduleTeacherSalaryDao.countTeacherOnlineOfflineSalaryByClass(classGroup.getId());
+		Map<String,BigDecimal> teacherTeachModeSalaryMap = MapUtil.convertMybatisMap(teacherSalaryCount);
+		vipGroupSalaryBaseInfo.setTotalOfflineTeacherSalary(teacherTeachModeSalaryMap.get(TeachModeEnum.OFFLINE.getCode()));
+		vipGroupSalaryBaseInfo.setTotalOnlineTeacherSalary(teacherTeachModeSalaryMap.get(TeachModeEnum.ONLINE.getCode()));
+
 		Map<String,Object> result=new HashMap<>();
 		result.put("pageInfo",pageInfo);
 		result.put("baseInfo",vipGroupSalaryBaseInfo);

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

@@ -1170,4 +1170,9 @@
             #{classGroupId}
         </foreach>
     </select>
+    <select id="findStudentMap" resultType="java.util.Map">
+        SELECT cs.user_id_ 'key',cs.user_id_ 'value' FROM course_schedule_student_payment cs
+        WHERE cs.course_schedule_id_ = #{courseScheduleId}
+        GROUP BY user_id_
+    </select>
 </mapper>

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

@@ -239,7 +239,18 @@
 		</foreach>
 	</select>
 
-	<update id="batchUpdateWages" parameterType="map">
+    <select id="countTeacherOnlineOfflineSalaryByClass" resultType="map">
+		SELECT
+			cs.teach_mode_ AS 'key',
+			SUM( csts.actual_salary_ ) AS 'value'
+		FROM
+			course_schedule cs
+			LEFT JOIN course_schedule_teacher_salary csts ON cs.id_ = csts.course_schedule_id_
+		WHERE cs.class_group_id_=#{classGroupId} AND cs.id_ IS NOT NULL AND cs.status_='OVER'
+		GROUP BY cs.teach_mode_
+    </select>
+
+    <update id="batchUpdateWages" parameterType="map">
 		UPDATE course_schedule_teacher_salary set
 			subsidy_ = #{subsidy},
 			expect_salary_ = #{salary},

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

@@ -142,6 +142,7 @@
         SELECT COUNT(DISTINCT sr.user_id_)
         FROM student_registration sr
         LEFT JOIN sys_user su ON sr.user_id_ = su.id_
+        <include refid="findStudentsByOrganIdSql"/>
     </select>
     <select id="findStudentBaseInfoByUserID" resultMap="studentManageListDto">
         SELECT su.real_name_,su.gender_,su.birthdate_,sr.parents_name_,su.id_ user_id_,

+ 2 - 7
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -71,11 +71,6 @@
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentPaymentOrder" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
-        <!--
-        <selectKey resultClass="int" keyProperty="id" >
-        SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL
-        </selectKey>
-        -->
         INSERT INTO student_payment_order
         (id_,user_id_,type_,expect_amount_,actual_amount_,trans_no_,status_,memo_,create_time_,update_time_,payment_channel_,payment_business_channel_,payment_account_no_,order_no_,music_group_id_,class_group_id_)
         VALUES(#{id},#{userId},#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{expectAmount},#{actualAmount},#{transNo},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{memo},now(),now(),#{paymentChannel},#{paymentBusinessChannel},#{paymentAccountNo},#{orderNo},#{musicGroupId},#{classGroupId})
@@ -160,10 +155,10 @@
     <sql id="queryPaymentOrder">
         <where>
             <if test="orderStartDate != null">
-                AND spo.create_time_ &gt;= #{orderStartDate}
+                AND DATE_FORMAT(spo.create_time_,'%Y-%m-%d') &gt;= #{orderStartDate}
             </if>
             <if test="orderEndDate != null">
-                AND spo.create_time_ &lt;= #{orderEndDate}
+                AND DATE_FORMAT(spo.create_time_,'%Y-%m-%d') &lt;= #{orderEndDate}
             </if>
             <if test="paymentType != null">
                 AND spo.type_ = #{paymentType}

+ 6 - 0
mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml

@@ -235,4 +235,10 @@
     <select id="queryNoSignOutListByOverMinutes" resultMap="Mapper">
         SELECT ta.teacher_id_ key_,u.real_name_ value_ FROM course_schedule cs right join teacher_attendance ta on ta.course_schedule_id_ = cs.id_ left join sys_user u on ta.teacher_id_ = u.id_ WHERE ta.sign_out_status_ = 0 and date(cs.class_date_) = date(now()) and SUBTIME(cs.end_class_time_, CONCAT(#{minutes},'00')) &lt; CURRENT_TIME()
     </select>
+    <select id="queryNoSignStudentRecord" resultMap="TeacherAttendance">
+        SELECT cg.music_group_id_,cg.id_ class_group_id_,cssp.course_schedule_id_,cssp.user_id_,cg.current_class_times_
+        FROM course_schedule_student_payment cssp LEFT JOIN class_group cg ON cg.id_ = cssp.class_group_id_
+        WHERE cssp.user_id_ NOT IN (SELECT DISTINCT sa.user_id_ FROM student_attendance sa WHERE course_schedule_id_ = #{courseScheduleId})
+        AND cssp.course_schedule_id_ = #{courseScheduleId}
+    </select>
 </mapper>

+ 8 - 9
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -202,12 +202,19 @@
         t.job_nature_,t.is_probation_period_,GROUP_CONCAT(s.name_) subject_name_
         FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_
         LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,t.subject_id_)
-        WHERE su.del_flag_ = 0
+        WHERE su.user_type_ LIKE '%TEACHER%' AND su.del_flag_ = 0
         <include refid="queryPageMap"/>
         GROUP BY t.id_
         ORDER BY t.update_time_ DESC
         <include refid="global.limit"/>
     </select>
+    <!-- 查询当前表的总记录数 -->
+    <select id="queryCount" resultType="int">
+        SELECT COUNT(DISTINCT t.id_)
+        FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_
+        WHERE su.user_type_ LIKE '%TEACHER%' AND su.del_flag_ = 0
+        <include refid="queryPageMap"/>
+    </select>
 
     <sql id="queryPageMap">
         <if test="lockFlag != null">
@@ -227,14 +234,6 @@
         </if>
     </sql>
 
-    <!-- 查询当前表的总记录数 -->
-    <select id="queryCount" resultType="int">
-        SELECT COUNT(t.id_)
-        FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_
-        WHERE su.user_type_ LIKE '%TEACHER%' AND su.del_flag_ = 0
-        <include refid="queryPageMap"/>
-    </select>
-
     <!-- 根据证件号查询老师 -->
     <select id="findByCertificateNum" resultMap="Teacher">
         SELECT * FROM teacher WHERE certificate_num_ = #{certificateNum}

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

@@ -560,7 +560,7 @@
             LEFT JOIN vip_group_class_group_mapper vgcgm ON vg.id_=vgcgm.vip_group_id_
             LEFT JOIN course_schedule cs ON vgcgm.class_group_id_=cs.class_group_id_
             LEFT JOIN course_schedule_teacher_salary csts ON cs.id_=csts.course_schedule_id_
-        WHERE vg.id_=#{vipGroupId} AND cs.id_!=NULL AND csts.settlement_time_!=NULL
+        WHERE vg.id_=#{vipGroupId} AND cs.id_ IS NOT NULL
     </select>
     <select id="countVipGroupDeductionNum" resultType="int">
         SELECT

+ 3 - 0
mec-im/src/main/java/com/ym/SealClassApplication.java

@@ -2,12 +2,14 @@ package com.ym;
 
 import lombok.extern.slf4j.Slf4j;
 
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
 import org.springframework.cloud.client.loadbalancer.LoadBalanced;
 import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.EnableAspectJAutoProxy;
 import org.springframework.scheduling.annotation.EnableAsync;
@@ -18,6 +20,7 @@ import org.springframework.web.client.RestTemplate;
 @Slf4j
 @SpringBootApplication
 @EnableFeignClients("com.ym")
+@MapperScan("com.ym.mec.biz.dal.dao")
 @EnableScheduling
 @EnableDiscoveryClient
 @Configuration

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

@@ -1,7 +1,6 @@
 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.entity.Teacher;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.ClassGroupService;
@@ -40,11 +39,6 @@ public class TeacherController extends BaseController {
     @GetMapping("/queryPage")
     @PreAuthorize("@pcs.hasPermissions('teacher/queryPage')")
     public Object queryPage(TeacherQueryInfo queryInfo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if(sysUser == null){
-            return failed("用户信息获取失败");
-        }
-//        queryInfo.setOrganId(sysUser.getOrganId());
         return succeed(teacherService.queryPageDetail(queryInfo));
     }