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); }
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); }
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); } }
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); }
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); }
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); }