| | |
| | | |
| | | public String cardType = CardCommon.REGION;//卡命令 |
| | | |
| | | public int region;//区域地址(低前高后) 可以识别某县镇村 |
| | | |
| | | public int controllerCodel;// 控制器编号(低前高后) 本区域内控制器编号 |
| | | public int arerNumber;//区域号(底位在前高位在后) |
| | | |
| | | |
| | | public int getRegion() { |
| | | return region; |
| | | public int getArerNumber() { |
| | | return arerNumber; |
| | | } |
| | | |
| | | public void setRegion(int region) { |
| | | this.region = region; |
| | | } |
| | | |
| | | public int getControllerCodel() { |
| | | return controllerCodel; |
| | | } |
| | | |
| | | public void setControllerCodel(int controllerCodel) { |
| | | this.controllerCodel = controllerCodel; |
| | | public void setArerNumber(int arerNumber) { |
| | | this.arerNumber = arerNumber; |
| | | } |
| | | |
| | | public byte[] toByte() { |
| | |
| | | byte[] zero = data.get(0); |
| | | regionCard.cardType = HexUtil.byteToHex(zero[0]); |
| | | |
| | | byte[] regionByte = new byte[2]; |
| | | System.arraycopy(zero, 1, regionByte, 0, regionByte.length); |
| | | regionCard.region = HexUtil.get16To10LowHightByBytes(regionByte); |
| | | |
| | | |
| | | byte[] controllerCodelByte = new byte[2]; |
| | | System.arraycopy(zero, 3, controllerCodelByte, 0, controllerCodelByte.length); |
| | | regionCard.controllerCodel = HexUtil.get16To10LowHightByBytes(controllerCodelByte); |
| | | byte[] arerNumberByte = new byte[4]; |
| | | System.arraycopy(zero, 1, arerNumberByte, 0, arerNumberByte.length); |
| | | regionCard.arerNumber = HexUtil.get16To10LowHightByBytes(arerNumberByte); |
| | | |
| | | |
| | | return regionCard; |
| | |
| | | public byte[] toByte() { |
| | | byte[] data = new byte[16]; |
| | | data[0] = HexUtil.hexToByte(cardType); |
| | | byte[] regionBytes = new byte[2]; |
| | | byte[] regionDatas = HexUtil.hexToByteArray(HexUtil.get10To16LowHigh(region)); |
| | | System.arraycopy(regionDatas, 0, regionBytes, 0, regionDatas.length); |
| | | if (regionBytes != null) { |
| | | System.arraycopy(regionBytes, 0, data, 1, regionBytes.length); |
| | | //区域号 |
| | | byte[] arerNumberBytes = new byte[4]; |
| | | byte[] arerNumberDatas = HexUtil.hexToByteArray(HexUtil.get10To16LowHigh(arerNumber)); |
| | | System.arraycopy(arerNumberDatas, 0, arerNumberBytes, 0, arerNumberDatas.length); |
| | | if (arerNumberBytes != null) { |
| | | System.arraycopy(arerNumberBytes, 0, data, 1, arerNumberBytes.length); |
| | | } |
| | | byte[] controllerCodelBytes = new byte[2]; |
| | | byte[] controllerCodelDatas = HexUtil.hexToByteArray(HexUtil.get10To16LowHigh(controllerCodel)); |
| | | System.arraycopy(controllerCodelDatas, 0, controllerCodelBytes, 0, controllerCodelDatas.length); |
| | | if (controllerCodelBytes != null) { |
| | | System.arraycopy(controllerCodelBytes, 0, data, 3, controllerCodelBytes.length); |
| | | } |
| | | |
| | | |
| | | data[15] = getByteSum(data); |
| | | return data; |
| | | } |