package com.ruoyi.performance.controller; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.Result; import com.ruoyi.common.core.domain.entity.SysDictData; import com.ruoyi.performance.dto.PerformanceShiftAddDto; import com.ruoyi.performance.pojo.PerformanceShift; import com.ruoyi.performance.service.PerformanceShiftService; import com.ruoyi.performance.utils.StyleMonthUtils; import com.ruoyi.performance.utils.StyleYearUtils; import com.ruoyi.system.service.ISysDictTypeService; import com.ruoyi.system.service.UserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.NotNull; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; import java.time.temporal.TemporalAdjusters; import java.time.temporal.WeekFields; import java.util.Collection; import java.util.List; import java.util.Locale; import java.util.Map; import java.util.stream.Collectors; /** *
* 绩效管理-班次 前端控制器 *
* * @author 江苏鵷雏网络科技有限公司 * @since 2024-05-08 09:12:04 */ @Api(tags = "绩效管理-班次") @RestController @RequestMapping("/performanceShift") public class PerformanceShiftController { @Autowired private PerformanceShiftService performanceShiftService; @Resource private ISysDictTypeService dictTypeService; @Resource private UserService userService; @ApiOperation(value = "排班") @PostMapping("add") public Result> performanceShiftAdd(@RequestBody PerformanceShiftAddDto performanceShiftAddDto) { performanceShiftService.performanceShiftAdd(performanceShiftAddDto); return Result.success(); } @ApiOperation(value = "月份分页查询") @PostMapping("page") public Result> performanceShiftPage(Integer size, Integer current, String time, String userName, String laboratory) { return Result.success(performanceShiftService.performanceShiftPage(new Page<>(current, size), time, userName, laboratory)); } @ApiOperation(value = "年份分页查询") @PostMapping("pageYear") public Result> performanceShiftPageYear(Integer size, Integer current, String time, String userName, String laboratory) { return Result.success(performanceShiftService.performanceShiftPageYear(new Page<>(current, size), time, userName, laboratory)); } @ApiOperation(value = "班次状态修改") @PutMapping("update") public Result> performanceShiftUpdate(@RequestBody PerformanceShift performanceShift) { performanceShiftService.performanceShiftUpdate(performanceShift); return Result.success(); } @ApiOperation(value = "导出") @GetMapping("export") public void exportToExcel(@NotNull(message = "时间不能为空!") String time, String userName, String laboratory, Boolean isMonth, HttpServletResponse response) throws Exception { Map