Beispiel #1
0
def createProject():
    """ Crea proyectos por default """
    from models import Proyecto
    from mgrProject import MgrProject
    from models import Fase
    from mgrFase import MgrFase
    f = [Fase("proyecto1-fase1","fase inicial",1)]
    p = Proyecto("proyecto1","sistema para una veterinaria",1000,f)
    MgrProject().guardar(p)
    f = [Fase("proyecto2-fase1","fase inicial",1),
         Fase("proyecto2-fase2","nueva fase",2)]
    p = Proyecto("proyecto2","sistema para una guarderia",2000,f)
    MgrProject().guardar(p)
    f = [Fase("proyecto3-fase1","fase inicial",1),
         Fase("proyecto3-fase2","nueva fase",2),
         Fase("proyecto3-fase3","nueva fase",3),
         ]
    p = Proyecto("proyecto3","sistema para un consultorio",3000,f)
    MgrProject().guardar(p)
    f = [Fase("proyecto4-fase1","fase inicial",1),
         Fase("proyecto4-fase2","nueva fase",2),
         Fase("proyecto4-fase3","nueva fase",3),
         Fase("proyecto4-fase4","nueva fase",4)]
    p = Proyecto("proyecto4","sistema para un supermercado",4000,f)
    MgrProject().guardar(p)
    f = [Fase("proyecto5-fase1","fase inicial",1)]
    p = Proyecto("proyecto5","sistema para un banco",5000,f)
    MgrProject().guardar(p)
    fn = Fase("proyecto5-fase2","nueva fase",2)
    MgrProject().asignarFase("proyecto5", fn)
Beispiel #2
0
class lineaBaseTestCase(TestCase):
    itemTipo1 = None
    item1 = None
    item2 = None
    proyecto1 = None
    fase1 = None
    fase2 = None
    LineaBasePrueba=None
    def setUp(self):
        self.proyecto1 = Proyecto(nombre = 'proyectoPrueba1', estado = Proyecto.E_NOINICIADO)
        self.proyecto1.save()
        self.fase1 = Fase(nombre = 'fasePrueba1', estado = Fase.E_INICIAL, idproyecto = self.proyecto1)
        self.fase1.save()
        self.fase2 = Fase(nombre = 'fasePrueba2', estado = Fase.E_INICIAL, idproyecto = self.proyecto1)
        self.fase2.save()
        self.itemTipo1 = ItemTipos(nombre = 'itemTipo1Prueba1', es_supertipo = 0,idfase = self.fase1)
        self.itemTipo1.save()
        self.item1 = Item(numero = 1,nombre = 'itemPrueba1',descripcion = 'esta es una prueba para lb del item1',estado = Item.E_DESAPROBADO,version = 1,idfase = self.fase1,idtipoitem = self.itemTipo1)
        self.item1.save()
        self.item2 = Item(numero = 1,nombre = 'itemPrueba2',descripcion = 'esta es una prueba para lb del item2',estado = Item.E_DESAPROBADO,version = 1,idfase = self.fase1,idtipoitem = self.itemTipo1)
        self.item2.save()
        
        self.LineaBasePrueba = LineaBase()
        self.LineaBasePrueba.fase = self.fase1
        self.LineaBasePrueba.descripcion = "linea base de prueba "
        self.LineaBasePrueba.save()
        self.LineaBasePrueba.items.add(self.item1)
        self.LineaBasePrueba.items.add(self.item2)
        self.LineaBasePrueba.save()
        
    def test_CargarLineaBaseTest(self):
        
        self.assertEqual('fasePrueba1', ((LineaBase.objects.get(pk=self.LineaBasePrueba.idlineabase)).fase).nombre)
