Browse Source

feat: 基质列表和工艺列表搜索

master
guoapeng 5 months ago
parent
commit
949b21b91e
  1. BIN
      matrix-spray.db
  2. 46
      src/main/java/com/qyft/ms/app/controller/CMDController.java
  3. 10
      src/main/java/com/qyft/ms/app/controller/MatrixController.java
  4. 5
      src/main/java/com/qyft/ms/app/controller/MatrixCraftController.java
  5. 17
      src/main/java/com/qyft/ms/app/model/dto/MatrixCraftPageDTO.java
  6. 16
      src/main/java/com/qyft/ms/app/model/dto/MatrixDTO.java
  7. 14
      src/main/java/com/qyft/ms/app/service/CMDService.java
  8. 3
      src/main/java/com/qyft/ms/app/service/MatrixCraftService.java
  9. 12
      src/main/java/com/qyft/ms/app/service/impl/MatrixCraftServiceImpl.java

BIN
matrix-spray.db

46
src/main/java/com/qyft/ms/app/controller/CMDController.java

@ -511,4 +511,50 @@ public class CMDController {
}
}
@Operation(summary = "推出托盘")
@PostMapping("/trayOut")
public Result<String> trayOut(@RequestBody CMDForm cmdForm) {
try {
if (cmdForm.getCommandId() == null || cmdForm.getCommandId().isEmpty()) {
String commandId = UUID.randomUUID().toString();
cmdForm.setCommandId(commandId);
}
if (cmdForm.getCommandName() == null || cmdForm.getCommandName().isEmpty()) {
cmdForm.setCommandName("trayOut");
}
log.info("接收到指令: {}", JSONUtil.toJsonStr(cmdForm));
if (cmdService.trayOut(cmdForm)) {
return Result.success(cmdForm.getCommandId());
} else {
return Result.failed("参数错误");
}
} catch (Exception e) {
log.error("指令执行异常: {}", JSONUtil.toJsonStr(cmdForm), e);
return Result.failed("执行失败");
}
}
@Operation(summary = "推入托盘")
@PostMapping("/trayIn")
public Result<String> trayIn(@RequestBody CMDForm cmdForm) {
try {
if (cmdForm.getCommandId() == null || cmdForm.getCommandId().isEmpty()) {
String commandId = UUID.randomUUID().toString();
cmdForm.setCommandId(commandId);
}
if (cmdForm.getCommandName() == null || cmdForm.getCommandName().isEmpty()) {
cmdForm.setCommandName("trayIn");
}
log.info("接收到指令: {}", JSONUtil.toJsonStr(cmdForm));
if (cmdService.trayIn(cmdForm)) {
return Result.success(cmdForm.getCommandId());
} else {
return Result.failed("参数错误");
}
} catch (Exception e) {
log.error("指令执行异常: {}", JSONUtil.toJsonStr(cmdForm), e);
return Result.failed("执行失败");
}
}
}

10
src/main/java/com/qyft/ms/app/controller/MatrixController.java

