Browse Source

上传的时候从取leftPoints与rightPoints改为取alignPoints

master
白凤吉 4 months ago
parent
commit
71c21a3a1e
  1. 7
      app/src/main/java/com/iflytop/profilometer/api/ble/BleApi.java
  2. 18
      app/src/main/java/com/iflytop/profilometer/core/sync/UploadManager.java
  3. 6
      app/src/main/java/com/iflytop/profilometer/service/RailProfileDrawerService.java

7
app/src/main/java/com/iflytop/profilometer/api/ble/BleApi.java

@ -6,8 +6,10 @@ import android.util.Log;
import com.iflytop.profilometer.api.ws.BleWebsocketManager;
import com.iflytop.profilometer.common.result.Result;
import com.iflytop.profilometer.core.bluetooth.BleDeviceDriver;
import com.iflytop.profilometer.core.bluetooth.BleManager;
import com.iflytop.profilometer.core.bluetooth.BlePingManager;
import com.iflytop.profilometer.core.system.SystemService;
/**
* 蓝牙接口
@ -61,6 +63,8 @@ public class BleApi {
boolean connect = BleManager.getInstance().connectToDeviceSync(mac);
// BlePingManager.getInstance().startPing();
if (connect) {
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver();
bleDeviceDriver.stopSampling();
return Result.success();
} else {
throw new RuntimeException();
@ -79,6 +83,9 @@ public class BleApi {
*/
public String disconnect() {
try {
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver();
bleDeviceDriver.stopSampling();
BleManager.getInstance().disconnect();
// BlePingManager.getInstance().stopPing();
BleManager.getInstance().startScan();//断开连接后开始扫描

18
app/src/main/java/com/iflytop/profilometer/core/sync/UploadManager.java

@ -129,14 +129,16 @@ public class UploadManager {
SyncTaskDao syncTaskDao = new SyncTaskDao(ProfilometerApplication.getContext());
SyncTask syncTask = syncTaskDao.getSyncTaskById(uploadId);
ProfileRecordPointSet profileRecordPointSet = profileRecordPointSetDao.getProfileRecordPointSetByUuid(profileRecordDescription.getUuid());
String leftPointJsonStr = profileRecordPointSet.getLeftPoints();
String rightPointJsonStr = profileRecordPointSet.getLeftPoints();
List<XYPoint> leftPointList = JSONUtil.toList(leftPointJsonStr, XYPoint.class);
List<XYPoint> rightPointList = JSONUtil.toList(rightPointJsonStr, XYPoint.class);
String alignPointJsonStr = profileRecordPointSet.getAlignPoints();
List<XYPoint> alignPointList = JSONUtil.toList(alignPointJsonStr, XYPoint.class);
// String leftPointJsonStr = profileRecordPointSet.getLeftPoints();
// String rightPointJsonStr = profileRecordPointSet.getLeftPoints();
// List<XYPoint> leftPointList = JSONUtil.toList(leftPointJsonStr, XYPoint.class);
// List<XYPoint> rightPointList = JSONUtil.toList(rightPointJsonStr, XYPoint.class);
// 合并左右点列表
List<XYPoint> mergedPoints = new ArrayList<>();
mergedPoints.addAll(leftPointList); // 添加左点
mergedPoints.addAll(rightPointList); // 添加右点
// List<XYPoint> mergedPoints = new ArrayList<>();
// mergedPoints.addAll(leftPointList); // 添加左点
// mergedPoints.addAll(rightPointList); // 添加右点
String fileName = "";
String zipName = "";
if (profileRecordDescription.getDataSource().equals("XLDC")) {
@ -152,7 +154,7 @@ public class UploadManager {
"-" + profileRecordDescription.getCreateTime().format(DateTimeFormatter.ofPattern("yyyyMMdd")) + ".ban";
zipName = "道岔廓形数据" + "-" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")) + ".zip";
}
byte[] banByte = pointToBanFile(mergedPoints, fileName);
byte[] banByte = pointToBanFile(alignPointList, fileName);
BanFile banFile = new BanFile(fileName, banByte);
List<BanFile> banFileList = List.of(banFile);
byte[] zipBytes = compressionToZipBytes(banFileList);

6
app/src/main/java/com/iflytop/profilometer/service/RailProfileDrawerService.java

@ -2,6 +2,7 @@ package com.iflytop.profilometer.service;
import android.util.Log;
import com.iflytop.profilometer.core.bluetooth.BleDeviceDriver;
import com.iflytop.profilometer.core.migration.measure.drawer.RailProfileDrawer;
import com.iflytop.profilometer.core.migration.measure.drawer.type.MeasureSide;
import com.iflytop.profilometer.core.migration.measure.drawer.type.RailProfileDrawerListener;
@ -14,9 +15,7 @@ import com.iflytop.profilometer.core.system.SystemService;
import com.iflytop.profilometer.core.websocket.WebSocketManager;
import com.iflytop.profilometer.model.bo.RailProfileMeasureTaskState;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import cn.hutool.json.JSONUtil;
@ -110,6 +109,9 @@ public class RailProfileDrawerService implements RailProfileDrawerListener {
WebSocketManager.send(JSONUtil.toJsonStr(map));
if (finished) {
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver();
bleDeviceDriver.stopSampling();
taskState.setTaskStatus(RailProfileMeasureTaskStatus.FINISHED);
map.put("data", RailProfileMeasureTaskEvent.FINISH_RECORD);
WebSocketManager.send(JSONUtil.toJsonStr(map));

Loading…
Cancel
Save