| | |
| | | private static String orderNo = null ; |
| | | private static String openValveDt = null ; |
| | | |
| | | private static Double totalWaterAmount = 1234.56 ;//累计流量 |
| | | private static Double remainMoney = 65.4321 ;//剩余金额 |
| | | private static Double totalWaterAmount = 12345.67 ;//累计流量 |
| | | private static Double remainMoney = 8765.4321 ;//剩余金额 |
| | | |
| | | private static Double thisWaterAmount = 100.00 ;//本次使用电量 |
| | | private static Double thisWaterAmount = 100.00 ;//本次使用水量 |
| | | private static Double thisMoney = 10.00 ;//本次使用金额 |
| | | |
| | | public static void upCd84Data(String rtuAddr){ |
| | |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[8] ;//本次订单号 8字节 BCD码 |
| | | ByteUtil.string2BCD_LE( bs, orderNo,0); |
| | | ByteUtil.string2BCD_BE( bs, orderNo,0); |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[6] ;//开泵/阀时间 6字节的BCD码(秒分时日月年) |
| | |
| | | openValveDt = DateTime.yyMMddhhmmss() ; |
| | | } |
| | | |
| | | totalWaterAmount -= thisWaterAmount ; |
| | | totalWaterAmount += thisWaterAmount ; |
| | | remainMoney -= thisMoney ; |
| | | |
| | | byte[] bytes = creatHead(rtuAddr, "85", (byte)0x81); |
| | |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[8] ;//本次订单号 8字节 BCD码 |
| | | ByteUtil.string2BCD_LE( bs, orderNo,0); |
| | | ByteUtil.string2BCD_BE( bs, orderNo,0); |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[6] ;//开始时间 6字节的BCD码(秒分时日月年) |
| | |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[6] ;//结束时间 6字节的BCD码(秒分时日月年) |
| | | ByteUtil.string2BCD_LE( bs, DateTime.yyyyMMddHHmmss(),0); |
| | | ByteUtil.string2BCD_LE( bs, DateTime.yyMMddhhmmss(),0); |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[5] ;//水表累计水量 5字节BCD码,单位0.01立方米 |
| | |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[4] ;//本次使用水量 4字节BCD码 单位0.01立方米 |
| | | ByteUtil.int2BCD_LE(Double.valueOf(thisWaterAmount * 10000).intValue(), bs, 0); |
| | | ByteUtil.int2BCD_LE(Double.valueOf(thisWaterAmount * 100).intValue(), bs, 0); |
| | | bytes = ByteUtil.bytesMerge(bytes, bs) ; |
| | | |
| | | bs = new byte[4] ;//本次使用金额 4字节BCD码 单位0.0001元 |