@ -1,8 +1,13 @@
package com.qyft.ms.app.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qyft.ms.app.model.dto.MatrixDTO;
import com.qyft.ms.app.model.entity.Matrix;
import com.qyft.ms.app.service.MatrixService;
import com.qyft.ms.device.model.entity.CtrlFuncStep;
import com.qyft.ms.system.common.base.BasePageQuery;
import com.qyft.ms.system.common.result.PageResult;
import com.qyft.ms.system.common.result.Result;
@ -37,8 +42,9 @@ public class MatrixController {
@Operation(summary = "基质列表")
@GetMapping("/list")
public PageResult<Matrix> getAll(BasePageQuery pageQuery) {
IPage<Matrix> result = matrixService.page(new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()), null);
public PageResult<Matrix> getAll(MatrixDTO dto) {
IPage<Matrix> result = matrixService.page(new Page<>(dto.getPageNum(), dto.getPageSize()), new LambdaQueryWrapper<Matrix>()
.like(dto.getMatrixName() != null, Matrix::getName, "%"+dto.getMatrixName()+"%"));
return PageResult.success(result);
}

5
src/main/java/com/qyft/ms/app/controller/MatrixCraftController.java

@ -2,6 +2,7 @@ package com.qyft.ms.app.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qyft.ms.app.model.dto.MatrixCraftDTO;
import com.qyft.ms.app.model.dto.MatrixCraftPageDTO;
import com.qyft.ms.app.model.entity.MatrixCraft;
import com.qyft.ms.app.model.vo.MatrixCraftResult;
import com.qyft.ms.app.service.MatrixCraftService;
@ -53,9 +54,9 @@ public class MatrixCraftController {
@Operation(summary = "所有工艺列表")
@GetMapping("/list")
public PageResult<MatrixCraftResult> getAll(BasePageQuery pageQuery) {
public PageResult<MatrixCraftResult> getAll(MatrixCraftPageDTO dto) {
// IPage<MatrixCraft> result = matrixCraftService.page(new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()), null);
return PageResult.success(matrixCraftService.getAll(pageQuery));
return PageResult.success(matrixCraftService.getAll(dto));
}
@Operation(summary = "基质工艺更新")

17
src/main/java/com/qyft/ms/app/model/dto/MatrixCraftPageDTO.java

@ -0,0 +1,17 @@
package com.qyft.ms.app.model.dto;
import com.qyft.ms.system.common.base.BasePageQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class MatrixCraftPageDTO extends BasePageQuery {
@Schema(description = "名称")
private String matrixCraftName;
@Schema(description = "基质id")
private Long matrixId;
}

16
src/main/java/com/qyft/ms/app/model/dto/MatrixDTO.java

@ -0,0 +1,16 @@
package com.qyft.ms.app.model.dto;
import com.qyft.ms.system.common.base.BasePageQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class MatrixDTO extends BasePageQuery {
@Schema(description = "名称")
private String matrixName;
}

14
src/main/java/com/qyft/ms/app/service/CMDService.java

@ -477,6 +477,20 @@ public class CMDService {
return true;
}
public boolean trayOut(CMDForm form) {
List<Supplier<Boolean>> cmdList = new ArrayList<>();
cmdList.add(() -> deviceTcpCMDService.moveMotorToPosition("Y", 150));
initExecutorThread(cmdList, form);
return true;
}
public boolean trayIn(CMDForm form) {
List<Supplier<Boolean>> cmdList = new ArrayList<>();
cmdList.add(() -> deviceTcpCMDService.moveMotorToPosition("Y", 0));
initExecutorThread(cmdList, form);
return true;
}
public void run(List<Supplier<Boolean>> cmdList, CMDForm form) {
ExecutionResult executionResult = new ExecutionResult();

3
src/main/java/com/qyft/ms/app/service/MatrixCraftService.java

@ -3,6 +3,7 @@ package com.qyft.ms.app.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qyft.ms.app.model.dto.MatrixCraftDTO;
import com.qyft.ms.app.model.dto.MatrixCraftPageDTO;
import com.qyft.ms.app.model.entity.MatrixCraft;
import com.qyft.ms.app.model.vo.MatrixCraftResult;
import com.qyft.ms.system.common.base.BasePageQuery;
@ -26,5 +27,5 @@ public interface MatrixCraftService extends IService<MatrixCraft> {
Boolean deleteMatrixCraft(String ids);
IPage<MatrixCraftResult> getAll(BasePageQuery pageQuery);
IPage<MatrixCraftResult> getAll(MatrixCraftPageDTO dto);
}

12
src/main/java/com/qyft/ms/app/service/impl/MatrixCraftServiceImpl.java

@ -1,5 +1,6 @@
package com.qyft.ms.app.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -7,6 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qyft.ms.app.mapper.MatrixCraftMapper;
import com.qyft.ms.app.mapper.MatrixMapper;
import com.qyft.ms.app.model.dto.MatrixCraftDTO;
import com.qyft.ms.app.model.dto.MatrixCraftPageDTO;
import com.qyft.ms.app.model.entity.Matrix;
import com.qyft.ms.app.model.entity.MatrixCraft;
import com.qyft.ms.app.model.entity.OperationLog;
@ -60,12 +62,16 @@ public class MatrixCraftServiceImpl extends ServiceImpl<MatrixCraftMapper, Matri
}
@Override
public IPage<MatrixCraftResult> getAll(BasePageQuery pageQuery) {
public IPage<MatrixCraftResult> getAll(MatrixCraftPageDTO dto) {
// 构建分页对象
Page<MatrixCraftResult> page = new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize());
Page<MatrixCraftResult> page = new Page<>(dto.getPageNum(), dto.getPageSize());
ArrayList<MatrixCraftResult> matrixCraftResultList = new ArrayList<>();
// 查询所有工艺
List<MatrixCraft> matrixCrafts = matrixCraftMapper.selectList(new QueryWrapper<>());
List<MatrixCraft> matrixCrafts = matrixCraftMapper.selectList( new LambdaQueryWrapper<MatrixCraft>()
.like(dto.getMatrixCraftName() != null, MatrixCraft::getName, "%"+dto.getMatrixCraftName()+"%")
.eq(dto.getMatrixId() != null, MatrixCraft::getMatrixId, dto.getMatrixId())
);
for (MatrixCraft matrixCraft : matrixCrafts) {
Long matrixId = matrixCraft.getMatrixId();
Matrix matrix = matrixMapper.selectOne(new QueryWrapper<Matrix>().eq("id", matrixId));

Loading…
Cancel
Save