feat(schedule): 修改排班生成功能支持批量处理
- 将 IWmsAttendanceScheduleService.generateSchedule 方法参数改为 List 类型 - 更新 WmsAttendanceScheduleController 中的 generateSchedule 接口接收批量数据 - 在 WmsAttendanceScheduleServiceImpl 中实现循环处理多个排班生成请求 - 保持原有的单个排班生成逻辑不变,通过遍历列表实现批量功能
This commit is contained in:
@@ -103,8 +103,8 @@ public class WmsAttendanceScheduleController extends BaseController {
|
||||
*/
|
||||
@Log(title = "生成排班", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/generate")
|
||||
public R<Void> generateSchedule(@Validated @RequestBody GenerateScheduleBo bo) {
|
||||
iWmsAttendanceScheduleService.generateSchedule(bo);
|
||||
public R<Void> generateSchedule(@Validated @RequestBody List<GenerateScheduleBo> boList) {
|
||||
iWmsAttendanceScheduleService.generateSchedule(boList);
|
||||
return R.ok();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,5 +51,5 @@ public interface IWmsAttendanceScheduleService {
|
||||
/**
|
||||
* 生成排班
|
||||
*/
|
||||
void generateSchedule(GenerateScheduleBo bo);
|
||||
void generateSchedule(List<GenerateScheduleBo> boList);
|
||||
}
|
||||
|
||||
@@ -134,7 +134,8 @@ public class WmsAttendanceScheduleServiceImpl implements IWmsAttendanceScheduleS
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void generateSchedule(GenerateScheduleBo bo) {
|
||||
public void generateSchedule(List<GenerateScheduleBo> boList) {
|
||||
for (GenerateScheduleBo bo : boList) {
|
||||
LocalDate startDate = bo.getStartDate().toInstant().atZone(java.time.ZoneId.systemDefault()).toLocalDate();
|
||||
LocalDate endDate = bo.getEndDate().toInstant().atZone(java.time.ZoneId.systemDefault()).toLocalDate();
|
||||
|
||||
@@ -150,6 +151,7 @@ public class WmsAttendanceScheduleServiceImpl implements IWmsAttendanceScheduleS
|
||||
generateShiftSchedule(bo, startDate, endDate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成正常排班
|
||||
|
||||
Reference in New Issue
Block a user