From 5bfea9b517a5f79af5c186e386dad3032b3efc31 Mon Sep 17 00:00:00 2001 From: "lisai17@sina.com" Date: Mon, 8 Mar 2021 19:31:36 +0800 Subject: [PATCH] . --- .../ssjygl/devicectrl/device/KeLiScale.java | 66 ++++++++++--------- .../ssjygl/devicectrl/device/XiShuiScale.java | 64 +++++++++--------- .../ssjygl/devicectrl/device/YaoHuaScale.java | 63 +++++++++--------- .../com/cowr/local/ssjygl/main/Config.java | 2 +- 4 files changed, 103 insertions(+), 92 deletions(-) diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/KeLiScale.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/KeLiScale.java index 8603bdd..57616d7 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/KeLiScale.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/KeLiScale.java @@ -59,47 +59,51 @@ public class KeLiScale extends AbsScale { ArrayList list = new ArrayList<>(); AtomicBoolean run = new AtomicBoolean(true); - InputStream inputStream = socket.getInputStream(); - byte[] clearBuf = new byte[inputStream.available()]; - inputStream.read(clearBuf); - int errCount = 0; + try (InputStream inputStream = socket.getInputStream()) { + byte[] clearBuf = new byte[inputStream.available()]; + inputStream.read(clearBuf); + int errCount = 0; - while (run.get() && list.size() < 15) { - long st = System.currentTimeMillis(); + while (run.get() && list.size() < 15) { + long st = System.currentTimeMillis(); - byte[] buf = new byte[DATA_LENGTH]; - int read = inputStream.read(buf); + byte[] buf = new byte[DATA_LENGTH]; + int read = inputStream.read(buf); - if (read != DATA_LENGTH && errCount < 10) { - errCount++; - continue; - } - - String weight = new String(Arrays.copyOfRange(buf, DATA_FROM, DATA_TO)); - - if (!pattern.matcher(weight).matches() || weight.equals("000000")) { -// System.out.println("error:" + weight); - - if (errCount == 100) { - break; - } - errCount++; - continue; - } - - try { - if (Long.parseLong(weight) > 100000) { + if (read != DATA_LENGTH && errCount < 10) { errCount++; continue; } - } catch (Exception e) { - log.error(e.getMessage(), e); - } + + String weight = new String(Arrays.copyOfRange(buf, DATA_FROM, DATA_TO)); + + if (!pattern.matcher(weight).matches() || weight.equals("000000")) { +// System.out.println("error:" + weight); + + if (errCount == 100) { + break; + } + errCount++; + continue; + } + + try { + if (Long.parseLong(weight) > 100000) { + errCount++; + continue; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } // System.out.println("读一次耗时:" + (System.currentTimeMillis() - st) + ", " + Double.parseDouble(flip(weight))); - list.add(weight); + list.add(weight); + } + } catch (Exception e) { + log.error(e.getMessage(), e); } + String max = "0"; if (list.size() > 0) { Map collect = list.stream().collect( diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/XiShuiScale.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/XiShuiScale.java index 9e59749..2b21803 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/XiShuiScale.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/XiShuiScale.java @@ -52,47 +52,51 @@ public class XiShuiScale extends AbsScale { ArrayList list = new ArrayList<>(); AtomicBoolean run = new AtomicBoolean(true); - InputStream inputStream = socket.getInputStream(); - byte[] clearBuf = new byte[inputStream.available()]; - inputStream.read(clearBuf); - int errCount = 0; + try (InputStream inputStream = socket.getInputStream()) { + byte[] clearBuf = new byte[inputStream.available()]; + inputStream.read(clearBuf); + int errCount = 0; - while (run.get() && list.size() < 15) { + while (run.get() && list.size() < 15) { // long st = System.currentTimeMillis(); - byte[] buf = new byte[18]; - int read = inputStream.read(buf); + byte[] buf = new byte[18]; + int read = inputStream.read(buf); - if (read != 18 && errCount < 10) { - errCount++; - continue; - } - - String weight = new String(Arrays.copyOfRange(buf, 4, 10)); - - if (!pattern.matcher(weight).matches() || weight.equals("000000")) { -// log.error("error weight: %s", weight); - - if (errCount == 100) { - break; - } - errCount++; - continue; - } - - try { - if (Long.parseLong(weight) > 100000) { + if (read != 18 && errCount < 10) { errCount++; continue; } - } catch (Exception e) { - log.error(e.getMessage(), e); - } + + String weight = new String(Arrays.copyOfRange(buf, 4, 10)); + + if (!pattern.matcher(weight).matches() || weight.equals("000000")) { +// log.error("error weight: %s", weight); + + if (errCount == 100) { + break; + } + errCount++; + continue; + } + + try { + if (Long.parseLong(weight) > 100000) { + errCount++; + continue; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } // System.out.println("读一次耗时:" + (System.currentTimeMillis() - st) + ", " + Double.parseDouble(flip(weight))); - list.add(weight); + list.add(weight); + } + } catch (Exception e) { + log.error(e.getMessage(), e); } + String max = "0"; if (list.size() > 0) { Map collect = list.stream().collect( diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/YaoHuaScale.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/YaoHuaScale.java index ec9118e..44912b0 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/YaoHuaScale.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/devicectrl/device/YaoHuaScale.java @@ -55,44 +55,47 @@ public class YaoHuaScale extends AbsScale { ArrayList list = new ArrayList<>(); AtomicBoolean run = new AtomicBoolean(true); - InputStream inputStream = socket.getInputStream(); - byte[] clearBuf = new byte[inputStream.available()]; - inputStream.read(clearBuf); - int errCount = 0; + try (InputStream inputStream = socket.getInputStream()) { + byte[] clearBuf = new byte[inputStream.available()]; + inputStream.read(clearBuf); + int errCount = 0; - while (run.get() && list.size() < 15) { - long st = System.currentTimeMillis(); + while (run.get() && list.size() < 15) { + long st = System.currentTimeMillis(); - byte[] buf = new byte[12]; - int read = inputStream.read(buf); + byte[] buf = new byte[12]; + int read = inputStream.read(buf); - if (read != 18 && errCount < 10) { - errCount++; - continue; - } - - String weight = new String(Arrays.copyOfRange(buf, 2, 8)); - - if (!pattern.matcher(weight).matches() || weight.equals("000000")) { -// System.out.println("error:" + weight); - - if (errCount == 100) { - break; - } - errCount++; - continue; - } - try { - if (Long.parseLong(weight) > 100000) { + if (read != 18 && errCount < 10) { errCount++; continue; } - } catch (Exception e) { - log.error(e.getMessage(), e); - } + + String weight = new String(Arrays.copyOfRange(buf, 2, 8)); + + if (!pattern.matcher(weight).matches() || weight.equals("000000")) { +// System.out.println("error:" + weight); + + if (errCount == 100) { + break; + } + errCount++; + continue; + } + try { + if (Long.parseLong(weight) > 100000) { + errCount++; + continue; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } // System.out.println("读一次耗时:" + (System.currentTimeMillis() - st) + ", " + Double.parseDouble(flip(weight))); - list.add(weight); + list.add(weight); + } + } catch (Exception e) { + log.error(e.getMessage(), e); } String max = "0"; diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/main/Config.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/main/Config.java index 2e5f524..fcbcd98 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/main/Config.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/main/Config.java @@ -95,7 +95,7 @@ public class Config extends JFinalConfig { public static DeviceThread deviceThread = new DeviceThread(); public static SocketIOService socketio = null; private static boolean client_run = true; - public static final String CLINET_VERSION = "20210307"; + public static final String CLINET_VERSION = "20210308"; public static String getRootPath() { return PathKit.getWebRootPath()