code: private void mergeRows(ExcelRows excelRowsAnn, Cell templateCell, int itemSize) {
          val tmplCellRowIndex = templateCell.getRowIndex();
  
          for (val ann : excelRowsAnn.mergeRows()) {
              val fr = ann.fromRef();
              val cellRef = PoiUtil.isFullCellReference(fr) ? fr : fr + (tmplCellRowIndex + 1);
              val fromCell = PoiUtil.findCell(sheet, cellRef);
  
              val lastRow = tmplCellRowIndex + itemSize - 1;
              if (ann.type() == MergeType.Direct) {
                  val fromRow = fromCell.getRow().getRowNum();
                  directMergeRows(ann, fromRow, lastRow, fromCell.getColumnIndex());
              } else if (ann.type() == MergeType.SameValue) {
                  sameValueMergeRows(ann, itemSize, fromCell);
              }
          }
      }
docs: 根据@ExcelRows注解的指示，纵向合并单元格。
  
  @param excelRowsAnn @ExcelRows注解值。
  @param templateCell 模板单元格。
  @param itemSize     纵向合并多少行的单元格。