R/render_rmd.R

#' @title get_yearmon
#' @description Function to get yyyymm to add to rendered rmd filename.
#'
#' @return Returns yyyymm string.
get_yearmon <- function() {
  strftime(
    lubridate::floor_date(Sys.time(), 'month') - lubridate::ddays(1),
    format = '%Y%m')
}

#' @title render_canada
#' @description Function to render Canadian Complaints report.
#'
#' @return Renders canada.rmd.
#' @export
render_canada <- function() {
  rmarkdown::render(
    input = system.file('rmd/canada.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'monthly', 'Canada',
                            lubridate::year(Sys.time() - months(1)),
                            strftime(last_month(), format = '%m-%b'),
                            paste0('canada_', get_yearmon(), '.html'))
  )
}

#' @title render_regional
#' @description Function to render Regional Complaints report.
#'
#' @return Renders regional.rmd.
#' @export
render_regional <- function() {
  rmarkdown::render(
    input = system.file('rmd/regional.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'monthly', 'regional',
                            lubridate::year(last_month()),
                            strftime(last_month(), format = '%m-%b'),
                            paste0('Monthly Complaint Regional Reports ',
                                   toupper(strftime(last_month(), format = '%B')),
                                   '.html'))
  )
}

#' @title render_x600
#' @description Function to render x600 report.
#'
#' @return Renders x600.rmd.
#' @export
render_x600 <- function() {
  time <- time_vals()
  rmarkdown::render(
    input = system.file('rmd/x600.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'quarterly', 'x600',
                            time$year_quarter, time$quarter,
                            paste0('x600_', time$year_quarter,
                                   time$quarter, '.html'))
  )
}

#' @title render_lar_monthly
#' @description Function to render monthly LAR report.
#'
#' @return Renders lar_monthly.rmd.
#' @export
render_lar_monthly <- function() {
  rmarkdown::render(
    input = system.file('rmd/lar_monthly.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'monthly', 'LAR',
                            lubridate::year(last_month()),
                            strftime(last_month(), format = '%m-%b'),
                            paste0('Monthly Complaint Report LATAM by Country ',
                                   toupper(strftime(last_month(), format = '%B')),
                                   '.html'))
  )
}

#' @title render_qo
#' @description Function to render monthly Quality Operations Process Monitoring
#'
#' @return Renders quality_operations.Rmd
#' @export
render_qo <- function() {
  rmarkdown::render(
    input = system.file('rmd/quality_operations.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'metrics', 'Quality Operations Dashboards',
                            'rmd', paste0(strftime(last_month(), format = '%m-%Y'),
                                          ' Quality Operations Process Monitoring.html'))
  )
}

#' @title render_efs
#' @description Function to render monthly EFS Report
#'
#' @return Renders efs.Rmd
#' @export
render_efs <- function() {
  rmarkdown::render(
    input = system.file('rmd/efs.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'monthly', 'EFS',
                            lubridate::year(last_month()),
                            strftime(last_month(), format = '%m-%b'),
                            paste0('EFS_', strftime(last_month(), format = '%b%Y'),
                            '.html'))
  )
}

#' @title render_qs
#' @description Function to render Quality Systems Indicators
#'
#' @return Renders quality_systems.Rmd
#' @export
render_qs <- function() {
  rmarkdown::render(
    input = system.file('rmd/quality_systems.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'metrics', 'Quality Indicators Dashboards',
                            'rmd', paste0(strftime(last_month(), format = '%m-%Y'),
                                          ' Quality Indicators.html'))
  )
}

#' @title render_rbc
#' @description Function to render Red Blood Cell Trending
#'
#' @return Renders red_blood_cell.Rmd
#' @export
render_rbc <- function() {
  rmarkdown::render(
    input = system.file('rmd/red_blood_cell.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path(
      '~', 'reporting', 'weekly', 'rbc', lubridate::year(Sys.time()),
      paste0('red_blood_cell_',
             strftime(lubridate::floor_date(Sys.time(), 'week') + lubridate::ddays(1),
                      format = '%d%b%Y'),
             '.html')
    )
  )
}

#' @title render_refurb
#' @description Function oto render Refurbished report
#'
#' @return Renders refurbished.Rmd
#' @export
render_refurb <- function() {
  rmarkdown::render(
    input = system.file('rmd/refurbished.rmd', package = 'srms'),
    output_format = flexdashboard::flex_dashboard(
      css = system.file('css/ortho_flexdashboard.css', package = 'srms')
    ),
    output_file = file.path('~', 'reporting', 'monthly', 'refurbished',
                            lubridate::year(last_month()), strftime(last_month(), format = '%m-%b'),
                            'Refurbished.html')
  )
}
kimjam/srms documentation built on May 20, 2019, 10:21 p.m.