Beispiel #3
0
 def setUp(self):
     User.objects.create_user('nelsond', '*****@*****.**', '12345')
     User.objects.create_user('arielm', '*****@*****.**', '32145')
     self.proyectoComite1 = Proyecto(nombre = 'proyectoComitePrueba1', estado = Proyecto.E_NOINICIADO)
     self.proyectoComite1.save()
     self.proyectoComite2 = Proyecto(nombre = 'proyectoComitePrueba2', estado = Proyecto.E_NOINICIADO)
     self.proyectoComite2.save()
     self.comite1 = ComiteProyecto(proyecto = Proyecto.objects.get(pk=self.proyectoComite1.pk),usuario = User.objects.get(username__exact='nelsond'))
     self.comite1.save()
     self.comite2 = ComiteProyecto(proyecto = Proyecto.objects.get(pk=self.proyectoComite2.pk),usuario = User.objects.get(username__exact='arielm'))
     self.comite2.save()
Beispiel #4
0
def createProject():
    """ Crea proyectos por default """
    from models import Proyecto
    from ctrl.mgrProject import MgrProject
    p = Proyecto("proyecto1", "sistema para una veterinaria")
    MgrProject().guardar(p)
    p = Proyecto("proyecto2", "sistema para una guarderia")
    MgrProject().guardar(p)
    p = Proyecto("proyecto3", "sistema para un consultorio")
    MgrProject().guardar(p)
    p = Proyecto("proyecto4", "sistema para un supermercado")
    MgrProject().guardar(p)
    p = Proyecto("proyecto5", "sistema para un banco")
    MgrProject().guardar(p)
Beispiel #5
0
def nuevoAlumno(request):
    if (request.method == "POST") :
        form_alumno = AlumnoForm(request.POST, prefix='alumno')
        form_proyecto = ProyectoForm(request.POST, prefix='proyecto')
        if (form_alumno.is_valid() and form_proyecto.is_valid()):
            alumno = Alumno(form_alumno)
            alumno.save()
            curso = Curso.objects.order_by("-id")[0]
            proyecto = Proyecto(form_proyecto, alumno=alumno, curso=curso)
            proyecto.save()
            return HttpResponseRedirect('/coordinacio/cursos')
    else: 
        form_alumno = AlumnoForm(prefix='alumno')
        form_proyecto = ProyectoForm(prefix='proyecto')
    return render_to_response('AlumnoNuevo.html', {'form_alumno': form_alumno, 'form_proyecto': form_proyecto})
Beispiel #6
0
def addProject():
    """ Agrega un proyecto """
    from models import Proyecto
    from form import CreateFormProject
    from ctrl.mgrProject import MgrProject
    if g.user is None:
        return redirect(url_for('login'))
    else:
        if request.method == 'POST':
            form = CreateFormProject(request.form, 
                                     request.form['nombre'], 
                                     descripcion = request.form['descripcion'])
            if form.validate():
                project = Proyecto(nombre = request.form['nombre'], 
                                   descripcion = request.form['descripcion'])    
                MgrProject().guardar(project)
                flash('Se ha creado correctamente el proyecto')
                return redirect(url_for('listEditProject'))
            else:
                return render_template(app.config['DEFAULT_TPL']+'/formProject.html',
                            conf = app.config,
                            form = form)
                
    return render_template(app.config['DEFAULT_TPL']+'/formProject.html',
                conf = app.config,
                form = CreateFormProject())
Beispiel #7
0
def newProyecto():
    if request.method == 'POST':
        newItem = Proyecto(
            nombre=request.json['nombre'],  descripcion=request.json['descripcion'])
        session.add(newItem)
        session.commit()
        return jsonify(Proyecto=newItem.serialize)    
Beispiel #8
0
 def testProyectoBorrarInexistente(self):
     from models import Proyecto
     from ctrl.mgrProject import MgrProject
     name = "feo"
     p=Proyecto("proyectoTestfeo","test")
     MgrProject().borrar(p.nombre)
     print "Error: Fin de prueba USerBorrarInexistente: borro feo" 
     assert name == p.nombre
Beispiel #9
0
 def testProyectoGuardarDoble(self):
     from models import Proyecto
     from ctrl.mgrProject import MgrProject
     name="proyectoTest"
     p=Proyecto("proyectoTest","test")
     MgrProject().guardar(p)
     print "Error: Fin de Prueba ProjectGuardarDoble: "
     assert name == p.nombre
