Пример #1
0
def cPanelAsignador():
    if "ID" in session and session['Tipo'] == 3:
        objTicket = Ticket()
        objDep = Departamento()
        deps = objDep.ListarDepartamentosXEstado(1)
        tickets = objTicket.ListarTicketsXAsignar(int(session['Empresa']))
        return render_template('asignador/cPanelAsignador.html', avatar=session["Avatar"], tickets=tickets, departamentos=deps, ID=session['ID'])
    else:
        return redirect(url_for('index'))
Пример #2
0
def verificarDepartamento():
    nombre = request.form['nombre']
    url = request.form['url']
    objDep = Departamento()
    objDep.setNombre(nombre)
    
    if objDep.verificarDepartamento(url):
        return "Existe"
    else:
        return "Valido"
Пример #3
0
def activarDepartamento():
    if request.method != 'POST':
        return redirect(url_for('index'))
    else:
        if "ID" in session:
            IdDep = int(request.form['idDep'])
            objDep = Departamento()
            objDep.setID(IdDep)

            if objDep.activarDepartamento():
                return "Exito"

    return "Error"
Пример #4
0
def modificarDepartamento(ID):
    if "ID" in session and session['Tipo'] == 1:
        objDep = Departamento()

        try:
            ID = int(ID)
        except:
            return redirect(url_for('index'))

        objDep.setID(ID)
        dep = objDep.consultarID()
        if dep[0].Activo == 1:
            if request.method == "GET":
                if len(dep) > 0:
                    return render_template('admin/modificarDepartamento.html',
                                           departamento=dep[0])
            elif request.method == "POST":
                objDep.setDepartamento(ID, str(request.form['nombre']),
                                       str(request.form['desc']))
                if objDep.modificarDepartamento():
                    return "Exito"
                else:
                    return "Error"

    return redirect(url_for('index'))
Пример #5
0
def cPanelAdmin():
    objUsuario = Usuario()
    objDep = Departamento()
    objEmp = Empresa()

    if "ID" in session and session['Tipo'] == 1:
        usuarios = objUsuario.ListarUsuariosXEstado(1)
        depActivos = objDep.ListarDepartamentosXEstado(1)
        empresas = objEmp.ListarEmpresasXEstado(1)
        return render_template('cPanelAdmin.html',
                               usuarios=usuarios,
                               avatar=session["Avatar"],
                               departamentos=depActivos,
                               empresas=empresas,
                               ID=session["ID"])
    else:
        return redirect(url_for('inicio.index'))
Пример #6
0
def modificarEmpresa(ID):
    if "ID" in session and session['Tipo'] in [1,5]:
        try:
            ID = int(ID)
        except:
            return redirect(url_for('inicio.index'))

        objEmp = Empresa()
        objEmpDep = EmpresaDepartamento()
        objDep = Departamento()
        objEmp.setID(int(ID))
        departamentos = objDep.ListarDepartamentosXEstado(1)

        deps = objEmpDep.ListarDepartamentosEmp(int(ID))
        depsActuales = []
        
        for dep in deps:
            depsActuales.append(dep.IdDepartamento)

        departamentos.append(depsActuales)
        empresa = objEmp.consultarID()
        if empresa[0].Activo == 1:
            if request.method == "GET":
                if session['Tipo'] != 1 and int(ID) != int(session['Empresa']):
                    return redirect(url_for('inicio.index'))
                else:
                    return render_template('modificarEmpresa.html', empresa=empresa[0], departamentos=departamentos)
            elif request.method == "POST":
                objEmp.setEmpresa(str(request.form['nombre']),str(request.form['direccion']), str("+506"+request.form['telefono']),0)
                depsSeleccionados = request.form.getlist('deps[]')
                objEmpDep.setIDEmpresa(int(ID))

                if empresa[0].IdTipoEmpresa == 1:
                    objEmpDep.setIDEmpresa(int(ID))
                    for departamento in depsSeleccionados:
                        objEmpDep.setIDDepartamento(int(departamento))
                        objEmpDep.agregarDepartamentosEmp()
        
                if objEmp.modificarEmpresa():
                    return "Exito"
                else:
                    return "Error"

    return redirect(url_for('inicio.index'))
