provisioning: alinear packs de demo con los del backend (clinica/spa/estetica/dental/custom)
This commit is contained in:
@@ -32,7 +32,7 @@ import traceback
|
|||||||
# (nombre, precio, duración_min, categoría) por giro. La categoría usa la
|
# (nombre, precio, duración_min, categoría) por giro. La categoría usa la
|
||||||
# selección de skeen.servicio: consulta | tratamiento | procedimiento | paquete.
|
# selección de skeen.servicio: consulta | tratamiento | procedimiento | paquete.
|
||||||
PACKS = {
|
PACKS = {
|
||||||
'generico': [
|
'custom': [
|
||||||
('Consulta general', 600, 30, 'consulta'),
|
('Consulta general', 600, 30, 'consulta'),
|
||||||
('Consulta de seguimiento', 450, 30, 'consulta'),
|
('Consulta de seguimiento', 450, 30, 'consulta'),
|
||||||
('Tratamiento básico', 800, 45, 'tratamiento'),
|
('Tratamiento básico', 800, 45, 'tratamiento'),
|
||||||
@@ -68,7 +68,7 @@ PACKS = {
|
|||||||
('Valoración preoperatoria', 1100, 45, 'consulta'),
|
('Valoración preoperatoria', 1100, 45, 'consulta'),
|
||||||
('Paquete 10 terapias', 6500, 50, 'paquete'),
|
('Paquete 10 terapias', 6500, 50, 'paquete'),
|
||||||
],
|
],
|
||||||
'derma': [
|
'dental': [
|
||||||
('Consulta dermatológica', 900, 30, 'consulta'),
|
('Consulta dermatológica', 900, 30, 'consulta'),
|
||||||
('Consulta de seguimiento', 600, 20, 'consulta'),
|
('Consulta de seguimiento', 600, 20, 'consulta'),
|
||||||
('Limpieza facial profunda', 950, 50, 'tratamiento'),
|
('Limpieza facial profunda', 950, 50, 'tratamiento'),
|
||||||
@@ -82,6 +82,9 @@ PACKS = {
|
|||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 'estetica' comparte el set del spa (mismo perfil de servicios) para el demo.
|
||||||
|
PACKS['estetica'] = PACKS['spa']
|
||||||
|
|
||||||
DEMO_PATIENTS = [
|
DEMO_PATIENTS = [
|
||||||
('Ana López Márquez', '6681230001', 'F'), ('Carlos Ruiz Peña', '6681230002', 'M'),
|
('Ana López Márquez', '6681230001', 'F'), ('Carlos Ruiz Peña', '6681230002', 'M'),
|
||||||
('María Fernanda Soto', '6681230003', 'F'), ('Jorge Alberto Nava', '6681230004', 'M'),
|
('María Fernanda Soto', '6681230003', 'F'), ('Jorge Alberto Nava', '6681230004', 'M'),
|
||||||
@@ -191,7 +194,7 @@ def seed_glossary(env, ICP, cfg, report):
|
|||||||
- llave ir.config_parameter 'skeen.glosario' ya existe -> se actualiza;
|
- llave ir.config_parameter 'skeen.glosario' ya existe -> se actualiza;
|
||||||
- modelo 'skeen.glosario' existe -> se crea/actualiza un registro;
|
- modelo 'skeen.glosario' existe -> se crea/actualiza un registro;
|
||||||
- ninguno de los dos existe -> TODO (no aborta)."""
|
- ninguno de los dos existe -> TODO (no aborta)."""
|
||||||
pack = cfg.get('pack') or 'generico'
|
pack = cfg.get('pack') or 'clinica'
|
||||||
raw = ICP.get_param('skeen.glosario')
|
raw = ICP.get_param('skeen.glosario')
|
||||||
if raw is not None:
|
if raw is not None:
|
||||||
try:
|
try:
|
||||||
@@ -264,11 +267,11 @@ def seed_service_category(env, cfg, report):
|
|||||||
if not has_model(env, 'skeen.service.category'):
|
if not has_model(env, 'skeen.service.category'):
|
||||||
report['todo'].append(
|
report['todo'].append(
|
||||||
"skeen.service.category: modelo ausente; cuando exista, sembrar la "
|
"skeen.service.category: modelo ausente; cuando exista, sembrar la "
|
||||||
"semilla de categorías del pack '%s'" % (cfg.get('pack') or 'generico'))
|
"semilla de categorías del pack '%s'" % (cfg.get('pack') or 'clinica'))
|
||||||
return
|
return
|
||||||
Model = env['skeen.service.category'].sudo()
|
Model = env['skeen.service.category'].sudo()
|
||||||
cats = []
|
cats = []
|
||||||
for _n, _p, _d, cat in PACKS.get(cfg.get('pack') or 'generico', PACKS['generico']):
|
for _n, _p, _d, cat in PACKS.get(cfg.get('pack') or 'clinica', PACKS['clinica']):
|
||||||
if cat not in cats:
|
if cat not in cats:
|
||||||
cats.append(cat)
|
cats.append(cat)
|
||||||
created = 0
|
created = 0
|
||||||
@@ -292,7 +295,7 @@ def _mark(env, model, field, value, ids):
|
|||||||
|
|
||||||
|
|
||||||
def seed_demo(env, cfg, report):
|
def seed_demo(env, cfg, report):
|
||||||
pack = PACKS.get(cfg.get('pack') or 'generico', PACKS['generico'])
|
pack = PACKS.get(cfg.get('pack') or 'clinica', PACKS['clinica'])
|
||||||
today = datetime.date.today()
|
today = datetime.date.today()
|
||||||
week_start = today - datetime.timedelta(days=today.weekday())
|
week_start = today - datetime.timedelta(days=today.weekday())
|
||||||
ids = {'servicio': [], 'paciente': [], 'empleado': [], 'cita': [],
|
ids = {'servicio': [], 'paciente': [], 'empleado': [], 'cita': [],
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ NGINX_AVAILABLE = '/etc/nginx/sites-available'
|
|||||||
NGINX_ENABLED = '/etc/nginx/sites-enabled'
|
NGINX_ENABLED = '/etc/nginx/sites-enabled'
|
||||||
SYSTEMD_DIR = '/etc/systemd/system'
|
SYSTEMD_DIR = '/etc/systemd/system'
|
||||||
REFERENCE_DB = 'skeen_odoo' # de aquí se toma la lista de módulos skeen
|
REFERENCE_DB = 'skeen_odoo' # de aquí se toma la lista de módulos skeen
|
||||||
DEFAULT_PACK = 'generico'
|
DEFAULT_PACK = 'clinica'
|
||||||
SLUG_RE = re.compile(r'^[a-z0-9-]+$')
|
SLUG_RE = re.compile(r'^[a-z0-9-]+$')
|
||||||
DB_RE = re.compile(r'^[a-z0-9_]+$')
|
DB_RE = re.compile(r'^[a-z0-9_]+$')
|
||||||
|
|
||||||
@@ -157,7 +157,7 @@ def parse_args(argv=None):
|
|||||||
help='rol PostgreSQL (default <slug>: rol propio con '
|
help='rol PostgreSQL (default <slug>: rol propio con '
|
||||||
'password nueva; usar "skeen" para el rol compartido)')
|
'password nueva; usar "skeen" para el rol compartido)')
|
||||||
ap.add_argument('--pack', default=DEFAULT_PACK,
|
ap.add_argument('--pack', default=DEFAULT_PACK,
|
||||||
choices=['generico', 'spa', 'clinica', 'derma'],
|
choices=['clinica', 'spa', 'estetica', 'dental', 'custom'],
|
||||||
help='giro para glosario y datos demo')
|
help='giro para glosario y datos demo')
|
||||||
ap.add_argument('--demo', action='store_true', help='sembrar datos demo')
|
ap.add_argument('--demo', action='store_true', help='sembrar datos demo')
|
||||||
ap.add_argument('--demo-limpia', action='store_true',
|
ap.add_argument('--demo-limpia', action='store_true',
|
||||||
|
|||||||
Reference in New Issue
Block a user