Beispiel #10
0
 def testProyectoGuardarVacio(self):
     from models import Proyecto
     from ctrl.mgrProject import MgrProject
     name =""
     p=Proyecto()
     MgrProject().guardar(p)
     print "Error: Fin de prueba ProjectGuardarVacio" 
     assert name == p.nombre
Beispiel #11
0
class comiteTestCase(TestCase):
    usuario1 = None
    usuario2 = None
    proyectoComite1 = None
    proyectoComite2 = None
    comite1 = None
    comite2 = None
    def setUp(self):
        User.objects.create_user('nelsond', '*****@*****.**', '12345')
        User.objects.create_user('arielm', '*****@*****.**', '32145')
        self.proyectoComite1 = Proyecto(nombre = 'proyectoComitePrueba1', estado = Proyecto.E_NOINICIADO)
        self.proyectoComite1.save()
        self.proyectoComite2 = Proyecto(nombre = 'proyectoComitePrueba2', estado = Proyecto.E_NOINICIADO)
        self.proyectoComite2.save()
        self.comite1 = ComiteProyecto(proyecto = Proyecto.objects.get(pk=self.proyectoComite1.pk),usuario = User.objects.get(username__exact='nelsond'))
        self.comite1.save()
        self.comite2 = ComiteProyecto(proyecto = Proyecto.objects.get(pk=self.proyectoComite2.pk),usuario = User.objects.get(username__exact='arielm'))
        self.comite2.save()
       
    def test_cargar_ComiteTestCase(self):
        self.assertEqual('proyectoComitePrueba1', ((ComiteProyecto.objects.get(pk=self.comite1.id)).proyecto).nombre)
        self.assertEqual('proyectoComitePrueba2', ((ComiteProyecto.objects.get(pk=self.comite2.id)).proyecto).nombre)
        
    def test_modificar_ComiteTestCase(self):
        User.objects.create_user('fabianaR', '*****@*****.**', '14325')
        usuarioM = User.objects.get(username__exact='fabianaR')
        comitep = ComiteProyecto.objects.get(pk=self.comite1.pk)
        comitep.usuario = usuarioM
        comitep.save()
        self.assertEqual(usuarioM,(ComiteProyecto.objects.get(pk=self.comite1.id).usuario))
        
    def test_eliminar_ComiteTestCase(self):
        cant_objetos = ComiteProyecto.objects.all().count()
        ComiteProyecto.objects.get(pk=self.comite1.pk).delete()
        ComiteProyecto.objects.get(pk=self.comite2.pk).delete()
        self.assertEqual(ComiteProyecto.objects.all().count(), cant_objetos - 2)
Beispiel #12
0
    def get(self):
     self.response.headers.add_header('Access-Control-Allow-Origin', '*') # Permite que cualquier servicio lo invoque desde cualquier direccion 
     self.response.headers['Content-Type'] = 'application/json'  # Creo que asiga el tipo de respuesta a renguaje de objetos de javascript  JS-O-N

     id_empresa = self.request.get('empresa') # Obtengo de las variables get, la variable empresa
     objemp = Empresa.query(Empresa.codigo_empresa == id_empresa).get()  # query a la base de datos, la tabla empresa WHERE 
     strKey = objemp.key.urlsafe()  # obtengo el key del objeto que me regreso, le aplico un urlsafe?... mehh....
     myEmpKey = ndb.Key(urlsafe=strKey)  # le hago algo a la llave para poder usarla en la query
     myTeam = Proyecto.query(Proyecto.empresa_key == myEmpKey) #query a la tabla Team con el WHERE en los parentesis  

     myList = []
     for i in myTeam:
      myObj = DemoClass()
      myObj.titulo = i.titulo
      myObj.contenido = i.contenido
      myObj.urlImage = i.urlImage
      myList.append(myObj)
       
     json_string = json.dumps(myList, default=MyClass)
     self.response.write(json_string)
