Browse Source

/*模型同步测试接口*/

master
htjcAdmin 2 months ago
parent
commit
cb7519426a
2 changed files with 87 additions and 5 deletions
  1. +31
    -0
      inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/controller/RabbitmqUnitTestController.java
  2. +56
    -5
      inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/service/impl/BasedataMontPatrolPointConsumerHandle.java

+ 31
- 0
inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/controller/RabbitmqUnitTestController.java View File

@ -0,0 +1,31 @@
package com.inspect.metadata.montdatamqhandle.controller;
import com.alibaba.fastjson.JSONObject;
import com.inspect.base.core.web.controller.BaseController;
import com.inspect.metadata.montdatamqhandle.service.impl.BasedataMontPatrolPointConsumerHandle;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@Slf4j
@RestController
@RequestMapping({"/rabbitmq"})
public class RabbitmqUnitTestController extends BaseController {
@Resource
private BasedataMontPatrolPointConsumerHandle basedataMontPatrolPointConsumerHandle;
@PostMapping("/sync/model")
public void syncModel(@RequestBody JSONObject jsonObject) {
log.info("syncModel jsonObject {}", jsonObject);
basedataMontPatrolPointConsumerHandle.handleMontDataEx(jsonObject);
}
@DeleteMapping("/del/model")
public void deleteModel(@RequestBody JSONObject jsonObject) {
log.info("deleteModel jsonObject {}", jsonObject);
basedataMontPatrolPointConsumerHandle.delMontData(jsonObject);
}
}

+ 56
- 5
inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/service/impl/BasedataMontPatrolPointConsumerHandle.java View File

@ -24,17 +24,22 @@ import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Slf4j
@Component("basedataMont-modelup-1024")
public class BasedataMontPatrolPointConsumerHandle implements IBasedataMontDataHandleService {
@Value("${test-mode:false}")
private boolean testMode;
@Resource
private IBasedataPatrolPointService basedataPatrolPointService;
@Resource
@ -71,9 +76,11 @@ public class BasedataMontPatrolPointConsumerHandle implements IBasedataMontDataH
String Type = jsonObject.getString("Type");
String convertFlag = "0";
String SendCode = jsonObject.getString("SendCode");
// log.info(Color.BLUE + "[METADATA] 模型同步SendCode:{},旧数据清除Start..." + Color.END, SendCode);
// this.deletePatrolPointPresetBySendCode(SendCode);
// log.info(Color.BLUE + "[METADATA] 模型同步SendCode:{},旧数据清除End..." + Color.END, SendCode);
// if(testMode) {
// log.info(Color.BLUE + "HANDLE_MONT_DATA MODEL SYNC SendCode: {}, delete old data Start" + Color.END, SendCode);
// deletePatrolPointPresetBySendCode(SendCode);
// log.info(Color.BLUE + "HANDLE_MONT_DATA MODEL SYNC SendCode: {}, delete old data End" + Color.END, SendCode);
// }
BasedataBdConfigMainSystem mainSystem = basedataBdconfigMainsystemMapper.selectBasedataBdConfigMainSystemByMainSystemCode(SendCode);
if (null != mainSystem) {
String flag = mainSystem.getConvertFlag();
@ -90,11 +97,10 @@ public class BasedataMontPatrolPointConsumerHandle implements IBasedataMontDataH
for (Iterator<ModelFileItem> iterator = list.iterator(); iterator.hasNext(); basedataMontPatrolPointHandleComponent.handPointModelData(SendCode, modelString)) {
ModelFileItem item = iterator.next();
String deviceFilePath = item.getDevice_file_path();
String source = deviceFilePath;
log.info("MODEL_SYNC filePath: {}", deviceFilePath);
ByteBuf byteBuf = Unpooled.buffer();
try {
sftpClient.downLoad(source, (inputStream) -> {
sftpClient.downLoad(deviceFilePath, (inputStream) -> {
byte[] bytes = new byte[1024];
int index;
while ((index = inputStream.read(bytes)) > -1) {
@ -120,6 +126,51 @@ public class BasedataMontPatrolPointConsumerHandle implements IBasedataMontDataH
}
}
public void handleMontDataEx(JSONObject jsonObject) {
log.info(Color.CYAN + "MODEL_SYNC_EX model_up_1024: {}" + Color.END, jsonObject.toString());
String SendCode = jsonObject.getString(("SendCode"));
JSONArray jsonObjectItems = jsonObject.getJSONArray(("Items"));
List<ModelFileItem> list = jsonObjectItems.toJavaList(ModelFileItem.class);
log.info("MODEL_SYNC_EX list: {}, jsonObject: {}", list, jsonObject);
if (list != null && !list.isEmpty()) {
String modelString;
for (Iterator<ModelFileItem> iterator = list.iterator(); iterator.hasNext(); basedataMontPatrolPointHandleComponent.handPointModelData(SendCode, modelString)) {
ModelFileItem item = iterator.next();
String deviceFilePath = item.getDevice_file_path();
log.info("MODEL_SYNC_EX filePath: {}", deviceFilePath);
ByteBuf byteBuf = Unpooled.buffer();
try {
sftpClient.downLoad(deviceFilePath, (inputStream) -> {
byte[] bytes = new byte[1024];
int index;
while ((index = inputStream.read(bytes)) > -1) {
byteBuf.writeBytes(Arrays.copyOfRange(bytes, 0, index));
}
});
} catch (Exception e) {
e.printStackTrace();
}
byte[] bytes = new byte[byteBuf.readableBytes()];
byteBuf.readBytes(bytes);
modelString = new String(bytes, StandardCharsets.UTF_8);
}
log.info("MODEL_SYNC_EX modelFile: {}, jsonObject: {}", list, jsonObject);
}
}
public void delMontData(JSONObject jsonObject) {
log.info(Color.CYAN + "delMontData-modelup-1024: {}" + Color.END, jsonObject.toString());
String SendCode = jsonObject.getString("SendCode");
if (testMode) {
log.info(Color.BLUE + "DEL_MONT_DATA MODEL SYNC SendCode: {}, delete old data Start" + Color.END, SendCode);
deletePatrolPointPresetBySendCode(SendCode);
log.info(Color.BLUE + "DEL_MONT_DATA MODEL SYNC SendCode: {}, delete old data End" + Color.END, SendCode);
}
}
private void deletePatrolPointPresetBySendCode(String sendCode) {
// basedata_area 区域删除
int areaNum = baseDataAreaMapper.deleteAreaBySendCode(sendCode);


Loading…
Cancel
Save