Browse Source

1、修复meter_manage更新出现varchar转numeric异常问题

dev
mh 5 months ago
parent
commit
58ee00097b
  1. 5
      user-service/src/main/java/com/mh/user/service/impl/MeterManageServiceImpl.java
  2. 20
      user-service/src/test/java/com/mh/user/SysUserTest.java

5
user-service/src/main/java/com/mh/user/service/impl/MeterManageServiceImpl.java

@ -54,7 +54,12 @@ public class MeterManageServiceImpl implements MeterManageService {
public void updateDataById(Long mmId, String analysisData) { public void updateDataById(Long mmId, String analysisData) {
UpdateWrapper<MeterManageEntity> updateWrapper = new UpdateWrapper<>(); UpdateWrapper<MeterManageEntity> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("id", mmId); updateWrapper.eq("id", mmId);
// 判断analysisData是否为数值
if (analysisData.matches("\\d+(\\.\\d+)?")) {
updateWrapper.set("cur_value", analysisData); updateWrapper.set("cur_value", analysisData);
} else {
updateWrapper.set("cur_value", "0.00");
}
updateWrapper.set("cur_time", new Date()); updateWrapper.set("cur_time", new Date());
meterManageMapper.update(updateWrapper); meterManageMapper.update(updateWrapper);
} }

20
user-service/src/test/java/com/mh/user/SysUserTest.java

@ -32,14 +32,18 @@ public class SysUserTest {
private static final SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); private static final SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static void main(String[] args) throws ParseException, IOException { public static void main(String[] args) throws ParseException, IOException {
String s = String.valueOf(Math.abs(ExchangeStringUtil.hexToSingle("432d7d1b"))); String test = "12";
System.out.println(s); if (test.matches("\\d+(\\.\\d+)?")) {
String data = "01030444D3200006FA"; System.out.println("是数字");
data = data.substring(data.length() - 8, data.length() - 6) }
+ data.substring(data.length() - 6, data.length() - 4) // String s = String.valueOf(Math.abs(ExchangeStringUtil.hexToSingle("432d7d1b")));
+ data.substring(data.length() - 12, data.length() - 10) // System.out.println(s);
+ data.substring(data.length() - 10, data.length() - 8); // String data = "01030444D3200006FA";
System.out.println(data); // data = data.substring(data.length() - 8, data.length() - 6)
// + data.substring(data.length() - 6, data.length() - 4)
// + data.substring(data.length() - 12, data.length() - 10)
// + data.substring(data.length() - 10, data.length() - 8);
// System.out.println(data);
// String dateStr = ""; // String dateStr = "";
// Date date = new Date(); // Date date = new Date();
// if (ExchangeStringUtil.isInDate(date, "00:00:00", "00:00:30")) { // if (ExchangeStringUtil.isInDate(date, "00:00:00", "00:00:30")) {

Loading…
Cancel
Save