Beispiel #13
0
 def setUp(self):
     self.proyecto1 = Proyecto(nombre = 'proyectoPrueba1', estado = Proyecto.E_NOINICIADO)
     self.proyecto1.save()
     self.fase1 = Fase(nombre = 'fasePrueba1', estado = Fase.E_INICIAL, idproyecto = self.proyecto1)
     self.fase1.save()
     self.fase2 = Fase(nombre = 'fasePrueba2', estado = Fase.E_INICIAL, idproyecto = self.proyecto1)
     self.fase2.save()
     self.itemTipo1 = ItemTipos(nombre = 'itemTipo1Prueba1', es_supertipo = 0,idfase = self.fase1)
     self.itemTipo1.save()
     self.item1 = Item(numero = 1,nombre = 'itemPrueba1',descripcion = 'esta es una prueba para lb del item1',estado = Item.E_DESAPROBADO,version = 1,idfase = self.fase1,idtipoitem = self.itemTipo1)
     self.item1.save()
     self.item2 = Item(numero = 1,nombre = 'itemPrueba2',descripcion = 'esta es una prueba para lb del item2',estado = Item.E_DESAPROBADO,version = 1,idfase = self.fase1,idtipoitem = self.itemTipo1)
     self.item2.save()
     
     self.LineaBasePrueba = LineaBase()
     self.LineaBasePrueba.fase = self.fase1
     self.LineaBasePrueba.descripcion = "linea base de prueba "
     self.LineaBasePrueba.save()
     self.LineaBasePrueba.items.add(self.item1)
     self.LineaBasePrueba.items.add(self.item2)
     self.LineaBasePrueba.save()
Beispiel #14
0
    def __init__(self, request, action="nuevo", alumnoUserUJI="", tutor=None):
        self.alumno = Alumno()
        self.proyecto = Proyecto()
        self.tutor = None
        self.action = action
        self.request = request
        self.alumnoid = alumnoUserUJI
        self.estado = None
        self.course = QueryCourse().getCourseSelected(self.request)

        self.tutorForm = None
        self.tribunalForm = None
        self.dateForm = None

        coordinator = tutor == None

        if action != "nuevo":
            self.alumno = QueryStudent().getStudentByUserUJI(alumnoUserUJI)
            self.proyecto = QueryProject().getProjectByCourseAndStudent(
                QueryCourse().getCourseSelected(self.request), self.alumno)

            self.estado = self.proyecto.estado
            if coordinator:
                statusProject = QueryStatusProjectInCourse(
                ).getProjectByProject(self.proyecto)
                item = statusProject.hito if statusProject else None
                if self.proyecto.estado == "L":
                    nextItem = QueryItem().getNextItem(
                        item) if item else QueryItem().getFirstItemCourse(
                            self.proyecto.curso)
                else:
                    nextItem = item
                if QueryItem().hasTribunalEvaluationThisItem(nextItem):
                    self.tribunalForm = TribunalForm(request, alumnoUserUJI)

        self.alumnoForm = AlumnoForm(prefix='alumno', instance=self.alumno)
        self.proyectoForm = ProyectoForm(prefix='proyecto',
                                         instance=self.proyecto)
        self.dateForm = EstimateDateItemForm(
            request, alumnoUserUJI) if self.estado != "P" else None

        if coordinator:
            if action != "nuevo":
                self.tutor = self.proyecto.tutor
            self.tutorForm = TutorForm(prefix='tutor')
            self.tutorForm.fields["tutor"].queryset = QueryUser(
            ).getListOfTutorCoordinator()
            self.tutorForm.initial["tutor"] = self.tutor
        else:
            self.tutor = tutor

        if request.method == 'POST':  # Leer los datos
            if action != "nuevo":
                if coordinator:
                    statusProject = QueryStatusProjectInCourse(
                    ).getProjectByProject(self.proyecto)
                    item = statusProject.hito if statusProject else None
                    if self.estado == "L":
                        nextItem = QueryItem().getNextItem(
                            item) if item else QueryItem().getFirstItemCourse(
                                self.proyecto.curso)
                    else:
                        nextItem = item

                    if QueryItem().hasTribunalEvaluationThisItem(nextItem):
                        self.tribunalForm = TribunalForm(
                            request, alumnoUserUJI)

            self.alumnoForm = AlumnoForm(request.POST,
                                         prefix='alumno',
                                         instance=self.alumno)
            self.proyectoForm = ProyectoForm(request.POST,
                                             prefix='proyecto',
                                             instance=self.proyecto)
            self.dateForm = EstimateDateItemForm(
                request, alumnoUserUJI) if self.estado != "P" else None
            if coordinator:
                self.tutorId = self.proyectoForm.data["tutor-tutor"]
            else:
                self.tutorId = self.tutor.id
