Exemple #1
0
        public ElsevierMaterials.Models.Domain.Comparison.Material FillMaterialData(int materialId, int sourceMaterialId, int sourceId, int subgroupId, IMaterialsContextUow context, PropertyFilter propertyClient, ElsevierMaterials.Models.Domain.Comparison.Property property, ElsevierMaterials.Models.Domain.Comparison.Material propertyMaterial)
        {
            if (propertyMaterial == null)
            {
                propertyMaterial = new ElsevierMaterials.Models.Domain.Comparison.Material();
            }

            Condition condition = null;

            switch (sourceId)
            {
            case 1:
                _binderEls.AddMaterial(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, property, ref propertyMaterial);
                break;

            case 2:
                //TODO: ConditionId umsero rowId.. ??
                condition = _binderConditionTMMetals.FillCondition(subgroupId, sourceMaterialId, sourceId, propertyClient.GroupId, propertyClient.ConditionId, context);
                _binderTM.AddMaterial(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, property, ref propertyMaterial, condition);
                break;

            case 3:
                //TODO: ConditionId umsero rowId.. ?? grilon TS Fr  ima problem jer ne vrati properties u okviru conditions.
                condition = _binderConditionTMPlus.FillConditionData(subgroupId, sourceMaterialId, sourceId, propertyClient.GroupId, propertyClient.ConditionId, context);
                _binderTM.AddMaterial(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, property, ref propertyMaterial, condition);
                break;

            default:
                break;
            }

            propertyMaterial.Value = _binderProperty.FillPropertyValue(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, condition);

            return(propertyMaterial);
        }
Exemple #2
0
        public ElsevierMaterials.Models.Domain.Comparison.Material AddMaterial(int materialId, int sourceMaterialId, int sourceId, int subgroupId, IMaterialsContextUow context, PropertyFilter propertyClient, ElsevierMaterials.Models.Domain.Comparison.Property property, ref ElsevierMaterials.Models.Domain.Comparison.Material materialForProperty)
        {
            if (materialForProperty == null)
            {
                materialForProperty = new ElsevierMaterials.Models.Domain.Comparison.Material();
            }

            Condition condition = FillConditionData(materialId, subgroupId, context, propertyClient, ref materialForProperty);

            new ComparisonMaterialBinder().FillMaterialBasicData(materialId, context, sourceMaterialId, propertyClient.ConditionId, sourceId, subgroupId, ref materialForProperty);

            return(materialForProperty);
        }
Exemple #3
0
        public void ChangePropertyData(int materialId, int sourceMaterialId, int sourceId, int subgroupId, IMaterialsContextUow context, PropertyFilter propertyClient, ref ElsevierMaterials.Models.Domain.Comparison.Property propertyComparison)
        {
            ElsevierMaterials.Models.Domain.Comparison.Material materialInComparison = propertyComparison.Materials.Where(m => m.MaterialId == materialId && m.SubgroupId == subgroupId && m.SourceId == sourceId && m.SourceMaterialId == sourceMaterialId).FirstOrDefault();

            if (materialInComparison != null)
            {
                ElsevierMaterials.Models.Domain.Comparison.Material material = FillMaterialData(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, propertyComparison, materialInComparison);
            }
            else
            {
                ElsevierMaterials.Models.Domain.Comparison.Material material = FillMaterialData(materialId, sourceMaterialId, sourceId, subgroupId, context, propertyClient, propertyComparison, materialInComparison);

                propertyComparison.Materials.Add(material);
            }
        }
Exemple #4
0
        public ElsevierMaterials.Models.Domain.Comparison.Material FillMaterialBasicData(int materialId, IMaterialsContextUow context, int sourceMaterialId, int conditionId, int sourceId, int subgroupId, ref ElsevierMaterials.Models.Domain.Comparison.Material materialForProperty)
        {
            if (materialForProperty == null)
            {
                materialForProperty = new ElsevierMaterials.Models.Domain.Comparison.Material();
            }
            ElsevierMaterials.Models.Domain.Material.MaterialBasicInfo basicInfo = _binderMaterial.GetMaterialInfo(materialId, sourceMaterialId, sourceId, subgroupId, context);
            materialForProperty.Name = basicInfo.Name;

            materialForProperty.MaterialId       = materialId;
            materialForProperty.SourceMaterialId = sourceMaterialId;
            materialForProperty.ConditionId      = conditionId;
            materialForProperty.SourceId         = sourceId;
            materialForProperty.SubgroupId       = subgroupId;
            materialForProperty.SubgroupName     = basicInfo.SubgroupName;

            return(materialForProperty);
        }
