| | |
| | | import com.ruoyi.personnel.service.PersonTrainingDetailedService; |
| | | import com.ruoyi.personnel.service.PersonTrainingRecordService; |
| | | import com.ruoyi.system.mapper.UserMapper; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | |
| | | |
| | | @Override |
| | | public void outOfFocusPreservation(PersonTrainingRecord personTrainingRecord) { |
| | | int userId = SecurityUtils.getUserId().intValue(); |
| | | int userId = Integer.parseInt(SecurityUtils.getUserId().toString()); |
| | | // 培训通过了,培训课时计入到当天的辅助工时 (辅助工时 以及 核准工时都添加) |
| | | baseMapper.updateById(personTrainingRecord); |
| | | PersonTrainingDetailed personTrainingDetailed = personTrainingDetailedMapper.selectById(personTrainingRecord.getCourseId()); |
| | |
| | | if(StringUtils.isEmpty(trainingDateTwo)) { |
| | | throw new ErrorException("没有设置培训日期无法添加辅助工时"); |
| | | } |
| | | AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay = auxiliaryWorkingHoursDayService.selectAuxiliaryWorkingHoursByNumber("401"); |
| | | // 是否以及添加过了 |
| | | List<AuxiliaryWorkingHoursDay> auxiliaryWorkingHoursDays = auxiliaryWorkingHoursDayMapper.selectList(new LambdaQueryWrapper<AuxiliaryWorkingHoursDay>() |
| | | .eq(AuxiliaryWorkingHoursDay::getNameUser, personTrainingRecord.getUserId()) |
| | | .eq(AuxiliaryWorkingHoursDay::getAuxiliaryProject, personTrainingDetailed.getTrainingContent()) |
| | | .eq(AuxiliaryWorkingHoursDay::getCreateUser, userId) |
| | | .eq(AuxiliaryWorkingHoursDay::getAuxiliaryProject,auxiliaryWorkingHoursDay.getAuxiliaryProject()) |
| | | .eq(AuxiliaryWorkingHoursDay::getDateTime, trainingDateTwo + " 00:00:00")); |
| | | // 如果有数据 合格就不做处理 不合格就删除 |
| | | if(CollectionUtils.isNotEmpty(auxiliaryWorkingHoursDays)) { |
| | | if(personTrainingRecord.getExaminationResults().equals("不合格")) { |
| | | auxiliaryWorkingHoursDayMapper.delete(new LambdaQueryWrapper<AuxiliaryWorkingHoursDay>() |
| | | .eq(AuxiliaryWorkingHoursDay::getNameUser, personTrainingRecord.getUserId()) |
| | | .eq(AuxiliaryWorkingHoursDay::getAuxiliaryProject, personTrainingDetailed.getTrainingContent()) |
| | | .eq(AuxiliaryWorkingHoursDay::getCreateUser, userId) |
| | | .eq(AuxiliaryWorkingHoursDay::getAuxiliaryProject, auxiliaryWorkingHoursDay.getAuxiliaryProject()) |
| | | .eq(AuxiliaryWorkingHoursDay::getDateTime, trainingDateTwo + " 00:00:00")); |
| | | } |
| | | } |
| | | // 是否通过 |
| | | if(personTrainingRecord.getExaminationResults().equals("合格") && CollectionUtils.isEmpty(auxiliaryWorkingHoursDays)) { |
| | | // 如果是检测办的人就不用加 |
| | | User user = userMapper.selectById(personTrainingRecord.getUserId()); |
| | | if(user.getDepartLimsId().contains("22")) { |
| | |
| | | // 项目名称 |
| | | a.setRemarks(personTrainingDetailed.getTrainingContent()); // 辅助说明 |
| | | a.setNumber("401"); // 编号 |
| | | AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay = auxiliaryWorkingHoursDayService.selectAuxiliaryWorkingHoursByNumber("401"); |
| | | |
| | | a.setAuxiliaryProject(auxiliaryWorkingHoursDay.getAuxiliaryProject()); // 辅助项目名称 |
| | | a.setNonproductiveTime(Double.parseDouble(divide.toString())); // 辅助工时 |
| | | a.setApprovedWorkingHour(auxiliaryWorkingHoursDay.getApprovedWorkingHour()); // 核准工时 |
| | |
| | | } |
| | | a.setWeek(weekNumber+""); // 周次 |
| | | a.setWeekDay(dayOfWeekNumber == 7 ? 0+"" : dayOfWeekNumber+""); // 星期 |
| | | // 是否通过 |
| | | if(personTrainingRecord.getExaminationResults().equals("合格") && CollectionUtils.isEmpty(auxiliaryWorkingHoursDays)) { |
| | | auxiliaryWorkingHoursDayMapper.insert(a); |
| | | } |
| | | // 培训讲师也要加上相应的工时 |
| | | String trainingLecturerId = personTrainingDetailed.getTrainingLecturerId(); |
| | | String[] split = trainingLecturerId.split(","); |
| | | for (String name : split) { |
| | | if(StringUtils.isNotEmpty(name)) { |
| | | User user1 = userMapper.selectList(new LambdaQueryWrapper<User>().like(User::getName, name)).get(0); |
| | | if(user1.getDepartLimsId().contains("22")) { |
| | | continue; |
| | | } |
| | | // 添加过了就不再添加 |
| | | List<AuxiliaryWorkingHoursDay> list = auxiliaryWorkingHoursDayMapper.selectList(new LambdaQueryWrapper<AuxiliaryWorkingHoursDay>() |
| | | .eq(AuxiliaryWorkingHoursDay::getNameUser, user1.getId()) |
| | | .eq(AuxiliaryWorkingHoursDay::getAuxiliaryProject, auxiliaryWorkingHoursDay.getAuxiliaryProject()) |
| | | .eq(AuxiliaryWorkingHoursDay::getDateTime, trainingDateTwo + " 00:00:00")); |
| | | if(CollectionUtils.isNotEmpty(list)) { |
| | | continue; |
| | | } |
| | | AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay1 = new AuxiliaryWorkingHoursDay(); // 用于添加培训讲师 |
| | | BeanUtils.copyProperties(a,auxiliaryWorkingHoursDay1); |
| | | auxiliaryWorkingHoursDay1.setNameUser(user1.getId()); |
| | | auxiliaryWorkingHoursDay1.setId(null); |
| | | auxiliaryWorkingHoursDayMapper.insert(auxiliaryWorkingHoursDay1); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |