|  | @@ -10,6 +10,7 @@ import com.ym.mec.biz.dal.entity.*;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.page.*;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.service.ClassGroupService;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.service.TeacherService;
 | 
	
		
			
				|  |  | +import com.ym.mec.common.constant.CommonConstants;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.dal.BaseDAO;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.entity.ImGroupModel;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.entity.ImResult;
 | 
	
	
		
			
				|  | @@ -19,14 +20,17 @@ import com.ym.mec.common.page.PageInfo;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.service.impl.BaseServiceImpl;
 | 
	
		
			
				|  |  |  import com.ym.mec.im.ImFeignService;
 | 
	
		
			
				|  |  |  import com.ym.mec.util.collection.MapUtil;
 | 
	
		
			
				|  |  | +import com.ym.mec.util.date.DateUtil;
 | 
	
		
			
				|  |  |  import com.ym.mec.util.idcard.IdcardValidator;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  import org.apache.commons.lang3.StringUtils;
 | 
	
		
			
				|  |  |  import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  |  import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  |  import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import java.math.BigDecimal;
 | 
	
		
			
				|  |  | +import java.time.DayOfWeek;
 | 
	
		
			
				|  |  | +import java.time.LocalDate;
 | 
	
		
			
				|  |  | +import java.time.LocalDateTime;
 | 
	
		
			
				|  |  |  import java.util.*;
 | 
	
		
			
				|  |  |  import java.util.stream.Collectors;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -59,6 +63,8 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 | 
	
		
			
				|  |  |  	private ImFeignService imFeignService;
 | 
	
		
			
				|  |  |  	@Autowired
 | 
	
		
			
				|  |  |  	private SysConfigDao configDao;
 | 
	
		
			
				|  |  | +	@Autowired
 | 
	
		
			
				|  |  | +	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Override
 | 
	
	
		
			
				|  | @@ -439,6 +445,12 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  			Set<Integer> organIds = rows.stream().map(e -> e.getTeacherOrganId()).collect(Collectors.toSet());
 | 
	
		
			
				|  |  |  			Map<Integer,String> organNames = MapUtil.convertMybatisMap(organizationDao.findOrganNameMapList(organIds));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +			LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
 | 
	
		
			
				|  |  | +			LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
 | 
	
		
			
				|  |  | +			List<TeacherExercisesServiceDto> teacherExercisesServiceSituations = studentExtracurricularExercisesSituationDao.findTeacherExercisesServiceSituations(monDayDate.toString(), new ArrayList<>(teachers));
 | 
	
		
			
				|  |  | +			Map<Integer, TeacherExercisesServiceDto> teacherServiceMap = teacherExercisesServiceSituations.stream().collect(Collectors.toMap(TeacherExercisesServiceDto::getTeacherId, t -> t));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  			rows.forEach(e->{
 | 
	
		
			
				|  |  |  //				e.setSubjectName(subjectDao.findBySubIds(e.getSubjectId()));
 | 
	
		
			
				|  |  |  				e.setOrganName(organNames.get(e.getTeacherOrganId()));
 | 
	
	
		
			
				|  | @@ -449,6 +461,14 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 | 
	
		
			
				|  |  |  				e.setVipNum(num == null?0:num);
 | 
	
		
			
				|  |  |  				Integer demoNum = demoNumMap.get(e.getId());
 | 
	
		
			
				|  |  |  				e.setDemoNum(demoNum == null?0:demoNum);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +				TeacherExercisesServiceDto teacherService = teacherServiceMap.get(e.getId());
 | 
	
		
			
				|  |  | +				if(Objects.nonNull(teacherService)){
 | 
	
		
			
				|  |  | +					BigDecimal serviceIndex = new BigDecimal(teacherService.getActualExercisesNum()).multiply(new BigDecimal(100)).divide(new BigDecimal(teacherService.getExpectExercisesNum()), CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
 | 
	
		
			
				|  |  | +					e.setServiceIndex(serviceIndex);
 | 
	
		
			
				|  |  | +				}else{
 | 
	
		
			
				|  |  | +					e.setServiceIndex(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  |  			});
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  		return pageInfo;
 |