20 changed files with 290 additions and 58 deletions
-
6src/main/java/com/iflytop/gd/app/controller/ContainerController.java
-
14src/main/java/com/iflytop/gd/app/controller/CraftsController.java
-
4src/main/java/com/iflytop/gd/app/controller/DeviceParamController.java
-
60src/main/java/com/iflytop/gd/app/controller/DevicePointController.java
-
8src/main/java/com/iflytop/gd/app/controller/OresController.java
-
2src/main/java/com/iflytop/gd/app/controller/SolutionsController.java
-
8src/main/java/com/iflytop/gd/app/controller/UserController.java
-
12src/main/java/com/iflytop/gd/app/mapper/DevicePositionMapper.java
-
3src/main/java/com/iflytop/gd/app/model/dto/ResumeCraftsDTO.java
-
3src/main/java/com/iflytop/gd/app/model/dto/StopCraftsDTO.java
-
34src/main/java/com/iflytop/gd/app/model/entity/DevicePosition.java
-
39src/main/java/com/iflytop/gd/app/model/vo/DevicePositionVO.java
-
2src/main/java/com/iflytop/gd/app/service/ContainerService.java
-
8src/main/java/com/iflytop/gd/app/service/CraftsService.java
-
43src/main/java/com/iflytop/gd/app/service/DevicePositionService.java
-
12src/main/java/com/iflytop/gd/common/enums/data/DevicePositionCode.java
-
31src/main/java/com/iflytop/gd/common/enums/data/DevicePositionType.java
-
11src/main/resources/sql/init.sql
@ -0,0 +1,60 @@ |
|||||
|
package com.iflytop.gd.app.controller; |
||||
|
|
||||
|
import com.iflytop.gd.app.model.entity.DevicePosition; |
||||
|
import com.iflytop.gd.app.model.vo.DevicePositionVO; |
||||
|
import com.iflytop.gd.app.service.DevicePositionService; |
||||
|
import com.iflytop.gd.common.result.Result; |
||||
|
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.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 设备点位接口 |
||||
|
*/ |
||||
|
@Tag(name = "设备位置配置") |
||||
|
@RestController |
||||
|
@RequestMapping("/api/device-point") |
||||
|
@RequiredArgsConstructor |
||||
|
@Slf4j |
||||
|
public class DevicePointController { |
||||
|
|
||||
|
private final DevicePositionService devicePointService; |
||||
|
|
||||
|
@Operation(summary = "列表") |
||||
|
@GetMapping("/list") |
||||
|
public Result<List<DevicePositionVO>> listGroupedParams() { |
||||
|
List<DevicePositionVO> devicePointVOList = devicePointService.getList(); |
||||
|
return Result.success(devicePointVOList); |
||||
|
} |
||||
|
|
||||
|
@Operation(summary = "添加") |
||||
|
@PostMapping("") |
||||
|
public Result<String> add(@Valid @RequestBody DevicePosition devicePoint) { |
||||
|
devicePointService.save(devicePoint); |
||||
|
return Result.success(); |
||||
|
} |
||||
|
|
||||
|
@Operation(summary = "修改") |
||||
|
@PutMapping("") |
||||
|
public Result<String> update(@Valid @RequestBody DevicePosition devicePoint) { |
||||
|
devicePointService.updateById(devicePoint); |
||||
|
return Result.success(); |
||||
|
} |
||||
|
|
||||
|
@Operation(summary = "删除") |
||||
|
@DeleteMapping("/{ids}") |
||||
|
public Result<String> delete(@Parameter(description = "位置ID,多个以英文逗号(,)分割") @PathVariable String ids) { |
||||
|
boolean isSuccess = devicePointService.deletePositon(ids); |
||||
|
if (isSuccess) { |
||||
|
return Result.success(); |
||||
|
} |
||||
|
return Result.failed(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,12 @@ |
|||||
|
package com.iflytop.gd.app.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.iflytop.gd.app.model.entity.DevicePosition; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 设备位置持久层接口 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface DevicePositionMapper extends BaseMapper<DevicePosition> { |
||||
|
} |
@ -1,13 +1,12 @@ |
|||||
package com.iflytop.gd.app.model.dto; |
package com.iflytop.gd.app.model.dto; |
||||
|
|
||||
import io.swagger.v3.oas.annotations.media.Schema; |
import io.swagger.v3.oas.annotations.media.Schema; |
||||
import jakarta.validation.constraints.NotBlank; |
|
||||
import jakarta.validation.constraints.NotNull; |
import jakarta.validation.constraints.NotNull; |
||||
import lombok.Data; |
import lombok.Data; |
||||
|
|
||||
@Schema(description = "恢复执行工艺") |
@Schema(description = "恢复执行工艺") |
||||
@Data |
@Data |
||||
public class StopCraftsDto { |
|
||||
|
public class ResumeCraftsDTO { |
||||
@NotNull |
@NotNull |
||||
@Schema(description = "加热区id") |
@Schema(description = "加热区id") |
||||
private String heatId; |
private String heatId; |
@ -1,13 +1,12 @@ |
|||||
package com.iflytop.gd.app.model.dto; |
package com.iflytop.gd.app.model.dto; |
||||
|
|
||||
import io.swagger.v3.oas.annotations.media.Schema; |
import io.swagger.v3.oas.annotations.media.Schema; |
||||
import jakarta.validation.constraints.NotBlank; |
|
||||
import jakarta.validation.constraints.NotNull; |
import jakarta.validation.constraints.NotNull; |
||||
import lombok.Data; |
import lombok.Data; |
||||
|
|
||||
@Schema(description = "恢复执行工艺") |
@Schema(description = "恢复执行工艺") |
||||
@Data |
@Data |
||||
public class ResumeCraftsDto { |
|
||||
|
public class StopCraftsDTO { |
||||
@NotNull |
@NotNull |
||||
@Schema(description = "加热区id") |
@Schema(description = "加热区id") |
||||
private String heatId; |
private String heatId; |
@ -0,0 +1,34 @@ |
|||||
|
package com.iflytop.gd.app.model.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.iflytop.gd.common.base.BaseEntity; |
||||
|
import com.iflytop.gd.common.enums.data.DevicePositionCode; |
||||
|
import com.iflytop.gd.common.enums.data.DevicePositionType; |
||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||
|
import jakarta.validation.constraints.NotBlank; |
||||
|
import jakarta.validation.constraints.NotNull; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
@EqualsAndHashCode(callSuper = true) |
||||
|
@Schema(description = "设备位置记录") |
||||
|
@TableName("device_position") |
||||
|
@Data |
||||
|
public class DevicePosition extends BaseEntity { |
||||
|
|
||||
|
@Schema(description = "位置名称") |
||||
|
private String name; |
||||
|
|
||||
|
@Schema(description = "位置代码") |
||||
|
private DevicePositionCode code; |
||||
|
|
||||
|
@Schema(description = "位置类型") |
||||
|
private DevicePositionType type; |
||||
|
|
||||
|
@NotNull |
||||
|
@NotBlank |
||||
|
@Schema(description = "位置数据") |
||||
|
private String position; |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,39 @@ |
|||||
|
package com.iflytop.gd.app.model.vo; |
||||
|
|
||||
|
import com.iflytop.gd.app.model.entity.DevicePosition; |
||||
|
import com.iflytop.gd.common.enums.data.DevicePositionCode; |
||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* 设备位置记录 的展示视图 |
||||
|
*/ |
||||
|
@Data |
||||
|
@AllArgsConstructor |
||||
|
@Schema(description = "设备位置记录") |
||||
|
public class DevicePositionVO { |
||||
|
|
||||
|
private Long id; |
||||
|
|
||||
|
@Schema(description = "位置名称") |
||||
|
private String name; |
||||
|
|
||||
|
@Schema(description = "位置代码") |
||||
|
private DevicePositionCode code; |
||||
|
|
||||
|
@Schema(description = "位置类型") |
||||
|
private String type; |
||||
|
|
||||
|
@Schema(description = "位置数据") |
||||
|
private String position; |
||||
|
|
||||
|
public DevicePositionVO(DevicePosition devicePosition) { |
||||
|
this.id = devicePosition.getId(); |
||||
|
this.name = devicePosition.getName(); |
||||
|
this.code = devicePosition.getCode(); |
||||
|
this.type = devicePosition.getType().getName(); |
||||
|
this.position = devicePosition.getPosition(); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,43 @@ |
|||||
|
package com.iflytop.gd.app.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
|
import com.iflytop.gd.app.mapper.DevicePositionMapper; |
||||
|
import com.iflytop.gd.app.model.entity.DevicePosition; |
||||
|
import com.iflytop.gd.app.model.vo.DevicePositionVO; |
||||
|
import com.iflytop.gd.common.enums.data.DevicePositionCode; |
||||
|
import lombok.RequiredArgsConstructor; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 设备位置服务 |
||||
|
*/ |
||||
|
@Service |
||||
|
@RequiredArgsConstructor |
||||
|
public class DevicePositionService extends ServiceImpl<DevicePositionMapper, DevicePosition> { |
||||
|
|
||||
|
public List<DevicePositionVO> getList() { |
||||
|
List<DevicePosition> devicePositions = super.list(); |
||||
|
return devicePositions.stream() |
||||
|
.map(DevicePositionVO::new) |
||||
|
.collect(Collectors.toList()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 根据位置类型获取位置 |
||||
|
*/ |
||||
|
public DevicePosition getPoint(DevicePositionCode code) { |
||||
|
return this.getOne(new LambdaQueryWrapper<>(DevicePosition.class).eq(DevicePosition::getCode, code)); |
||||
|
} |
||||
|
|
||||
|
public boolean deletePositon(String idsStr) { |
||||
|
List<Long> ids = Arrays.stream(idsStr.split(",")) |
||||
|
.map(Long::parseLong) |
||||
|
.collect(Collectors.toList()); |
||||
|
return this.removeByIds(ids); |
||||
|
} |
||||
|
} |
@ -0,0 +1,12 @@ |
|||||
|
package com.iflytop.gd.common.enums.data; |
||||
|
|
||||
|
import lombok.Getter; |
||||
|
|
||||
|
/** |
||||
|
* 设备位置代码 |
||||
|
*/ |
||||
|
@Getter |
||||
|
public enum DevicePositionCode { |
||||
|
test |
||||
|
|
||||
|
} |
@ -0,0 +1,31 @@ |
|||||
|
package com.iflytop.gd.common.enums.data; |
||||
|
|
||||
|
import lombok.Getter; |
||||
|
|
||||
|
/** |
||||
|
* 设备位置类型 |
||||
|
*/ |
||||
|
@Getter |
||||
|
public enum DevicePositionType { |
||||
|
/** |
||||
|
* 直线距离 |
||||
|
*/ |
||||
|
DISTANCE("直线距离"), |
||||
|
/** |
||||
|
* 二维点 |
||||
|
*/ |
||||
|
POINT_2D("二维点"), |
||||
|
/** |
||||
|
* 三维点 |
||||
|
*/ |
||||
|
POINT_3D("三维点"); |
||||
|
|
||||
|
|
||||
|
private final String name; |
||||
|
|
||||
|
// 构造函数 |
||||
|
DevicePositionType(String name) { |
||||
|
this.name = name; |
||||
|
} |
||||
|
|
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue