package jnpf.limsController; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jnpf.limsEntity.LimsSxtKanbanItemVo; import jnpf.limsEntity.LimsSxtKanbanOptionsVo; import jnpf.limsEntity.LimsSxtKanbanRowVo; import jnpf.limsService.LimsSxtKanbanService; import jnpf.util.R; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import java.time.LocalDate; import java.util.List; @Tag(name = "lims水系统计划看板", description = "") @RestController @RequestMapping("/lims/biz/sxt/kanban") public class LimsSxtKanbanController { @Autowired private LimsSxtKanbanService kanbanService; @Operation(summary = "水系统计划看板筛选选项") @GetMapping("/options") public R options( @RequestParam(value = "yangpin_leixing", required = false) String type, @RequestParam(value = "suoshu_chejian", required = false) String workshop, @RequestParam(value = "quyang_didian", required = false) String place) { return R.success(kanbanService.listKanbanOptions( trimToNull(type), trimToNull(workshop), trimToNull(place))); } @Operation(summary = "水系统计划看板行") @GetMapping("/rows") public R> rows(@RequestParam(value = "yangpin_leixing", required = false) String type, @RequestParam(value = "suoshu_chejian", required = false) String workshop, @RequestParam(value = "quyang_didian", required = false) String place, @RequestParam(value = "quyangdian_bianhao", required = false) String point) { return R.success(kanbanService.listKanbanRows(type, workshop, place, point)); } @Operation(summary = "水系统计划看板日历项") @GetMapping("/items") public R> items(@RequestParam("start_date") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate start, @RequestParam("end_date") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate end, @RequestParam(value = "yangpin_leixing", required = false) String type, @RequestParam(value = "suoshu_chejian", required = false) String workshop, @RequestParam(value = "quyang_didian", required = false) String place, @RequestParam(value = "quyangdian_bianhao", required = false) String point) { return R.success(kanbanService.listKanbanItems(start, end, type, workshop, place, point)); } @Operation(summary = "取消未来未生成请验单的计划任务") @DeleteMapping("/renwu/{renwuId}") public R quxiaoRenwu(@PathVariable String renwuId) { kanbanService.quxiaoWeilaiRenwu(renwuId); return R.success("取消成功"); } private String trimToNull(String value) { return StringUtils.hasText(value) ? value.trim() : null; } }