empresa-libre/source/app/main.py

99 lines
3.3 KiB
Python
Raw Normal View History

2017-06-27 15:43:02 -05:00
#!/usr/bin/env python3
import falcon
2017-10-08 22:01:19 -05:00
from falcon_multipart.middleware import MultipartMiddleware
2017-06-27 15:43:02 -05:00
from beaker.middleware import SessionMiddleware
2017-09-30 23:14:44 -05:00
from middleware import (
AuthMiddleware,
JSONTranslator,
ConnectionMiddleware,
handle_404
)
2017-06-28 23:55:53 -05:00
from models.db import StorageEngine
2017-11-30 00:37:13 -06:00
from controllers.main import (AppEmpresas,
2017-10-16 00:02:51 -05:00
AppLogin, AppLogout, AppAdmin, AppEmisor, AppConfig,
2017-10-10 22:42:11 -05:00
AppMain, AppValues, AppPartners, AppProducts, AppInvoices, AppFolios,
2017-11-17 00:38:06 -06:00
AppDocumentos, AppFiles, AppPreInvoices, AppCuentasBanco,
2018-08-24 00:52:59 -05:00
AppMovimientosBanco, AppTickets, AppStudents, AppEmployees, AppNomina,
2018-10-10 22:25:10 -05:00
AppInvoicePay, AppCfdiPay, AppSATBancos, AppSociosCuentasBanco,
2021-06-13 23:12:07 -05:00
AppSATFormaPago, AppSATLeyendaFiscales, AppCert, AppSucursales,
2021-06-15 23:45:11 -05:00
AppPartnerProducts,
AppInventoryEntries,
2021-10-30 15:08:32 -05:00
AppTicketsDetails,
AppUsers,
2021-07-24 22:41:06 -05:00
AppWareHouse,
2021-09-05 20:29:08 -05:00
AppWareHouseProduct,
AppSATUnidadesPeso,
2022-02-21 20:45:34 -06:00
AppSATRegimenes,
2017-09-21 23:24:18 -05:00
)
2017-06-27 15:43:02 -05:00
2018-01-30 23:40:33 -06:00
from settings import DEBUG, MV, NO_HTTPS, PATH_SESSIONS
2018-01-11 10:20:55 -06:00
2017-06-27 15:43:02 -05:00
db = StorageEngine()
2017-10-08 22:01:19 -05:00
api = falcon.API(middleware=[
AuthMiddleware(),
JSONTranslator(),
ConnectionMiddleware(),
MultipartMiddleware(),
])
2017-06-27 15:43:02 -05:00
api.req_options.auto_parse_form_urlencoded = True
2017-06-28 23:55:53 -05:00
api.add_sink(handle_404, '')
2017-09-21 23:24:18 -05:00
2017-11-30 00:37:13 -06:00
api.add_route('/empresas', AppEmpresas(db))
2017-09-21 23:24:18 -05:00
api.add_route('/', AppLogin(db))
api.add_route('/logout', AppLogout(db))
api.add_route('/admin', AppAdmin(db))
2017-10-07 23:52:11 -05:00
api.add_route('/emisor', AppEmisor(db))
2017-10-09 23:34:16 -05:00
api.add_route('/folios', AppFolios(db))
2017-09-21 23:24:18 -05:00
api.add_route('/main', AppMain(db))
2017-10-02 00:12:22 -05:00
api.add_route('/values/{table}', AppValues(db))
2017-11-03 14:09:34 -06:00
api.add_route('/files/{table}', AppFiles(db))
2017-10-16 00:02:51 -05:00
api.add_route('/config', AppConfig(db))
2017-10-10 22:42:11 -05:00
api.add_route('/doc/{type_doc}/{id_doc}', AppDocumentos(db))
api.add_route('/partners', AppPartners(db))
2017-10-04 00:11:49 -05:00
api.add_route('/products', AppProducts(db))
2017-10-06 00:10:27 -05:00
api.add_route('/invoices', AppInvoices(db))
2017-11-05 00:13:48 -06:00
api.add_route('/preinvoices', AppPreInvoices(db))
2017-12-20 01:15:48 -06:00
api.add_route('/tickets', AppTickets(db))
2017-11-11 23:58:11 -06:00
api.add_route('/cuentasbanco', AppCuentasBanco(db))
2017-11-17 00:38:06 -06:00
api.add_route('/movbanco', AppMovimientosBanco(db))
2018-01-29 01:55:42 -06:00
api.add_route('/students', AppStudents(db))
2018-01-19 01:00:22 -06:00
api.add_route('/employees', AppEmployees(db))
2018-01-26 01:52:59 -06:00
api.add_route('/nomina', AppNomina(db))
2018-08-24 23:04:10 -05:00
api.add_route('/invoicepay', AppInvoicePay(db))
api.add_route('/cfdipay', AppCfdiPay(db))
2018-10-05 23:13:03 -05:00
api.add_route('/satbancos', AppSATBancos(db))
2018-10-10 22:25:10 -05:00
api.add_route('/satformapago', AppSATFormaPago(db))
2018-10-08 01:13:46 -05:00
api.add_route('/socioscb', AppSociosCuentasBanco(db))
2020-03-01 23:18:26 -06:00
api.add_route('/leyendasfiscales', AppSATLeyendaFiscales(db))
2020-12-30 22:45:57 -06:00
api.add_route('/cert', AppCert(db))
2021-05-25 20:36:27 -05:00
api.add_route('/sucursales', AppSucursales(db))
2021-06-13 23:12:07 -05:00
api.add_route('/partnerproducts', AppPartnerProducts(db))
2021-06-15 23:45:11 -05:00
api.add_route('/inventoryentries', AppInventoryEntries(db))
2021-07-24 22:41:06 -05:00
api.add_route('/warehouse', AppWareHouse(db))
2021-09-05 20:29:08 -05:00
api.add_route('/warehouseproduct', AppWareHouseProduct(db))
2021-10-30 15:08:32 -05:00
api.add_route('/ticketsdetails', AppTicketsDetails(db))
2021-07-21 22:04:13 -05:00
api.add_route('/users', AppUsers(db))
api.add_route('/satunidadespeso', AppSATUnidadesPeso(db))
2022-02-21 20:45:34 -06:00
api.add_route('/satregimenes', AppSATRegimenes(db))
2017-06-27 15:43:02 -05:00
2017-09-21 23:24:18 -05:00
session_options = {
2017-06-27 15:43:02 -05:00
'session.type': 'file',
2017-12-19 11:55:36 -06:00
'session.cookie_expires': True,
2018-01-10 01:35:11 -06:00
'session.httponly': True,
2018-01-24 22:07:30 -06:00
'session.secure': True,
2018-01-11 10:20:55 -06:00
'session.data_dir': PATH_SESSIONS['data'],
'session.lock_dir': PATH_SESSIONS['lock'],
2017-06-27 15:43:02 -05:00
}
2018-01-30 23:40:33 -06:00
# ~ Si no usas (NO deberías) certificados en tu servidor, ponla siempre en False
if DEBUG or MV or NO_HTTPS:
2018-01-25 00:52:45 -06:00
session_options['session.secure'] = False
2017-09-21 23:24:18 -05:00
app = SessionMiddleware(api, session_options)
2017-06-27 15:43:02 -05:00