예제 #1
0
파일: views.py 프로젝트: frvc123/sigp
        def update_slides(id_list, active, trash=False):
            print id_list
            clean_ids = clean_id_list(id_list)
            print clean_ids
            #slides = Actividad.objects.filter(pk__in=clean_ids)
            slides = clean_ids
            print slides

            #lista_flujo_act = []

            for ele in slides:
                act = Actividad.objects.get(pk=int(ele))
                nueva_actividad_flujo = ActividadFlujo.objects.create(nombre=act.nombre, orden=act.orden)

                estado1 = Estado(nombre="To do")
                estado1.save()
                estado2 = Estado(nombre="Doing")
                estado2.save()
                estado3 = Estado(nombre="Done")
                estado3.save()

                nueva_actividad_flujo.estados.add(estado1)
                nueva_actividad_flujo.estados.add(estado2)
                nueva_actividad_flujo.estados.add(estado3)
                nueva_actividad_flujo.save()

                lista_flujo_act.append(nueva_actividad_flujo)
                print lista_flujo_act

            sorting_counter = 1
            print "Hola"
            for slide_obj in lista_flujo_act:
                #slide = Actividad.objects.get(pk=int(slide_obj))
                actividadFlujo = ActividadFlujo.objects.get(pk=slide_obj.pk)

                #print slide.orden
                if trash:
                    print "IF"
                    # While this is fine for my requirements, you may want
                    # to check permissions here (I have @login_required)
                    actividadFlujo.delete()
                else:
                    print "Else"
                    actividadFlujo.orden = sorting_counter
                    #slide.active = active
                    actividadFlujo.save()
                    sorting_counter += 1
예제 #2
0
    def save(self, commit=True):
        if not commit:
            raise NotImplementedError("Can't create Actividad without database save")
        actividad = super(ActividadCreateForm, self).save(commit=True)

        estado1 = Estado(nombre="To do")
        estado1.save()
        estado2 = Estado(nombre="Doing")
        estado2.save()
        estado3 = Estado(nombre="Done")
        estado3.save()

        actividad.estados.add(estado1)
        actividad.estados.add(estado2)
        actividad.estados.add(estado3)

        actividad.save()

        return actividad
예제 #3
0
    def save(self, commit=True):
        if not commit:
            raise NotImplementedError(
                "Can't create Actividad without database save")
        actividad = super(ActividadCreateForm, self).save(commit=True)

        estado1 = Estado(nombre="To do")
        estado1.save()
        estado2 = Estado(nombre="Doing")
        estado2.save()
        estado3 = Estado(nombre="Done")
        estado3.save()

        actividad.estados.add(estado1)
        actividad.estados.add(estado2)
        actividad.estados.add(estado3)

        actividad.save()

        return actividad
예제 #4
0
    def save(self, commit=True):
        if not commit:
            raise NotImplementedError(
                "Can't create Flujo without database save")

        proyecto = super(AsignarFlujoProyectoForm, self).save(commit=True)

        lista_completa = PlantillaFlujo.objects.all()
        seleccionados = self.cleaned_data['flujos']
        print "self save %s" % self.cleaned_data['flujos']

        lc_nombres = []
        for i in lista_completa:
            lc_nombres.append(i.nombre)

        ls_nombres = []
        for i in seleccionados:
            ls_nombres.append(i.nombre)

        la_nombres = []
        for i in Flujo.objects.filter(proyecto=proyecto):
            la_nombres.append(i.nombre)

        print "lc %s" % lc_nombres
        print "ls %s" % ls_nombres
        print "la %s" % la_nombres

        for s in ls_nombres:
            if s not in la_nombres:
                nuevo_flujo = Flujo(nombre=s, proyecto=proyecto)

                plantilla_flujo = PlantillaFlujo.objects.get(nombre=s)
                for act in plantilla_flujo.actividades.all():
                    estado1 = Estado(nombre="To do")
                    estado1.save()
                    estado2 = Estado(nombre="Doing")
                    estado2.save()
                    estado3 = Estado(nombre="Done")
                    estado3.save()

                    actividad = Actividad(nombre=act.nombre, orden=act.orden)
                    actividad.save()
                    actividad.estados.add(estado1)
                    actividad.estados.add(estado2)
                    actividad.estados.add(estado3)

                    actividad.save()
                    nuevo_flujo.save()
                    nuevo_flujo.actividades.add(actividad)

                nuevo_flujo.save()
                print "Creado nuevo flujo"

        user_stories = []
        en_uso = []
        for a in la_nombres:
            user_stories = []
            print "result %s" % UserStory.objects.filter(
                flujo__nombre=a).filter(proyecto=proyecto).exclude(
                    estado='Descartado')
            user_stories.append(
                UserStory.objects.filter(flujo__nombre=a).filter(
                    proyecto=proyecto).exclude(estado='Descartado'))
            if len(
                    UserStory.objects.filter(flujo__nombre=a).filter(
                        proyecto=proyecto).exclude(estado='Descartado')) != 0:
                en_uso.append(Flujo.objects.get(nombre=a, proyecto=proyecto))

        print "user_stories %s" % user_stories
        print "en_uso %s" % en_uso

        for c in lc_nombres:
            if c in la_nombres and c not in ls_nombres:
                flujo_pro = Flujo.objects.get(nombre=c, proyecto=proyecto)
                # flujo_pro.proyecto = None
                # flujo_pro.save()
                if flujo_pro not in en_uso:
                    flujo_pro.delete()

        #

        return proyecto
