# coding=utf-8 from connect import connection, engine, metadata import sqlalchemy as db from flask import jsonify, redirect, url_for, render_template import json # import index.py from funciones import valida_fecha_2 col1=[{"label":"Razon","type":"text","name":"razon","require":"1"}] col2=[{"label":"Acciones","type":"text","name":"acciones","require":"1"}, {"label":"Fecha","type":"datetime-local","name":"fecha","require":"1"}] form_order= {"entradas":{"col1":col1,"col2":col2}} visita_col=["razon", "acciones", 'fecha'] def prepara_values_visita(data): values_list={} for item in visita_col: if item=="datetime-local": values_list.update({item:valida_fecha_2(data[item])}) else: values_list.update({item:data[item]}) return values_list def edit(data): visitas_enfermeria = db.Table('visitas_enfermeria', metadata, autoload=True, autoload_with=engine) values_list=prepara_values_visita(data) query = db.update(visitas_enfermeria).values(values_list) query = query.where(visitas_enfermeria.columns.id == data['id']) ResultProxy = connection.execute(query,values_list) return redirect(url_for("formas",perfil='enfermeria', accion="edit", tipo="visitas_enfermeria", id=data['id'])) def add(data): visitas_enfermeria = db.Table('visitas_enfermeria', metadata, autoload=True, autoload_with=engine) values_list=prepara_values_visita(data) query = db.insert(visitas_enfermeria).values(values_list) ResultProxy = connection.execute(query,values_list) return redirect(url_for("formas",perfil='enfermeria', accion="edit", tipo="visitas_enfermeria", id=data['id'])) def add_form(): i=1 orden=1 entradas={} for col in form_order["entradas"]: col_data=[] for item in form_order["entradas"][col]: item.update({"tabindex":orden}) item.update({"disabled":False}) orden+=1 entradas.update({"col"+str(i):col_data}) i+=1 data= {"titulo":"Enfermera","accion":"AƱadir"} data.update(form_order) data.update({"abled":True}) return jsonify(data) def edit_form(id, disabled=False): visitas_enfermeria = db.Table('visitas_enfermeria', metadata, autoload=True, autoload_with=engine) query = db.select([visitas_enfermeria.columns.razon, visitas_enfermeria.columns.acciones, visitas_enfermeria.columns.fecha]) query = query.select_from(visitas_enfermeria).where(visitas_enfermeria.columns.id == id) result = connection.execute(query).fetchall() if not len(result): return False for row in result: row_as_dict = dict(row) i=1 orden=1 entradas={} for col in form_order["entradas"]: col_data=[] for item in form_order["entradas"][col]: if item["type"]=="select": item.update({"value":{"id":row_as_dict[item["name"]]}}) elif item["type"]=="checkbox": item.update({"value":int(row_as_dict[item["name"]])}) elif item["type"]=="datetime-local": item.update({"value":valida_fecha_2(str(row_as_dict[item["name"]]))}) else: item.update({"value":str(row_as_dict[item["name"]])}) item.update({"tabindex":orden}) item.update({"disabled":disabled}) col_data.append(item) orden+=1 entradas.update({"col"+str(i):col_data}) i+=1 data= {"titulo":"Visitas Enfermeria","accion":"Editar"} data.update({"entradas":entradas}) abled=True if disabled: abled=False data.update({"abled":abled}) return jsonify(data)