[éCow] Correctifs taureaux lignées

This commit is contained in:
2026-08-07 11:24:30 +02:00
parent 46f7294fc0
commit 108562c69b
4 changed files with 54 additions and 68 deletions
+8 -4
View File
@@ -183,7 +183,7 @@ get_synth_prod_parent <- function(vaches, produits, params_ponderation){
ivv2Brut < 365 ~ 0,
TRUE ~ ivv2Brut - 365
),
days_since_last = as.numeric(difftime(Sys.Date(), last_danais, units = "days")),
days_since_last = as.numeric(difftime(if_else(is.na(dateSortDetenteur), Sys.Date(), dateSortDetenteur), last_danais, units = "days")),
e4 = dplyr::case_when(
is.na(days_since_last) ~ 0,
days_since_last < 365 ~ 0,
@@ -191,7 +191,7 @@ get_synth_prod_parent <- function(vaches, produits, params_ponderation){
),
# temps productif (%)
age_days = time_length( interval( dateNaiss, Sys.Date() ), "days" ),
age_days = time_length( interval( dateNaiss, if_else(is.na(dateSortDetenteur), Sys.Date(), dateSortDetenteur) ), "days" ),
age_years = round(age_days / 365, 1),
tempsprod = round( (age_days - (agevel1 * 30.4 + e2 + e3 * (nbcampvel - 2) + e4)) / age_days * 100, 1 ),
@@ -358,7 +358,7 @@ get_stats_parent <- function(produits, regroupement){
#' @param actif booléen. Filtre sur les produits
#' selon le champs {}
#' @return Liste d'adhérents
get_stats_filles <- function(df, prefix, regroupement, actif = FALSE) {
get_stats_filles <- function(df, prefix, regroupement, actif = FALSE, cheptel) {
nb <- df %>%
group_by({{regroupement}}) %>%
summarise(
@@ -367,7 +367,11 @@ get_stats_filles <- function(df, prefix, regroupement, actif = FALSE) {
)
if (actif) {
df <- df %>% filter(is.na(dateSortDetenteur))
df <- df %>%
filter(
is.na(dateSortDetenteur),
cheptelDetenteur == cheptel # Vérifie pour les descendantes car elles ont pu être vendues
)
}
res <- df %>% group_by({{regroupement}}) %>%