コード例 #1
0
ファイル: forms.py プロジェクト: Betin-Madera/sgsisoft
class ActivoForm(ModelForm):
    def __init__(self, *args, **kwargs):
        self.edit = kwargs.pop('edit', None)
        super(ActivoForm, self).__init__(*args, **kwargs)

        self.activoServicios = ActivoServicios()

    class Meta:
        model = Activo
        exclude = ["relevancia"]
        select = {'data-placeholder': "Seleccionar", 'class': "chzn-select", 'tabindex': "2"}
        selectMultiple = {'class': 'chzn-select', 'multiple': '', 'tabindex': '15', 'style': 'width:300px'}

        widgets = {
            'responsable': forms.Select(attrs=select),
            'dependencias': forms.SelectMultiple(attrs=selectMultiple),
        }

    def save(self, commit=True):
        if not self.edit:
            activo = super(ActivoForm, self).save(commit=False)
            impLegal = activo.impacto_legal
            impImagen = activo.impacto_imagen
            impConfianza = activo.impacto_confianza
            impInteres = activo.impacto_interes
            impactos = [Criterio.get(impLegal).calificacion, Criterio.get(impImagen).calificacion, Criterio.get(impConfianza).calificacion, Criterio.get(impInteres).calificacion]

            activo.relevancia = Util.calcularaRelevancia(impactos)

            self.activoServicios.insert(activo)
            self.save_m2m()
        else:
            activo = super(ActivoForm, self).save(commit=False)
            impLegal = activo.impacto_legal
            impImagen = activo.impacto_imagen
            impConfianza = activo.impacto_confianza
            impInteres = activo.impacto_interes

            impactos = [Criterio.get(impLegal).calificacion, Criterio.get(impImagen).calificacion, Criterio.get(impConfianza).calificacion, Criterio.get(impInteres).calificacion]

            self.save_m2m()
            activo.relevancia = Util.calcularaRelevancia(impactos)
            self.activoServicios.update(activo)
コード例 #2
0
ファイル: forms.py プロジェクト: Betin-Madera/sgsisoft
    def __init__(self, *args, **kwargs):
        self.edit = kwargs.pop('edit', None)
        super(ActivoForm, self).__init__(*args, **kwargs)

        self.activoServicios = ActivoServicios()