예제 #5
0
파일: views.py 프로젝트: isaubripi/is2
        def update_slides(id_list, active, trash=False):
            print id_list
            clean_ids = clean_id_list(id_list)
            print clean_ids
            #slides = Actividad.objects.filter(pk__in=clean_ids)
            slides = clean_ids
            print slides

            #lista_flujo_act = []

            for ele in slides:
                act = Actividad.objects.get(pk=int(ele))
                nueva_actividad_flujo = ActividadFlujo.objects.create(
                    nombre=act.nombre, orden=act.orden)

                estado1 = Estado(nombre="To do")
                estado1.save()
                estado2 = Estado(nombre="Doing")
                estado2.save()
                estado3 = Estado(nombre="Done")
                estado3.save()

                nueva_actividad_flujo.estados.add(estado1)
                nueva_actividad_flujo.estados.add(estado2)
                nueva_actividad_flujo.estados.add(estado3)
                nueva_actividad_flujo.save()

                lista_flujo_act.append(nueva_actividad_flujo)
                print lista_flujo_act

            sorting_counter = 1
            print "Hola"
            for slide_obj in lista_flujo_act:
                #slide = Actividad.objects.get(pk=int(slide_obj))
                actividadFlujo = ActividadFlujo.objects.get(pk=slide_obj.pk)

                #print slide.orden
                if trash:
                    print "IF"
                    # While this is fine for my requirements, you may want
                    # to check permissions here (I have @login_required)
                    actividadFlujo.delete()
                else:
                    print "Else"
                    actividadFlujo.orden = sorting_counter
                    #slide.active = active
                    actividadFlujo.save()
                    sorting_counter += 1
