lixiaojun
2022-08-22 cd280a9457eda95433896e3e9e3aa5164bdd64a0
Service/IStation.Service4Monitor/monitor_point/signal/Signal.cs
@@ -266,6 +266,40 @@
            return vm_list;
        }
        /// <summary>
        /// 通过 ID 获取 信号+信号类型
        /// </summary>
        public Model.Signal_SignalType GetExSignalTypeByID(long CorpID, long ID)
        {
            var signal = GetByID(CorpID, ID);
            if (signal == null)
                return default;
            var signalType = new SignalType().GetByIdentifier(signal.SignalType);
            if (signalType == null)
                return default;
            var vm = new Model.Signal_SignalType(signal,signalType);
            return vm;
        }
        /// <summary>
        /// 通过 Ids 获取 信号+信号类型
        /// </summary>
        public List<Model.Signal_SignalType> GetExSignalTypeBySignalIds(long CorpID, IEnumerable<long> Ids)
        {
            if (Ids == null || Ids.Count() < 1)
                return default;
            var signalList = GetByIds(CorpID,Ids);
            if (signalList == null || signalList.Count < 1)
                return default;
            var identifiers = signalList.Where(x => !string.IsNullOrEmpty(x.SignalType)).Select(x => x.SignalType).Distinct().ToList();
            var signalTypeList = new SignalType().GetByIdentifiers(identifiers);
            if (signalTypeList == null || signalTypeList.Count < 1)
                return default;
            return (from x in signalList
                    join y in signalTypeList
                    on x.SignalType equals y.Identifier
                    select new Model.Signal_SignalType(x, y)).ToList();
        }
        #endregion