コード例 #1
0
        public ControlCondition MapControlConditionOrNull()
        {
            var conditionTypeText = _eHsn.DisMeas?.condition?.Trim();
            var conditionRemarks  = _eHsn.DisMeas?.controlConditionRemark?.Trim();

            if (string.IsNullOrWhiteSpace(conditionTypeText) && string.IsNullOrWhiteSpace(conditionRemarks))
            {
                return(null);
            }

            var controlCondition = new ControlCondition
            {
                Comments = conditionRemarks,
                Party    = _eHsn.PartyInfo?.party,
            };

            if (!string.IsNullOrWhiteSpace(conditionTypeText))
            {
                if (Config.KnownControlConditions.ContainsKey(conditionTypeText))
                {
                    controlCondition.ConditionType = new ControlConditionPickList(conditionTypeText);
                }
                else
                {
                    controlCondition.Comments = string.Join("\n", new[] { conditionTypeText, controlCondition.Comments }
                                                            .Select(s => !string.IsNullOrWhiteSpace(s)));
                }
            }

            return(controlCondition);
        }
コード例 #2
0
            public void Add(Control c, ControlCondition condition, Func <bool, bool> IsEditableMethod = null)
            {
                var t = Tuple.Create <ControlCondition, Func <bool, bool> >(condition, IsEditableMethod);

                if (!collection.ContainsKey(c))
                {
                    collection.Add(c, t);
                }
                else
                {
                    collection[c] = t;
                }
            }
コード例 #3
0
        public void WireLoadTest()
        {
            OTLTest.OTLSetting();
            var otl = OTL.OTLProject;
            List <(string, WireLoadGroup)> wireLoadGroups = new List <(string, WireLoadGroup)>();

            foreach (var item in otl.WeatherAndWires)
            {
                foreach (var s in item.Item4)
                {
                    var wireAndWeather = new WireAndWeather(s.Item2, otl.WeatherGroups[item.Item3]);
                    var wireLoadGroup  = new WireLoadGroup(wireAndWeather); //荷载组
                    wireLoadGroups.Add((s.Item2.Conductor.Name, wireLoadGroup));
                    var cs = new ControlCondition(wireAndWeather);          //控制档距
                    var T  = WireMechanic.Tension(wireAndWeather, wireAndWeather.WeatherGroup.MaxTemperature, 500);
                }
            }
        }
コード例 #4
0
 public void Add(Control c, ControlCondition condition, Func<bool, bool> IsEditableMethod = null)
 {
     var t = Tuple.Create<ControlCondition, Func<bool, bool>>(condition, IsEditableMethod);
     if(!collection.ContainsKey(c))
     {
         collection.Add(c, t);
     }
     else
     {
         collection[c] = t;
     }
 }
コード例 #5
0
 public void AddControlCondition(FieldVisitInfo fieldVisit, ControlCondition controlCondition)
 {
     fieldVisit.ControlConditions.Add(controlCondition);
 }
コード例 #6
0
        public void AddControlCondition(FieldVisitInfo fieldVisit, ControlCondition controlCondition)
        {
            fieldVisit.ControlConditions.Add(controlCondition);

            ExtendVisitPeriod(fieldVisit, controlCondition.DateCleaned);
        }