예제 #6
0
        def update_slides(id_list, active, trash=False):

            nombre_plantilla = request.POST.get('nombre_plantilla')

            print "nombre_plan= %s" % nombre_plantilla

            try:
                pl = PlantillaFlujo.objects.get(nombre=nombre_plantilla)
                if pl.pk == plantilla_flujo.pk:
                    existe = False
                else:
                    existe = True
            except ObjectDoesNotExist:
                existe = False
            if existe:
                error = True
                mensaje_error_repetido = 'Ya existe una plantilla de flujo ese nombre, escriba otro nombre.'
                return error
            else:
                error = False

            # nombre_plantilla = request.POST.get('nombre_plantilla')
            # plantilla_flujo.nombre = nombre_plantilla
            #plantilla_flujo = PlantillaFlujo(nombre=nombre_plantilla)
            # plantilla_flujo.save()

            if error == False:

                plantilla_flujo.nombre = nombre_plantilla
                plantilla_flujo.save()

                print id_list
                clean_ids = clean_id_list(id_list)
                print clean_ids
                #slides = Actividad.objects.filter(pk__in=clean_ids)
                slides = clean_ids
                print slides

                #lista_flujo_act = []

                for ele in slides:
                    print "ele = %s" % ele
                    if ele not in inactive_clean:
                        act = ActividadFlujo.objects.get(pk=int(ele))
                        #act = ActividadFlujo.objects.get(nombre=)
                        nueva_actividad_flujo = ActividadFlujoPlantilla.objects.create(
                            nombre=act.nombre, orden=act.orden)

                        estado1 = Estado(nombre="To do")
                        estado1.save()
                        estado2 = Estado(nombre="Doing")
                        estado2.save()
                        estado3 = Estado(nombre="Done")
                        estado3.save()

                        nueva_actividad_flujo.estados.add(estado1)
                        nueva_actividad_flujo.estados.add(estado2)
                        nueva_actividad_flujo.estados.add(estado3)
                        nueva_actividad_flujo.save()

                        lista_flujo_act.append(nueva_actividad_flujo)
                        print lista_flujo_act

                    else:
                        acti = ActividadFlujoPlantilla.objects.get(pk=int(ele))
                        acti.save()
                        lista_flujo_act.append(acti)

                sorting_counter = 1
                print "Hola"
                for slide_obj in lista_flujo_act:
                    #slide = Actividad.objects.get(pk=int(slide_obj))
                    actividadFlujo = ActividadFlujoPlantilla.objects.get(
                        pk=slide_obj.pk)

                    #print slide.orden
                    if trash:
                        print "IF"
                        # While this is fine for my requirements, you may want
                        # to check permissions here (I have @login_required)
                        actividadFlujo.delete()
                    else:
                        print "Else"
                        actividadFlujo.orden = sorting_counter
                        #slide.active = active
                        actividadFlujo.save()
                        sorting_counter += 1

                    todas_act_plantilla = plantilla_flujo.actividades.all()

                    #    if int(slide_obj.pk) not in inactive_clean:
                    #        print "slide_obj= %s" % slide_obj
                    #        print "actividadFlujo= %s" % slide_obj
                    #        plantilla_flujo.actividades.remove(actividadFlujo)

                    plantilla_flujo.actividades.add(actividadFlujo)
                    plantilla_flujo.save()

                for actividad in plantilla_flujo.actividades.all():
                    print "actividad %s" % actividad
                    print "actividad.pk %s - slides %s" % (actividad.pk,
                                                           slides)
                    afp = ActividadFlujoPlantilla.objects.get(pk=actividad.pk)
                    actividad_flujo = ActividadFlujo.objects.get(
                        nombre=afp.nombre)
                    print "afp %s - %s" % (afp.pk, afp)
                    print "actividad_flujo %s-> %s - slides %s" % (
                        actividad_flujo, actividad_flujo.pk, slides)
                    if actividad not in lista_flujo_act:
                        print "se remueve %s" % afp
                        plantilla_flujo.actividades.remove(actividad)

                print "plantilla %s" % plantilla_flujo
                return error
예제 #7
0
        def update_slides(id_list, active, trash=False):

            nombre_plantilla = request.POST.get('nombre_plantilla')

            print "nombre_plan= %s" % nombre_plantilla

            try:
                pl = PlantillaFlujo.objects.get(nombre=nombre_plantilla)
                existe = True
            except ObjectDoesNotExist:
                existe = False
            if existe:
                error = True
                mensaje_error_repetido = 'Ya existe una plantilla de flujo ese nombre, escriba otro nombre.'
                return error
            else:
                error = False

            if error == False:
                plantilla = PlantillaFlujo(nombre=nombre_plantilla)
                plantilla.save()

                print id_list
                clean_ids = clean_id_list(id_list)
                print clean_ids
                #slides = Actividad.objects.filter(pk__in=clean_ids)
                slides = clean_ids
                print slides

                #lista_flujo_act = []

                for ele in slides:
                    act = ActividadFlujo.objects.get(pk=int(ele))
                    nueva_actividad_flujo = ActividadFlujoPlantilla.objects.create(
                        nombre=act.nombre, orden=act.orden)

                    estado1 = Estado(nombre="To do")
                    estado1.save()
                    estado2 = Estado(nombre="Doing")
                    estado2.save()
                    estado3 = Estado(nombre="Done")
                    estado3.save()

                    nueva_actividad_flujo.estados.add(estado1)
                    nueva_actividad_flujo.estados.add(estado2)
                    nueva_actividad_flujo.estados.add(estado3)
                    nueva_actividad_flujo.save()

                    lista_flujo_act.append(nueva_actividad_flujo)
                    print lista_flujo_act

                sorting_counter = 1
                print "Hola"
                for slide_obj in lista_flujo_act:
                    #slide = Actividad.objects.get(pk=int(slide_obj))
                    actividadFlujo = ActividadFlujoPlantilla.objects.get(
                        pk=slide_obj.pk)

                    #print slide.orden
                    if trash:
                        print "IF"
                        # While this is fine for my requirements, you may want
                        # to check permissions here (I have @login_required)
                        actividadFlujo.delete()
                    else:
                        print "Else"
                        actividadFlujo.orden = sorting_counter
                        #slide.active = active
                        actividadFlujo.save()
                        sorting_counter += 1

                    plantilla.actividades.add(actividadFlujo)
                    plantilla.save()
                print "plantilla %s" % plantilla
                return error