Пример #7
0
def buscarDepartamentos():
    if request.method == "POST" and session['Tipo'] == 1:
        plantilla = ""
        objDep = Departamento()
        filtro = request.form['filtro']

        resultado = objDep.buscarDepartamentos(filtro)
        if len(resultado) > 0:
            for r in resultado:
                if r.Activo == 1:
                    plantilla += """<div class='card mb-3' style='max-width: 100%;'>
                    <div class='row no-gutters'>
                    <div class='col-12'>
                    <div class='card-body'>
                    <h5 class='card-title'>""" + r.Nombre + """</h5>
                    <p class='card-text'>""" + r.Descripcion + """</p>
                        <button class='btn btn-primary mt-1' style='width: 120px !important;' idDep='""" + str(
                        r.IdDepartamento) + """'>Modificar</button>
                        <button class='btn btn-danger mt-1' style='width: 120px !important;' idElimDep='""" + str(
                            r.IdDepartamento) + """'>Eliminar</button>
                    </div>
                    </div>
                    </div>
                    </div>"""
                else:
                    plantilla += """<div class='card mb-3' style='max-width: 100%;'>
                    <div class='row no-gutters'>
                    <div class='col-12'>
                    <div class='card-body'>
                    <h5 class='card-title'>""" + r.Nombre + """</h5>
                    <p class='card-text'>""" + r.Descripcion + """</p>
                        <button class='btn btn-success mt-1' style='width: 120px !important;' idDepAct='""" + str(
                        r.IdDepartamento) + """'>Activar</button>
                    </div>
                    </div>
                    </div>
                    </div>"""
        else:
            plantilla += "<h4 class='text-center' style='text-transform:capitalize'>No hay resultados para tu busqueda</h4>"

        return plantilla

    return redirect(url_for('index'))
Пример #8
0
def agregarDepartamento():
    if request.method == 'POST' and "ID" in session:
        objDep = Departamento()
        nombre = request.form['nom']
        desc = request.form['descripcion']

        try:
            objDep.setNombre(nombre)
            objDep.setDescripcion(desc)
            objDep.agregarDepartamento()
            return "Exito"
        except Exception as e:
            return "Error"
Пример #9
0
def cargarDepartamentos():
    if request.method == "POST" and "ID" in session:
        plantilla = ""
        idFiltro = request.form["idFiltro"]
        objDep = Departamento()
        departamentos = objDep.ListarDepartamentosXEstado(idFiltro)

        if len(departamentos) > 0:
            for departamento in departamentos:
                if departamento.Activo == 1:
                    plantilla += """<div class='card mb-3' style='max-width: 100%;'>
                    <div class='row no-gutters'>
                    <div class='col-12'>
                    <div class='card-body'>
                    <h5 class='card-title'>"""+departamento.Nombre+"""</h5>
                    <p class='card-text'>"""+departamento.Descripcion+"""</p>
                        <button class='btn btn-primary mt-1' style='width: 120px !important;' idDep='"""+str(departamento.IdDepartamento)+"""'>Modificar</button>
                        <button class='btn btn-danger mt-1' style='width: 120px !important;' idElimDep='"""+str(departamento.IdDepartamento)+"""'>Eliminar</button>
                    </div>
                    </div>
                    </div>
                    </div>"""
                else:
                    plantilla += """<div class='card mb-3' style='max-width: 100%;'>
                    <div class='row no-gutters'>
                    <div class='col-12'>
                    <div class='card-body'>
                    <h5 class='card-title'>"""+departamento.Nombre+"""</h5>
                    <p class='card-text'>"""+departamento.Descripcion+"""</p>
                        <button class='btn btn-success mt-1' style='width: 120px !important;' idDepAct='"""+str(departamento.IdDepartamento)+"""'>Activar</button>
                    </div>
                    </div>
                    </div>
                    </div>"""

            return plantilla
        else:
            return "<h4 class='text-center' style='text-transform:capitalize'>No existen empresas con este filtro</h4>"
    else:
        return redirect(url_for('inicio.index'))
