Joburgess 4 rokov pred
rodič
commit
6aaa7e9a28

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

@@ -99,4 +99,6 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
 
     List<IndexBaseMonthData> getGroupCourseData(@Param("month") String month,
                                                 @Param("groupType")GroupType groupType);
+
+    List<String> getLessThenThreeMusicGroup(@Param("organIds") Set<Integer> organIds);
 }

+ 62 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/IndexErrInfoDto.java

@@ -0,0 +1,62 @@
+package com.ym.mec.biz.dal.entity;
+
+import com.ym.mec.biz.dal.enums.IndexErrorType;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * @Author Joburgess
+ * @Date 2021/1/19 0019
+ */
+public class IndexErrInfoDto<T> {
+
+    private IndexErrorType errorType;
+
+    private String desc;
+
+    private int num;
+
+    private List<T> result;
+
+    public IndexErrInfoDto(IndexErrorType errorType, String desc, List<T> result) {
+        this.errorType = errorType;
+        this.desc = desc;
+        this.result = result;
+        if(!CollectionUtils.isEmpty(result)){
+            this.num = result.size();
+        }
+    }
+
+    public IndexErrorType getErrorType() {
+        return errorType;
+    }
+
+    public void setErrorType(IndexErrorType errorType) {
+        this.errorType = errorType;
+    }
+
+    public String getDesc() {
+        return desc;
+    }
+
+    public void setDesc(String desc) {
+        this.desc = desc;
+    }
+
+    public int getNum() {
+        return num;
+    }
+
+    public void setNum(int num) {
+        this.num = num;
+    }
+
+    public List<T> getResult() {
+        return result;
+    }
+
+    public void setResult(List<T> result) {
+        this.result = result;
+    }
+}

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

@@ -5,6 +5,7 @@ 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.common.service.BaseService;
 
 public interface IndexBaseMonthDataService extends BaseService<Long, IndexBaseMonthData> {
@@ -13,6 +14,6 @@ public interface IndexBaseMonthDataService extends BaseService<Long, IndexBaseMo
 
     Map<String, List<IndexBaseDto>> indexBaseDataTask(String month);
 
-
+    List<IndexErrInfoDto> getIndexErrData(String organIds);
 
 }

+ 16 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java

@@ -2,11 +2,9 @@ package com.ym.mec.biz.service.impl;
 
 import com.ym.mec.biz.dal.dao.OrganizationDao;
 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.GroupType;
-import com.ym.mec.biz.dal.enums.IndexDataType;
-import com.ym.mec.biz.dal.enums.JobNatureEnum;
-import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
+import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
@@ -279,4 +277,18 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 		indexBaseMonthDataDao.deleteWithMonthAndType(Arrays.asList(startMonth), indexDataType);
 		indexBaseMonthDataDao.batchInsertWithDataType(dataList, indexDataType);
 	}
+
+	@Override
+	public List<IndexErrInfoDto> getIndexErrData(String organIdsStr) {
+		Set<Integer> organIds = null;
+		if(StringUtils.isNotBlank(organIdsStr)){
+			organIds = Arrays.stream(organIdsStr.split(",")).map(Integer::new).collect(Collectors.toSet());
+		}
+
+		List<IndexErrInfoDto> result = new ArrayList<>();
+
+		result.add(new IndexErrInfoDto(IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE, IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE.getMsg(), indexBaseMonthDataDao.getLessThenThreeMusicGroup(organIds)));
+
+		return result;
+	}
 }

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

@@ -98,7 +98,7 @@ public class TeacherCourseStatisticsServiceImpl extends BaseServiceImpl<Long, Te
             teacherCourseStatistics.setPracticeCourseNum(practiceCourseNum);
 
             BigDecimal organWarningSalary = salaryConfigObject.getBigDecimal(teacherCourseStatistics.getOrganId().toString());
-            if(Objects.isNull(organWarningSalary)||Objects.isNull(teacherCourseStatistics.getExpectTotalSalary())||teacherCourseStatistics.getExpectTotalSalary().compareTo(organWarningSalary)<=0){
+            if(Objects.isNull(organWarningSalary)||Objects.isNull(teacherCourseStatistics.getExpectTotalSalary())||teacherCourseStatistics.getExpectTotalSalary().compareTo(organWarningSalary)<0){
                 teacherCourseStatistics.setLowSalary(true);
             }else{
                 teacherCourseStatistics.setLowSalary(false);

+ 21 - 0
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -422,4 +422,25 @@
 			</if>
 			AND DATE_FORMAT( sr.create_time_, '%Y-%m' ) &lt;= #{month}
 	</select>
+
+    <select id="getLessThenThreeMusicGroup" resultType="java.lang.String">
+		SELECT
+			cg.music_group_id_
+		FROM
+			class_group cg
+			LEFT JOIN class_group_student_mapper cgsm ON cg.id_ = cgsm.class_group_id_
+			LEFT JOIN music_group mg ON cg.music_group_id_=mg.id_
+		WHERE
+			cg.type_ = 'HIGH'
+			<if test="organIds!=null and organIds.size()>0">
+				AND mg.organ_id_ IN
+				<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
+					#{organId}
+				</foreach>
+			</if>
+		GROUP BY
+			cg.music_group_id_
+		HAVING
+			COUNT( DISTINCT cgsm.user_id_ )&lt;3
+	</select>
 </mapper>

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

@@ -126,7 +126,7 @@
                 AND tcs.expect_total_salary_ &gt;= #{minSalary}
             </if>
             <if test="maxSalary != null">
-                AND tcs.expect_total_salary_ &lt;= #{maxSalary}
+                AND tcs.expect_total_salary_ &lt; #{maxSalary}
             </if>
         </where>
     </sql>