Spaces:
Sleeping
Sleeping
Commit ·
3d0ec8f
1
Parent(s): 4d442de
add new router
Browse files- .DS_Store +0 -0
- function.R +68 -0
.DS_Store
CHANGED
|
Binary files a/.DS_Store and b/.DS_Store differ
|
|
|
function.R
CHANGED
|
@@ -309,3 +309,71 @@ function(req) {
|
|
| 309 |
|
| 310 |
return(result)
|
| 311 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 309 |
|
| 310 |
return(result)
|
| 311 |
}
|
| 312 |
+
|
| 313 |
+
#* One Cycle Feeding Generator
|
| 314 |
+
#* @serializer unboxedJSON
|
| 315 |
+
#* @post /one-week-generator
|
| 316 |
+
function(req) {
|
| 317 |
+
|
| 318 |
+
result_data <- req$body
|
| 319 |
+
|
| 320 |
+
feed_data_container <- tibble(
|
| 321 |
+
pond_code = as.character(),
|
| 322 |
+
doc_data = as.numeric(),
|
| 323 |
+
mbw_data = as.numeric(),
|
| 324 |
+
sr_data = as.numeric(),
|
| 325 |
+
fi_data = as.numeric(),
|
| 326 |
+
fr_data = as.numeric(),
|
| 327 |
+
feed_fi = as.numeric(),
|
| 328 |
+
feed_fr = as.numeric(),
|
| 329 |
+
biomass_data = as.numeric(),
|
| 330 |
+
population_data = as.numeric(),
|
| 331 |
+
date_data = as.Date(character())
|
| 332 |
+
)
|
| 333 |
+
|
| 334 |
+
result_data %>%
|
| 335 |
+
select(pond_code, stocking_actual, fi_multiplier) -> ponds_setting
|
| 336 |
+
|
| 337 |
+
for (i in 1:nrow(result_data)) {
|
| 338 |
+
pond_data <- result_data[i,]
|
| 339 |
+
|
| 340 |
+
stock_data <- ponds_setting %>%
|
| 341 |
+
filter(pond_code == pond_data$pond) %>%
|
| 342 |
+
pull(stocking_actual)
|
| 343 |
+
|
| 344 |
+
fi_mult <- ponds_setting %>%
|
| 345 |
+
filter(pond_code == pond_data$pond) %>%
|
| 346 |
+
pull(fi_multiplier)
|
| 347 |
+
|
| 348 |
+
doc_data <- cumsum(c(pond_data$doc, rep(1, 7)))[2:8]
|
| 349 |
+
mbw_data <- cumsum(c(pond_data$mbw_sampling, rep(pond_data$adg_target, 7)))[2:8]
|
| 350 |
+
fi_data <- rep(pond_data$adg_target* fi_mult, 7)
|
| 351 |
+
fr_data <- 10^(-0.899-(0.561*log10(mbw_data)))
|
| 352 |
+
|
| 353 |
+
sr_est <- pond_data$sr_input
|
| 354 |
+
feed_fi <- (stock_data * (pond_data$sr_input/100) * doc_data * fi_data)/100000
|
| 355 |
+
feed_fr <- (stock_data * (pond_data$sr_input/100) * mbw_data * fr_data)/1000
|
| 356 |
+
population_data <- stock_data * (pond_data$sr_input/100)
|
| 357 |
+
biomass <- population_data * mbw_data
|
| 358 |
+
|
| 359 |
+
date_data <- seq(input$weekly_feeding_date_input, by = "day", length.out = 7)
|
| 360 |
+
|
| 361 |
+
tibble(
|
| 362 |
+
pond_code = pond_data$pond,
|
| 363 |
+
doc_data = doc_data,
|
| 364 |
+
mbw_data = mbw_data,
|
| 365 |
+
sr_data = sr_est,
|
| 366 |
+
fi_data = fi_data,
|
| 367 |
+
fr_data = fr_data,
|
| 368 |
+
feed_fi = feed_fi,
|
| 369 |
+
feed_fr = feed_fr,
|
| 370 |
+
fi_fr_ratio = feed_fi/feed_fr,
|
| 371 |
+
biomass_data = biomass,
|
| 372 |
+
population_data = population_data,
|
| 373 |
+
date_data = date_data
|
| 374 |
+
) %>%
|
| 375 |
+
bind_rows(feed_data_container) -> feed_data_container
|
| 376 |
+
}
|
| 377 |
+
|
| 378 |
+
return(feed_data_container)
|
| 379 |
+
}
|