update mes模块更新设备MQTT认证信息

master
yinq 3 months ago
parent 2b6e5c7642
commit ff7bf45155

@ -16,4 +16,9 @@ public interface HwMomMesConstants {
public static final String DELETE_FLAG_YES = "1";
public static final String DELETE_FLAG_NO = "0";
/**
* rediskey
*/
public static final String REDIS_KEY_DEVICE_INFO = "hw_device_info";
}

@ -40,7 +40,6 @@ public class BaseAlarmLevel extends TenantEntity {
/**
* 19
*/
@TableLogic(value="1", delval="9")
private String levelStatus;
/**

@ -1,6 +1,11 @@
package org.dromara.mes.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.dromara.common.constant.HwMomMesConstants;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
@ -15,15 +20,24 @@ import org.dromara.mes.domain.*;
import org.dromara.mes.domain.bo.ProdBaseMouldInfoBo;
import org.dromara.mes.domain.vo.ProdBaseMouldInfoVo;
import org.dromara.mes.mapper.ProdBaseMachineProcessMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.dromara.mes.domain.bo.ProdBaseMachineInfoBo;
import org.dromara.mes.domain.vo.ProdBaseMachineInfoVo;
import org.dromara.mes.mapper.ProdBaseMachineInfoMapper;
import org.dromara.mes.service.IProdBaseMachineInfoService;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.concurrent.TimeUnit;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static org.dromara.common.constant.HwMomMesConstants.REDIS_KEY_DEVICE_INFO;
/**
* Service
@ -39,6 +53,9 @@ public class ProdBaseMachineInfoServiceImpl implements IProdBaseMachineInfoServi
private final ProdBaseMachineProcessMapper prodBaseMachineProcessMapper;
@Autowired
private StringRedisTemplate redisTemplate;
/**
*
*
@ -166,6 +183,7 @@ public class ProdBaseMachineInfoServiceImpl implements IProdBaseMachineInfoServi
throw new ServiceException("编码已存在");
}
}
this.updateMqttAuth();
}
/**
@ -182,4 +200,29 @@ public class ProdBaseMachineInfoServiceImpl implements IProdBaseMachineInfoServi
}
return baseMapper.deleteByIds(ids) > 0;
}
/**
* MQTT
*/
public void updateMqttAuth() {
new Thread(() -> {
try {
List<ProdBaseMachineInfo> machineInfoList = baseMapper.selectList();
List<JSONObject> deviceInfoJson = new ArrayList<>();
machineInfoList.forEach(e -> {
JSONObject newDeviceInfo = new JSONObject();
newDeviceInfo.put("deviceCode", e.getMachineCode());
newDeviceInfo.put("userName", null);
newDeviceInfo.put("password", null);
deviceInfoJson.add(newDeviceInfo);
});
String deviceInfoJsonStr = JSON.toJSONString(deviceInfoJson, SerializerFeature.WriteMapNullValue);
redisTemplate.opsForValue().set(REDIS_KEY_DEVICE_INFO, deviceInfoJsonStr);
} catch (Exception e) {
System.out.println("设备MQTT认证信息异步更新失败 - error: " + e.getMessage());
}
}, "MqttAuthUpdateThread").start();
}
}

Loading…
Cancel
Save