Exemple #5
0
        public ElsevierMaterials.Models.Domain.Comparison.Material AddMaterial(int materialId, int sourceMaterialId, int sourceId, int subgroupId, IMaterialsContextUow context, PropertyFilter propertyClient, ElsevierMaterials.Models.Domain.Comparison.Property property, ref ElsevierMaterials.Models.Domain.Comparison.Material materialForProperty, Condition condition)
        {
            new ComparisonMaterialBinder().FillMaterialBasicData(materialId, context, sourceMaterialId, propertyClient.ConditionId, sourceId, subgroupId, ref materialForProperty);
            ElsevierMaterials.Models.Property prop = condition.Properties.Where(m => m.SourcePropertyId == propertyClient.SourceTypeId && m.ValueId == propertyClient.RowId).FirstOrDefault();
            if (sourceId == 2)
            {
                materialForProperty.Value = _binderPropertyTMMetals.GetPropertyValue(propertyClient, condition);
            }
            else if (sourceId == 3)
            {
                materialForProperty.Value = _binderPropertyTMPLUS.GetPropertyValue(propertyClient, condition);
            }

            //TODO: material with e value
            //if (materialForProperty.Value.Contains("E"))
            //{
            //    materialForProperty.Value = double.Parse(materialForProperty.Value).ToString();
            //}

            materialForProperty.Condition   = condition.ConditionName + (!string.IsNullOrEmpty(prop.OrigValueText) ? " " + prop.OrigValueText : "");
            materialForProperty.ConditionId = condition.ConditionId;
            return(materialForProperty);
        }
Exemple #6
0
        public Condition FillConditionData(int materialId, int subgroupId, IMaterialsContextUow context, PropertyFilter propertyClient, ref ElsevierMaterials.Models.Domain.Comparison.Material materialForProperty)
        {
            Condition condition = new Condition();

            ElsevierMaterials.Models.RecordLink conditionRecord = context.RecordLinks.All.Where(n => n.MaterialID == materialId && n.SubgroupID == subgroupId && n.RowID == propertyClient.ConditionId).FirstOrDefault();

            condition.ConditionId = propertyClient.ConditionId;

            if (conditionRecord.ProductForm != null && conditionRecord.ProductForm != "")
            {
                condition.ConditionName = conditionRecord.Condition + "; " + conditionRecord.ProductForm;
            }


            else
            {
                condition.ConditionName = conditionRecord.Condition;
            }


            //TODO:-Material je mogao da zadrzi model condition
            materialForProperty.Condition   = condition.ConditionName;
            materialForProperty.ConditionId = condition.ConditionId;


            MaterialProperty propCond = context.MaterialProperties.All.Where(m => m.MaterialId == materialId && m.SubgroupId == subgroupId && m.RowId == propertyClient.ConditionId && m.PropertyId == propertyClient.TypeId && m.ValueId == propertyClient.RowId).FirstOrDefault();

            if (propCond.OrigValue == null && propCond.OrigValueMax == null && propCond.OrigValueMin == null)
            {
                if (!string.IsNullOrEmpty(propCond.OrigValueText))
                {
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.AdditionalCondition + " ;" + propCond.Temperature.ToString() + "°C";
                    }
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature == null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.AdditionalCondition;
                    }
                    if (string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.Temperature.ToString() + "°C";
                    }
                }
            }
            else
            {
                if (!string.IsNullOrEmpty(propCond.OrigValueText))
                {
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.OrigValueText + " ;" + propCond.AdditionalCondition + " ;" + propCond.Temperature.ToString() + "°C";
                    }
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature == null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.OrigValueText + " ;" + propCond.AdditionalCondition;
                    }
                    if (string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.OrigValueText + " ;" + propCond.Temperature.ToString() + "°C";
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.AdditionalCondition + " ;" + propCond.Temperature.ToString() + "°C";
                    }
                    if (!string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature == null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.AdditionalCondition;
                    }
                    if (string.IsNullOrEmpty(propCond.AdditionalCondition) && propCond.Temperature != null)
                    {
                        materialForProperty.Condition = materialForProperty.Condition + "; " + propCond.Temperature.ToString() + "°C";
                    }
                }
            }

            return(condition);
        }