Program: 175239
Project: 175239
Buggy source:
@Override public List<FieldInListPageBo> getListPageFiledList(Integer tabId,String lang){
  List<FieldInListPageBo> fieldInListPageBoList=new ArrayList<>();
  Search search=new Search();
  search.addFilterEqual("String_Node_Str",tabId);
  search.addSortAsc("String_Node_Str");
  search.addSortAsc("String_Node_Str");
  List<FieldPo> fieldPoList=fieldDao.search(search);
  for (  FieldPo fieldPo : fieldPoList) {
    FieldInListPageBo fieldInListPageBo=new FieldInListPageBo();
    fieldInListPageBo.setId(fieldPo.getId());
    fieldInListPageBo.setFieldPo(fieldPo);
    Search trlSearch=new Search();
    trlSearch.addFilterEqual("String_Node_Str",lang);
    trlSearch.addFilterEqual("String_Node_Str",fieldPo.getId());
    FieldTrlPo fieldTrlPo=fieldTrlDao.searchUnique(trlSearch);
    TableColumnPo tableColumnPo=tableColumnDao.find(fieldPo.getColumnId());
    JavaDataType dataType=JavaDataType.getJavaDataTypeByKey(tableColumnPo.getDataType());
    FieldInputType fieldInputType=FieldInputType.getFieldInputTypeByKey(fieldPo.getInputType());
    fieldInListPageBo.setDataType(dataType);
    fieldInListPageBo.setFieldInputType(fieldInputType);
    if (fieldTrlPo != null) {
      fieldInListPageBo.setName(fieldTrlPo.getName());
    }
 else {
      fieldInListPageBo.setName(fieldPo.getName());
    }
    if (dataType == JavaDataType.DATE) {
      if (fieldInputType == FieldInputType.DATEPICKER) {
        fieldInListPageBo.setPattern("String_Node_Str");
      }
 else       if (fieldInputType == FieldInputType.DATETIMEPICKER) {
        fieldInListPageBo.setPattern("String_Node_Str");
      }
    }
    fieldInListPageBoList.add(fieldInListPageBo);
  }
  return fieldInListPageBoList;
}

Fixed version (ground truth):
@Override public List<FieldInListPageBo> getListPageFiledList(Integer tabId,String lang){
  List<FieldInListPageBo> fieldInListPageBoList=new ArrayList<>();
  Search search=new Search();
  search.addFilterEqual("String_Node_Str",tabId);
  search.addSortAsc("String_Node_Str");
  search.addSortAsc("String_Node_Str");
  List<FieldPo> fieldPoList=fieldDao.search(search);
  for (  FieldPo fieldPo : fieldPoList) {
    FieldInListPageBo fieldInListPageBo=new FieldInListPageBo();
    fieldInListPageBo.setId(fieldPo.getId());
    fieldInListPageBo.setFieldPo(fieldPo);
    Search trlSearch=new Search();
    trlSearch.addFilterEqual("String_Node_Str",lang);
    trlSearch.addFilterEqual("String_Node_Str",fieldPo.getId());
    FieldTrlPo fieldTrlPo=fieldTrlDao.searchUnique(trlSearch);
    TableColumnPo tableColumnPo=tableColumnDao.find(fieldPo.getColumnId());
    JavaDataType dataType=JavaDataType.getJavaDataTypeByKey(tableColumnPo.getDataType());
    FieldInputType fieldInputType=FieldInputType.getFieldInputTypeByKey(fieldPo.getInputType().getKey());
    fieldInListPageBo.setDataType(dataType);
    fieldInListPageBo.setFieldInputType(fieldInputType);
    if (fieldTrlPo != null) {
      fieldInListPageBo.setName(fieldTrlPo.getName());
    }
 else {
      fieldInListPageBo.setName(fieldPo.getName());
    }
    if (dataType == JavaDataType.DATE) {
      if (fieldInputType == FieldInputType.DATEPICKER) {
        fieldInListPageBo.setPattern("String_Node_Str");
      }
 else       if (fieldInputType == FieldInputType.DATETIMEPICKER) {
        fieldInListPageBo.setPattern("String_Node_Str");
      }
    }
    fieldInListPageBoList.add(fieldInListPageBo);
  }
  return fieldInListPageBoList;
}