R/graph_budget.R

Defines functions graph_budget_year graph_budget_period graph_budget_rollup2_step1_updateStatus graph_budget_rollup2_step1_writeRes graph_budget_rollup2_step1_preCheck graph_budget_rollup2_step1_preCheck_valid graph_budget_rollup2_step1_preCheck_invalid graph_budget_rollup1_step3_updateStatus graph_budget_rollup1_step3_writeRes graph_budget_rollup1_step3_preCheck graph_budget_rollup1_step3_preCheck_valid graph_budget_rollup1_step3_preCheck_invalid graph_budget_rollup1_step2_updateStatus graph_budget_rollup1_step2_writeRes graph_budget_rollup1_step2_preCheck graph_budget_rollup1_step2_preCheck_valid graph_budget_rollup1_step2_preCheck_invalid graph_budget_rollup1_step1_updateStatus graph_budget_rollup1_step1_writeRes graph_budget_rollup1_step1_preCheck graph_budget_rollup1_step1_preCheck_valid graph_budget_rollup1_step1_preCheck_invalid graph_budget_calc_step2_updateStatus graph_budget_calc_step2_writeRes graph_budget_calc_step2_preCheck graph_budget_calc_step2_preCheck_valid graph_budget_calc_step2_preCheck_invalid graph_budget_calc_step1_updateStatus graph_budget_calc_step1_writeRes graph_budget_calc_step1_preCheck graph_budget_calc_step1_preCheck_valid graph_budget_calc_step1_preCheck_invalid

Documented in graph_budget_calc_step1_preCheck graph_budget_calc_step1_preCheck_invalid graph_budget_calc_step1_preCheck_valid graph_budget_calc_step1_updateStatus graph_budget_calc_step1_writeRes graph_budget_calc_step2_preCheck graph_budget_calc_step2_preCheck_invalid graph_budget_calc_step2_preCheck_valid graph_budget_calc_step2_updateStatus graph_budget_calc_step2_writeRes graph_budget_period graph_budget_rollup1_step1_preCheck graph_budget_rollup1_step1_preCheck_invalid graph_budget_rollup1_step1_preCheck_valid graph_budget_rollup1_step1_updateStatus graph_budget_rollup1_step1_writeRes graph_budget_rollup1_step2_preCheck graph_budget_rollup1_step2_preCheck_invalid graph_budget_rollup1_step2_preCheck_valid graph_budget_rollup1_step2_updateStatus graph_budget_rollup1_step2_writeRes graph_budget_rollup1_step3_preCheck graph_budget_rollup1_step3_preCheck_invalid graph_budget_rollup1_step3_preCheck_valid graph_budget_rollup1_step3_updateStatus graph_budget_rollup1_step3_writeRes graph_budget_rollup2_step1_preCheck graph_budget_rollup2_step1_preCheck_invalid graph_budget_rollup2_step1_preCheck_valid graph_budget_rollup2_step1_updateStatus graph_budget_rollup2_step1_writeRes graph_budget_year

#' 针对品牌渠道信息进行检查
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck_invalid()
graph_budget_calc_step1_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                     FYear =2019,
                                                     FPeriod =1


) {

  data <-graph_preCheck_aux(conn=conn,
                            FYear = FYear,
                            FPeriod =FPeriod,
                            src_table = 't_mrpt_budget',
                            graph_table = 'vw_mrpt_md_brandchannel_graph_calc_step1',
                            count_table = 'vw_mrpt_budget_count',
                            log_table = 't_mrpt_brandChannel_preCheck_log',
                            FPhase = 'calc',
                            FStep =1,
                            FStatus =2,
                            valid = FALSE
  )

  return(data)
}


#' 针对品牌渠道信息进行检查
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck_valid()
graph_budget_calc_step1_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1
                                                 ) {

  data <-graph_preCheck_aux(conn=conn,
                            FYear = FYear,
                            FPeriod =FPeriod,
                            src_table = 't_mrpt_budget',
                            graph_table = 'vw_mrpt_md_brandchannel_graph_calc_step1',
                            count_table = 'vw_mrpt_budget_count',
                            log_table = 't_mrpt_brandChannel_preCheck_log',
                            FPhase = 'calc',
                            FStep =1,
                            FStatus =0,
                            valid = TRUE
  )

  return(data)

}


