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; |
|||
|
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import jakarta.validation.constraints.NotBlank; |
|||
import jakarta.validation.constraints.NotNull; |
|||
import lombok.Data; |
|||
|
|||
@Schema(description = "恢复执行工艺") |
|||
@Data |
|||
public class StopCraftsDto { |
|||
public class ResumeCraftsDTO { |
|||
@NotNull |
|||
@Schema(description = "加热区id") |
|||
private String heatId; |
@ -1,13 +1,12 @@ |
|||
package com.iflytop.gd.app.model.dto; |
|||
|
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import jakarta.validation.constraints.NotBlank; |
|||
import jakarta.validation.constraints.NotNull; |
|||
import lombok.Data; |
|||
|
|||
@Schema(description = "恢复执行工艺") |
|||
@Data |
|||
public class ResumeCraftsDto { |
|||
public class StopCraftsDTO { |
|||
@NotNull |
|||
@Schema(description = "加热区id") |
|||
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