Módulo:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020
Este módulo no tiene página de documentación[crear]
local z = {}
local args -- used as global in ModuloArgs
local entidad -- used as global in local functions
local ModuloArgs = require('Módulo:Argumentos')
local argumento = ModuloArgs.obtenerValorDeArgumentos
function propiedad(idPropiedad)
-- global entidad
local statements = mw.wikibase.getBestStatements(entidad, idPropiedad)
return statements[#statements].mainsnak.datavalue.value.amount
end
function z.Fila(frame)
ModuloArgs.obtenerTablaDeArgumentos(frame)
entidad = argumento{'entidad'}
local lang = mw.language.getContentLanguage()
local nombre = argumento{'país', 'zona'} or ''
local poblacion = argumento{'población'}
local confirmados = argumento{'confirmados', {propiedad, 'P1603'} }
local fallecidos = argumento{'fallecidos', {propiedad, 'P1120'} }
local recuperados = argumento{'recuperados', {propiedad, 'P8010'} }
local valorPoblacion = poblacion and tonumber(poblacion) or 0
local valorConfirmados = confirmados and tonumber(confirmados) or 0
local valorFallecidos = fallecidos and tonumber(fallecidos) or 0
local valorRecuperados = recuperados and tonumber(recuperados) or 0
local valorCxMhab = poblacion and math.floor(1000000 * valorConfirmados / valorPoblacion)
local valorFxMhab = poblacion and math.floor(1000000 * valorFallecidos / valorPoblacion)
local valorFx100C = confirmados and string.format('%.1f', 100 * valorFallecidos / valorConfirmados)
local valorRx100C = confirmados and string.format('%.1f', 100 * valorRecuperados / valorConfirmados)
local textoPoblacion = poblacion and lang:formatNum( valorPoblacion ) or ''
local textoFallecidos = fallecidos and lang:formatNum( valorFallecidos ) or ''
local textoConfirmados = confirmados and lang:formatNum( valorConfirmados ) or ''
local textoRecuperados = recuperados and lang:formatNum( valorRecuperados ) or ''
local textoCxMhab = confirmados and poblacion and lang:formatNum( valorCxMhab ) or ''
local textoFx100C = fallecidos and confirmados and (valorFx100C .. ' %') or ''
local textoFxMhab = fallecidos and poblacion and lang:formatNum( valorFxMhab ) or ''
local textoRx100C = recuperados and confirmados and (valorRx100C .. ' %') or ''
if argumento{'país'} then
nombre = frame:preprocess('{{Bandera3|' .. nombre .. '}}')
end
return '<tr>'
.. '<th style="text-align: left;">' .. nombre .. '</th>'
.. '<td>' .. textoPoblacion .. '</td>'
.. '<td>' .. textoConfirmados .. '</td>'
.. '<td>' .. textoCxMhab .. '</td>'
.. '<td>' .. textoFallecidos .. '</td>'
.. '<td>' .. textoFx100C .. '</td>'
.. '<td>' .. textoFxMhab .. '</td>'
.. '<td>' .. textoRecuperados .. '</td>'
.. '<td>' .. textoRx100C .. '</td>'
.. '</tr>'
end
return z