#' 步骤1可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_calc_step1_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                             FYear =2019,
                                             FPeriod =1) {
  graph_budget_calc_step1_preCheck_valid(conn = conn,
                                         FYear = FYear,
                                         FPeriod = FPeriod)
  graph_budget_calc_step1_preCheck_invalid(conn = conn,
                                           FYear = FYear,
                                           FPeriod = FPeriod)


}



#' 写入步骤1的结果
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 期间
#' @param res_table 结果表
#' @param src_view 来源视图
#' @param log_table 日志表
#' @param fcalcstep 计算步骤,用于结果表
#' @param FPhase 阶段
#' @param FStatus 状态
#' @param FStep  阶段步骤
#' @param src_table  来源表
#'
#' @return 返回值
#' @export
#'
#' @examples
#' mrpt_calc_brandChannel_step1_writeRes()
graph_budget_calc_step1_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                                 FYear =2019,
                                                 FPeriod =1,
                                                 res_table = 't_mrpt3_res_budget',
                                                 src_view = 'vw_mrpt_budget',
                                                 src_table = 't_mrpt_budget',
                                                 log_table = 't_mrpt_brandChannel_preCheck_log',
                                                 fcalcstep = 1,
                                                 FPhase='calc',
                                                   FStep = 1 ,
                                                 FStatus = 0


){
  #针对手工没有提供的管报,设置标记为2

  #删除之前的数据
  sql_del <- paste0("delete from    ",res_table,"
where fyear =  ",FYear," and fperiod =  ",FPeriod," and fcalcstep =  ",fcalcstep," ")
  cat(sql_del)
  tsda::sql_update(conn,sql_del)
  sql <- paste0("
  insert into  ",res_table,"
select distinct   a.Fyear,a.Fperiod,a.Fbrand,a.Fchannel,a.FRptItemNumber,FRptItemName,FRptAmt ,  ",fcalcstep," as fcalcstep
from   ",src_view,"  a
left join   ",log_table,"  b
on a.Fyear =b.FYear and a.Fperiod = b.FPeriod and a.Fbrand =b.source_brand and a.Fchannel =b.source_channel
where  b.FYear =  ",FYear," and b.FPeriod = ",FPeriod," and  b.FPhase = '",FPhase,"'   and b.FStatus  =  ",FStatus," and b.FStep = ",FStep," and b.FTable = '",src_table,"'
")
  cat(sql)
  tsda::sql_update(conn,sql)

  sql_rate = paste0("select FYear,FPeriod,source_brand as fbrandname,source_channel as fchannelname
from   ",log_table, " b
where
b.FYear =  ",FYear," and b.FPeriod = ",FPeriod," and  b.FPhase = '",FPhase,"'   and b.FStatus  = ",FStatus,"  and b.FStep = ",FStep,"  and FTable ='",src_table,"'   ")
  cat(sql_rate)
  data_rate = tsda::sql_select(conn,sql_rate)
  ncount <- nrow(data_rate)
  if(ncount >0){
    lapply(1:ncount, function(i){
      # 处理年月
      FYear = data_rate$FYear[i]
      FPeriod = data_rate$FPeriod[i]
      FBrand = data_rate$fbrandname[i]
      FChannel = data_rate$fchannelname[i]
      #更新每一个毛利率
      #注意添加相应的参数,以实现通用性
      mrpt_index_update(conn = conn,FYear = FYear,FPeriod = FPeriod,FBrand = FBrand,FChannel = FChannel,res_table = res_table)
      # mrpt_calc_updateProfit(conn = conn,FYear = FYear,FPeriod = FPeriod,FBrand = FBrand,FChannel = FChannel,res_table = res_table)
      # mrpt_calc_updateProfitRate(conn = conn,FYear = FYear,FPeriod = FPeriod,FBrand = FBrand,FChannel = FChannel,res_table = res_table)
      # mrpt_calc_updateChannelProfit(conn = conn,FYear = FYear,FPeriod = FPeriod,FBrand = FBrand,FChannel = FChannel,res_table = res_table)
      # mrpt_calc_updateMarketProfit(conn = conn,FYear = FYear,FPeriod = FPeriod,FBrand = FBrand,FChannel = FChannel,res_table = res_table)



    })
  }



}


#' 更新步骤1的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param log_table  日志表
#' @param FPhase 阶段
#' @param FStatus 状态
#' @param FStep 步骤
#' @param src_table  来源表
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_updateStatus()
graph_budget_calc_step1_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                     FYear =2019,
                                                     FPeriod =1,
                                                     log_table = 't_mrpt_brandChannel_preCheck_log',
                                                      FPhase='calc',
                                                        FStatus  =0,
                                                FStep = 1,
                                                src_table = 't_mrpt_budget'

){
  sql <- paste0("update b set b.FStatus =1  from ",log_table,"  b
where
b.FYear =  ",FYear," and b.FPeriod = ",FPeriod," and  b.FPhase='",FPhase,"'   and b.FStatus  = ",FStatus," and b.FStep =  ",FStep,"
                and FTable ='",src_table,"' ")
  cat(sql)
  tsda::sql_update(conn,sql)

}







#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_calc_step2_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                     FYear =2019,
                                                     FPeriod =1

) {
     data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                        FYear =FYear,
                                        FPeriod =FPeriod,
                                        graph_table = 'vw_mrpt_md_brandchannel_graph_calc_step2',
                                        count_table ='vw_mrpt_budget_count',
                                        src_table = 't_mrpt_budget',
                                        log_table = 't_mrpt_brandChannel_preCheck_log',
                                        FPhase ='calc',
                                        FStep = 2,
                                        FStatus = 0,
                                        valid = FALSE

  )
  return(data)
}


#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_calc_step2_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                     FYear =2019,
                                                     FPeriod =1

) {
  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_calc_step2',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='calc',
                                    FStep = 2,
                                    FStatus = 1,
                                    valid = TRUE

  )
  return(data)
}










