Переглянути джерело

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

zouxuan 5 роки тому
батько
коміт
00cf8a8e1f

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

@@ -17,6 +17,8 @@ public interface OrganizationDao extends BaseDAO<Integer, Organization> {
      */
     List<Organization> findByParentId(@Param("parentId") Integer parentId, @Param("delFlag") String delFlag);
 
+    List<Organization> findOrgans(@Param("organIds") List<Integer> organIds);
+
     /**
      * 根据分部id字符串查询
      * @param organIds

+ 11 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/VipGroupService.java

@@ -17,12 +17,8 @@ import com.ym.mec.biz.dal.dto.VipGroupCostCountDto;
 import com.ym.mec.biz.dal.dto.VipGroupCostCountParamsDto;
 import com.ym.mec.biz.dal.dto.VipGroupManageDetailDto;
 import com.ym.mec.biz.dal.dto.VipGroupPayInfoDto;
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import com.ym.mec.biz.dal.entity.School;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.StudentApplyRefunds.StudentApplyRefundsStatus;
-import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
-import com.ym.mec.biz.dal.entity.StudentRecoverDto;
-import com.ym.mec.biz.dal.entity.VipGroup;
 import com.ym.mec.biz.dal.enums.AuditStatusEnum;
 import com.ym.mec.biz.dal.page.StudentVipGroupQueryInfo;
 import com.ym.mec.biz.dal.page.VipGroupAttendanceQueryInfo;
@@ -44,6 +40,16 @@ public interface VipGroupService extends BaseService<Long, VipGroup> {
     String createVipGroup(VipGroupApplyDto vipGroup);
 
     /**
+     * @describe 获取教务与教师共有分部
+     * @author Joburgess
+     * @date 2020.07.08
+     * @param eduTeacherId:
+     * @param teacherId:
+     * @return java.util.List<com.ym.mec.biz.dal.entity.Organization>
+     */
+    List<Organization> getPublicOrgans(Integer eduTeacherId, Integer teacherId);
+
+    /**
      * @describe 检测vip课程是否超过范围
      * @author Joburgess
      * @date 2020/1/16

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

@@ -842,8 +842,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         }
 
         for (ExtendTeacherBasicDto organAndSubjectTeacher : organAndSubjectTeachers) {
-            if (!includeTeacherIds.contains(organAndSubjectTeacher.getId())
-                    && 1 == organAndSubjectTeacher.getIsSupportExtraPracticeLesson()) {
+            if (!includeTeacherIds.contains(organAndSubjectTeacher.getId())) {
                 includeTeacherIds.add(organAndSubjectTeacher.getId());
             }
         }
@@ -2376,8 +2375,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         }
 
         for (ExtendTeacherBasicDto organAndSubjectTeacher : organAndSubjectTeachers) {
-            if (!includeTeacherIds.contains(organAndSubjectTeacher.getId())
-                    && 1 == organAndSubjectTeacher.getIsSupportExtraPracticeLesson()) {
+            if (!includeTeacherIds.contains(organAndSubjectTeacher.getId())) {
                 includeTeacherIds.add(organAndSubjectTeacher.getId());
             }
         }

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

@@ -133,6 +133,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	private TeacherCourseRewardService teacherCourseRewardService;
 	@Autowired
 	private StudentDao studentDao;
+	@Autowired
+	private OrganizationDao organizationDao;
 
 	private static final Logger LOGGER = LoggerFactory
 			.getLogger(VipGroup.class);
@@ -419,7 +421,45 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		return vipGroupApplyBaseInfoDto.getAuditStatus().getCode();
 	}
 
-    @Override
+	@Override
+	public List<Organization> getPublicOrgans(Integer eduTeacherId, Integer teacherId) {
+		if(Objects.isNull(eduTeacherId)){
+			throw new BizException("教务老师不存在");
+		}
+		if(Objects.isNull(teacherId)){
+			throw new BizException("请指定指导老师");
+		}
+		Employee employee = employeeDao.get(eduTeacherId);
+		if(Objects.isNull(employee)){
+			throw new BizException("教务老师不存在");
+		}
+		Teacher teacher = teacherDao.get(teacherId);
+		if(Objects.isNull(teacher)){
+			throw new BizException("指导老师不存在");
+		}
+		List<Integer> employeeOrganIds=new ArrayList<>();
+		if(StringUtils.isNotBlank(employee.getOrganIdList())){
+			employeeOrganIds= Arrays.stream(employee.getOrganIdList().split(",")).map(e->Integer.valueOf(e)).collect(Collectors.toList());
+		}
+		List<Integer> teacherOrganIds=new ArrayList<>();
+		if(Objects.nonNull(teacher.getOrganId())){
+			teacherOrganIds.add(teacher.getOrganId());
+		}
+		if(StringUtils.isNotBlank(teacher.getFlowOrganRangeId())){
+			Arrays.stream(teacher.getFlowOrganRangeId().split(","))
+					.map(e->Integer.valueOf(e)).collect(Collectors.toSet())
+					.forEach(organId->{
+						teacherOrganIds.add(organId);
+					});
+		}
+		List<Integer> publicOrganIds = employeeOrganIds.stream().filter(employeeOrganId -> teacherOrganIds.contains(employeeOrganId)).collect(Collectors.toList());
+		if(CollectionUtils.isEmpty(publicOrganIds)){
+			return Collections.emptyList();
+		}
+		return organizationDao.findOrgans(publicOrganIds);
+	}
+
+	@Override
     @Transactional(rollbackFor = Exception.class)
     public void checkVipCourseIsInScore(Long vipGroupId) {
 	    if(Objects.isNull(vipGroupId)){

+ 7 - 0
mec-biz/src/main/resources/config/mybatis/OrganizationMapper.xml

@@ -136,4 +136,11 @@
     <select id="findAllOrgans" resultMap="Organization">
         SELECT * from organization where del_flag_=0 ORDER BY id_ ASC;
     </select>
+
+    <select id="findOrgans" resultType="com.ym.mec.biz.dal.entity.Organization">
+        SELECT * FROM organization WHERE id_ IN
+        <foreach collection="organIds" item="organId" separator="," open="(" close=")">
+            #{organId}
+        </foreach>
+    </select>
 </mapper>

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

@@ -362,8 +362,8 @@
         WHERE
             FIND_IN_SET(#{subjectId},t.subject_id_)
             AND (t.organ_id_=#{organId} OR FIND_IN_SET(#{organId},t.flow_organ_range_))
-            AND t.job_nature_='FULL_TIME'
             AND su.del_flag_=0 AND su.lock_flag_=0
+            AND t.is_support_extra_practice_lesson_=1
             AND t.organ_id_!=36
     </select>
     <select id="findTeaTeachersByOrganAndSubject1" resultMap="ExtendTeacherBasicDto">
@@ -379,8 +379,8 @@
         WHERE
             FIND_IN_SET(#{subjectId},t.subject_id_)
             AND (t.organ_id_=#{organId} OR FIND_IN_SET(#{organId},t.flow_organ_range_))
-            AND t.job_nature_='FULL_TIME'
             AND su.del_flag_=0 AND su.lock_flag_=0
+            AND t.is_support_extra_practice_lesson_=1
             AND t.organ_id_!=36
     </select>
 
@@ -401,8 +401,8 @@
         WHERE
             FIND_IN_SET(#{subjectId},t.subject_id_)
             AND (t.organ_id_=#{organId} OR FIND_IN_SET(#{organId},t.flow_organ_range_))
-            AND t.job_nature_='FULL_TIME'
             AND su.del_flag_=0 AND su.lock_flag_=0
+            AND t.is_support_extra_practice_lesson_=1
             AND t.organ_id_!=36
         GROUP BY su.id_
     </select>

+ 12 - 0
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

@@ -16,6 +16,7 @@ import com.ym.mec.biz.dal.page.VipGroupSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.VipGroupTeachingRecordQueryInfo;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -84,6 +85,17 @@ public class VipGroupManageController extends BaseController {
         return succeed(vipGroupService.createVipGroup(vipGroupApplyDto));
     }
 
+    @ApiOperation(value = "获取教务与指导老师公共分部")
+    @GetMapping("/getPublicOrgans")
+    @PreAuthorize("@pcs.hasPermissions('vipGroupManage/getPublicOrgans')")
+    public HttpResponseResult getPublicOrgans(Integer teacherId){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        return succeed(vipGroupService.getPublicOrgans(sysUser.getId(), teacherId));
+    }
+
     @ApiOperation(value = "全查询")
     @GetMapping("/queryAll")
     @PreAuthorize("@pcs.hasPermissions('vipGroupManage/queryAll')")