From 1a841d01be278c058b74c4e4c436fe4a984849cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=A2=A6=E8=BF=9C?= <1063331231@qq.com> Date: Tue, 27 May 2025 14:55:01 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E6=81=A2=E5=A4=8D=E6=BA=B6=E6=B6=B2?= =?UTF-8?q?=E5=92=8C=E6=89=98=E7=9B=98=E7=9A=84=E6=8E=A7=E5=88=B6=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sgs/app/controller/SolutionsController.java | 74 ++++++++++++++++++++++ .../iflytop/sgs/app/controller/TrayController.java | 47 ++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 src/main/java/com/iflytop/sgs/app/controller/SolutionsController.java create mode 100644 src/main/java/com/iflytop/sgs/app/controller/TrayController.java diff --git a/src/main/java/com/iflytop/sgs/app/controller/SolutionsController.java b/src/main/java/com/iflytop/sgs/app/controller/SolutionsController.java new file mode 100644 index 0000000..6b8c6d0 --- /dev/null +++ b/src/main/java/com/iflytop/sgs/app/controller/SolutionsController.java @@ -0,0 +1,74 @@ +package com.iflytop.sgs.app.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.iflytop.sgs.app.model.entity.Solutions; +import com.iflytop.sgs.app.service.api.SolutionsService; +import com.iflytop.sgs.common.base.BasePageQuery; +import com.iflytop.sgs.common.result.PageResult; +import com.iflytop.sgs.common.result.Result; +import com.iflytop.sgs.common.result.ResultCode; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +@Tag(name = "溶液管理") +@RestController +@RequestMapping("/api/sols") +@RequiredArgsConstructor +@Slf4j +public class SolutionsController { + private final SolutionsService solutionsService; + + @Operation(summary = "溶液列表") + @GetMapping("/list") + public PageResult getAllSols(BasePageQuery pageQuery) { + IPage result = solutionsService.page(new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()), null); + return PageResult.success(result); + } + + @Operation(summary = "添加新溶液") + @PostMapping("") + public Result addSolutions(@Valid @RequestBody Solutions solutions) { + Solutions existingSolutions = solutionsService.findByName(solutions.getName()); + if (existingSolutions == null) { + boolean isSuccess = solutionsService.addSolutions(solutions); + if (isSuccess) { + return Result.success(); + } + } else { + return Result.failed(ResultCode.DATA_ALREADY_EXISTS); + } + return Result.failed(); + } + + @Operation(summary = "更新溶液") + @PutMapping("") + public Result updateSolutions(@Valid @RequestBody Solutions solutions) { + Solutions existingSolutions = solutionsService.findByName(solutions.getName()); + if (existingSolutions == null) { + boolean isSuccess = solutionsService.updateSolutions(solutions); + if (isSuccess) { + return Result.success(); + } + } else { + return Result.failed(ResultCode.DATA_ALREADY_EXISTS); + } + return Result.failed(); + } + + @Operation(summary = "删除溶液") + @DeleteMapping("/{ids}") + public Result delete(@Parameter(description = "溶液ID,多个以英文逗号(,)分割") @PathVariable String ids) { + boolean isSuccess = solutionsService.deleteSolutions(ids); + if (isSuccess) { + return Result.success(); + } + return Result.failed(); + } + +} diff --git a/src/main/java/com/iflytop/sgs/app/controller/TrayController.java b/src/main/java/com/iflytop/sgs/app/controller/TrayController.java new file mode 100644 index 0000000..c7f7463 --- /dev/null +++ b/src/main/java/com/iflytop/sgs/app/controller/TrayController.java @@ -0,0 +1,47 @@ +package com.iflytop.sgs.app.controller; + +import com.iflytop.sgs.app.model.bo.status.device.TrayState; +import com.iflytop.sgs.app.model.vo.SetTrayTubeVO; +import com.iflytop.sgs.app.service.api.TrayService; +import com.iflytop.sgs.common.result.Result; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 托盘控制 + */ +@Tag(name = "托盘控制") +@RestController +@RequestMapping("/api/tray") +@RequiredArgsConstructor +@Slf4j +public class TrayController { + private final TrayService trayService; + + @Operation(summary = "放入新托盘") + @PostMapping("/in") + public Result trayIn() { + return Result.success(trayService.trayIn()); + } + + @Operation(summary = "拿走托盘") + @PostMapping("/out") + public Result trayOut() { + trayService.trayOut(); + return Result.success(); + } + + @Operation(summary = "设置托盘试管") + @PostMapping("/tube") + public Result setTrayTube(@RequestBody SetTrayTubeVO setTrayTubeVO) { + trayService.setTrayTube(setTrayTubeVO); + return Result.success(); + } + +}