#' 步骤2可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_calc_step2_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                             FYear =2019,
                                             FPeriod =1) {
  graph_budget_calc_step2_preCheck_valid(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_calc_step2_preCheck_invalid(conn = conn,FYear = FYear,FPeriod = FPeriod)


}



#' 处理第2步的数据
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_writeRes()
graph_budget_calc_step2_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                            FYear =2019,
                                            FPeriod =1


){

  data<- graph_writeRes_target(conn=tsda::conn_rds('jlrds'),
                                   FYear =FYear,
                                   FPeriod =FPeriod,
                                   res_table = 't_mrpt3_res_budget',
                                   src_view = 'vw_mrpt_budget',
                                   src_table ='t_mrpt_budget',
                                   graph_table = 'vw_mrpt_md_brandchannel_graph_calc_step2',
                                   log_table = 't_mrpt_brandChannel_preCheck_log',
                                   fcalcstep = 2,
                                   FPhase='calc',

                                   FStep = 2

  )


}



#' 更新步骤2的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_updateStatus()
graph_budget_calc_step2_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                FYear =2019,
                                                FPeriod =1

){




 data <- graph_updateStatus_target(conn=tsda::conn_rds('jlrds'),
                                       FYear =FYear,
                                       FPeriod =FPeriod,
                                       log_table = 't_mrpt_brandChannel_preCheck_log',
                                       FPhase='calc',
                                       FStatus  =0,
                                       FStep = 2,
                                       src_table = 't_mrpt_budget')


}















#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step1_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                     FYear =2019,
                                                     FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step1',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 1,
                                    FStatus = 0,
                                    valid = FALSE

  )
  return(data)


}


#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step1_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1) {
  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step1',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 1,
                                    FStatus = 1,
                                    valid = TRUE

  )
  return(data)


}



#' 步骤2可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_rollup1_step1_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                             FYear =2019,
                                             FPeriod =1) {
  graph_budget_rollup1_step1_preCheck_valid(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step1_preCheck_invalid(conn = conn,FYear = FYear,FPeriod = FPeriod)


}


#' 处理第2步的数据
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_writeRes()
graph_budget_rollup1_step1_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                            FYear =2019,
                                            FPeriod =1

){

  data<- graph_writeRes_target(conn=tsda::conn_rds('jlrds'),
                               FYear =FYear,
                               FPeriod =FPeriod,
                               res_table = 't_mrpt3_res_budget',
                               src_view = 'vw_mrpt_budget',
                               src_table ='t_mrpt_budget',
                               graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step1',
                               log_table = 't_mrpt_brandChannel_preCheck_log',
                               fcalcstep = 3,
                               FPhase='rollup1',

                               FStep = 1

  )








}


