| | |
| | | |
| | | import com.fzzy.api.Constant; |
| | | import com.fzzy.api.data.ApiCommonDevice; |
| | | import com.fzzy.api.data.DepotType; |
| | | import com.fzzy.api.data.GatewayDeviceType; |
| | | import com.fzzy.gateway.data.GrainCableData; |
| | | import com.fzzy.gateway.entity.GatewayDevice; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.stereotype.Component; |
| | |
| | | return cacheMapDeviceId.get(deviceId); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 针对一个分机对廒间的情况 |
| | | * |
| | | * @param deviceSn |
| | | * @return |
| | | */ |
| | | public static GatewayDevice getCacheByDeviceSn(String deviceSn) { |
| | | Collection<GatewayDevice> list = allCacheDevice(); |
| | | if (null == list || list.isEmpty()) return null; |
| | |
| | | if (deviceSn.equals(device.getDeviceSn())) return device; |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | public static GatewayDevice getCacheByDeviceSIp(String ip) { |
| | | Collection<GatewayDevice> list = allCacheDevice(); |
| | | if (null == list || list.isEmpty()) return null; |
| | | |
| | | for (GatewayDevice device : list) { |
| | | if (ip.equals(device.getIp())) return device; |
| | | } |
| | | return null; |
| | | } |
| | | |
| | |
| | | public static Collection<GatewayDevice> listDeviceWeight() { |
| | | return cacheMapDeviceWeight.values(); |
| | | } |
| | | |
| | | public static GatewayDevice getCacheByDepotSysId(String depotSysId) { |
| | | |
| | | if (null == depotSysId) return null; |
| | | Collection<GatewayDevice> list = allCacheDevice(); |
| | | if (null == list || list.isEmpty()) return null; |
| | | |
| | | for (GatewayDevice device : list) { |
| | | if (null == device.getDepotIdSys()) continue; |
| | | if (depotSysId.equals(device.getDepotIdSys())) return device; |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | | public static GrainCableData getCableData(GatewayDevice gatewayDevice) { |
| | | String cableRule = gatewayDevice.getCableRule(); |
| | | String cableCir = gatewayDevice.getCableCir(); |
| | | |
| | | GrainCableData result = new GrainCableData(); |
| | | result.setCableRule(cableRule); |
| | | result.setCableCir(cableCir); |
| | | |
| | | int cableY, cableX; |
| | | String[] attCable = cableRule.split("-"); |
| | | int cableZ = Integer.valueOf(attCable[0]); |
| | | |
| | | if (StringUtils.isEmpty(cableCir)) { |
| | | cableY = Integer.valueOf(attCable[1]); |
| | | cableX = Integer.valueOf(attCable[2]); |
| | | } else { |
| | | String[] attCir = cableCir.split("-"); |
| | | cableZ = Integer.valueOf(attCir[0]); |
| | | cableY = 1; |
| | | cableX = 0; |
| | | //针对多圈计算总过多少根电缆 |
| | | for (int i = 0; i < attCir.length; i++) { |
| | | cableX += Integer.valueOf(attCable[i]); |
| | | } |
| | | } |
| | | |
| | | result.setCableY(cableY); |
| | | result.setCableZ(cableZ); |
| | | result.setCableX(cableX); |
| | | result.setSumNum(cableZ * cableY * cableX); |
| | | |
| | | result.setTotalCircle(attCable.length); |
| | | |
| | | return result; |
| | | } |
| | | } |