Browse Source

feat:修改添加溶液方法实现

master
白凤吉 6 months ago
parent
commit
5704be8947
  1. 15
      src/main/java/com/qyft/gd/device/service/DeviceStepService.java
  2. 16
      src/main/java/com/qyft/gd/model/bo/AddLiquid.java
  3. 32
      src/main/java/com/qyft/gd/model/bo/TubeSol.java

15
src/main/java/com/qyft/gd/device/service/DeviceStepService.java

@ -1,13 +1,12 @@
package com.qyft.gd.device.service;
import com.qyft.gd.model.bo.AddLiquid;
import com.qyft.gd.model.bo.TubeSol;
import com.qyft.gd.service.BaseDataService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.function.BooleanSupplier;
/**
* 设备步骤操作
@ -39,19 +38,17 @@ public class DeviceStepService {
/**
* 添加溶液
*
* @param tubeCoordinateList 需要添加溶液的试管坐标list: x,y,z 字符
* @param addLiquidList 需要添加的溶液
* @param tubeSolList 需要添加溶液的试管与溶液
*/
public boolean addLiquid(List<String> tubeCoordinateList, List<AddLiquid> addLiquidList) {
public boolean addLiquid(List<TubeSol> tubeSolList) {
List<Boolean> results = new ArrayList<>();
for (String tubeCoordinate : tubeCoordinateList) {
String[] tubeCoordinateArray = tubeCoordinate.split(",");
for (TubeSol tubeSol : tubeSolList) {
String[] tubeCoordinateArray = tubeSol.getTubeCoordinate().split(",");
int x = Integer.parseInt(tubeCoordinateArray[0]);
int y = Integer.parseInt(tubeCoordinateArray[1]);
int z = Integer.parseInt(tubeCoordinateArray[2]);
results.add(deviceService.moveLiquidArmToPoint(x, y, z));//加液孔对准试管
for (AddLiquid addLiquid : addLiquidList) {//依次添加溶液
for (TubeSol.AddLiquid addLiquid : tubeSol.getAddLiquidList()) {//依次添加溶液
results.add(deviceService.addLiquid(addLiquid.getPumpId(), addLiquid.getVolume()));
}
}

16
src/main/java/com/qyft/gd/model/bo/AddLiquid.java

@ -1,16 +0,0 @@
package com.qyft.gd.model.bo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 添加溶液
*/
@Schema(description = "添加溶液")
@Data
public class AddLiquid {
@Schema(description = "泵id")
private Long pumpId;
@Schema(description = "加液量")
private Integer volume;
}

32
src/main/java/com/qyft/gd/model/bo/TubeSol.java

@ -0,0 +1,32 @@
package com.qyft.gd.model.bo;
import lombok.Data;
import java.util.List;
/**
* 试管添加溶液
*/
@Data
public class TubeSol {
/**
* 需要添加溶液的试管坐标list: x,y,z 字符
*/
private String tubeCoordinate;
/**
* 需要添加的溶液
*/
private List<AddLiquid> addLiquidList;
@Data
public static class AddLiquid {
/**
* 泵id
*/
private Long pumpId;
/**
* 加液量
*/
private Integer volume;
}
}
Loading…
Cancel
Save