#' 更新步骤2的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_updateStatus()
graph_budget_rollup1_step1_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                FYear =2019,
                                                FPeriod =1

){

  data <- graph_updateStatus_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase='rollup1',
                                    FStatus  =0,
                                    FStep = 1,
                                    src_table = 't_mrpt_budget')




}





#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step2_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                        FYear =2019,
                                                        FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step2',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 2,
                                    FStatus = 0,
                                    valid = FALSE

  )
  return(data)


}


#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step2_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                      FYear =2019,
                                                      FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step2',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 2,
                                    FStatus = 1,
                                    valid = TRUE

  )
  return(data)

}



#' 步骤2可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_rollup1_step2_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                                FYear =2019,
                                                FPeriod =1) {
  graph_budget_rollup1_step2_preCheck_valid(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step2_preCheck_invalid(conn = conn,FYear = FYear,FPeriod = FPeriod)


}


#' 处理第2步的数据
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_writeRes()
graph_budget_rollup1_step2_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                               FYear =2019,
                                               FPeriod =1


){

  data<- graph_writeRes_target(conn=tsda::conn_rds('jlrds'),
                               FYear =FYear,
                               FPeriod =FPeriod,
                               res_table = 't_mrpt3_res_budget',
                               src_view = 'vw_mrpt_budget',
                               src_table ='t_mrpt_budget',
                               graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step2',
                               log_table = 't_mrpt_brandChannel_preCheck_log',
                               fcalcstep = 4,
                               FPhase='rollup1',

                               FStep = 2

  )








}


#' 更新步骤2的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_updateStatus()
graph_budget_rollup1_step2_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1

){

  data <- graph_updateStatus_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase='rollup1',
                                    FStatus  =0,
                                    FStep = 2,
                                    src_table = 't_mrpt_budget')




}










#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step3_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                        FYear =2019,
                                                        FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step3',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 3,
                                    FStatus = 0,
                                    valid = FALSE

  )
  return(data)


}


#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup1_step3_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                      FYear =2019,
                                                      FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step3',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup1',
                                    FStep = 3,
                                    FStatus = 1,
                                    valid = TRUE

  )
  return(data)
}



#' 步骤2可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_rollup1_step3_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                                FYear =2019,
                                                FPeriod =1) {
  graph_budget_rollup1_step3_preCheck_valid(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step3_preCheck_invalid(conn = conn,FYear = FYear,FPeriod = FPeriod)


}


#' 处理第3步的数据
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#' @param res_table 结果表
#' @param plan_table 计划表
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_writeRes()
graph_budget_rollup1_step3_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                               FYear =2019,
                                               FPeriod =1,
                                               res_table = 't_mrpt3_res_budget',
                                               src_table = 'vw_mrpt_budget',
                                               plan_table = 't_mrpt_brandChannel_preCheck_log'

){

  data<- graph_writeRes_target(conn=tsda::conn_rds('jlrds'),
                               FYear =FYear,
                               FPeriod =FPeriod,
                               res_table = 't_mrpt3_res_budget',
                               src_view = 'vw_mrpt_budget',
                               src_table ='t_mrpt_budget',
                               graph_table = 'vw_mrpt_md_brandchannel_graph_rollup1_step3',
                               log_table = 't_mrpt_brandChannel_preCheck_log',
                               fcalcstep = 5,
                               FPhase='rollup1',

                               FStep = 3

  )







}


#' 更新步骤3的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_updateStatus()
graph_budget_rollup1_step3_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1

){

  data <- graph_updateStatus_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase='rollup1',
                                    FStatus  =0,
                                    FStep = 3,
                                    src_table = 't_mrpt_budget')





}








#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup2_step1_preCheck_invalid <- function(conn=tsda::conn_rds('jlrds'),
                                                        FYear =2019,
                                                        FPeriod =1) {

  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup2_step1',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup2',
                                    FStep = 1,
                                    FStatus = 0,
                                    valid = FALSE

  )
  return(data)


}


