public async static Task ActualizarPropiedadAspecto(string nombreModelo, string nombreAspecto, string nombrePropiedad, PropertiesBodyUpdate propiedadesActualizar) { AspectosPersonalizadosServicio aspectosPersonalizadosServicio = new AspectosPersonalizadosServicio(); string propiedadActualizarJson = JsonConvert.SerializeObject(propiedadesActualizar); await aspectosPersonalizadosServicio.ActualizarPropiedadAspecto(nombreModelo, nombreAspecto, nombrePropiedad, propiedadActualizarJson); }
private async Task CrearActualizarPropiedad() { if (btnAceptar.Text == "Crear") { List <Modelos.CMM.Constraint> constraints = new List <Modelos.CMM.Constraint>(); cmbxIndexacion.SelectedItem = "Ninguno"; Property propiedadCrear = new Property(); propiedadCrear.Name = txtNombre.Text; propiedadCrear.Description = txtDescripcion.Text; propiedadCrear.Title = txtTitulo.Text; propiedadCrear.Datatype = cmbxTipoDato.SelectedItem.ToString(); propiedadCrear.MultiValued = false; string tipoDatoCrear = cmbxTipoDato.SelectedItem.ToString(); if (tipoDatoCrear == "d:int" || tipoDatoCrear == "d:float" || tipoDatoCrear == "d:double" || tipoDatoCrear == "d:long" || tipoDatoCrear == "d:mltext" || tipoDatoCrear == "d:text") { propiedadCrear.DefaultValue = txtValorPredeterminad.Text; ////// } else if (tipoDatoCrear == "d:boolean") { if (cmbxValorPredeterminado.SelectedItem.ToString() == "Verdadero") { propiedadCrear.DefaultValue = "true"; } else if (cmbxValorPredeterminado.SelectedItem.ToString() == "Falso") { propiedadCrear.DefaultValue = "false"; } } else if (tipoDato == "date") { propiedadCrear.DefaultValue = dtpValorPredeterminado.Value.ToString("yyyy-MM-dd"); } if (cmbxRequerido.SelectedItem.ToString() == "Opcional") { propiedadCrear.Mandatory = false; } else { propiedadCrear.Mandatory = true; } if (cmbxRestriccion.SelectedItem.ToString() == "Ninguno") { propiedadCrear.Constraints = null; } else if (cmbxRestriccion.SelectedItem.ToString() == "Expresión Regular") { if (!string.IsNullOrEmpty(txtExpresionRegular.Text)) { if (!VerificarExpresioRegular(txtExpresionRegular.Text)) { MessageBox.Show("Ingrese una Expresión Regular válida", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtExpresionRegular.Clear(); return; } else { Modelos.CMM.Constraint constraintRegex = new Modelos.CMM.Constraint(""); constraintRegex.Type = "REGEX"; List <Parameter> parameters = new List <Parameter>(); Parameter parameter1 = new Parameter(); parameter1.Name = "expression"; parameter1.SimpleValue = txtExpresionRegular.Text; parameters.Add(parameter1); Parameter parameter2 = new Parameter(); parameter2.Name = "requiresMatch"; parameter2.SimpleValue = "true"; parameters.Add(parameter2); constraintRegex.Parameters = parameters; constraints.Add(constraintRegex); } } else { MessageBox.Show("Ingrese una Expresión Regular", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } else if (cmbxRestriccion.SelectedItem.ToString() == "Longitud Mínima/Máxima") { Modelos.CMM.Constraint constraintRegex = new Modelos.CMM.Constraint(""); constraintRegex.Type = "LENGTH"; List <Parameter> parameters = new List <Parameter>(); Parameter parameter1 = new Parameter(); parameter1.Name = "minLength"; parameter1.SimpleValue = txtRestriccionInf.Text; parameters.Add(parameter1); Parameter parameter2 = new Parameter(); parameter2.Name = "maxLength"; parameter2.SimpleValue = txtRestriccionSup.Text; parameters.Add(parameter2); constraintRegex.Parameters = parameters; constraints.Add(constraintRegex); } else if (cmbxRestriccion.SelectedItem.ToString() == "Valor Mínimo/Máximo") { if (Int32.Parse(txtValorPredeterminad.Text) >= Int32.Parse(txtRestriccionInf.Text) && Int32.Parse(txtValorPredeterminad.Text) <= Int32.Parse(txtRestriccionSup.Text)) { Modelos.CMM.Constraint constraintRegex = new Modelos.CMM.Constraint(""); constraintRegex.Type = "MINMAX"; List <Parameter> parameters = new List <Parameter>(); Parameter parameter1 = new Parameter(); parameter1.Name = "minValue"; parameter1.SimpleValue = txtRestriccionInf.Text; parameters.Add(parameter1); Parameter parameter2 = new Parameter(); parameter2.Name = "maxValue"; parameter2.SimpleValue = txtRestriccionSup.Text; parameters.Add(parameter2); constraintRegex.Parameters = parameters; constraints.Add(constraintRegex); } else { MessageBox.Show("Valor predeterminado no corresponde a la restricción Valor Mínimo/Máximo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } if (cmbxIndexacion.SelectedItem.ToString() == "Ninguno") { propiedadCrear.Facetable = "UNSET"; propiedadCrear.IndexTokenisationMode = "TRUE"; propiedadCrear.Indexed = false; propiedadCrear.MandatoryEnforced = false; } else if (cmbxIndexacion.SelectedItem.ToString() == "Texto libre") { propiedadCrear.Facetable = "FALSE"; propiedadCrear.IndexTokenisationMode = "TRUE"; propiedadCrear.Indexed = true; propiedadCrear.MandatoryEnforced = false; } propiedadCrear.Constraints = constraints; List <Property> propiedadesCrear = new List <Property>(); propiedadesCrear.Add(propiedadCrear); PropertiesBodyUpdate propertiesBodyCreate = new PropertiesBodyUpdate(subModelo.Name, propiedadesCrear); if (proveniente == "ASPECTOS") { await AspectosPersonalizadosStatic.AñadirPropiedadeAspecto( modelo.Name, subModelo.Name, propertiesBodyCreate); MessageBox.Show("Propiedad creada exitosamente"); } if (proveniente == "TIPOS") { fgestorModelos.AbrirAspectos(modelo); } await PoblarDtgv(); NuevaPlantilla(); } else if (btnAceptar.Text == "Editar") { if (modelo.Status == "DRAFT") { Property propiedadEditar = new Property(); propiedadEditar.Name = txtNombre.Text; propiedadEditar.Description = txtDescripcion.Text; propiedadEditar.Title = txtTitulo.Text; propiedadEditar.Datatype = cmbxTipoDato.SelectedItem.ToString(); ////////////////////////////////////////////////////////////////////////////////////////////////////////////// string tipoDatoEditar = cmbxTipoDato.SelectedItem.ToString(); if (tipoDatoEditar == "d:int" || tipoDatoEditar == "d:float" || tipoDatoEditar == "d:double" || tipoDatoEditar == "d:long" || tipoDatoEditar == "d:mltext" || tipoDatoEditar == "d:text") { propiedadEditar.DefaultValue = txtValorPredeterminad.Text; } else if (tipoDato == "d:boolean") { if (cmbxValorPredeterminado.SelectedItem.ToString() == "Verdadero") { propiedadEditar.DefaultValue = "true"; } else if (cmbxValorPredeterminado.SelectedItem.ToString() == "Falso") { propiedadEditar.DefaultValue = "false"; } } else if (tipoDato == "d:date") { propiedadEditar.DefaultValue = dtpValorPredeterminado.Value.ToString(); } if (cmbxRequerido.SelectedItem.ToString() == "Opcional") { propiedadEditar.Mandatory = false; } else { propiedadEditar.Mandatory = true; } if (cmbxRequerido.SelectedItem.ToString() == "Ninguno") { propiedadEditar.Constraints = null; } else { } if (cmbxIndexacion.SelectedItem.ToString() == "Ninguno") { propiedadEditar.Facetable = "UNSET"; propiedadEditar.IndexTokenisationMode = "TRUE"; propiedadEditar.Indexed = false; propiedadEditar.MandatoryEnforced = false; } List <Property> propiedades = new List <Property>(); propiedades.Add(propiedadEditar); PropertiesBodyUpdate propertiesBodyUpdate = new PropertiesBodyUpdate(subModelo.Name, propiedades); if (proveniente == "ASPECTOS") { await AspectosPersonalizadosStatic.ActualizarPropiedadAspecto( modelo.Name, subModelo.Name, propiedadEditar.Name, propertiesBodyUpdate); MessageBox.Show("Propiedad actualizada exitosamente"); } if (proveniente == "TIPOS") { fgestorModelos.AbrirAspectos(modelo); } await PoblarDtgv(); NuevaPlantilla(); } else { MessageBox.Show("Para Editar una propiedad el modelo debe estar desactivado"); } } }
public async static Task AñadirPropiedadeAspecto(string nombreModelo, string nombreAspecto, PropertiesBodyUpdate propertiesBodyCreate) { AspectosPersonalizadosServicio aspectosPersonalizadosServicio = new AspectosPersonalizadosServicio(); string propertiesBodyUpdateJson = JsonConvert.SerializeObject(propertiesBodyCreate); await aspectosPersonalizadosServicio.AñadirPropiedadAspecto( nombreModelo, nombreAspecto, propertiesBodyUpdateJson); }