水泥外部api
This commit is contained in:
parent
66f68a0623
commit
e766fc54c9
@ -0,0 +1,70 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.controller;
|
||||||
|
|
||||||
|
import com.zhgd.annotation.OperLog;
|
||||||
|
import com.zhgd.jeecg.common.api.vo.Result;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.dto.UploadAlarmDto;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.dto.UploadPilDto;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.dto.UploadRealtimeDto;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.dto.UploadTaskAndPointDto;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.service.impl.CementMixPileExtApiService;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.context.annotation.Lazy;
|
||||||
|
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;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Title: Controller
|
||||||
|
* @Description: 水泥搅拌桩/旋挖沉桩外部API
|
||||||
|
* @author: pds
|
||||||
|
* @date: 2025-12-12
|
||||||
|
* @version: V1.0
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/xmgl/cementMixPileExtApi")
|
||||||
|
@Slf4j
|
||||||
|
@Api(tags = "水泥搅拌桩/旋挖沉桩外部API")
|
||||||
|
public class CementMixPileExtApiController {
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private CementMixPileExtApiService cementMixPileExtApiService;
|
||||||
|
|
||||||
|
@OperLog(operModul = "水泥搅拌桩/旋挖沉桩外部API管理", operType = "", operDesc = "上传水泥搅拌桩/旋挖沉桩任务和点位数据")
|
||||||
|
@ApiOperation(value = "上传水泥搅拌桩/旋挖沉桩任务和点位数据", notes = "上传水泥搅拌桩/旋挖沉桩任务和点位数据", httpMethod = "POST")
|
||||||
|
@PostMapping(value = "/uploadTaskAndPoint")
|
||||||
|
public Result uploadTaskAndPoint(@RequestBody UploadTaskAndPointDto dto) {
|
||||||
|
cementMixPileExtApiService.uploadTaskAndPoint(dto);
|
||||||
|
return Result.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@OperLog(operModul = "水泥搅拌桩/旋挖沉桩外部API管理", operType = "", operDesc = "上传水泥搅拌桩/旋挖沉桩数据")
|
||||||
|
@ApiOperation(value = "上传水泥搅拌桩/旋挖沉桩数据", notes = "上传水泥搅拌桩/旋挖沉桩数据", httpMethod = "POST")
|
||||||
|
@PostMapping(value = "/uploadPil")
|
||||||
|
public Result uploadPil(@RequestBody UploadPilDto dto) {
|
||||||
|
cementMixPileExtApiService.uploadPil(dto);
|
||||||
|
return Result.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@OperLog(operModul = "水泥搅拌桩/旋挖沉桩外部API管理", operType = "", operDesc = "上传水泥搅拌桩/旋挖实时数据")
|
||||||
|
@ApiOperation(value = "上传水泥搅拌桩/旋挖实时数据", notes = "上传水泥搅拌桩/旋挖实时数据", httpMethod = "POST")
|
||||||
|
@PostMapping(value = "/uploadRealtime")
|
||||||
|
public Result uploadRealtime(@RequestBody UploadRealtimeDto dto) {
|
||||||
|
cementMixPileExtApiService.uploadRealtime(dto);
|
||||||
|
return Result.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@OperLog(operModul = "水泥搅拌桩/旋挖沉桩外部API管理", operType = "", operDesc = "上传水泥搅拌桩/旋挖报警数据")
|
||||||
|
@ApiOperation(value = "上传水泥搅拌桩/旋挖报警数据", notes = "上传水泥搅拌桩/旋挖报警数据", httpMethod = "POST")
|
||||||
|
@PostMapping(value = "/uploadAlarm")
|
||||||
|
public Result uploadAlarm(@RequestBody UploadAlarmDto dto) {
|
||||||
|
cementMixPileExtApiService.uploadAlarm(dto);
|
||||||
|
return Result.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -80,4 +80,9 @@ public class CementMixPilePoint implements Serializable {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
private Integer devType;
|
private Integer devType;
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -69,4 +69,9 @@ public class CementMixPileTask implements Serializable {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
private Integer devType;
|
private Integer devType;
|
||||||
|
/**
|
||||||
|
* 任务自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务自定义唯一id")
|
||||||
|
private String taskUid;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,62 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.entity.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "报警数据")
|
||||||
|
public class UploadAlarmDto {
|
||||||
|
/**
|
||||||
|
* 项目sn
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "项目sn")
|
||||||
|
private String projectSn;
|
||||||
|
/**
|
||||||
|
* 报警数据列表
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("报警数据列表")
|
||||||
|
private List<Alarm> alarmList;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Alarm {
|
||||||
|
/**
|
||||||
|
* 报警时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "报警时间")
|
||||||
|
private Date alarmTime;
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
|
/**
|
||||||
|
* 设计桩深(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设计桩深(m)")
|
||||||
|
private java.math.BigDecimal designPileDepth;
|
||||||
|
/**
|
||||||
|
* 实时桩深
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "实时桩深")
|
||||||
|
private java.math.BigDecimal realPileDepth;
|
||||||
|
/**
|
||||||
|
* 设备编号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设备编号")
|
||||||
|
private String devSn;
|
||||||
|
/**
|
||||||
|
* 1水泥搅拌桩2旋挖
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
|
private Integer devType;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,180 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.entity.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "成桩数据")
|
||||||
|
public class UploadPilDto {
|
||||||
|
/**
|
||||||
|
* 项目sn
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "项目sn")
|
||||||
|
private String projectSn;
|
||||||
|
/**
|
||||||
|
* 沉桩数据列表
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("沉桩数据列表")
|
||||||
|
private List<Pil> pilList;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Pil {
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
|
/**
|
||||||
|
* 任务自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务自定义唯一id")
|
||||||
|
private String taskUid;
|
||||||
|
/**
|
||||||
|
* 设备编号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设备编号")
|
||||||
|
private String devSn;
|
||||||
|
/**
|
||||||
|
* 上传时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "上传时间")
|
||||||
|
private Date uploadTime;
|
||||||
|
/**
|
||||||
|
* 桩点名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "桩点名称")
|
||||||
|
private String pilePointName;
|
||||||
|
/**
|
||||||
|
* 任务名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务名称")
|
||||||
|
private String taskName;
|
||||||
|
/**
|
||||||
|
* 沉桩开始时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "沉桩开始时间")
|
||||||
|
private Date pileDrivingStartTime;
|
||||||
|
/**
|
||||||
|
* 沉桩结束时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "沉桩结束时间")
|
||||||
|
private Date pileDrivingEndTime;
|
||||||
|
/**
|
||||||
|
* 拔桩开始时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "拔桩开始时间")
|
||||||
|
private Date pileExtractionStartTime;
|
||||||
|
/**
|
||||||
|
* 拔桩结束时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "拔桩结束时间")
|
||||||
|
private Date pileExtractionEndTime;
|
||||||
|
/**
|
||||||
|
* 施工高程
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "施工高程")
|
||||||
|
private String constructionElevation;
|
||||||
|
/**
|
||||||
|
* 施工X坐标
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "施工X坐标")
|
||||||
|
private java.math.BigDecimal constructionXCoordinate;
|
||||||
|
/**
|
||||||
|
* 施工Y坐标
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "施工Y坐标")
|
||||||
|
private java.math.BigDecimal constructionYCoordinate;
|
||||||
|
/**
|
||||||
|
* 施工经度
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "施工经度")
|
||||||
|
private java.math.BigDecimal constructionLongitude;
|
||||||
|
/**
|
||||||
|
* 施工纬度
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "施工纬度")
|
||||||
|
private java.math.BigDecimal constructionLatitude;
|
||||||
|
/**
|
||||||
|
* 持力层(比值)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "持力层(比值)")
|
||||||
|
private String bearingLayer;
|
||||||
|
/**
|
||||||
|
* 拔桩电流(A)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "拔桩电流(A)")
|
||||||
|
private java.math.BigDecimal pileExtractionCurrent;
|
||||||
|
/**
|
||||||
|
* 沉桩深度(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "沉桩深度(m)")
|
||||||
|
private java.math.BigDecimal pileDrivingDepth;
|
||||||
|
/**
|
||||||
|
* 持力层电流(A)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "持力层电流(A)")
|
||||||
|
private java.math.BigDecimal bearingLayerCurrent;
|
||||||
|
/**
|
||||||
|
* 垂直度(%)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "垂直度(%)")
|
||||||
|
private java.math.BigDecimal verticality;
|
||||||
|
/**
|
||||||
|
* 沉桩平均电流(A)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "沉桩平均电流(A)")
|
||||||
|
private java.math.BigDecimal averagePileDrivingCurrent;
|
||||||
|
/**
|
||||||
|
* 拔桩平均电流(A)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "拔桩平均电流(A)")
|
||||||
|
private java.math.BigDecimal averagePileExtractionCurrent;
|
||||||
|
/**
|
||||||
|
* 沉桩平均速率(m/min)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "沉桩平均速率(m/min)")
|
||||||
|
private String averagePileDrivingRate;
|
||||||
|
/**
|
||||||
|
* 拔桩平均速率(m/min)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "拔桩平均速率(m/min)")
|
||||||
|
private String averagePileExtractionRate;
|
||||||
|
/**
|
||||||
|
* 实际灌入量(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "实际灌入量(m)")
|
||||||
|
private java.math.BigDecimal actualGroutingVolume;
|
||||||
|
/**
|
||||||
|
* 桩点水平偏差距离(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "桩点水平偏差距离(m)")
|
||||||
|
private java.math.BigDecimal horizontalDeviationDistanceOfPilePoint;
|
||||||
|
/**
|
||||||
|
* 状态0:未施工 1:已完成 2:进行中
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "状态0:未施工 1:已完成 2:进行中")
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 1水泥搅拌桩2旋挖
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
|
private Integer devType;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,83 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.entity.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "实时数据")
|
||||||
|
public class UploadRealtimeDto {
|
||||||
|
/**
|
||||||
|
* 项目sn
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "项目sn")
|
||||||
|
private String projectSn;
|
||||||
|
/**
|
||||||
|
* 实时数据列表
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("实时数据列表")
|
||||||
|
private List<Realtime> realtimeList;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Realtime {
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
|
/**设备编号*/
|
||||||
|
@ApiModelProperty(value="设备编号")
|
||||||
|
private String devSn ;
|
||||||
|
/**桩点名称*/
|
||||||
|
@ApiModelProperty(value="桩点名称")
|
||||||
|
private String pilePointName ;
|
||||||
|
/**车辆名称*/
|
||||||
|
@ApiModelProperty(value="车辆名称")
|
||||||
|
private String vehicleName ;
|
||||||
|
/**航向*/
|
||||||
|
@ApiModelProperty(value="航向")
|
||||||
|
private String heading ;
|
||||||
|
/**定位时间*/
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value="定位时间")
|
||||||
|
private Date positioningTime ;
|
||||||
|
/**经度*/
|
||||||
|
@ApiModelProperty(value="经度")
|
||||||
|
private java.math.BigDecimal longitude ;
|
||||||
|
/**纬度*/
|
||||||
|
@ApiModelProperty(value="纬度")
|
||||||
|
private java.math.BigDecimal latitude ;
|
||||||
|
/**速度*/
|
||||||
|
@ApiModelProperty(value="速度")
|
||||||
|
private String speed ;
|
||||||
|
/**实时深度(m)*/
|
||||||
|
@ApiModelProperty(value="实时深度(m)")
|
||||||
|
private java.math.BigDecimal realtimeDepth ;
|
||||||
|
/**实时电流*/
|
||||||
|
@ApiModelProperty(value="实时电流")
|
||||||
|
private String realtimeCurrent ;
|
||||||
|
/**实时灌入量(m°)*/
|
||||||
|
@ApiModelProperty(value="实时灌入量(m°)")
|
||||||
|
private java.math.BigDecimal realtimeInjectionVolume ;
|
||||||
|
/**实时垂直度*/
|
||||||
|
@ApiModelProperty(value="实时垂直度")
|
||||||
|
private String realtimeVerticality ;
|
||||||
|
/**实时速率*/
|
||||||
|
@ApiModelProperty(value="实时速率")
|
||||||
|
private String realtimeRate ;
|
||||||
|
/**桩点水平偏差距离(m)*/
|
||||||
|
@ApiModelProperty(value="桩点水平偏差距离(m)")
|
||||||
|
private java.math.BigDecimal pointHorizontalDeviationDistance ;
|
||||||
|
/**
|
||||||
|
*1水泥搅拌桩2旋挖
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
|
private Integer devType;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,172 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.entity.dto;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "任务和点位数据")
|
||||||
|
public class UploadTaskAndPointDto {
|
||||||
|
/**
|
||||||
|
* 项目sn
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "项目sn")
|
||||||
|
private String projectSn;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务列表
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("任务列表")
|
||||||
|
private List<Task> taskList;
|
||||||
|
/**
|
||||||
|
* 点位列表
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("点位列表")
|
||||||
|
private List<Point> pointList;
|
||||||
|
/**
|
||||||
|
* 任务和点位绑定关系
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("任务和点位绑定关系")
|
||||||
|
private List<Bind> bindList;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Bind {
|
||||||
|
/**
|
||||||
|
* 任务自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务自定义唯一id")
|
||||||
|
private String taskUid;
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
|
/**
|
||||||
|
* 1绑定2解绑
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "1绑定2解绑")
|
||||||
|
private Integer bindType;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Task {
|
||||||
|
/**
|
||||||
|
* 设备编号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设备编号")
|
||||||
|
private String devSn;
|
||||||
|
/**
|
||||||
|
* 任务自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务自定义唯一id")
|
||||||
|
private String taskUid;
|
||||||
|
/**
|
||||||
|
* 任务名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务名称")
|
||||||
|
private String taskName;
|
||||||
|
/**
|
||||||
|
* 任务进度
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务进度")
|
||||||
|
private String taskProgress;
|
||||||
|
/**
|
||||||
|
* 任务状态0:未施工 1:已完成 2:进行中
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务状态0:未施工 1:已完成 2:进行中")
|
||||||
|
private Integer taskStatus;
|
||||||
|
/**
|
||||||
|
* 点位半径
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位半径")
|
||||||
|
private String pointRadius;
|
||||||
|
/**
|
||||||
|
* 纵向桩距
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "纵向桩距")
|
||||||
|
private String longitudinalStakeSpace;
|
||||||
|
/**
|
||||||
|
* 横向桩距
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "横向桩距")
|
||||||
|
private String lateralStakeSpace;
|
||||||
|
/**
|
||||||
|
* 1水泥搅拌桩2旋挖
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
|
private Integer devType;
|
||||||
|
/**
|
||||||
|
* 操作:1保存2删除
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "操作:1保存2删除")
|
||||||
|
private Integer optType;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class Point {
|
||||||
|
/**
|
||||||
|
* 点位自定义唯一id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位自定义唯一id")
|
||||||
|
private String pointUid;
|
||||||
|
/**
|
||||||
|
* 任务名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "任务名称")
|
||||||
|
private String taskName;
|
||||||
|
/**
|
||||||
|
* 桩点名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "桩点名称")
|
||||||
|
private String pilePointName;
|
||||||
|
/**
|
||||||
|
* X坐标
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "X坐标")
|
||||||
|
private java.math.BigDecimal coordinateX;
|
||||||
|
/**
|
||||||
|
* Y坐标
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "Y坐标")
|
||||||
|
private java.math.BigDecimal coordinateY;
|
||||||
|
/**
|
||||||
|
* 高程
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "高程")
|
||||||
|
private String elevation;
|
||||||
|
/**
|
||||||
|
* 设计桩深(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设计桩深(m)")
|
||||||
|
private java.math.BigDecimal designPileDepth;
|
||||||
|
/**
|
||||||
|
* 设计灌入量(m)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "设计灌入量(m)")
|
||||||
|
private java.math.BigDecimal designGroutingVolume;
|
||||||
|
/**
|
||||||
|
* 点位状态0:未施工 1:已完成 2:进行中
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "点位状态0:未施工 1:已完成 2:进行中")
|
||||||
|
private Integer pointStatus;
|
||||||
|
/**
|
||||||
|
* 状态汉字注释
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "状态汉字注释")
|
||||||
|
private String statusChineseCharacterAnnotation;
|
||||||
|
/**
|
||||||
|
* 1水泥搅拌桩2旋挖
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("1水泥搅拌桩2旋挖")
|
||||||
|
private Integer devType;
|
||||||
|
/**
|
||||||
|
* 操作:1保存2删除
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "操作:1保存2删除")
|
||||||
|
private Integer optType;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -59,4 +59,6 @@ public interface ICementMixPileTaskService extends IService<CementMixPileTask> {
|
|||||||
void delPointsByTaskId(CementMixPileTaskSavePoint point);
|
void delPointsByTaskId(CementMixPileTaskSavePoint point);
|
||||||
|
|
||||||
void saveHbyjTaskAndPoint(String projectSn, List<CementMixPileTask> tasks, List<CementMixPilePoint> points);
|
void saveHbyjTaskAndPoint(String projectSn, List<CementMixPileTask> tasks, List<CementMixPilePoint> points);
|
||||||
|
|
||||||
|
void insertIgnoreBatch(List<CementMixPileTask> adds);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,197 @@
|
|||||||
|
package com.zhgd.xmgl.modules.bigdevice.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.CementMixPileDev;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.CementMixPilePoint;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.CementMixPileTask;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.CementMixPileTaskPoint;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.entity.dto.*;
|
||||||
|
import com.zhgd.xmgl.modules.bigdevice.service.*;
|
||||||
|
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||||
|
import com.zhgd.xmgl.modules.project.service.IProjectService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.context.annotation.Lazy;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
@Slf4j
|
||||||
|
public class CementMixPileExtApiService {
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPileDevService cementMixPileDevService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPilePointService cementMixPilePointService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPileTaskService cementMixPileTaskService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPileTaskPointService cementMixPileTaskPointService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPilePilService cementMixPilePilService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPileRealtimeService cementMixPileRealtimeService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
private ICementMixPileAlarmService cementMixPileAlarmService;
|
||||||
|
@Lazy
|
||||||
|
@Autowired
|
||||||
|
IProjectService projectService;
|
||||||
|
|
||||||
|
public void uploadTaskAndPoint(UploadTaskAndPointDto dto) {
|
||||||
|
checkExist(dto.getProjectSn());
|
||||||
|
saveTasks(dto);
|
||||||
|
savePoints(dto);
|
||||||
|
saveTaskPoints(dto);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void saveTaskPoints(UploadTaskAndPointDto dto) {
|
||||||
|
Map<String, Long> puid2IdMap = cementMixPilePointService.list(new LambdaQueryWrapper<CementMixPilePoint>()
|
||||||
|
.eq(CementMixPilePoint::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPilePoint::getPointUid, CementMixPilePoint::getId, (o1, o2) -> o1));
|
||||||
|
Map<String, Long> tuid2IdMap = cementMixPileTaskService.list(new LambdaQueryWrapper<CementMixPileTask>()
|
||||||
|
.eq(CementMixPileTask::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPileTask::getTaskUid, CementMixPileTask::getId, (o1, o2) -> o1));
|
||||||
|
if (CollUtil.isNotEmpty(dto.getBindList())) {
|
||||||
|
List<CementMixPileTaskPoint> taskPoints = dto.getBindList().stream()
|
||||||
|
.filter(bind -> Objects.equals(bind.getBindType(), 1) && puid2IdMap.containsKey(bind.getPointUid()) && tuid2IdMap.containsKey(bind.getTaskUid()))
|
||||||
|
.map(bind -> {
|
||||||
|
CementMixPileTaskPoint taskPoint = new CementMixPileTaskPoint();
|
||||||
|
taskPoint.setTaskId(tuid2IdMap.get(bind.getTaskUid()));
|
||||||
|
taskPoint.setPointId(puid2IdMap.get(bind.getPointUid()));
|
||||||
|
return taskPoint;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
cementMixPileTaskPointService.insertIgnoreBatch(taskPoints);
|
||||||
|
List<UploadTaskAndPointDto.Bind> dels = dto.getBindList().stream()
|
||||||
|
.filter(bind -> Objects.equals(bind.getBindType(), 2) && puid2IdMap.containsKey(bind.getPointUid()) && tuid2IdMap.containsKey(bind.getTaskUid())).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(dels)) {
|
||||||
|
LambdaQueryWrapper<CementMixPileTaskPoint> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
for (UploadTaskAndPointDto.Bind del : dels) {
|
||||||
|
wrapper.or(w -> w.eq(CementMixPileTaskPoint::getTaskId, tuid2IdMap.get(del.getTaskUid()))
|
||||||
|
.eq(CementMixPileTaskPoint::getPointId, puid2IdMap.get(del.getPointUid())));
|
||||||
|
}
|
||||||
|
cementMixPileTaskPointService.remove(wrapper);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void saveTasks(UploadTaskAndPointDto dto) {
|
||||||
|
if (CollUtil.isNotEmpty(dto.getTaskList())) {
|
||||||
|
List<CementMixPileTask> adds = dto.getTaskList().stream().filter(t -> Objects.equals(t.getOptType(), 1)).map(t -> {
|
||||||
|
CementMixPileTask task = BeanUtil.toBean(t, CementMixPileTask.class);
|
||||||
|
task.setProjectSn(dto.getProjectSn());
|
||||||
|
return task;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(adds)) {
|
||||||
|
cementMixPileTaskService.insertIgnoreBatch(adds);
|
||||||
|
}
|
||||||
|
List<String> dels = dto.getTaskList().stream().filter(t -> Objects.equals(t.getOptType(), 2))
|
||||||
|
.map(UploadTaskAndPointDto.Task::getTaskUid).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(dels)) {
|
||||||
|
List<Long> tids = cementMixPileTaskService.list(new LambdaQueryWrapper<CementMixPileTask>()
|
||||||
|
.in(CementMixPileTask::getTaskUid, dels)).stream().map(CementMixPileTask::getId).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(tids)) {
|
||||||
|
cementMixPileTaskPointService.remove(new LambdaQueryWrapper<CementMixPileTaskPoint>()
|
||||||
|
.in(CementMixPileTaskPoint::getTaskId, tids));
|
||||||
|
cementMixPileTaskService.remove(new LambdaQueryWrapper<CementMixPileTask>()
|
||||||
|
.in(CementMixPileTask::getId, tids));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void savePoints(UploadTaskAndPointDto dto) {
|
||||||
|
String projectSn = dto.getProjectSn();
|
||||||
|
if (CollUtil.isNotEmpty(dto.getPointList())) {
|
||||||
|
List<CementMixPilePoint> addPoints = dto.getPointList().stream().filter(point -> Objects.equals(point.getOptType(), 1)).map(point -> {
|
||||||
|
CementMixPilePoint point1 = BeanUtil.toBean(point, CementMixPilePoint.class);
|
||||||
|
point1.setProjectSn(projectSn);
|
||||||
|
return point1;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(addPoints)) {
|
||||||
|
cementMixPilePointService.insertIgnoreBatch(projectSn, addPoints);
|
||||||
|
}
|
||||||
|
List<String> dels = dto.getPointList().stream().filter(point -> Objects.equals(point.getOptType(), 2))
|
||||||
|
.map(UploadTaskAndPointDto.Point::getPointUid).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(dels)) {
|
||||||
|
List<Long> pids = cementMixPilePointService.list(new LambdaQueryWrapper<CementMixPilePoint>()
|
||||||
|
.in(CementMixPilePoint::getPointUid, dels)).stream().map(CementMixPilePoint::getId).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(pids)) {
|
||||||
|
cementMixPileTaskPointService.remove(new LambdaQueryWrapper<CementMixPileTaskPoint>()
|
||||||
|
.in(CementMixPileTaskPoint::getPointId, pids));
|
||||||
|
cementMixPilePointService.remove(new LambdaQueryWrapper<CementMixPilePoint>()
|
||||||
|
.in(CementMixPilePoint::getId, pids));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void uploadPil(UploadPilDto dto) {
|
||||||
|
checkExist(dto.getProjectSn());
|
||||||
|
Map<String, String> devSn2NameMap = cementMixPileDevService.list(new LambdaQueryWrapper<CementMixPileDev>()
|
||||||
|
.eq(CementMixPileDev::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPileDev::getDevSn, CementMixPileDev::getDevName, (o1, o2) -> o1));
|
||||||
|
Map<String, String> taskUid2NameMap = cementMixPileTaskService.list(new LambdaQueryWrapper<CementMixPileTask>()
|
||||||
|
.eq(CementMixPileTask::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPileTask::getTaskUid, CementMixPileTask::getTaskName, (o1, o2) -> o1));
|
||||||
|
Map<String, String> pointUid2NameMap = cementMixPilePointService.list(new LambdaQueryWrapper<CementMixPilePoint>()
|
||||||
|
.eq(CementMixPilePoint::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPilePoint::getPointUid, CementMixPilePoint::getPilePointName, (o1, o2) -> o1));
|
||||||
|
if (CollUtil.isNotEmpty(dto.getPilList())) {
|
||||||
|
for (UploadPilDto.Pil pil : dto.getPilList()) {
|
||||||
|
String devName = devSn2NameMap.get(pil.getDevSn());
|
||||||
|
if (devName == null) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
CementMixPilePilDto pilePil = BeanUtil.toBean(pil, CementMixPilePilDto.class);
|
||||||
|
pilePil.setProjectSn(dto.getProjectSn());
|
||||||
|
pilePil.setDevName(devName);
|
||||||
|
pilePil.setTaskName(taskUid2NameMap.get(pil.getTaskUid()));
|
||||||
|
pilePil.setPilePointName(pointUid2NameMap.get(pil.getPointUid()));
|
||||||
|
cementMixPilePilService.add(pilePil);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void uploadRealtime(UploadRealtimeDto dto) {
|
||||||
|
checkExist(dto.getProjectSn());
|
||||||
|
if (CollUtil.isNotEmpty(dto.getRealtimeList())) {
|
||||||
|
for (UploadRealtimeDto.Realtime realtime : dto.getRealtimeList()) {
|
||||||
|
CementMixPileRealtimeDto realtimeDto = BeanUtil.toBean(realtime, CementMixPileRealtimeDto.class);
|
||||||
|
realtimeDto.setProjectSn(dto.getProjectSn());
|
||||||
|
cementMixPileRealtimeService.add(realtimeDto);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void uploadAlarm(UploadAlarmDto dto) {
|
||||||
|
checkExist(dto.getProjectSn());
|
||||||
|
Map<String, String> pointUid2NameMap = cementMixPilePointService.list(new LambdaQueryWrapper<CementMixPilePoint>()
|
||||||
|
.eq(CementMixPilePoint::getProjectSn, dto.getProjectSn())).stream().collect(Collectors.toMap(CementMixPilePoint::getPointUid, CementMixPilePoint::getPilePointName, (o1, o2) -> o1));
|
||||||
|
if (CollUtil.isNotEmpty(dto.getAlarmList())) {
|
||||||
|
for (UploadAlarmDto.Alarm alarm : dto.getAlarmList()) {
|
||||||
|
CementMixPileAlarmDto alarmDto = BeanUtil.toBean(alarm, CementMixPileAlarmDto.class);
|
||||||
|
alarmDto.setProjectSn(dto.getProjectSn());
|
||||||
|
alarmDto.setPilePointName(pointUid2NameMap.get(alarm.getPointUid()));
|
||||||
|
cementMixPileAlarmService.add(alarmDto);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void checkExist(String projectSn) {
|
||||||
|
Project project = projectService.getOne(new LambdaQueryWrapper<Project>()
|
||||||
|
.eq(Project::getProjectSn, projectSn));
|
||||||
|
if (project == null) {
|
||||||
|
throw new OpenAlertException("项目sn不存在");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -174,6 +174,11 @@ public class CementMixPileTaskServiceImpl extends ServiceImpl<CementMixPileTaskM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void insertIgnoreBatch(List<CementMixPileTask> adds) {
|
||||||
|
baseMapper.insertIgnoreBatch(adds);
|
||||||
|
}
|
||||||
|
|
||||||
private void setTaskId(List<CementMixPileTask> tasks) {
|
private void setTaskId(List<CementMixPileTask> tasks) {
|
||||||
List<CementMixPileTask> taskList = this.list(new LambdaQueryWrapper<CementMixPileTask>()
|
List<CementMixPileTask> taskList = this.list(new LambdaQueryWrapper<CementMixPileTask>()
|
||||||
.in(CementMixPileTask::getHbyjTaskId, tasks.stream().map(CementMixPileTask::getHbyjTaskId).collect(Collectors.toList())));
|
.in(CementMixPileTask::getHbyjTaskId, tasks.stream().map(CementMixPileTask::getHbyjTaskId).collect(Collectors.toList())));
|
||||||
|
|||||||
@ -78,6 +78,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
|||||||
|
|
||||||
http.authorizeRequests()
|
http.authorizeRequests()
|
||||||
//请求路径允许访问
|
//请求路径允许访问
|
||||||
|
.antMatchers("/xmgl/cementMixPileExtApi/**").permitAll()
|
||||||
.antMatchers("/notice/push").permitAll()
|
.antMatchers("/notice/push").permitAll()
|
||||||
.antMatchers("/xmgl/electricalData/addByJj").permitAll()
|
.antMatchers("/xmgl/electricalData/addByJj").permitAll()
|
||||||
.antMatchers("/xmgl/cache/clearAll").permitAll()
|
.antMatchers("/xmgl/cache/clearAll").permitAll()
|
||||||
|
|||||||
@ -7581,6 +7581,378 @@ https://www.yuque.com/u27244850/zuklv1/qil21b?#M2jFz
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### 水泥搅拌桩/旋挖钻桩对接
|
||||||
|
|
||||||
|
#### 1、上传水泥搅拌桩/旋挖沉桩任务和点位数据
|
||||||
|
|
||||||
|
| 接口描述: | 上传水泥搅拌桩/旋挖沉桩任务和点位数据 |
|
||||||
|
| ------------------ | -------------------------------------------- |
|
||||||
|
| **请求URL:** | /xmgl/cementMixPileExtApi/uploadTaskAndPoint |
|
||||||
|
| **请求方式:** | POST |
|
||||||
|
| **Content-Type:** | application/json |
|
||||||
|
|
||||||
|
**请求参数:**
|
||||||
|
|
||||||
|
**任务和点位数据**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| --------- | ------------------ | -------- | -------- | -------- | ------ |
|
||||||
|
| projectSn | 项目sn | body | true | string | |
|
||||||
|
| taskList | 任务列表 | body | false | array | Task |
|
||||||
|
| pointList | 点位列表 | body | false | array | Point |
|
||||||
|
| bindList | 任务和点位绑定关系 | body | false | array | Bind |
|
||||||
|
|
||||||
|
**Task**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| ---------------------- | -------------------------------------- | -------- | -------- | -------------- | ------ |
|
||||||
|
| devSn | 设备编号 | body | true | string | |
|
||||||
|
| devType | 1水泥搅拌桩2旋挖 | body | true | integer(int32) | |
|
||||||
|
| optType | 操作:1保存2删除 | body | true | integer(int32) | |
|
||||||
|
| taskUid | 任务自定义唯一id | body | true | string | |
|
||||||
|
| taskName | 任务名称 | body | true | string | |
|
||||||
|
| lateralStakeSpace | 横向桩距 | body | false | string | |
|
||||||
|
| longitudinalStakeSpace | 纵向桩距 | body | false | string | |
|
||||||
|
| pointRadius | 点位半径 | body | false | string | |
|
||||||
|
| taskProgress | 任务进度 | body | false | string | |
|
||||||
|
| taskStatus | 任务状态0:未施工 1:已完成 2:进行中 | body | false | integer(int32) | |
|
||||||
|
|
||||||
|
**Point**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| -------------------------------- | -------------------------------------- | -------- | -------- | -------------- | ------ |
|
||||||
|
| pointUid | 点位自定义唯一id | body | true | string | |
|
||||||
|
| pilePointName | 桩点名称 | body | true | string | |
|
||||||
|
| devType | 1水泥搅拌桩2旋挖 | body | true | integer(int32) | |
|
||||||
|
| optType | 操作:1保存2删除 | body | true | integer(int32) | |
|
||||||
|
| coordinateX | X坐标 | body | false | number | |
|
||||||
|
| coordinateY | Y坐标 | body | false | number | |
|
||||||
|
| designGroutingVolume | 设计灌入量(m) | body | false | number | |
|
||||||
|
| designPileDepth | 设计桩深(m) | body | false | number | |
|
||||||
|
| elevation | 高程 | body | false | string | |
|
||||||
|
| pointStatus | 点位状态0:未施工 1:已完成 2:进行中 | body | false | integer(int32) | |
|
||||||
|
| statusChineseCharacterAnnotation | 状态汉字注释 | body | false | string | |
|
||||||
|
| taskName | 任务名称 | body | false | string | |
|
||||||
|
|
||||||
|
**Bind**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| -------- | ---------------- | -------- | -------- | -------------- | ------ |
|
||||||
|
| bindType | 1绑定2解绑 | body | true | integer(int32) | |
|
||||||
|
| pointUid | 点位自定义唯一id | body | true | string | |
|
||||||
|
| taskUid | 任务自定义唯一id | body | true | string | |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"bindList": [
|
||||||
|
{
|
||||||
|
"bindType": 1,
|
||||||
|
"pointUid": "100",
|
||||||
|
"taskUid": "200"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"devSn": "123456",
|
||||||
|
"pointList": [
|
||||||
|
{
|
||||||
|
"coordinateX": 0,
|
||||||
|
"coordinateY": 0,
|
||||||
|
"designGroutingVolume": 0,
|
||||||
|
"designPileDepth": 0,
|
||||||
|
"devType": 1,
|
||||||
|
"elevation": "1",
|
||||||
|
"optType": 1,
|
||||||
|
"pilePointName": "点位1",
|
||||||
|
"pointStatus": 0,
|
||||||
|
"pointUid": "100",
|
||||||
|
"statusChineseCharacterAnnotation": "未施工",
|
||||||
|
"taskName": "任务1"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"projectSn": "BD3137498CB84BF0969979E0342CDBCA",
|
||||||
|
"taskList": [
|
||||||
|
{
|
||||||
|
"devType": 1,
|
||||||
|
"lateralStakeSpace": "",
|
||||||
|
"longitudinalStakeSpace": "",
|
||||||
|
"optType": 1,
|
||||||
|
"pointRadius": "",
|
||||||
|
"taskName": "任务1",
|
||||||
|
"taskProgress": "",
|
||||||
|
"taskStatus": 0,
|
||||||
|
"taskUid": "200"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例:**
|
||||||
|
|
||||||
|
失败:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"success": false,
|
||||||
|
"message": "项目sn不存在",
|
||||||
|
"code": 5000,
|
||||||
|
"result": null,
|
||||||
|
"timestamp": "1677809107994"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
成功:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"success": true,
|
||||||
|
"message": "操作成功!",
|
||||||
|
"code": 200,
|
||||||
|
"result": null,
|
||||||
|
"timestamp": "1677809789150"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 2、上传水泥搅拌桩/旋挖沉桩数据
|
||||||
|
|
||||||
|
| 接口描述: | 上传水泥搅拌桩/旋挖沉桩数据 |
|
||||||
|
| ------------------ | ----------------------------------- |
|
||||||
|
| **请求URL:** | /xmgl/cementMixPileExtApi/uploadPil |
|
||||||
|
| **请求方式:** | POST |
|
||||||
|
| **Content-Type:** | application/json |
|
||||||
|
|
||||||
|
**请求参数:**
|
||||||
|
|
||||||
|
**成桩数据**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| --------- | ------------ | -------- | -------- | -------- | ------ |
|
||||||
|
| projectSn | 项目sn | body | true | string | |
|
||||||
|
| pilList | 沉桩数据列表 | body | true | array | Pil |
|
||||||
|
|
||||||
|
**Pil**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| -------------------------------------- | --------------------------------------- | -------- | -------- | ----------------- | ------ |
|
||||||
|
| devSn | 设备编号 | body | true | string | |
|
||||||
|
| pointUid | 点位自定义唯一id | body | true | string | |
|
||||||
|
| taskUid | 任务自定义唯一id | body | true | string | |
|
||||||
|
| devType | 1水泥搅拌桩2旋挖 | body | true | integer(int32) | |
|
||||||
|
| uploadTime | 上传时间(格式:2025-12-25 14:08:27) | body | true | string(date-time) | |
|
||||||
|
| actualGroutingVolume | 实际灌入量(m) | body | false | number | |
|
||||||
|
| averagePileDrivingCurrent | 沉桩平均电流(A) | body | false | number | |
|
||||||
|
| averagePileDrivingRate | 沉桩平均速率(m/min) | body | false | string | |
|
||||||
|
| averagePileExtractionCurrent | 拔桩平均电流(A) | body | false | number | |
|
||||||
|
| averagePileExtractionRate | 拔桩平均速率(m/min) | body | false | string | |
|
||||||
|
| bearingLayer | 持力层(比值) | body | false | string | |
|
||||||
|
| bearingLayerCurrent | 持力层电流(A) | body | false | number | |
|
||||||
|
| constructionElevation | 施工高程 | body | false | string | |
|
||||||
|
| constructionLatitude | 施工纬度 | body | false | number | |
|
||||||
|
| constructionLongitude | 施工经度 | body | false | number | |
|
||||||
|
| constructionXCoordinate | 施工X坐标 | body | false | number | |
|
||||||
|
| constructionYCoordinate | 施工Y坐标 | body | false | number | |
|
||||||
|
| horizontalDeviationDistanceOfPilePoint | 桩点水平偏差距离(m) | body | false | number | |
|
||||||
|
| pileDrivingDepth | 沉桩深度(m) | body | false | number | |
|
||||||
|
| pileDrivingEndTime | 沉桩结束时间(格式:2025-12-25 14:08:27) | body | false | string(date-time) | |
|
||||||
|
| pileDrivingStartTime | 沉桩开始时间(格式:2025-12-25 14:08:27) | body | false | string(date-time) | |
|
||||||
|
| pileExtractionCurrent | 拔桩电流(A) | body | false | number | |
|
||||||
|
| pileExtractionEndTime | 拔桩结束时间(格式:2025-12-25 14:08:27) | body | false | string(date-time) | |
|
||||||
|
| pileExtractionStartTime | 拔桩开始时间(格式:2025-12-25 14:08:27) | body | false | string(date-time) | |
|
||||||
|
| status | 状态0:未施工 1:已完成 2:进行中 | body | false | integer(int32) | |
|
||||||
|
| verticality | 垂直度(%) | body | false | number | |
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"pilList": [
|
||||||
|
{
|
||||||
|
"actualGroutingVolume": 0,
|
||||||
|
"averagePileDrivingCurrent": 0,
|
||||||
|
"averagePileDrivingRate": "",
|
||||||
|
"averagePileExtractionCurrent": 0,
|
||||||
|
"averagePileExtractionRate": "",
|
||||||
|
"bearingLayer": "",
|
||||||
|
"bearingLayerCurrent": 0,
|
||||||
|
"constructionElevation": "",
|
||||||
|
"constructionLatitude": 0,
|
||||||
|
"constructionLongitude": 0,
|
||||||
|
"constructionXCoordinate": 0,
|
||||||
|
"constructionYCoordinate": 0,
|
||||||
|
"devSn": "123456",
|
||||||
|
"devType": 1,
|
||||||
|
"horizontalDeviationDistanceOfPilePoint": 0,
|
||||||
|
"pileDrivingDepth": 0,
|
||||||
|
"pileDrivingEndTime": "",
|
||||||
|
"pileDrivingStartTime": "",
|
||||||
|
"pileExtractionCurrent": 0,
|
||||||
|
"pileExtractionEndTime": "",
|
||||||
|
"pileExtractionStartTime": "",
|
||||||
|
"pointUid": "100",
|
||||||
|
"status": 0,
|
||||||
|
"taskUid": "200",
|
||||||
|
"uploadTime": "2025-12-25 14:08:27",
|
||||||
|
"verticality": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"projectSn": "BD3137498CB84BF0969979E0342CDBCA"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例:**
|
||||||
|
|
||||||
|
成功:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"success": true,
|
||||||
|
"message": "操作成功!",
|
||||||
|
"code": 200,
|
||||||
|
"result": null,
|
||||||
|
"timestamp": "1677809789150"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 3、上传水泥搅拌桩/旋挖实时数据
|
||||||
|
|
||||||
|
| 接口描述: | 上传水泥搅拌桩/旋挖实时数据 |
|
||||||
|
| ------------------ | ---------------------------------------- |
|
||||||
|
| **请求URL:** | /xmgl/cementMixPileExtApi/uploadRealtime |
|
||||||
|
| **请求方式:** | POST |
|
||||||
|
| **Content-Type:** | application/json |
|
||||||
|
|
||||||
|
**请求参数:**
|
||||||
|
|
||||||
|
**实时数据**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| ------------ | ------------ | -------- | -------- | -------- | -------- |
|
||||||
|
| projectSn | 项目sn | body | true | string | |
|
||||||
|
| realtimeList | 实时数据列表 | body | true | array | Realtime |
|
||||||
|
|
||||||
|
**Realtime**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| -------------------------------- | ----------------------------------- | -------- | -------- | ----------------- | ------ |
|
||||||
|
| devSn | 设备编号 | body | true | string | |
|
||||||
|
| devType | 1水泥搅拌桩2旋挖 | body | true | integer(int32) | |
|
||||||
|
| pointUid | 点位自定义唯一id | body | true | string | |
|
||||||
|
| positioningTime | 定位时间(格式:2025-12-25 14:08:27) | body | true | string(date-time) | |
|
||||||
|
| heading | 航向 | body | false | string | |
|
||||||
|
| latitude | 纬度 | body | false | number | |
|
||||||
|
| longitude | 经度 | body | false | number | |
|
||||||
|
| pilePointName | 桩点名称 | body | false | string | |
|
||||||
|
| pointHorizontalDeviationDistance | 桩点水平偏差距离(m) | body | false | number | |
|
||||||
|
| realtimeCurrent | 实时电流 | body | false | string | |
|
||||||
|
| realtimeDepth | 实时深度(m) | body | false | number | |
|
||||||
|
| realtimeInjectionVolume | 实时灌入量(m°) | body | false | number | |
|
||||||
|
| realtimeRate | 实时速率 | body | false | string | |
|
||||||
|
| realtimeVerticality | 实时垂直度 | body | false | string | |
|
||||||
|
| speed | 速度 | body | false | string | |
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"projectSn": "BD3137498CB84BF0969979E0342CDBCA",
|
||||||
|
"realtimeList": [
|
||||||
|
{
|
||||||
|
"devSn": "123456",
|
||||||
|
"devType": 1,
|
||||||
|
"heading": "",
|
||||||
|
"latitude": 0,
|
||||||
|
"longitude": 0,
|
||||||
|
"pilePointName": "",
|
||||||
|
"pointHorizontalDeviationDistance": 0,
|
||||||
|
"pointUid": "100",
|
||||||
|
"positioningTime": "2025-12-25 14:08:27",
|
||||||
|
"realtimeCurrent": "",
|
||||||
|
"realtimeDepth": 0,
|
||||||
|
"realtimeInjectionVolume": 0,
|
||||||
|
"realtimeRate": "",
|
||||||
|
"realtimeVerticality": "",
|
||||||
|
"speed": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例:**
|
||||||
|
|
||||||
|
成功:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"success": true,
|
||||||
|
"message": "操作成功!",
|
||||||
|
"code": 200,
|
||||||
|
"result": null,
|
||||||
|
"timestamp": "1677809789150"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 4、上传水泥搅拌桩/旋挖报警数据
|
||||||
|
|
||||||
|
| 接口描述: | 上传水泥搅拌桩/旋挖报警数据 |
|
||||||
|
| ------------------ | ------------------------------------- |
|
||||||
|
| **请求URL:** | /xmgl/cementMixPileExtApi/uploadAlarm |
|
||||||
|
| **请求方式:** | POST |
|
||||||
|
| **Content-Type:** | application/json |
|
||||||
|
|
||||||
|
**请求参数:**
|
||||||
|
|
||||||
|
**报警数据**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| --------- | ------------ | -------- | -------- | -------- | ------ |
|
||||||
|
| projectSn | 项目sn | body | true | string | |
|
||||||
|
| alarmList | 报警数据列表 | body | true | array | Alarm |
|
||||||
|
|
||||||
|
**Alarm**
|
||||||
|
|
||||||
|
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|
||||||
|
| --------------- | ----------------------------------- | -------- | -------- | ----------------- | ------ |
|
||||||
|
| pointUid | 点位自定义唯一id | body | true | integer(int64) | |
|
||||||
|
| alarmTime | 报警时间(格式:2025-12-25 14:08:27) | body | true | string(date-time) | |
|
||||||
|
| designPileDepth | 设计桩深(m) | body | true | number | |
|
||||||
|
| devSn | 设备编号 | body | true | string | |
|
||||||
|
| devType | 1水泥搅拌桩2旋挖 | body | true | integer(int32) | |
|
||||||
|
| realPileDepth | 实时桩深 | body | true | number | |
|
||||||
|
|
||||||
|
**请求示例:**
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"projectSn": "BD3137498CB84BF0969979E0342CDBCA",
|
||||||
|
"realtimeList": [
|
||||||
|
{
|
||||||
|
"pointUid": "100",
|
||||||
|
"devSn": "123456",
|
||||||
|
"alarmTime": "2025-12-25 14:08:27",
|
||||||
|
"designPileDepth": 10,
|
||||||
|
"realPileDepth": 11,
|
||||||
|
"devType": 1
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**响应示例:**
|
||||||
|
|
||||||
|
成功:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"success": true,
|
||||||
|
"message": "操作成功!",
|
||||||
|
"code": 200,
|
||||||
|
"result": null,
|
||||||
|
"timestamp": "1677809789150"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
## 平台--->第三方系统接口
|
## 平台--->第三方系统接口
|
||||||
|
|
||||||
### 塔吊(HTTP主动推送)
|
### 塔吊(HTTP主动推送)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user