package com.ruoyi.performance.service.impl; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.write.metadata.WriteSheet; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.util.concurrent.AtomicDouble; import com.ruoyi.common.core.domain.entity.SysDictData; import com.ruoyi.common.core.domain.entity.User; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.performance.dto.PerformanceShiftAddDto; import com.ruoyi.performance.dto.PerformanceShiftMapDto; import com.ruoyi.performance.dto.StaffAttendanceDTO; import com.ruoyi.performance.excel.PerformanceShiftAnnotationTextExcelData; import com.ruoyi.performance.excel.PerformanceShiftExcelData; import com.ruoyi.performance.excel.handler.performance.CommentWriteHandler; import com.ruoyi.performance.mapper.PerformanceShiftMapper; import com.ruoyi.performance.pojo.PerformanceShift; import com.ruoyi.performance.pojo.StaffAttendanceTrackingRecord; import com.ruoyi.performance.service.PerformanceShiftService; import com.ruoyi.performance.service.StaffAttendanceTrackingRecordService; import com.ruoyi.performance.vo.StaffAttendanceVO; import com.ruoyi.system.mapper.UserMapper; import com.ruoyi.system.service.ISysDictTypeService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.ObjectUtils; import org.apache.ibatis.annotations.Param; import org.apache.poi.ss.usermodel.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.servlet.http.HttpServletResponse; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import java.util.stream.Collectors; /** *
* 绩效管理-班次 服务实现类 *
* * @author 江苏鵷雏网络科技有限公司 * @since 2024-05-08 09:12:04 */ @Slf4j @Service public class PerformanceShiftServiceImpl extends ServiceImpl