summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-15 08:41:24 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-15 08:41:24 +0000
commitf03ff051463bd93411131327245080fe9044d8b1 (patch)
treea129c058c106ac1aed414fd3a05dcb3f31431813
parent42ef546aabd1ea8c820234ab4849164d4df24355 (diff)
automatic import of python-aiositi-mex
-rw-r--r--.gitignore1
-rw-r--r--python-aiositi-mex.spec466
-rw-r--r--sources1
3 files changed, 468 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..2fd683c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/aiositi-mex-0.0.4.tar.gz
diff --git a/python-aiositi-mex.spec b/python-aiositi-mex.spec
new file mode 100644
index 0000000..f2a95a3
--- /dev/null
+++ b/python-aiositi-mex.spec
@@ -0,0 +1,466 @@
+%global _empty_manifest_terminate_build 0
+Name: python-aiositi-mex
+Version: 0.0.4
+Release: 1
+Summary: Cliente para enviar reportes a la CNBV.
+License: MIT License
+URL: https://github.com/cuenca-mx/siti-python
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/ae/60/3e1d4a6ba7cd01d50b4d0a52f4451a3afd7995f0a3b2d990d7760af840e6/aiositi-mex-0.0.4.tar.gz
+BuildArch: noarch
+
+Requires: python3-requests
+Requires: python3-aiohttp
+Requires: python3-pydantic
+Requires: python3-pandas
+
+%description
+# siti-python
+[![release](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml)
+[![test](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml)
+
+Cliente para enviar reportes a la CNBV por medio de la plataforma SITI
+Documentación: https://sitiapiqa.cnbv.gob.mx/devportal/apis/
+
+La manera sugerida para llenar reportes es por medio de diccionarios con el formato del modelo:
+
+## Desde diccionarios
+
+```python
+from siti.resources.ifpe import Reporte111
+
+dict_111 = {
+ 'identificador_reporte': {
+ 'inicio_periodo': dt.date(2019, 1, 1),
+ 'fin_periodo': dt.date(2019, 1, 31),
+ 'clave_institucion': '065000',
+ 'reporte': '111',
+ },
+ 'informacion_financiera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434,
+ },
+ ]
+}
+
+r111 = Reporte111(**dict_111)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+Donde r111 será el reporte construido con el modelo, y se realizarán las validaciones propias de ese reporte.
+
+
+## Desde dataframe
+De igual manera se puede construir el objto con la utilización de un dataframe de Pandas con un formato que siga las columnas del modelo que se quiere construir.
+Para obtener las columnas del modelo se puede mandar a llamar el método `.columns()`
+
+```python
+In [13]: Reporte111.columns()
+Out[13]:
+{
+ 'inicio_periodo': str,
+ 'fin_periodo': str,
+ 'clave_institucion': str,
+ 'reporte': str,
+ 'concepto': str,
+ 'moneda': str,
+ 'dato': float
+}
+```
+
+Se puede construir un dataframe con esta información y posteriormente mandar a llamar el método .from_dataframe(name, df), dónde name es el nombre del archivo que tiene que cumplir con el formato `CLAVEINSTITUCION_REPORTE_FECHAINICIO_FECHAFINAL` ejemplo: `065014_2610_20210831_20210831` para obtener los datos del campo `identificador_reporte`.
+
+```python
+import pandas as pd
+
+name = '065014_2610_20210831_20210831.csv'
+columns = Reporte111.columns()
+df = pd.read_csv(name, dtype=columns)
+r111 = Reporte111.from_dataframe(name, df)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+
+## Enviar
+
+Al mandar a llamar cualquiera de los métodos de enviar (`send`, `resend`, `update`), el cliente automáticamente convertirá el objeto al formato solicitado por la CNBV. Este formato se puede obtener llamando el método .dict(to_camel_case=True).
+
+
+> **Estos métodos regresarán un folio, el cual es importante almacenar para poder realizar el seguimiento del envío**
+
+```python
+In [1]: r111.dict(to_camel_case=True)
+Out[1]:
+{
+ 'identificadorReporte': {
+ 'inicioPeriodo': '20190101',
+ 'finPeriodo': '20190131',
+ 'claveInstitucion': '065000',
+ 'reporte': '111'
+ },
+ 'informacionFinanciera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434
+ }
+ ]
+}
+```
+
+
+%package -n python3-aiositi-mex
+Summary: Cliente para enviar reportes a la CNBV.
+Provides: python-aiositi-mex
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-aiositi-mex
+# siti-python
+[![release](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml)
+[![test](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml)
+
+Cliente para enviar reportes a la CNBV por medio de la plataforma SITI
+Documentación: https://sitiapiqa.cnbv.gob.mx/devportal/apis/
+
+La manera sugerida para llenar reportes es por medio de diccionarios con el formato del modelo:
+
+## Desde diccionarios
+
+```python
+from siti.resources.ifpe import Reporte111
+
+dict_111 = {
+ 'identificador_reporte': {
+ 'inicio_periodo': dt.date(2019, 1, 1),
+ 'fin_periodo': dt.date(2019, 1, 31),
+ 'clave_institucion': '065000',
+ 'reporte': '111',
+ },
+ 'informacion_financiera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434,
+ },
+ ]
+}
+
+r111 = Reporte111(**dict_111)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+Donde r111 será el reporte construido con el modelo, y se realizarán las validaciones propias de ese reporte.
+
+
+## Desde dataframe
+De igual manera se puede construir el objto con la utilización de un dataframe de Pandas con un formato que siga las columnas del modelo que se quiere construir.
+Para obtener las columnas del modelo se puede mandar a llamar el método `.columns()`
+
+```python
+In [13]: Reporte111.columns()
+Out[13]:
+{
+ 'inicio_periodo': str,
+ 'fin_periodo': str,
+ 'clave_institucion': str,
+ 'reporte': str,
+ 'concepto': str,
+ 'moneda': str,
+ 'dato': float
+}
+```
+
+Se puede construir un dataframe con esta información y posteriormente mandar a llamar el método .from_dataframe(name, df), dónde name es el nombre del archivo que tiene que cumplir con el formato `CLAVEINSTITUCION_REPORTE_FECHAINICIO_FECHAFINAL` ejemplo: `065014_2610_20210831_20210831` para obtener los datos del campo `identificador_reporte`.
+
+```python
+import pandas as pd
+
+name = '065014_2610_20210831_20210831.csv'
+columns = Reporte111.columns()
+df = pd.read_csv(name, dtype=columns)
+r111 = Reporte111.from_dataframe(name, df)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+
+## Enviar
+
+Al mandar a llamar cualquiera de los métodos de enviar (`send`, `resend`, `update`), el cliente automáticamente convertirá el objeto al formato solicitado por la CNBV. Este formato se puede obtener llamando el método .dict(to_camel_case=True).
+
+
+> **Estos métodos regresarán un folio, el cual es importante almacenar para poder realizar el seguimiento del envío**
+
+```python
+In [1]: r111.dict(to_camel_case=True)
+Out[1]:
+{
+ 'identificadorReporte': {
+ 'inicioPeriodo': '20190101',
+ 'finPeriodo': '20190131',
+ 'claveInstitucion': '065000',
+ 'reporte': '111'
+ },
+ 'informacionFinanciera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434
+ }
+ ]
+}
+```
+
+
+%package help
+Summary: Development documents and examples for aiositi-mex
+Provides: python3-aiositi-mex-doc
+%description help
+# siti-python
+[![release](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/release.yml)
+[![test](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml/badge.svg)](https://github.com/cuenca-mx/siti-python/actions/workflows/test.yml)
+
+Cliente para enviar reportes a la CNBV por medio de la plataforma SITI
+Documentación: https://sitiapiqa.cnbv.gob.mx/devportal/apis/
+
+La manera sugerida para llenar reportes es por medio de diccionarios con el formato del modelo:
+
+## Desde diccionarios
+
+```python
+from siti.resources.ifpe import Reporte111
+
+dict_111 = {
+ 'identificador_reporte': {
+ 'inicio_periodo': dt.date(2019, 1, 1),
+ 'fin_periodo': dt.date(2019, 1, 31),
+ 'clave_institucion': '065000',
+ 'reporte': '111',
+ },
+ 'informacion_financiera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434,
+ },
+ ]
+}
+
+r111 = Reporte111(**dict_111)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+Donde r111 será el reporte construido con el modelo, y se realizarán las validaciones propias de ese reporte.
+
+
+## Desde dataframe
+De igual manera se puede construir el objto con la utilización de un dataframe de Pandas con un formato que siga las columnas del modelo que se quiere construir.
+Para obtener las columnas del modelo se puede mandar a llamar el método `.columns()`
+
+```python
+In [13]: Reporte111.columns()
+Out[13]:
+{
+ 'inicio_periodo': str,
+ 'fin_periodo': str,
+ 'clave_institucion': str,
+ 'reporte': str,
+ 'concepto': str,
+ 'moneda': str,
+ 'dato': float
+}
+```
+
+Se puede construir un dataframe con esta información y posteriormente mandar a llamar el método .from_dataframe(name, df), dónde name es el nombre del archivo que tiene que cumplir con el formato `CLAVEINSTITUCION_REPORTE_FECHAINICIO_FECHAFINAL` ejemplo: `065014_2610_20210831_20210831` para obtener los datos del campo `identificador_reporte`.
+
+```python
+import pandas as pd
+
+name = '065014_2610_20210831_20210831.csv'
+columns = Reporte111.columns()
+df = pd.read_csv(name, dtype=columns)
+r111 = Reporte111.from_dataframe(name, df)
+
+In [1]: r111
+Out[1]:
+ Reporte111(
+ folio=None,
+ identificador_reporte=IdentificadorReporte(
+ inicio_periodo=datetime.date(2019, 1, 1),
+ fin_periodo=datetime.date(2019, 1, 31),
+ clave_institucion='065000',
+ reporte='111'
+ ),
+ informacion_financiera=[
+ InformacionFinanciera(
+ concepto='100000000000',
+ moneda='2',
+ dato=334422.0434
+ )
+ ]
+ )
+```
+
+
+## Enviar
+
+Al mandar a llamar cualquiera de los métodos de enviar (`send`, `resend`, `update`), el cliente automáticamente convertirá el objeto al formato solicitado por la CNBV. Este formato se puede obtener llamando el método .dict(to_camel_case=True).
+
+
+> **Estos métodos regresarán un folio, el cual es importante almacenar para poder realizar el seguimiento del envío**
+
+```python
+In [1]: r111.dict(to_camel_case=True)
+Out[1]:
+{
+ 'identificadorReporte': {
+ 'inicioPeriodo': '20190101',
+ 'finPeriodo': '20190131',
+ 'claveInstitucion': '065000',
+ 'reporte': '111'
+ },
+ 'informacionFinanciera': [
+ {
+ 'concepto': '100000000000',
+ 'moneda': '2',
+ 'dato': 334422.0434
+ }
+ ]
+}
+```
+
+
+%prep
+%autosetup -n aiositi-mex-0.0.4
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-aiositi-mex -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 0.0.4-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..640a430
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+34576d5bafc9adbe5a576b50b9895a47 aiositi-mex-0.0.4.tar.gz