public Property GetPropertyDataNew(int materialId, int subgroupId, GroupTestCondition record, PropertyWithConvertedValues prop)
        {
            Property propertyObj = new Property()
            {
                PropertyId       = prop.PropertyId,
                SourcePropertyId = 0,
                SourceId         = 1,
                DefaultUnitId    = 1,
                MaterialId       = materialId,
                SubgroupId       = subgroupId,
                RowId            = record.RowID,
                ValueId          = prop.ValueId
            };


            propertyObj.PropertyName = prop.PropertyName;


            string value = "";
            string unit  = "";
            string note  = "";
            string text  = "";

            if (prop.AdditionalCondition != null && prop.SpecimenOrientation != null)
            {
                text = prop.AdditionalCondition + "; specimen orientation: " + prop.SpecimenOrientation;
            }

            if (prop.AdditionalCondition == null && prop.SpecimenOrientation != null)
            {
                text = "specimen orientation: " + prop.SpecimenOrientation;
            }

            if (prop.AdditionalCondition != null && prop.SpecimenOrientation == null)
            {
                text = prop.AdditionalCondition;
            }

            FillValueForPropertyUnitType(prop.OrigValue, prop.OrigValueMin, prop.OrigValueMax, prop.OrigValueText, text, prop.Temperature, prop.OriginalUnit, out value, out note, out unit);
            propertyObj.OrigValue     = value;
            propertyObj.OrigUnit      = unit;
            propertyObj.OrigValueText = note;

            //TODO: prop.OrigValueText
            FillValueForPropertyUnitType(prop.ConvValue, prop.ConvValueMin, prop.ConvValueMax, prop.OrigValueText, text, prop.Temperature, prop.DefaultUnit, out value, out note, out unit);
            propertyObj.DeafaultValue     = value;
            propertyObj.DeafaultUnit      = unit;
            propertyObj.DeafaultValueText = note;

            //TODO: prop.OrigValueText
            FillValueForPropertyUnitType(prop.UsValue, prop.UsValueMin, prop.UsValueMax, prop.OrigValueText, text, prop.Temperature, prop.UsUnit, out value, out note, out unit);
            propertyObj.USValue     = value;
            propertyObj.UStUnit     = unit;
            propertyObj.USValueText = note;

            //TODO: Treba izbaciti, mislim da je visak
            if (prop.ConvValue == null)
            {
                if (prop.ConvValueMin != null && prop.ConvValueMax != null)
                {
                    propertyObj.ConvValue = ((double)prop.ConvValueMin).ToString("0.####") + "-" + ((double)prop.ConvValueMax).ToString("0.##");
                }
                if (prop.ConvValueMin != null && prop.ConvValueMax == null)
                {
                    propertyObj.ConvValue = "≤" + ((double)prop.ConvValueMin).ToString("0.####");
                }
                if (prop.ConvValueMax != null && prop.ConvValueMin == null)
                {
                    propertyObj.ConvValue = "≥" + ((double)prop.ConvValueMax).ToString("0.####");
                }
                if (prop.ConvValueMax == null && prop.ConvValueMin == null)
                {
                    propertyObj.ConvValue = "";
                }
            }
            else
            {
                propertyObj.ConvValue = prop.ConvValue.ToString();
            }

            return(propertyObj);
        }
Exemple #2
0
        public ConditionModel GetDataForSlectedTestCondition(int materialId, int subgroupId, int groupId, int rowId, IMaterialsContextUow context)
        {
            GroupTestCondition slectedTestCondition = context.GroupTestConditions.AllAsNoTracking.Where(n => n.MaterialID == materialId && n.SubgroupID == subgroupId && n.GroupId == groupId && n.RowID == rowId).FirstOrDefault();

            ConditionModel conditionModel = new ConditionModel();

            conditionModel.ProductGroupId = (ProductGroup.ProductGroupType)groupId;
            conditionModel.Properties     = new List <ElsevierMaterials.Models.Property>();
            conditionModel.RowId          = rowId;

            conditionModel.ConditionName = "";

            if (slectedTestCondition.Temperature != null && slectedTestCondition.Temperature != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; " + slectedTestCondition.Temperature : slectedTestCondition.Temperature);
            }

            if (slectedTestCondition.Basis != null && slectedTestCondition.Basis != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Basis: " + slectedTestCondition.Basis : "Basis: " + slectedTestCondition.Basis);
            }


            if (slectedTestCondition.TestType != null && slectedTestCondition.TestType != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; " + slectedTestCondition.TestType : slectedTestCondition.TestType);
            }

            if (slectedTestCondition.StressRatio != null && slectedTestCondition.StressRatio != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Stress ratio: " + slectedTestCondition.StressRatio : "Stress ratio: " + slectedTestCondition.StressRatio);
            }

            if (slectedTestCondition.SpecimenOrientation != null && slectedTestCondition.SpecimenOrientation != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Specimen orientation: " + slectedTestCondition.SpecimenOrientation : "Specimen orientation: " + slectedTestCondition.SpecimenOrientation);
            }

            if (slectedTestCondition.HoldingTemperature != null && slectedTestCondition.HoldingTemperature != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Holding temperature: " + slectedTestCondition.HoldingTemperature : "Holding temperature: " + slectedTestCondition.HoldingTemperature);
            }

            if (slectedTestCondition.HoldingTime != null && slectedTestCondition.HoldingTime != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Holding time: " + slectedTestCondition.HoldingTime : "Holding time: " + slectedTestCondition.HoldingTime);
            }

            if (slectedTestCondition.SpecimenType != null && slectedTestCondition.SpecimenType != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; " + slectedTestCondition.SpecimenType : slectedTestCondition.SpecimenType);
            }

            if (slectedTestCondition.Comment != null && slectedTestCondition.Comment != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; " + slectedTestCondition.Comment : slectedTestCondition.Comment);
            }


            if (slectedTestCondition.TSCF != null && slectedTestCondition.TSCF != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; Theoretical stress concentration factor: " + slectedTestCondition.TSCF : "Theoretical stress concentration factor: " + slectedTestCondition.TSCF);
            }


            if (slectedTestCondition.Pressure != null && slectedTestCondition.Pressure != "")
            {
                conditionModel.ConditionName = conditionModel.ConditionName + ((conditionModel.ConditionName != "") ? "; " + slectedTestCondition.Pressure : slectedTestCondition.Pressure);
            }


            if (conditionModel.ConditionName == null || conditionModel.ConditionName == "")
            {
                conditionModel.ConditionName = "All";
            }

            conditionModel.ConditionName = conditionModel.ConditionName.TrimStart(';').TrimStart();

            IList <PropertyWithConvertedValues> propertiesPerCond = context.PropertiesWithConvertedValues.All.Where(m => m.MaterialId == materialId && m.SubgroupId == subgroupId && m.GroupId == slectedTestCondition.GroupId && m.RowId == slectedTestCondition.RowID).ToList();

            foreach (var prop in propertiesPerCond)
            {
                ElsevierMaterials.Models.Property propertyObj = new PropertyElsBinder().GetPropertyDataNew(materialId, subgroupId, slectedTestCondition, prop);

                conditionModel.Properties.Add(propertyObj);
            }

            conditionModel.Properties = conditionModel.Properties.OrderBy(m => m.PropertyId).ToList();
            return(conditionModel);
        }