#' 更新数据结果
#'
#' @param conn  连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_preCheck_invalid()
graph_budget_rollup2_step1_preCheck_valid <- function(conn=tsda::conn_rds('jlrds'),
                                                      FYear =2019,
                                                      FPeriod =1) {
  data <- graph_preCheck_aux_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    graph_table = 'vw_mrpt_md_brandchannel_graph_rollup2_step1',
                                    count_table ='vw_mrpt_budget_count',
                                    src_table = 't_mrpt_budget',
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase ='rollup2',
                                    FStep = 1,
                                    FStatus = 1,
                                    valid = TRUE

  )
  return(data)
}



#' 步骤2可以进行预检验
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step1_preCheck()
graph_budget_rollup2_step1_preCheck <- function(conn=tsda::conn_rds('jlrds'),
                                                FYear =2019,
                                                FPeriod =1) {
  graph_budget_rollup2_step1_preCheck_valid(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup2_step1_preCheck_invalid(conn = conn,FYear = FYear,FPeriod = FPeriod)


}


#' 处理第2步的数据
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_writeRes()
graph_budget_rollup2_step1_writeRes<- function(conn=tsda::conn_rds('jlrds'),
                                               FYear =2019,
                                               FPeriod =1


){

  data<- graph_writeRes_target(conn=tsda::conn_rds('jlrds'),
                               FYear =FYear,
                               FPeriod =FPeriod,
                               res_table = 't_mrpt3_res_budget',
                               src_view = 'vw_mrpt_budget',
                               src_table ='t_mrpt_budget',
                               graph_table = 'vw_mrpt_md_brandchannel_graph_rollup2_step1',
                               log_table = 't_mrpt_brandChannel_preCheck_log',
                               fcalcstep = 6,
                               FPhase='rollup2',

                               FStep = 1

  )








}


#' 更新步骤2的状态
#'
#' @param conn 连接
#' @param FYear 年份
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_calc_step2_updateStatus()
graph_budget_rollup2_step1_updateStatus<- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1

){

  data <- graph_updateStatus_target(conn=tsda::conn_rds('jlrds'),
                                    FYear =FYear,
                                    FPeriod =FPeriod,
                                    log_table = 't_mrpt_brandChannel_preCheck_log',
                                    FPhase='rollup2',
                                    FStatus  =0,
                                    FStep = 1,
                                    src_table = 't_mrpt_budget')

}




#' 按月计算
#'
#' @param conn 连接
#' @param FYear 年
#' @param FPeriod 月份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_period()
graph_budget_period<- function(conn=tsda::conn_rds('jlrds'),
                                                   FYear =2019,
                                                   FPeriod =1){
  sql_del <- paste0("delete   from t_mrpt_brandChannel_preCheck_log
where   FYear =  ",FYear," and FPeriod = ",FPeriod," and FTable ='t_mrpt_budget' ")
  tsda::sql_update(conn,sql_del)

  graph_budget_calc_step1_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_calc_step1_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_calc_step1_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)

  graph_budget_calc_step2_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_calc_step2_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_calc_step2_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)

  graph_budget_rollup1_step1_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step1_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step1_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)




  graph_budget_rollup1_step2_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step2_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step2_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)

  graph_budget_rollup1_step3_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step3_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup1_step3_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)

  graph_budget_rollup2_step1_preCheck(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup2_step1_writeRes(conn = conn,FYear = FYear,FPeriod = FPeriod)
  graph_budget_rollup2_step1_updateStatus(conn = conn,FYear = FYear,FPeriod = FPeriod)


}



#' 处理年份问题
#'
#' @param conn 连接
#' @param FYear 年份
#'
#' @return 返回值
#' @export
#'
#' @examples
#' graph_budget_year()
graph_budget_year<- function(conn=tsda::conn_rds('jlrds'),
                               FYear =2019){
  res <-lapply(1:12, function(FPeriod){
    graph_budget_period(conn = conn,FYear = FYear,FPeriod = FPeriod)

  })
}
takewiki/jlrdspkg documentation built on March 29, 2022, 3:17 a.m.