Skip to content
Snippets Groups Projects
Unverified Commit a0343eef authored by Álvaro's avatar Álvaro Committed by GitHub
Browse files

Merge pull request #37 from SergioEstebanP/botones_supervisor

Botones supervisor
parents 425f605f dfd26a5d
Branches
No related tags found
No related merge requests found
...@@ -95,14 +95,31 @@ def incidencias_cerradas(): ...@@ -95,14 +95,31 @@ def incidencias_cerradas():
sin_solucion = get_incidencias_by_estado(4) sin_solucion = get_incidencias_by_estado(4)
con_solucion = get_incidencias_by_estado(5) con_solucion = get_incidencias_by_estado(5)
incidencias = list(set(sin_solucion + con_solucion)) incidencias = list(set(sin_solucion + con_solucion))
return render_template('incidencias_cliente.html', incidencias=incidencias) return render_template('incidencias_cliente.html', incidencias=incidencias, titulo='Todas las incidencias cerradas')
@app.route('/incidencias_abiertas') @app.route('/incidencias_abiertas')
@login_required @login_required
def incidencias_abiertas(): def incidencias_abiertas():
incidencias = get_incidencias_reportadas_por(current_user.nick) incidencias = get_incidencias_reportadas_por(current_user.nick)
return render_template('incidencias_cliente.html', incidencias=incidencias) return render_template('incidencias_cliente.html', incidencias=incidencias, titulo='Incidencias abiertas reportadas por '+current_user.nick)
@app.route('/incidencias_abiertas_clientes')
@login_required
def incidencias_abiertas_clientes():
incidencias = get_incidencias_reportadas_por_clientes()
return render_template('incidencias_cliente.html', incidencias=incidencias, titulo='Incidencias abiertas reportadas por clientes')
@app.route('/todas_incidencias')
@login_required
def todas_incidencias():
incidencias = get_incidencias()
return render_template('incidencias_cliente.html', incidencias=incidencias, titulo='Todas las incidencias del sistema')
@app.route('/incidencias_asignadas_tecnico')
@login_required
def incidencias_asignadas_tecnico():
incidencias = get_incidencias_by_estado(1)
return render_template('incidencias_cliente.html', incidencias=incidencias, titulo='Incidencias en resolución')
@app.route('/registrar_incidencia', methods=['GET', 'POST']) @app.route('/registrar_incidencia', methods=['GET', 'POST'])
@login_required @login_required
...@@ -226,6 +243,10 @@ class CategoriaIncidencia(db.Model): ...@@ -226,6 +243,10 @@ class CategoriaIncidencia(db.Model):
id = db.Column(db.Integer, primary_key=True) id = db.Column(db.Integer, primary_key=True)
categoria = db.Column(db.String(40)) categoria = db.Column(db.String(40))
class TipoUsuario(db.Model):
id = db.Column(db.Integer, primary_key=True)
tipoUsuario = db.Column(db.String(20))
class ElementoInventario(db.Model): class ElementoInventario(db.Model):
id = db.Column(db.Integer, primary_key=True) id = db.Column(db.Integer, primary_key=True)
nombre = db.Column(db.String(200)) nombre = db.Column(db.String(200))
...@@ -251,9 +272,6 @@ def insert_incidencia(titulo, descripcion, fecha, estado, reportadaPor, categori ...@@ -251,9 +272,6 @@ def insert_incidencia(titulo, descripcion, fecha, estado, reportadaPor, categori
insert_cambio(estado, reportadaPor, incidencia.id) insert_cambio(estado, reportadaPor, incidencia.id)
def get_incidencia(id):
return Incidencia.query.get(id)
def cambio_estado_incidencia(id, estado, usuario): def cambio_estado_incidencia(id, estado, usuario):
incidencia = get_incidencia(id) incidencia = get_incidencia(id)
incidencia.estado = estado incidencia.estado = estado
...@@ -281,18 +299,25 @@ def addTiempo_incidencia(id, tiempo): ...@@ -281,18 +299,25 @@ def addTiempo_incidencia(id, tiempo):
incidencia.tiempoEstimado = tiempo incidencia.tiempoEstimado = tiempo
db.session.commit() db.session.commit()
def get_incidencias():
return list(Incidencia.query.all())
def get_incidencia(id):
return Incidencia.query.get(id)
def get_incidencias_by_user(userNick): def get_incidencias_by_user(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=0)) return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=0))
def get_incidencias_by_estado(estado):
return list(Incidencia.query.filter_by(estado=estado))
def get_incidencias_by_user_estado(userNick): def get_incidencias_by_user_estado(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=1)) return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=1))
def get_incidencias_by_user_estado_cierre(userNick): def get_incidencias_by_user_estado_cierre(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=2)) return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=2))
def get_incidencias_by_estado(estado):
return list(Incidencia.query.filter_by(estado=estado))
def get_incidencias_abiertas(userNick): def get_incidencias_abiertas(userNick):
return list(Incidencia.query.filter_by(tecnicoAsignado=userNick, estado=1)) return list(Incidencia.query.filter_by(tecnicoAsignado=userNick, estado=1))
...@@ -305,6 +330,17 @@ def get_incidencias_pendientes_cierre(userNick): ...@@ -305,6 +330,17 @@ def get_incidencias_pendientes_cierre(userNick):
def get_incidencias_reportadas_por(userNick): def get_incidencias_reportadas_por(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick)) return list(Incidencia.query.filter_by(reportadaPor=userNick))
def get_incidencias_reportadas_por_clientes():
incidencias = list(Incidencia.query.all())
usuarios = list(Usuario.query.all())
clientes = []
for i in range(len(incidencias)):
for j in range(len(usuarios)):
if incidencias[i].reportadaPor == usuarios[j].nick:
clientes.append(incidencias[i])
return clientes
####################### #######################
# CAMBIO # # CAMBIO #
......
...@@ -4,11 +4,26 @@ ...@@ -4,11 +4,26 @@
<span class="collapse width align-top side-options">Inicio</span> <span class="collapse width align-top side-options">Inicio</span>
</a> </a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/incidencias_abiertas_clientes">
<span class="material-icons" style="color: black;">assignment_ind</span>
<span class="collapse width align-top side-options">Incidencias de clientes</span>
</a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/incidencias_asignadas_tecnico">
<span class="material-icons" style="color: black;">supervised_user_circle</span>
<span class="collapse width align-top side-options">Incidencias en resolución</span>
</a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/incidencias_cerradas"> <a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/incidencias_cerradas">
<span class="material-icons" style="color: black;">delete_forever</span> <span class="material-icons" style="color: black;">delete_forever</span>
<span class="collapse width align-top side-options">Incidencias Cerradas</span> <span class="collapse width align-top side-options">Incidencias Cerradas</span>
</a> </a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/todas_incidencias">
<span class="material-icons" style="color: black;">list_alt</span>
<span class="collapse width align-top side-options">Todas las incidencias</span>
</a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/logout"> <a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/logout">
<span class="material-icons" style="color: black;">exit_to_app</span> <span class="material-icons" style="color: black;">exit_to_app</span>
<span class="collapse width align-top side-options">Cerrar sesión</span> <span class="collapse width align-top side-options">Cerrar sesión</span>
......
...@@ -44,11 +44,14 @@ ...@@ -44,11 +44,14 @@
<!-- Body --> <!-- Body -->
<div class="row" style="width: 100%; padding-top: 0.5em; padding-bottom: 0.5em; font-size: 2em;"> <div class="row" style="width: 100%; padding-top: 0.5em; padding-bottom: 0.5em; font-size: 2em;">
<div class="col"> <div class="col">
<!--
{% if current_user.tipo == 0 %} {% if current_user.tipo == 0 %}
<p class="text-center">Todas las Incidencias del Sistema</p> <p class="text-center">Todas las Incidencias del Sistema</p>
{% elif current_user.tipo == 2 %} {% elif current_user.tipo == 2 %}
<p class="text-center">Incidencias abiertas por {{ current_user.nick }}</p> <p class="text-center">Incidencias abiertas por {{ current_user.nick }}</p>
{% endif %} {% endif %}
-->
<p class="text-center">{{ titulo }}</p>
</div> </div>
</div> </div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment