/// <summary> /// Creates a TableFieldDescriptionViewModel object /// from a ISpeciesObservationFieldDescription object. /// </summary> /// <param name="fieldDescription">The field description.</param> public static TableFieldDescriptionViewModel CreateFromSpeciesObservationFieldDescription( ISpeciesObservationFieldDescription fieldDescription) { TableFieldDescriptionViewModel model = new TableFieldDescriptionViewModel(); model.Class = fieldDescription.Class.GetName(); model.Definition = fieldDescription.Definition; model.DefinitionUrl = fieldDescription.DefinitionUrl; model.Documentation = fieldDescription.Documentation; model.DocumentationUrl = fieldDescription.DocumentationUrl; model.Guid = fieldDescription.Guid; model.Id = fieldDescription.Id; model.Importance = fieldDescription.Importance; model.IsAcceptedByTdwg = fieldDescription.IsAcceptedByTdwg; model.IsClassName = fieldDescription.IsClass; model.IsImplemented = fieldDescription.IsImplemented; model.IsMandatory = fieldDescription.IsMandatory; model.IsMandatoryFromProvider = fieldDescription.IsMandatoryFromProvider; model.IsObtainedFromProvider = fieldDescription.IsObtainedFromProvider; model.IsPlanned = fieldDescription.IsPlanned; model.Label = fieldDescription.Label; model.Name = fieldDescription.Name; model.Remarks = fieldDescription.Remarks; model.SortOrder = fieldDescription.SortOrder; model.Type = fieldDescription.Type.ToString(); return(model); }
/// <summary> /// Instances a new project parameter. /// </summary> /// <param name="fieldDescription">The field description to copy information from.</param> /// <param name="fieldMapping">The field mapping to copy information from.</param> /// <returns>A new <see cref="ProjectParameterObservationDetailFieldViewModel"/> object.</returns> public static ProjectParameterObservationDetailFieldViewModel Create( ISpeciesObservationFieldDescription fieldDescription, ISpeciesObservationFieldMapping fieldMapping) { ProjectParameterObservationDetailFieldViewModel field = new ProjectParameterObservationDetailFieldViewModel(); field.Label = fieldDescription.Label; field.Name = fieldDescription.Name; field.Class = "Project"; //fieldDescription.Class.Identifier field.Importance = fieldDescription.Importance; field.Type = fieldDescription.Type; field.FieldId = fieldDescription.Id; field.PropertyId = fieldMapping.Id; field.PropertyIdentifier = fieldMapping.PropertyIdentifier; field.DataProviderId = fieldMapping.DataProviderId; //field.Unit = ? // just exists in SpeciesObservation class. return(field); }
/// <summary> /// Creates a observation field view model from species observation field description. /// </summary> /// <param name="speciesObservationFieldDescription">The species observation field description.</param> /// <returns>A observation field view model.</returns> public static ObservationDetailFieldViewModel CreateFromSpeciesObservationFieldDescription( ISpeciesObservationFieldDescription speciesObservationFieldDescription) { ObservationDetailFieldViewModel model = new ObservationDetailFieldViewModel(); model.Class = speciesObservationFieldDescription.Class.GetName(); model.Name = speciesObservationFieldDescription.Name; if (!string.IsNullOrEmpty(speciesObservationFieldDescription.Label)) { model.Label = speciesObservationFieldDescription.Label; } else { model.Label = model.Name; } model.Importance = speciesObservationFieldDescription.Importance; model.FieldId = speciesObservationFieldDescription.Id; return(model); }
/// <summary> /// Determines whether the specified field is project parameter. /// </summary> /// <param name="field">The field.</param> /// <returns> /// <c>true</c> if the field is project parameter; otherwise, <c>false</c>. /// </returns> public static bool IsFieldProjectParameter(ISpeciesObservationFieldDescription field) { if (field.Class.Id != SpeciesObservationClassId.Project) { return(false); } if (field.Mappings.Any()) { foreach (var mapping in field.Mappings) { if (mapping.ProjectId.HasValue) { return(true); } } } return(false); }