浏览代码

Merge remote-tracking branch 'origin/master'

周箭河 4 年之前
父节点
当前提交
d483a50ca9

+ 15 - 15
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/IndexBaseMonthDataDao.java

@@ -45,7 +45,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @date 2021/1/7 0007
      * @return java.util.List<com.ym.mec.biz.dal.dto.IndexBaseMonthDto>
      */
-    List<IndexBaseMonthData> getStudentSignUpData(@Param("month") String month);
+    List<IndexBaseMonthData> getStudentSignUpData(@Param("dayStr") String dayStr);
 
     /**
      * @describe 统计作业布置数据
@@ -53,7 +53,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @date 2021/1/7 0007
      * @return java.util.List<com.ym.mec.biz.dal.dto.IndexBaseMonthDto>
      */
-    List<IndexBaseMonthData> getHomeworkData(@Param("month") String month,
+    List<IndexBaseMonthData> getHomeworkData(@Param("dayStr") String dayStr,
                                              @Param("type") String type);
 
     /**
@@ -62,7 +62,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @date 2021/1/11 0011
      * @return java.util.List<com.ym.mec.biz.dal.entity.IndexBaseMonthData>
      */
-    List<IndexBaseMonthData> getSchoolData(@Param("month") String month);
+    List<IndexBaseMonthData> getSchoolData(@Param("dayStr") String dayStr);
 
     /**
      * @describe 统计乐团数据
@@ -70,7 +70,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @date 2021/1/11 0011
      * @return java.util.List<com.ym.mec.biz.dal.entity.IndexBaseMonthData>
      */
-    List<IndexBaseMonthData> getMusicData(@Param("month") String month);
+    List<IndexBaseMonthData> getMusicData(@Param("dayStr") String dayStr);
 
     /**
      * @describe 统计乐团学员数据
@@ -78,27 +78,27 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @date 2021/1/11 0011
      * @return java.util.List<com.ym.mec.biz.dal.entity.IndexBaseMonthData>
      */
-    List<IndexBaseMonthData> getMusicStudentData(@Param("month") String month,
+    List<IndexBaseMonthData> getMusicStudentData(@Param("dayStr") String dayStr,
                                                  @Param("type") String type);
 
-    List<IndexBaseMonthData> getMusicGroupPreRegistrationStudentData(@Param("month") String month);
+    List<IndexBaseMonthData> getMusicGroupPreRegistrationStudentData(@Param("dayStr") String dayStr);
 
-    List<IndexBaseMonthData> getMusicGroupStudentFromPreData(@Param("month") String month,
+    List<IndexBaseMonthData> getMusicGroupStudentFromPreData(@Param("dayStr") String dayStr,
                                                              @Param("paymentStatus") PaymentStatusEnum paymentStatus);
 
-    List<Integer> getMusicGroupStudentIdFromPre(@Param("month") String month,
+    List<Integer> getMusicGroupStudentIdFromPre(@Param("dayStr") String dayStr,
                                                 @Param("paymentStatus") PaymentStatusEnum paymentStatus);
 
-    List<IndexBaseMonthData> getStudentConversionData(@Param("month") String month,
+    List<IndexBaseMonthData> getStudentConversionData(@Param("dayStr") String dayStr,
                                                       @Param("studentIds") List<Integer> studentIds);
 
-    List<IndexBaseMonthData> getOtherStudentData(@Param("month") String month);
+    List<IndexBaseMonthData> getOtherStudentData(@Param("dayStr") String dayStr);
 
-    List<IndexBaseMonthData> getTeacherData(@Param("month") String month,
+    List<IndexBaseMonthData> getTeacherData(@Param("dayStr") String dayStr,
                                             @Param("jobNature") JobNatureEnum jobNature,
                                             @Param("isDemission") Boolean isDemission);
 
-    List<IndexBaseMonthData> getGroupCourseData(@Param("month") String month,
+    List<IndexBaseMonthData> getGroupCourseData(@Param("dayStr") String dayStr,
                                                 @Param("groupType")GroupType groupType);
 
 
@@ -166,9 +166,9 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      */
     List<Long> queryStudentVisit(@Param("organIdsStr") String organIdsStr);
 
-    List<IndexBaseMonthData> getFinancePayData();
+    List<IndexBaseMonthData> getFinancePayData(@Param("dayStr") String dayStr);
 
-    List<IndexBaseMonthData> getFinanceBalanceData();
+    List<IndexBaseMonthData> getFinanceBalanceData(@Param("dayStr") String dayStr);
 
-    List<IndexBaseMonthData> getFinanceActualData();
+    List<IndexBaseMonthData> getFinanceActualData(@Param("dayStr") String dayStr);
 }

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

@@ -398,11 +398,4 @@ public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrde
      * @return
      */
     List<StudentPaymentOrder> getAdaPayOrdersByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
-
-    /**
-     * 获取首页昨日支出、昨日收入(现金)、昨日收入(余额)
-     * @param organId
-     * @return
-     */
-    Map<String, BigDecimal> queryFinanceCurrentDay(@Param("organId") String organId);
 }

+ 52 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/IndexDataQueryInfo.java

@@ -0,0 +1,52 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.common.page.QueryInfo;
+
+import java.util.Date;
+
+/**
+ * @Author Joburgess
+ * @Date 2021/1/27 0027
+ */
+public class IndexDataQueryInfo extends QueryInfo {
+
+    private String dataTypes;
+
+    private String organId;
+
+    private Date startDate;
+
+    private Date endDate;
+
+    public String getDataTypes() {
+        return dataTypes;
+    }
+
+    public void setDataTypes(String dataTypes) {
+        this.dataTypes = dataTypes;
+    }
+
+    public String getOrganId() {
+        return organId;
+    }
+
+    public void setOrganId(String organId) {
+        this.organId = organId;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+}

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

@@ -6,11 +6,12 @@ import java.util.Map;
 import com.ym.mec.biz.dal.dto.IndexBaseDto;
 import com.ym.mec.biz.dal.entity.IndexBaseMonthData;
 import com.ym.mec.biz.dal.entity.IndexErrInfoDto;
+import com.ym.mec.biz.dal.page.IndexDataQueryInfo;
 import com.ym.mec.common.service.BaseService;
 
 public interface IndexBaseMonthDataService extends BaseService<Long, IndexBaseMonthData> {
 
-    List<IndexBaseDto> getIndexBaseData(String dataType, String organIds, Integer year);
+    List<IndexBaseDto> getIndexBaseData(IndexDataQueryInfo indexDataQueryInfo);
 
     Map<String, List<IndexBaseDto>> indexBaseDataTask(String month);
 

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

@@ -2957,10 +2957,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
     @Override
     public PageInfo<ClassGroupTeachersDto> queryClassGroupPage(ClassGroupQueryInfo queryInfo) {
+        if(queryInfo.getGroupType() == null){
+            queryInfo.setGroupType(MUSIC);
+        }
         PageInfo<ClassGroupTeachersDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
         Map<String, Object> params = new HashMap<String, Object>();
         MapUtil.populateMap(params, queryInfo);
-
+        params.put("groupType",queryInfo.getGroupType().getCode());
         List<ClassGroupTeachersDto> dataList = null;
         int count = classGroupDao.countClassGroup(params);
         if (count > 0) {

+ 49 - 52
mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java

@@ -7,6 +7,7 @@ import com.ym.mec.biz.dal.dto.IndexBaseDto;
 import com.ym.mec.biz.dal.entity.IndexErrInfoDto;
 import com.ym.mec.biz.dal.entity.Organization;
 import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.dal.page.IndexDataQueryInfo;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
@@ -23,6 +24,7 @@ import org.springframework.util.CollectionUtils;
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -62,7 +64,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 	}
 
 	@Override
-	public List<IndexBaseDto> getIndexBaseData(String dataTypesStr, String organIdsStr, Integer year) {
+	public List<IndexBaseDto> getIndexBaseData(IndexDataQueryInfo queryInfo) {
 		List<IndexBaseDto> result = new ArrayList<>();
 
 		DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM");
@@ -71,24 +73,22 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 		Date currentMonth = Date.from(nowDate.atStartOfDay(DateUtil.zoneId).toInstant());
 
 		LocalDate startDate = LocalDate.now();
-		if(Objects.nonNull(year)){
-			startDate = startDate.withYear(year);
+		if(Objects.nonNull(queryInfo.getStartDate())){
+			startDate = LocalDateTime.ofInstant(queryInfo.getStartDate().toInstant(), DateUtil.zoneId).toLocalDate();
 		}
-		startDate = startDate.withMonth(1);
-		startDate = startDate.withDayOfMonth(1);
 
 		LocalDate endDate = startDate.withMonth(12);
-		if(nowDate.getYear()>endDate.getYear()){
-			currentMonth = Date.from(endDate.atStartOfDay(DateUtil.zoneId).toInstant());
+		if(Objects.nonNull(queryInfo.getEndDate())){
+			endDate = LocalDateTime.ofInstant(queryInfo.getEndDate().toInstant(), DateUtil.zoneId).toLocalDate();
 		}
 
 		Set<Integer> organIds = null;
-		if(StringUtils.isNotBlank(organIdsStr)){
-			organIds = Arrays.stream(organIdsStr.split(",")).map(Integer::new).collect(Collectors.toSet());
+		if(StringUtils.isNotBlank(queryInfo.getOrganId())){
+			organIds = Arrays.stream(queryInfo.getOrganId().split(",")).map(Integer::new).collect(Collectors.toSet());
 		}
 		Set<String> dataTypes = null;
-		if(StringUtils.isNotBlank(dataTypesStr)){
-			dataTypes = Arrays.stream(dataTypesStr.split(",")).collect(Collectors.toSet());
+		if(StringUtils.isNotBlank(queryInfo.getDataTypes())){
+			dataTypes = Arrays.stream(queryInfo.getDataTypes().split(",")).collect(Collectors.toSet());
 		}
 
 		List<IndexBaseMonthData> indexBaseDatas = indexBaseMonthDataDao.getIndexBaseData(organIds, dataTypes, df.format(startDate), df.format(endDate));
@@ -136,10 +136,9 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public Map<String, List<IndexBaseDto>> indexBaseDataTask(String month) {
+	public Map<String, List<IndexBaseDto>> indexBaseDataTask(String dayStr) {
 		Map<String, List<IndexBaseDto>> result = new HashMap<>();
 
-		DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM");
 		LocalDate nowDate = LocalDate.now();
 
 		List<Organization> allOrgans = organizationDao.findAllOrgans();
@@ -148,57 +147,57 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			this.organIds.get().addAll(allOrgans.stream().map(Organization::getId).collect(Collectors.toSet()));
 		}
 
-		if(StringUtils.isBlank(month)){
-			month = df.format(nowDate);
+		if(StringUtils.isBlank(dayStr)){
+			dayStr = nowDate.toString();
 		}
 
 		//运营数据
-		saveData(indexBaseMonthDataDao.getSchoolData(month), month, IndexDataType.SCHOOL);
-		saveData(indexBaseMonthDataDao.getMusicData(month), month, IndexDataType.MUSIC_GROUP_NUM);
-		saveData(indexBaseMonthDataDao.getMusicStudentData(month, null), month, IndexDataType.MUSIC_GROUP_STUDENT);
-		saveData(indexBaseMonthDataDao.getOtherStudentData(month), month, IndexDataType.OTHER_STUDENT);
+		saveData(indexBaseMonthDataDao.getSchoolData(dayStr), dayStr, IndexDataType.SCHOOL);
+		saveData(indexBaseMonthDataDao.getMusicData(dayStr), dayStr, IndexDataType.MUSIC_GROUP_NUM);
+		saveData(indexBaseMonthDataDao.getMusicStudentData(dayStr, null), dayStr, IndexDataType.MUSIC_GROUP_STUDENT);
+		saveData(indexBaseMonthDataDao.getOtherStudentData(dayStr), dayStr, IndexDataType.OTHER_STUDENT);
 
 		//业务数据
-		saveData(indexBaseMonthDataDao.getStudentSignUpData(month), month, IndexDataType.ACTIVATION_RATE);
-		saveData(indexBaseMonthDataDao.getHomeworkData(month, null), month, IndexDataType.HOMEWORK_CREATE_RATE);
-		saveData(indexBaseMonthDataDao.getHomeworkData(month, "submit"), month, IndexDataType.HOMEWORK_SUBMIT_RATE);
-		saveData(indexBaseMonthDataDao.getHomeworkData(month, "comment"), month, IndexDataType.HOMEWORK_COMMENT_RATE);
+		saveData(indexBaseMonthDataDao.getStudentSignUpData(dayStr), dayStr, IndexDataType.ACTIVATION_RATE);
+		saveData(indexBaseMonthDataDao.getHomeworkData(dayStr, null), dayStr, IndexDataType.HOMEWORK_CREATE_RATE);
+		saveData(indexBaseMonthDataDao.getHomeworkData(dayStr, "submit"), dayStr, IndexDataType.HOMEWORK_SUBMIT_RATE);
+		saveData(indexBaseMonthDataDao.getHomeworkData(dayStr, "comment"), dayStr, IndexDataType.HOMEWORK_COMMENT_RATE);
 
 		//经营数据
-		saveData(null, month, IndexDataType.SHOULD_INCOME_MONEY);
-		saveData(null, month, IndexDataType.ANTICIPATED_INCOME_MONEY);
-		saveData(null, month, IndexDataType.SHOULD_EXPEND_MONEY);
-		saveData(null, month, IndexDataType.ANTICIPATED_EXPEND_MONEY);
-		saveData(null, month, IndexDataType.REVENUE_MONEY);
+		saveData(null, dayStr, IndexDataType.SHOULD_INCOME_MONEY);
+		saveData(null, dayStr, IndexDataType.ANTICIPATED_INCOME_MONEY);
+		saveData(null, dayStr, IndexDataType.SHOULD_EXPEND_MONEY);
+		saveData(null, dayStr, IndexDataType.ANTICIPATED_EXPEND_MONEY);
+		saveData(null, dayStr, IndexDataType.REVENUE_MONEY);
 
 		//人事数据
-		saveData(indexBaseMonthDataDao.getTeacherData(month, null, null), month, IndexDataType.TEACHER_NUM);
-		saveData(indexBaseMonthDataDao.getTeacherData(month, JobNatureEnum.FULL_TIME, null), month, IndexDataType.FULL_TIME_NUM);
-		saveData(indexBaseMonthDataDao.getTeacherData(month, JobNatureEnum.PART_TIME, null), month, IndexDataType.PART_TIME_NUM);
-		saveData(indexBaseMonthDataDao.getTeacherData(month, null, true), month, IndexDataType.DIMISSION_NUM);
+		saveData(indexBaseMonthDataDao.getTeacherData(dayStr, null, null), dayStr, IndexDataType.TEACHER_NUM);
+		saveData(indexBaseMonthDataDao.getTeacherData(dayStr, JobNatureEnum.FULL_TIME, null), dayStr, IndexDataType.FULL_TIME_NUM);
+		saveData(indexBaseMonthDataDao.getTeacherData(dayStr, JobNatureEnum.PART_TIME, null), dayStr, IndexDataType.PART_TIME_NUM);
+		saveData(indexBaseMonthDataDao.getTeacherData(dayStr, null, true), dayStr, IndexDataType.DIMISSION_NUM);
 
 		//学员变动
-		saveData(indexBaseMonthDataDao.getMusicStudentData(month, "ADD"), month, IndexDataType.NEWLY_STUDENT_NUM);
-		saveData(indexBaseMonthDataDao.getMusicStudentData(month, "QUIT"), month, IndexDataType.QUIT_MUSIC_GROUP_STUDENT_NUM);
-		saveData(indexBaseMonthDataDao.getMusicGroupPreRegistrationStudentData(month), month, IndexDataType.STUDENT_CONVERSION_PRE_STUDENT_NUM);
-		saveData(indexBaseMonthDataDao.getMusicGroupStudentFromPreData(month, null), month, IndexDataType.STUDENT_CONVERSION_STUDENT_NUM);
-		saveData(indexBaseMonthDataDao.getMusicGroupStudentFromPreData(month, PaymentStatusEnum.YES), month, IndexDataType.STUDENT_CONVERSION_PAYMENT_STUDENT_NUM);
-		List<Integer> studentIds = indexBaseMonthDataDao.getMusicGroupStudentIdFromPre(month, PaymentStatusEnum.YES);
+		saveData(indexBaseMonthDataDao.getMusicStudentData(dayStr, "ADD"), dayStr, IndexDataType.NEWLY_STUDENT_NUM);
+		saveData(indexBaseMonthDataDao.getMusicStudentData(dayStr, "QUIT"), dayStr, IndexDataType.QUIT_MUSIC_GROUP_STUDENT_NUM);
+		saveData(indexBaseMonthDataDao.getMusicGroupPreRegistrationStudentData(dayStr), dayStr, IndexDataType.STUDENT_CONVERSION_PRE_STUDENT_NUM);
+		saveData(indexBaseMonthDataDao.getMusicGroupStudentFromPreData(dayStr, null), dayStr, IndexDataType.STUDENT_CONVERSION_STUDENT_NUM);
+		saveData(indexBaseMonthDataDao.getMusicGroupStudentFromPreData(dayStr, PaymentStatusEnum.YES), dayStr, IndexDataType.STUDENT_CONVERSION_PAYMENT_STUDENT_NUM);
+		List<Integer> studentIds = indexBaseMonthDataDao.getMusicGroupStudentIdFromPre(dayStr, PaymentStatusEnum.YES);
 		List<IndexBaseMonthData> convertStudentNum = new ArrayList<>();
 		if(!CollectionUtils.isEmpty(studentIds)){
-			convertStudentNum = indexBaseMonthDataDao.getStudentConversionData(month, studentIds);
+			convertStudentNum = indexBaseMonthDataDao.getStudentConversionData(dayStr, studentIds);
 		}
-		saveData(convertStudentNum, month, IndexDataType.STUDENT_CONVERSION_VIP_PRACTICE_STUDENT_NUM);
+		saveData(convertStudentNum, dayStr, IndexDataType.STUDENT_CONVERSION_VIP_PRACTICE_STUDENT_NUM);
 
 		//课程数据
-		saveData(indexBaseMonthDataDao.getGroupCourseData(month, GroupType.MUSIC), month, IndexDataType.MUSIC_GROUP_COURSE);
-		saveData(indexBaseMonthDataDao.getGroupCourseData(month, GroupType.VIP), month, IndexDataType.VIP_GROUP_COURSE);
-		saveData(indexBaseMonthDataDao.getGroupCourseData(month, GroupType.PRACTICE), month, IndexDataType.PRACTICE_GROUP_COURSE);
+		saveData(indexBaseMonthDataDao.getGroupCourseData(dayStr, GroupType.MUSIC), dayStr, IndexDataType.MUSIC_GROUP_COURSE);
+		saveData(indexBaseMonthDataDao.getGroupCourseData(dayStr, GroupType.VIP), dayStr, IndexDataType.VIP_GROUP_COURSE);
+		saveData(indexBaseMonthDataDao.getGroupCourseData(dayStr, GroupType.PRACTICE), dayStr, IndexDataType.PRACTICE_GROUP_COURSE);
 
 		//财务数据
-//		saveData(indexBaseMonthDataDao.getFinancePayData(),month,IndexDataType.FINANCE_PAY);
-//		saveData(indexBaseMonthDataDao.getFinanceBalanceData(),month,IndexDataType.FINANCE_BALANCE_AMOUNT);
-//		saveData(indexBaseMonthDataDao.getFinanceActualData(),month,IndexDataType.FINANCE_AMOUNT);
+		saveData(indexBaseMonthDataDao.getFinancePayData(dayStr),dayStr,IndexDataType.FINANCE_PAY);
+		saveData(indexBaseMonthDataDao.getFinanceBalanceData(dayStr),dayStr,IndexDataType.FINANCE_BALANCE_AMOUNT);
+		saveData(indexBaseMonthDataDao.getFinanceActualData(dayStr),dayStr,IndexDataType.FINANCE_AMOUNT);
 
 		return result;
 	}
@@ -290,14 +289,13 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 	}
 
 	/**
-	 * @describe 处理并保存每数据
+	 * @describe 处理并保存每数据
 	 * @author Joburgess
 	 * @date 2021/1/11 0011
 	 * @return void
 	 */
-	private void saveData(List<IndexBaseMonthData> dataList, String startMonth, IndexDataType indexDataType){
-		startMonth = startMonth+"-01";
-		Date date = DateUtil.stringToDate(startMonth, "yyyy-MM-dd");
+	private void saveData(List<IndexBaseMonthData> dataList, String dayStr, IndexDataType indexDataType){
+		Date date = DateUtil.stringToDate(dayStr, "yyyy-MM-dd");
 		if(Objects.isNull(dataList)){
 			dataList = new ArrayList<>();
 		}
@@ -308,7 +306,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			}
 			dataList.add(new IndexBaseMonthData(date, organId));
 		}
-		indexBaseMonthDataDao.deleteWithMonthAndType(Arrays.asList(startMonth), indexDataType);
+		indexBaseMonthDataDao.deleteWithMonthAndType(Arrays.asList(dayStr), indexDataType);
 		indexBaseMonthDataDao.batchInsertWithDataType(dataList, indexDataType);
 	}
 
@@ -341,7 +339,6 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 		two.setDesc(IndexErrorType.STUDENT_INFO.getMsg());
 		List<IndexErrInfoDto> twoChild = new ArrayList<>();
 
-
 		Date firstDayOfMonth = DateUtil.getFirstDayOfMonth(DateUtil.addMonths(date, -1));
 
 		twoChild.add(new IndexErrInfoDto(IndexErrorType.STUDENT_NOT_PAYMENT, IndexErrorType.STUDENT_NOT_PAYMENT.getMsg(), indexBaseMonthDataDao.countNoPaymentStudentNum(organIds), indexBaseMonthDataDao.getNoPaymentMusicGroup(organIds)));

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

@@ -1547,7 +1547,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     public BigDecimal updateUserSurplusCourseFee(Integer userId, String musicGroupId, BigDecimal amount, String memo, Integer operatorId) {
         StudentRegistration studentRegistration = studentRegistrationDao.lockWithUserAndMusic(userId, musicGroupId);
         if (Objects.isNull(studentRegistration)) {
-            LOGGER.error("学员可用排课余额更新失败{}:学员注册信息不存在", amount);
+            LOGGER.error("学员{}-{}可用排课余额更新失败:学员注册信息不存在", amount);
             return BigDecimal.ZERO;
         }
 

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

@@ -1406,7 +1406,7 @@
 
     <sql id="queryClassGroupPageSql">
         <where>
-            cg.group_type_ = 'MUSIC' AND cg.del_flag_ = 0
+            cg.group_type_ = #{groupType} AND cg.del_flag_ = 0
             <if test="type != null">
                 AND type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
             </if>
@@ -1420,12 +1420,28 @@
     </sql>
     <select id="countClassGroup" resultType="int">
         SELECT COUNT(cg.id_) FROM class_group cg
-        LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
+        <if test="groupType == 'MUSIC'">
+            LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
+        </if>
+        <if test="groupType == 'VIP'">
+            LEFT JOIN vip_group mg ON mg.id_ = cg.music_group_id_
+        </if>
+        <if test="groupType == 'PRACTICE'">
+            LEFT JOIN practice_group mg ON mg.id_ = cg.music_group_id_
+        </if>
         <include refid="queryClassGroupPageSql"/>
     </select>
     <select id="queryClassGroupPage" resultMap="ClassGroupTeachers">
         SELECT cg.*,mg.name_ music_group_name_,o.name_ organName FROM class_group cg
-        LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
+        <if test="groupType == 'MUSIC'">
+            LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
+        </if>
+        <if test="groupType == 'VIP'">
+            LEFT JOIN vip_group mg ON mg.id_ = cg.music_group_id_
+        </if>
+        <if test="groupType == 'PRACTICE'">
+            LEFT JOIN practice_group mg ON mg.id_ = cg.music_group_id_
+        </if>
         LEFT JOIN organization o ON o.id_ = mg.organ_id_
         <include refid="queryClassGroupPageSql"/>
         ORDER BY cg.id_ DESC

+ 79 - 39
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -141,16 +141,39 @@
 	<select id="getStudentSignUpData" resultMap="IndexBaseMonthData">
 		SELECT
 			organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( id_ ) total_num_,
 			COUNT(CASE WHEN password_ IS NOT NULL THEN id_ ELSE NULL END) activate_num_,
 			TRUNCATE(COUNT(CASE WHEN password_ IS NOT NULL THEN id_ ELSE NULL END)/COUNT( id_ )*100, 2) percent_
-		FROM sys_user
+		FROM
+			((
+				 SELECT DISTINCT
+					 sr.user_id_
+				 FROM
+					 student_registration sr
+						 LEFT JOIN music_group mg ON sr.music_group_id_ = mg.id_
+				 WHERE
+					 mg.status_ IN ( 'PREPARE', 'PROGRESS' )
+				   AND sr.music_group_status_ = 'NORMAL'
+			 ) UNION
+			(
+			 SELECT DISTINCT
+				 cssp.user_id_
+			 FROM
+				 course_schedule_student_payment cssp
+					 LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
+			 WHERE
+				 cs.del_flag_ = 0
+			   AND ( cs.is_lock_ = 0 OR cs.is_lock_ IS NULL )
+			   AND ( cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_ )
+			   AND cs.organ_id_ IS NOT NULL
+			)) u
+			LEFT JOIN sys_user su ON u.user_id_ = su.id_
 		WHERE
 			del_flag_=0
 		  	AND organ_id_ IS NOT NULL
 			AND user_type_ LIKE '%STUDENT%'
-		  	AND DATE_FORMAT(create_time_, '%Y-%m')&lt;=#{month}
+		  	AND DATE_FORMAT(create_time_, '%Y-%m-%d')&lt;=#{dayStr}
 		GROUP BY organ_id_
 		ORDER BY organ_id_;
 	</select>
@@ -158,7 +181,7 @@
 	<select id="getHomeworkData" resultMap="IndexBaseMonthData">
 		SELECT
 			su.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			<choose>
 				<when test="type == 'submit'">
 					SUM(sees.actual_exercises_num_) total_num_,
@@ -180,8 +203,7 @@
 		LEFT JOIN sys_user su ON sees.student_id_=su.id_
 		WHERE su.del_flag_=0
 			AND su.organ_id_ IS NOT NULL
-			AND YEAR(sees.monday_)=YEAR(CONCAT(#{month}, '-01'))
-			AND MONTH(sees.monday_)=MONTH(CONCAT(#{month}, '-01'))
+			AND sees.monday_&lt;=#{dayStr}
 		GROUP BY su.organ_id_
 		ORDER BY su.organ_id_
 	</select>
@@ -189,7 +211,7 @@
 	<select id="getSchoolData" resultMap="IndexBaseMonthData">
 		SELECT
 			mg.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT mg.cooperation_organ_id_ ) total_num_,
 			COUNT( DISTINCT mg.cooperation_organ_id_ ) activate_num_,
 			COUNT( DISTINCT mg.cooperation_organ_id_ ) percent_
@@ -197,8 +219,9 @@
 			music_group mg
 		WHERE
 			mg.del_flag_ = 0
-		  AND mg.organ_id_ IS NOT NULL
-		  AND mg.status_ = 'PROGRESS'
+			AND mg.organ_id_ IS NOT NULL
+			AND mg.status_ = 'PROGRESS'
+			AND DATE_FORMAT(mg.create_time_, '%Y-%m-%d')&lt;=#{dayStr}
 		GROUP BY
 			mg.organ_id_
 		ORDER BY
@@ -207,7 +230,7 @@
 	<select id="getMusicData" resultMap="IndexBaseMonthData">
 		SELECT
 			organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( id_ ) total_num_,
 			COUNT( id_ ) activate_num_,
 			COUNT( id_ ) percent_
@@ -217,8 +240,8 @@
 			del_flag_ = 0
 			AND status_ = 'PROGRESS'
 			AND organ_id_ IS NOT NULL
-			<if test="month!=null and month!=''">
-				AND DATE_FORMAT(create_time_, '%Y-%m') &lt;= #{month}
+			<if test="dayStr!=null and dayStr!=''">
+				AND DATE_FORMAT(create_time_, '%Y-%m-%d') &lt;= #{dayStr}
 			</if>
 		GROUP BY
 			organ_id_
@@ -228,7 +251,7 @@
 	<select id="getMusicStudentData" resultMap="IndexBaseMonthData">
 		SELECT
 			mg.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT sr.user_id_ ) total_num_,
 			COUNT( DISTINCT sr.user_id_ ) activate_num_,
 			COUNT( DISTINCT sr.user_id_ ) percent_
@@ -249,8 +272,8 @@
 				AND sr.music_group_status_='NORMAL'
 				AND DATE_FORMAT(sr.create_time_, '%Y-%m') &gt;= CONCAT(DATE_FORMAT(NOW(), '%Y'), '-01')
 			</if>
-			<if test="month!=null and month!=''">
-				AND DATE_FORMAT(sr.create_time_, '%Y-%m') &lt;= #{month}
+			<if test="dayStr!=null and dayStr!=''">
+				AND DATE_FORMAT(sr.create_time_, '%Y-%m-%d') &lt;= #{dayStr}
 			</if>
 		GROUP BY
 			mg.organ_id_
@@ -261,7 +284,7 @@
 	<select id="getTeacherData" resultMap="IndexBaseMonthData">
 		SELECT
 			t.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( t.id_ ) total_num_,
 			COUNT( t.id_ ) activate_num_,
 			COUNT( t.id_ ) percent_
@@ -280,6 +303,9 @@
 			<if test="jobNature!=null">
 				AND t.job_nature_ = #{jobNature,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
+			<if test="dayStr!=null and dayStr!=''">
+				AND DATE_FORMAT(#{dayStr}, '%Y-%m-%d') &lt;= #{dayStr}
+			</if>
 		GROUP BY
 			t.organ_id_
 		ORDER BY
@@ -289,7 +315,7 @@
 	<select id="getGroupCourseData" resultMap="IndexBaseMonthData">
 		SELECT
 			m.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( m.id_ ) total_num_,
 			COUNT( m.id_ ) activate_num_,
 			COUNT( m.id_ ) percent_
@@ -304,8 +330,8 @@
 			<if test="groupType!=null">
 				AND m.group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
-			<if test="month!=null and month!=''">
-				AND DATE_FORMAT(m.class_date_, '%Y-%m') &lt;= #{month}
+			<if test="dayStr!=null and dayStr!=''">
+				AND DATE_FORMAT(m.class_date_, '%Y-%m-%d') &lt;= #{dayStr}
 			</if>
 		GROUP BY
 			m.organ_id_
@@ -316,7 +342,7 @@
 	<select id="getOtherStudentData" resultMap="IndexBaseMonthData">
 		SELECT
 			su.organ_id_,
-			CONCAT(#{month}, '-01') month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT s.user_id_ ) total_num_,
 			COUNT( DISTINCT s.user_id_ ) activate_num_,
 			COUNT( DISTINCT s.user_id_ ) percent_
@@ -330,8 +356,8 @@
 			AND su.organ_id_ IS NOT NULL
 			AND m.group_type_ IN ('VIP', 'PRACTICE')
 			AND m.status_ = 'NOT_START'
-			<if test="month!=null and month!=''">
-				AND (DATE_FORMAT(m.create_time_, '%Y-%m') &lt;= #{month} OR YEAR(m.create_time_)=3000)
+			<if test="dayStr!=null and dayStr!=''">
+				AND (DATE_FORMAT(m.create_time_, '%Y-%m-%d') &lt;= #{dayStr} OR YEAR(m.create_time_)=3000)
 			</if>
 		GROUP BY
 			su.organ_id_
@@ -342,7 +368,7 @@
 	<select id="getStudentConversionData" resultMap="IndexBaseMonthData">
 		SELECT
 			cs.organ_id_,
-			CONCAT( #{month}, '-01' ) month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT m.user_id_ ) total_num_,
 			COUNT( DISTINCT m.user_id_ ) activate_num_,
 			COUNT( DISTINCT m.user_id_ ) percent_
@@ -360,6 +386,7 @@
 			<foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
 				#{studentId}
 			</foreach>
+			AND DATE_FORMAT(m.create_time_, '%Y-%m-%d')&lt;=#{dayStr}
 		GROUP BY
 			cs.organ_id_
 		ORDER BY
@@ -369,7 +396,7 @@
 	<select id="getMusicGroupPreRegistrationStudentData" resultMap="IndexBaseMonthData">
 		SELECT
 			mg.organ_id_,
-			CONCAT( #{month}, '-01' ) month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT spr.user_id_ ) total_num_,
 			COUNT( DISTINCT spr.user_id_ ) activate_num_,
 			COUNT( DISTINCT spr.user_id_ ) percent_
@@ -380,7 +407,7 @@
 			mg.del_flag_ = 0
 			AND mg.organ_id_ IS NOT NULL
 		  	AND mg.status_ = 'PROGRESS'
-			AND DATE_FORMAT( spr.create_time_, '%Y-%m' ) &lt;= #{month}
+			AND DATE_FORMAT( spr.create_time_, '%Y-%m-%d' ) &lt;= #{dayStr}
 		GROUP BY
 			mg.organ_id_
 		ORDER BY
@@ -390,7 +417,7 @@
 	<select id="getMusicGroupStudentFromPreData" resultMap="IndexBaseMonthData">
 		SELECT
 			mg.organ_id_,
-			CONCAT( #{month}, '-01' ) month_,
+			#{dayStr} month_,
 			COUNT( DISTINCT sr.user_id_ ) total_num_,
 			COUNT( DISTINCT sr.user_id_ ) activate_num_,
 			COUNT( DISTINCT sr.user_id_ ) percent_
@@ -409,7 +436,7 @@
 				AND sr.music_group_status_ IN ('NORMAL')
 				AND sr.payment_status_ = #{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
-			AND DATE_FORMAT( sr.create_time_, '%Y-%m' ) &lt;= #{month}
+			AND DATE_FORMAT( sr.create_time_, '%Y-%m-%d' ) &lt;= #{dayStr}
 		GROUP BY
 			mg.organ_id_
 		ORDER BY
@@ -434,7 +461,7 @@
 				AND sr.music_group_status_ IN ('NORMAL')
 				AND sr.payment_status_ = #{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
-			AND DATE_FORMAT( sr.create_time_, '%Y-%m' ) &lt;= #{month}
+			AND DATE_FORMAT( sr.create_time_, '%Y-%m-%d' ) &lt;= #{dayStr}
 	</select>
 
 	<select id="countLessThenThreeClassGroupNum" resultType="int">
@@ -486,7 +513,7 @@
 		LEFT JOIN music_group mg ON mgpc.music_group_id_ = mg.id_
 		WHERE
 		mg.status_ = 'PROGRESS'
-		AND mgpc.payment_valid_end_date_ &lt; NOW()
+		AND DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(mgpc.payment_valid_start_date_,'%Y-%m-%d')
 		AND mgpcd.payment_status_ = 'NON_PAYMENT'
 		<if test="organIds!=null and organIds.size()>0">
 			AND mg.organ_id_ IN
@@ -505,7 +532,7 @@
 			LEFT JOIN music_group mg ON mgpc.music_group_id_ = mg.id_
 		WHERE
 			mg.status_ = 'PROGRESS'
-			AND mgpc.payment_valid_end_date_ &lt; NOW()
+			AND DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(mgpc.payment_valid_start_date_,'%Y-%m-%d')
 			AND mgpcd.payment_status_ = 'NON_PAYMENT'
 			<if test="organIds!=null and organIds.size()>0">
 				AND mg.organ_id_ IN
@@ -530,18 +557,19 @@
 
 	<select id="queryStudentAttendanceInfo" resultType="java.lang.Long">
 		SELECT
-			DISTINCT cssp.user_id_
+			DISTINCT cssp.id_
 		FROM
 			course_schedule_student_payment cssp
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
 			LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cssp.course_schedule_id_ AND sa.user_id_ = cssp.user_id_
-			LEFT JOIN student_visit sv ON cssp.id_=sv.object_id_
+			LEFT JOIN student_visit sv ON cssp.id_ = sv.object_id_
 		WHERE
+				cs.status_ = 'OVER' AND sv.id_ IS NULL
 			<if test="type!=null and type=='LEAVE'">
-				(sa.status_ = 'LEAVE' AND sa.remark_ IS NOT NULL AND sv.id_ IS NULL)
+				AND sa.status_ = 'LEAVE'
 			</if>
 			<if test="type!=null and type=='TRUANT'">
-				(sa.status_ = 'TRUANT' OR sa.id_ IS NULL)
+				AND (sa.status_ = 'TRUANT' OR sa.id_ IS NULL)
 			</if>
 			<if test="firstDayOfMonth != null">
 				AND cs.class_date_ >= DATE_FORMAT(#{firstDayOfMonth},'%Y-%m-%d')
@@ -556,7 +584,7 @@
     <select id="getAttendanceError" resultType="java.lang.Long">
 		SELECT DISTINCT ta.id_ FROM teacher_attendance ta
 		LEFT JOIN course_schedule cs ON ta.course_schedule_id_ = cs.id_
-		WHERE (ta.sign_in_status_ = 0 OR ta.sign_out_status_ = 0)
+		WHERE (ta.sign_in_status_ = 0 OR ta.sign_out_status_ = 0) AND cs.status_ = 'OVER'
 		AND (ta.sign_in_time_ IS NOT NULL OR ta.sign_out_time_ IS NOT NULL) AND ta.dispose_content_ IS NULL
 		<if test="organIds != null and organIds != ''">
 			AND FIND_IN_SET(cs.organ_id_,#{organIds})
@@ -568,7 +596,7 @@
 	<select id="getNoAttendance" resultType="java.lang.Long">
 		SELECT DISTINCT ta.id_ FROM teacher_attendance ta
 		LEFT JOIN course_schedule cs ON ta.course_schedule_id_ = cs.id_
-		WHERE ta.sign_in_time_ IS NULL AND ta.sign_out_time_ IS NULL AND ta.dispose_content_ IS NULL
+		WHERE ta.sign_in_time_ IS NULL AND cs.status_ = 'OVER' AND ta.sign_out_time_ IS NULL AND ta.dispose_content_ IS NULL
 		<if test="organIds != null and organIds != ''">
 			AND FIND_IN_SET(cs.organ_id_,#{organIds})
 		</if>
@@ -630,12 +658,24 @@
 		</if>
 	</select>
 	<select id="getFinancePayData"  resultMap="IndexBaseMonthData">
-
+		SELECT SUM(fe.amount_) total_num_,SUM(fe.amount_) activate_num_,SUM(fe.amount_) percent_,fe.organ_id_,#{dayStr} month_ FROM financial_expenditure fe
+		WHERE DATE_FORMAT(fe.create_time_,'%Y-%m-%d') = #{dayStr}
+		AND del_flag_ = 0 GROUP BY fe.organ_id_
 	</select>
 	<select id="getFinanceBalanceData" resultMap="IndexBaseMonthData">
-
+		SELECT spo.organ_id_,SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN spo.balance_payment_amount_ ELSE 0 END) total_num_,
+			   SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN spo.balance_payment_amount_ ELSE 0 END) activate_num_,
+			   SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN spo.balance_payment_amount_ ELSE 0 END) percent_,#{dayStr} month_
+		FROM student_payment_order spo
+		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') = #{dayStr}
+		GROUP BY spo.organ_id_
 	</select>
 	<select id="getFinanceActualData" resultMap="IndexBaseMonthData">
-
+		SELECT spo.organ_id_,SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN 0 ELSE spo.actual_amount_ END) total_num_,
+			   SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN 0 ELSE spo.actual_amount_ END) activate_num_,
+			   SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN 0 ELSE spo.actual_amount_ END) percent_,#{dayStr} month_
+		FROM student_payment_order spo
+		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') = #{dayStr}
+		GROUP BY spo.organ_id_
 	</select>
 </mapper>

+ 0 - 15
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -871,19 +871,4 @@
     <select id="getAdaPayOrdersByTime" resultMap="StudentPaymentOrder"><![CDATA[
         SELECT * FROM student_payment_order WHERE pay_time_ >= #{startTime} AND pay_time_ <= #{endTime} AND payment_channel_='ADAPAY' AND status_ ='SUCCESS']]>
     </select>
-    <select id="queryFinanceCurrentDay" resultType="java.util.Map">
-        SELECT * FROM (SELECT SUM(fe.amount_) pay FROM financial_expenditure fe
-        WHERE DATE_FORMAT(fe.create_time_,'%Y%m%d') = DATE_FORMAT(NOW(),'%Y%m%d') AND del_flag_ = 0
-            <if test="organId != null and organId != ''">
-                FIND_IN_SET(fe.organ_id_,#{organId})
-            </if>
-            ) a,
-        (SELECT SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN spo.balance_payment_amount_ ELSE 0 END) balance_amount_,
-        SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN 0 ELSE spo.actual_amount_ END) actual_amount_
-        FROM student_payment_order spo
-        WHERE DATE_FORMAT(spo.pay_time_,'%Y%m%d') = DATE_FORMAT(NOW(),'%Y%m%d') AND spo.status_ = 'SUCCESS'
-        <if test="organId != null and organId != ''">
-            FIND_IN_SET(spo.organ_id_,#{organId})
-        </if>) b
-    </select>
 </mapper>

+ 6 - 8
mec-web/src/main/java/com/ym/mec/web/controller/IndexController.java

@@ -2,6 +2,7 @@ package com.ym.mec.web.controller;
 
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.page.IndexDataQueryInfo;
 import com.ym.mec.biz.service.EmployeeService;
 import com.ym.mec.biz.service.IndexBaseMonthDataService;
 import com.ym.mec.common.entity.HttpResponseResult;
@@ -101,8 +102,6 @@ public class IndexController extends BaseController {
 		
 		Map<String, Object> incomeMap = studentPaymentOrderDao.queryIncomeStatisticsWithCurrentMonth(organId);
 
-		Map<String, BigDecimal> financeDatas = studentPaymentOrderDao.queryFinanceCurrentDay(organId);
-		
 		ModelMap model = new ModelMap();
 		model.put("musicDatas", musicDatas);
 		model.put("teacherDatas", teacherDatas);
@@ -114,30 +113,29 @@ public class IndexController extends BaseController {
 		model.put("demoGroupNum", demoGroupNum);
 		model.put("incomeExpendMap", incomeExpendMap);
 		model.put("incomeMap", incomeMap);
-		model.put("financeDatas", financeDatas);
 		return succeed(model);
 	}
 
 	@GetMapping("/newIndex")
-	public HttpResponseResult newIndex(String dataTypes, String organId, Integer year){
+	public HttpResponseResult newIndex(IndexDataQueryInfo indexDataQueryInfo){
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed("用户信息获取失败");
 		}
 		if (!sysUser.getIsSuperAdmin()) {
 			Employee employee = employeeService.get(sysUser.getId());
-			if (StringUtils.isBlank(organId)) {
-				organId = employee.getOrganIdList();
+			if (StringUtils.isBlank(indexDataQueryInfo.getOrganId())) {
+				indexDataQueryInfo.setOrganId(employee.getOrganIdList());
 			}else if(StringUtils.isEmpty(employee.getOrganIdList())){
 				return failed("用户所在分部异常");
 			}else {
 				List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-				if(!list.containsAll(Arrays.asList(organId.split(",")))){
+				if(!list.containsAll(Arrays.asList(indexDataQueryInfo.getOrganId().split(",")))){
 					return failed("非法请求");
 				}
 			}
 		}
-		return succeed(indexService.getIndexBaseData(dataTypes , organId, year));
+		return succeed(indexService.getIndexBaseData(indexDataQueryInfo));
 	}
 
 	@GetMapping("/hasIndexErrData")

+ 10 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TeacherAttendanceController.java

@@ -89,6 +89,16 @@ public class TeacherAttendanceController extends BaseController {
         return succeed();
     }
 
+    @ApiOperation(value = "更新教师签到记录")
+    @PostMapping("/update")
+    @PreAuthorize("@pcs.hasPermissions('teacherAttendance/update')")
+    public Object update(TeacherAttendance teacherAttendance){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        teacherAttendance.setOperator(sysUser.getId());
+        teacherAttendanceService.update(teacherAttendance);
+        return succeed();
+    }
+
     @ApiOperation(value = "获取教师考勤申述列表")
     @PostMapping("/queryTeacherAttendanceComplaints")
     @PreAuthorize("@pcs.hasPermissions('teacherAttendance/queryTeacherAttendanceComplaints')")