From 098343a983ceba34ee253453c45b903b95d8e877 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期一, 04 十二月 2023 08:02:26 +0800 Subject: [PATCH] #输送线plc异常显示 --- src/main/java/com/zy/asrs/utils/Utils.java | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 150 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 461fd2e..8b9a9f0 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -2,10 +2,13 @@ import com.core.common.Arith; import com.core.common.Cools; +import com.core.common.SpringUtils; +import com.zy.core.model.CrnSlave; import com.zy.core.properties.SlaveProperties; import java.text.DecimalFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -15,11 +18,101 @@ private static final DecimalFormat fmt = new DecimalFormat("##0.00"); + + //杞崲wms浼犺緭鐨勫簱浣嶅彿 + public static String getWcsLocNo(String locNo){ + String[] split = locNo.split("-"); + int[] wcsRow = getWcsRow(split[0]); + int[] ints = null; + if (split[3].equals("01")){ + ints = Arrays.copyOfRange(wcsRow, 0, (wcsRow.length+2-1) / 2); + if (split[4].equals("01")){ + if (ints.length<2){ + + }else { + ints = Arrays.copyOfRange(ints, ints.length / 2, ints.length); + } + }else { + if (ints.length<2){ + + }else { + ints = Arrays.copyOfRange(ints, ints.length / 2-1,ints.length-1); + } + } + }else { + ints = Arrays.copyOfRange(wcsRow, (wcsRow.length+2-1) / 2-1,wcsRow.length-1 ); + if (split[4].equals("01")){ + if (ints.length<2){ + + }else { + ints = Arrays.copyOfRange(ints, ints.length / 2-1,ints.length-1); + } + }else { + if (ints.length<2){ + + }else { + ints = Arrays.copyOfRange(ints, ints.length / 2, ints.length); + } + + + } + } + int i = ints[0]; + String wcsLocNo = ""; + Integer bay = Integer.parseInt(split[1])+1; + String bay2 = ""; + if (bay>9){ + bay2 = bay.toString(); + }else { + bay2 = "0"+bay; + } + if (i>9){ + wcsLocNo = i+"0"+bay2+split[2]; + }else { + wcsLocNo = "0"+i+"0"+bay2+split[2]; + } + + + + return wcsLocNo; + } + public static int[] getWcsRow(String row){ + int[] array = null; + switch (row){ + case "01": + array= new int[]{1, 2, 3, 4}; + break; + case "02": + array= new int[]{5,6}; + break; + case "03": + array= new int[]{7,8,9,10}; + break; + case "04": + array= new int[]{11,12,13,14}; + break; + case "05": + array= new int[]{15,16,17,18}; + break; + case "06": + array= new int[]{19,20,21}; + break; + default: + + } + return array; + } + public static float scale(Float f){ if (f == null || f == 0f || Float.isNaN(f)) { return 0f; } return (float) Arith.multiplys(2, f, 1); + } + + //绔欑偣鍙疯浆鎹� + public static String getEquipmentCode(String targetPoint){ + return "J-1"+targetPoint; } public static String zerofill(String msg, Integer count){ @@ -143,6 +236,13 @@ throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); } + public static Short getRowShort(String locNo) { + if (!Cools.isEmpty(locNo)) { + return Short.valueOf(locNo.substring(0, 2)); + } + throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); + } + /** * 閫氳繃搴撲綅鍙疯幏鍙� 鍒� */ @@ -159,6 +259,26 @@ public static int getLev(String locNo) { if (!Cools.isEmpty(locNo)) { return Integer.parseInt(locNo.substring(5, 7)); + } + throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); + } + + /** + * 閫氳繃搴撲綅鍙疯幏鍙� 鍒� + */ + public static short getBayShort(String locNo) { + if (!Cools.isEmpty(locNo)) { + return Short.parseShort(locNo.substring(2, 5)); + } + throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); + } + + /** + * 閫氳繃搴撲綅鍙疯幏鍙� 灞� + */ + public static short getLevShort(String locNo) { + if (!Cools.isEmpty(locNo)) { + return Short.parseShort(locNo.substring(5, 7)); } throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); } @@ -181,15 +301,36 @@ } - public static void main(String[] args) { - SlaveProperties slaveProperties = new SlaveProperties(); - slaveProperties.setDoubleDeep(true); - List<Integer> list = new ArrayList<>(); - list.add(1);list.add(4);list.add(5);list.add(8);list.add(9);list.add(12); - slaveProperties.setDoubleLocs(list); - slaveProperties.setGroupCount(4); - Integer deepRow = getDeepRow(slaveProperties, 6); - System.out.println(deepRow); + public static CrnSlave.CrnStn getCrnStnByStaNo(Integer staNo, Boolean pakIn) { + SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); + for (CrnSlave crn : slaveProperties.getCrn()) { + List<CrnSlave.CrnStn> crnInStn = null; + if (pakIn) { + crnInStn = crn.getCrnInStn(); + }else { + crnInStn = crn.getCrnOutStn(); + } + for (CrnSlave.CrnStn crnStn : crnInStn) { + if (crnStn.getStaNo().equals(staNo)) { + return crnStn; + } + } + } + + return null; + } + + public static void main(String[] args) { +// SlaveProperties slaveProperties = new SlaveProperties(); +// slaveProperties.setDoubleDeep(true); +// List<Integer> list = new ArrayList<>(); +// list.add(1);list.add(4);list.add(5);list.add(8);list.add(9);list.add(12); +// slaveProperties.setDoubleLocs(list); +// slaveProperties.setGroupCount(4); +// Integer deepRow = getDeepRow(slaveProperties, 6); +// System.out.println(deepRow); + String wcsLocNo = getWcsLocNo("02-01-01-02-01"); + System.out.println(wcsLocNo); } } -- Gitblit v1.9.1