Beispiel #15
0
 def create(self, validated_data):
     return Proyecto(**validated_data)
Beispiel #16
0
from datetime import datetime
from models import Proyecto, Tarea, Recurso

proyectos = {
    1:
    Proyecto(id=1,
             nombre='PSA',
             detalle='App de venta de productos',
             fecha_inicio=datetime.now(),
             presupuesto=400000,
             estado='En proceso'),
    2:
    Proyecto(id=2,
             nombre='Nike',
             detalle='Control de stock ',
             fecha_inicio=datetime.now(),
             presupuesto=900000,
             estado='En proceso'),
    3:
    Proyecto(id=2,
             nombre='IBM',
             detalle='Control de stock ',
             fecha_inicio=datetime.now(),
             presupuesto=900000,
             estado='En proceso'),
}

tareas = {
    1232:
    Tarea(
        id=1232,
Beispiel #17
0
def createProject(request):

    if request.method == 'POST':

     jsonProject = json.loads(request.body)
     proyecto = Proyecto()
     print str("Entro ")

     print str("pasooooo ")

     proyecto.name = jsonProject['name']
     proyecto.description = jsonProject['description']
     proyecto.image = jsonProject['image']
     proyecto.estimated_price= jsonProject['estimatedPrice']
     proyecto.administrador = request.user
     proyecto.save()
     return HttpResponse(serializers.serialize("json",{proyecto}))

    if request.method == 'GET':
        #proyecto = Proyecto.objects.all()


        page = request.GET.get('page')
        user = request.user
        proyecto = Proyecto.objects.filter(administrador=user)
        paginator = Paginator(proyecto, 10) # Show 25 contacts per page
        try:
            proyectos = paginator.page(page)
        except PageNotAnInteger:
            # If page is not an integer, deliver first page.
            proyectos = paginator.page(1)
        except EmptyPage:
            # If page is out of range (e.g. 9999), deliver last page of results.
            proyectos = paginator.page(paginator.num_pages)
        data =serializers.serialize("json",proyectos.object_list)
        return HttpResponse(serializers.serialize("json",proyecto))

        ##return JsonResponse({"proyectos":data,"numeroPaginas":paginator.num_pages})

    if request.method == 'PUT':
        jsonProject = json.loads(request.body.decode('utf-8'))

        proyecto = Proyecto.objects.get(pk=jsonProject.get('pk'))
        proyecto.name = jsonProject.get('name')
        proyecto.description = jsonProject.get('description')
        proyecto.image = jsonProject.get('image')
        proyecto.save()

        return HttpResponse(serializers.serialize("json",{proyecto}))

    if request.method == 'DELETE':
            jsonProject = json.loads(request.body.decode('utf-8'))

            proyecto = Proyecto.objects.get(pk=jsonProject.get('pk'))
            proyecto.delete()

            return HttpResponse(serializers.serialize("json",""))
Beispiel #18
0
 def testProyectoGuardar(self):
     from models import Proyecto
     from ctrl.mgrProject import MgrProject
     p=Proyecto("proyectoTest","test")
     MgrProject().guardar(p)
     print "Fin de prueba ProyectoGuardar: guardo proyectoTest"