|  |  | 
 |  |  |         if(hasRecord == 1){ | 
 |  |  |             //有记录 | 
 |  |  |             List<DataCd55Vo> list = new ArrayList<>() ; | 
 |  |  |             DataCd55Vo vo = this.doParseData(bs, index, bsLen, controllerType, projectNo) ; | 
 |  |  |             index++ ; | 
 |  |  |             DataCd55Vo vo = this.doParseData(bs, index, bsLen, dataCode, controllerType, projectNo) ; | 
 |  |  |             while(vo != null){ | 
 |  |  |                 index += 35 ; | 
 |  |  |                 list.add(vo) ; | 
 |  |  |                 vo = this.doParseData(bs, index, bsLen, controllerType, projectNo) ; | 
 |  |  |                 vo = this.doParseData(bs, index, bsLen, dataCode, controllerType, projectNo) ; | 
 |  |  |             } | 
 |  |  |             dV1.subData = list ; | 
 |  |  |         }else{ | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private DataCd55Vo doParseData(byte[] bs, int index, int bsLen, String controllerType,Integer projectNo) throws Exception{ | 
 |  |  |         //每条数据占39字节 | 
 |  |  |     private DataCd55Vo doParseData(byte[] bs, int index, int bsLen, String dataCode, String controllerType,Integer projectNo) throws Exception{ | 
 |  |  |         //每条数据占35字节 | 
 |  |  |         if(bsLen - index > 35){ | 
 |  |  |             DataCd55Vo cdData = new DataCd55Vo() ; | 
 |  |  |             DataCd55Vo cdData = new DataCd55Vo(CodeV202404.getCodeName(dataCode)) ; | 
 |  |  |  | 
 |  |  |             cdData.controllerType = controllerType ; | 
 |  |  |             cdData.projectNo = projectNo ; |