Пример #10
0
def eliminarDepartamento():
    if request.method != 'POST':
        return redirect(url_for('index'))
    else:
        if "ID" in session:
            IdDep = int(request.form['idDep'])
            objDep = Departamento()
            objDep.setID(IdDep)

            if objDep.verificarTickets():
                if objDep.eliminarDepartamento():
                    return "Exito"
            else:
                return "Error Tickets"

    return "Error"
Пример #11
0
def modificarUsuario(ID):
    if "ID" in session and session['Tipo'] in [1,2,5] and str(ID) != str(session['ID']):
        objEmp = Empresa()
        objDep = Departamento()
        objEnc = Encriptador()
        objEmpDep = EmpresaDepartamento()
        objUsuario = Usuario()

        try:
            ID = int(ID)
        except:
            return redirect(url_for('inicio.index'))

        objUsuario.setID(ID)
        usuario = objUsuario.getInfoUsuario()
        empresas = objEmp.ListarEmpresasXEstado(1)
        if request.method == "GET":
            if len(usuario) > 0:
                deps = objEmpDep.ListarDepartamentosEmp(int(usuario[0].IdEmpresa))
                contra = objEnc.Desencriptar(str(usuario[0].Password))
                return render_template('modificarUsuario.html',usuario=usuario[0], contra=contra, empresas=empresas, departamentos=deps, usuarioActual=session['Tipo'])

        elif request.method == "POST":
            boolImg = True
            imagen = ""

            if request.files:
                imagen = request.files["avatar"]
                if not imagenPermitida(imagen.filename):
                    boolImg = False
                else:
                    print(imagen.filename)
                    if str(usuario[0].Avatar) != "default-user.jpg":
                        os.remove(os.path.join(app.config['IMAGE_UPLOADS'],str(usuario[0].Avatar)))
                    ext = imagen.filename.rsplit(".",1)[1]
                    nombreArchivo = str(uuid.uuid4().hex+"."+ext)
                    objUsuario.setAvatar(str(nombreArchivo))

            if boolImg:

                idEmp = request.form['empresa'].rsplit('-')[0]
                idDep = request.form['departamento'] if request.form['departamento'] != 'null' else 0
                tipo = int(request.form['tipo'])
                objUsuario.setNombre(request.form['nombre'])
                objUsuario.setCedula(request.form['cedula'])
                objUsuario.setEmail(request.form['email']) 
                url = request.form['url']
                
                if int(session['Tipo']) == 2:
                    if tipo in[1,2,5,6]:
                        return "Error"
                elif int(session['Tipo']) == 5:
                    if tipo in [1,2,3,4,5]:
                        return "Error"
                elif int(session['Tipo']) in [3,4,6]:
                    return "Error"

                objUsuario.setTipo(tipo)
                objUsuario.setIdDep(int(idDep))
                objUsuario.setIDEmpresa(int(idEmp))
                objUsuario.setID(int(request.form['id']))

                if tipo == 2 and objUsuario.existeTipoUsuario():
                    return "Gerente Existe"
                elif tipo == 5 and objUsuario.existeTipoUsuario():
                    return "ClienteM Existe"


                objUsuario.setContra(objEnc.Encriptar(str(request.form['contra'])))
                
                objEmp.setID(idEmp)
                objDep.setID(idDep)
                depDestino = objDep.consultarID() if len(objDep.consultarID()) > 0 else 0
                empDestino = objEmp.consultarID() if len(objEmp.consultarID()) > 0 else 0

                depActivo = True
                empActiva = True

                if depDestino != 0:
                    if depDestino[0].Activo == 0:
                        depActivo = False

                if empDestino != 0:
                    if empDestino[0].Activo == 0:
                        empActiva = False

                if depActivo and empActiva:
                    if objUsuario.modificarPerfil():
                        if imagen != "":
                            imagen.save(os.path.join(app.config['IMAGE_UPLOADS'],nombreArchivo))
                        return "Exito"
                    else:
                        return "Error"
                else:
                    return "inactivo"

    return redirect(url_for('inicio.index'))