Exemplo n.º 1
0
        //Конструктор
        public ReadAllSelect(string beginDate, string endDate)
        {
            var tagsList = new Tags();

            Messur = new List <DataRoad>();;
            var hdas = Connect.ServerHdaConnect();
            //var listTag = tagsList.GetMassurm().Select(tags => Convert.ToString(tags.Value)).ToList();
            var listTag = new List <string>();

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "MeasuringNum":
                    listTag.Add(tag.Value);
                    break;

                case "NameRoad":
                    listTag.Add(tag.Value);
                    break;
                }
            }
            Signal nummess = null;
            Signal name    = null;
            var    di      = new SignalDict(hdas, listTag, null, beginDate, endDate);

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "MeasuringNum":
                    nummess = di.Dictionary[tag.Value];
                    break;

                case "NameRoad":
                    name = di.Dictionary[tag.Value];
                    break;
                }
            }

            for (var sec = 0; sec <= (nummess.DtEnd - nummess.DtBegin).TotalSeconds - 1; sec += 25)
            {
                var nm     = nummess.DtBegin.AddSeconds(sec);
                var nume   = Seconds.GetValue(nummess, nm).OpcRec;
                var nam    = Seconds.GetValue(name, nm).OpcRec;
                var alarms = new DataRoad
                {
                    NumMess  = Convert.ToUInt16(nume.Value),
                    RoadName = Convert.ToString(nam.Value)
                };
                if (nume.Value != null && nume.Value.ToString() != string.Empty && nam.Value != null && nam.Value.ToString() != string.Empty)
                {
                    var flag = true;
                    foreach (var way in Messur)
                    {
                        if (way.NumMess == alarms.NumMess && way.RoadName == alarms.RoadName)
                        {
                            flag = false;
                        }
                    }
                    if (flag)
                    {
                        Messur.Add(alarms);
                    }
                }
            }
        }
Exemplo n.º 2
0
        //public List<DataRoad> Messur;
        public ReadAllBand(string beginDate, string endDate)
        {
            var tagsList = new Tags();
            //Messur = new List<DataRoad>();

            var hdas = Connect.ServerHdaConnect();
            //var listTag = tagsList.GetMassurm().Select(tags => Convert.ToString(tags.Value)).ToList();
            var listTag = new List <string>();

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "MeasuringNum":
                    listTag.Add(tag.Value);
                    break;

                case "Direction":
                    listTag.Add(tag.Value);
                    break;

                case "Band":
                    listTag.Add(tag.Value);
                    break;

                    //case "Coating":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "DesignCount":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "DesignLayer1":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "DesignLayer2":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "DesignLayer3":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "Customer":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "Builder":
                    //    listTag.Add(tag.Value);
                    //    break;


                    //case "StandartsDensity":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "StandartsDepth":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "StandartsIRI":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "StandartsLenght":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "StandartsRut":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "StandartsWidth":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "CoefficientTF":
                    //    listTag.Add(tag.Value);
                    //    break;
                    //case "CoefficientB":
                    //    listTag.Add(tag.Value);
                    //    break;

                    //case "CoefficientK":
                    //    listTag.Add(tag.Value);
                    //    break;
                }
            }
            Signal nummess   = null;
            Signal direction = null;
            Signal band      = null;
            //Signal coating = null;
            //Signal designcount = null;
            //Signal designlayer1 = null;
            //Signal designlayer2 = null;
            //Signal designlayer3 = null;
            //Signal customer = null;
            //Signal builder = null;

            //Signal standartsDensity = null;
            //Signal standartsDepth = null;
            //Signal standartsIRI = null;
            //Signal standartsLenght = null;
            //Signal standartsRut = null;
            //Signal standartsWidth = null;
            //Signal coefficientTF = null;
            //Signal koefficB = null;
            //Signal koefficK = null;


            var di = new SignalDict(hdas, listTag, null, beginDate, endDate);

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "MeasuringNum":
                    nummess = di.Dictionary[tag.Value];
                    break;

                case "Direction":
                    direction = di.Dictionary[tag.Value];
                    break;

                case "Band":
                    band = di.Dictionary[tag.Value];
                    break;
                    //case "Coating":
                    //    coating = di.Dictionary[tag.Value];
                    //    break;
                    //case "DesignCount":
                    //    designcount = di.Dictionary[tag.Value];
                    //    break;
                    //case "DesignLayer1":
                    //    designlayer1 = di.Dictionary[tag.Value];
                    //    break;
                    //case "DesignLayer2":
                    //    designlayer2 = di.Dictionary[tag.Value];
                    //    break;
                    //case "DesignLayer3":
                    //    designlayer3 = di.Dictionary[tag.Value];
                    //    break;
                    //case "Customer":
                    //    customer = di.Dictionary[tag.Value];
                    //    break;
                    //case "Builder":
                    //    builder = di.Dictionary[tag.Value];
                    //    break;


                    //case "StandartsDensity":
                    //    standartsDensity = di.Dictionary[tag.Value];
                    //    break;
                    //case "StandartsDepth":
                    //    standartsDepth = di.Dictionary[tag.Value];
                    //    break;
                    //case "StandartsIRI":
                    //    standartsIRI = di.Dictionary[tag.Value];
                    //    break;
                    //case "StandartsLenght":
                    //    standartsLenght = di.Dictionary[tag.Value];
                    //    break;
                    //case "StandartsRut":
                    //    standartsRut = di.Dictionary[tag.Value];
                    //    break;
                    //case "StandartsWidth":
                    //    standartsWidth = di.Dictionary[tag.Value];
                    //    break;
                    //case "CoefficientTF":
                    //    coefficientTF = di.Dictionary[tag.Value];
                    //    break;
                    //case "CoefficientB":
                    //    koefficB = di.Dictionary[tag.Value];
                    //    break;
                    //case "CoefficientK":
                    //    koefficK = di.Dictionary[tag.Value];
                    //    break;
                }
            }

            //for (var sec = 0; sec <= (nummess.DtEnd - nummess.DtBegin).TotalSeconds - 1; sec += 25)
            //{

            var nm   = nummess.DtBegin.AddSeconds(1);
            var nume = Seconds.GetValue(nummess, nm).OpcRec;

            var dct = Seconds.GetValue(direction, nm).OpcRec;
            var bnd = Seconds.GetValue(band, nm).OpcRec;

            //var coa = Seconds.GetValue(coating, nm).OpcRec;
            //var dc = Seconds.GetValue(designcount, nm).OpcRec;
            //var dl1 = Seconds.GetValue(designlayer1, nm).OpcRec;
            //var dl2 = Seconds.GetValue(designlayer2, nm).OpcRec;
            //var dl3 = Seconds.GetValue(designlayer3, nm).OpcRec;
            //var cr = Seconds.GetValue(customer, nm).OpcRec;
            //var br = Seconds.GetValue(builder, nm).OpcRec;

            //var kfb = Seconds.GetValue(koefficB, nm).OpcRec;
            //var kfk = Seconds.GetValue(koefficK, nm).OpcRec;

            //var stndrtDensity = Seconds.GetValue(standartsDensity, nm).OpcRec;
            //var stndrtDepth = Seconds.GetValue(standartsDepth, nm).OpcRec;
            //var stndrtIRI = Seconds.GetValue(standartsIRI, nm).OpcRec;
            //var stndrtLenght = Seconds.GetValue(standartsLenght, nm).OpcRec;
            //var stndrtRut = Seconds.GetValue(standartsRut, nm).OpcRec;
            //var stndrtWidth = Seconds.GetValue(standartsWidth, nm).OpcRec;
            //var ctf = Seconds.GetValue(coefficientTF, nm).OpcRec;

            //if (coa.Value == null)
            //{
            //    coa.Value = "Не задано";
            //}
            //if (dc.Value == null)
            //{
            //    dc.Value = "Не задано";
            //}
            //if (dl1.Value == null)
            //{
            //    dl1.Value = "Не задано";
            //}
            //if (cr.Value == null)
            //{
            //    cr.Value = "Не задано";
            //}
            //if (br.Value == null)
            //{
            //    br.Value = "Не задано";
            //}
            if (dct.Value == null)
            {
                dct.Value = "Не задано";
            }

            alarms = new DataRoad

            {
                NumMess = Convert.ToUInt16(nume.Value),

                Direction = Convert.ToString(dct.Value),
                Band      = Convert.ToInt16(bnd.Value),

                TimeStart = Convert.ToString(nume.Timestamp)
                            //Coating = Convert.ToString(coa.Value),
                            //DesignCount = Convert.ToInt16(dc.Value),
                            //DesignLayer1 = Convert.ToDouble(dl1.Value),
                            //DesignLayer2 = Convert.ToDouble(dl2.Value),
                            //DesignLayer3 = Convert.ToDouble(dl3.Value),
                            //Builder = Convert.ToString(br.Value),
                            //Customer = Convert.ToString(cr.Value),

                            //StandartsDensity = Convert.ToDouble(stndrtDensity.Value),
                            //StandartsDepth = Convert.ToDouble(stndrtDepth.Value),
                            //StandartsIRI = Convert.ToDouble(stndrtIRI.Value),
                            //StandartsLenght = Convert.ToDouble(stndrtLenght.Value),
                            //StandartsRut = Convert.ToDouble(stndrtRut.Value),
                            //StandartsWidth = Convert.ToDouble(stndrtWidth.Value),
                            //CoefficientTF = Convert.ToBoolean(ctf.Value),
                            //KoefficB = Convert.ToByte(kfb.Value),
                            //KoefficK = Convert.ToByte(kfk.Value),
            };


            //Messur.Add(alarms);

            //}
        }
Exemplo n.º 3
0
        public ReadAllGraffics(string beginDate, string endDate)
        {
            var tagsList = new Tags();

            Messur = new List <Graphics>();

            var hdas    = Connect.ServerHdaConnect();
            var listTag = new List <string>();

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "CountLayers":
                    listTag.Add(tag.Value);
                    break;

                case "Distance":
                    listTag.Add(tag.Value);
                    break;

                case "OverallAssessment":
                    listTag.Add(tag.Value);
                    break;


                case "Layer1":
                    listTag.Add(tag.Value);
                    break;

                case "Layer2":
                    listTag.Add(tag.Value);
                    break;

                case "Layer3":
                    listTag.Add(tag.Value);
                    break;

                case "Sensor1":
                    listTag.Add(tag.Value);
                    break;

                case "Sensor2":
                    listTag.Add(tag.Value);
                    break;

                case "Rut":
                    listTag.Add(tag.Value);
                    break;

                case "Band":
                    listTag.Add(tag.Value);
                    break;

                case "IRI":
                    listTag.Add(tag.Value);
                    break;

                case "Latitude":
                    listTag.Add(tag.Value);
                    break;

                case "Longitude":
                    listTag.Add(tag.Value);
                    break;
                }
            }
            Signal distance     = null;
            Signal countLayer   = null;
            Signal generalState = null;

            Signal layer1    = null;
            Signal layer2    = null;
            Signal layer3    = null;
            Signal n1        = null;
            Signal n2        = null;
            Signal rut       = null;
            Signal band      = null;
            Signal iri       = null;
            Signal latitude  = null;
            Signal longitude = null;

            var di = new SignalDict(hdas, listTag, null, beginDate, endDate);

            foreach (var tag in tagsList.GetMassurm())
            {
                switch (tag.Name)
                {
                case "CountLayers":
                    countLayer = di.Dictionary[tag.Value];
                    break;

                case "Distance":
                    distance = di.Dictionary[tag.Value];
                    break;

                case "OverallAssessment":
                    generalState = di.Dictionary[tag.Value];
                    break;


                case "Layer1":
                    layer1 = di.Dictionary[tag.Value];
                    break;

                case "Layer2":
                    layer2 = di.Dictionary[tag.Value];
                    break;

                case "Layer3":
                    layer3 = di.Dictionary[tag.Value];
                    break;

                case "Sensor1":
                    n1 = di.Dictionary[tag.Value];
                    break;

                case "Sensor2":
                    n2 = di.Dictionary[tag.Value];
                    break;

                case "Rut":
                    rut = di.Dictionary[tag.Value];
                    break;

                case "Band":
                    band = di.Dictionary[tag.Value];
                    break;

                case "IRI":
                    iri = di.Dictionary[tag.Value];
                    break;

                case "Latitude":
                    latitude = di.Dictionary[tag.Value];
                    break;

                case "Longitude":
                    longitude = di.Dictionary[tag.Value];
                    break;
                }
            }

            for (var sec = 0; sec <= (countLayer.DtEnd - countLayer.DtBegin).TotalSeconds - 1; sec++)
            {
                var middle = new Graphics();

                var ct      = countLayer.DtBegin.AddSeconds(sec);
                var countl  = Seconds.GetValue(countLayer, ct).OpcRec;
                var general = Seconds.GetValue(generalState, ct).OpcRec;

                var lr1  = Seconds.GetValue(layer1, ct).OpcRec;
                var lr2  = Seconds.GetValue(layer2, ct).OpcRec;
                var lr3  = Seconds.GetValue(layer3, ct).OpcRec;
                var int1 = Seconds.GetValue(n1, ct).OpcRec;
                var int2 = Seconds.GetValue(n2, ct).OpcRec;
                var dse  = Seconds.GetValue(distance, ct).OpcRec;
                var rt   = Seconds.GetValue(rut, ct).OpcRec;
                var bd   = Seconds.GetValue(band, ct).OpcRec;
                var ir   = Seconds.GetValue(iri, ct).OpcRec;
                var lade = Seconds.GetValue(latitude, ct).OpcRec;
                var lode = Seconds.GetValue(longitude, ct).OpcRec;

                middle.CountLayer   = Convert.ToByte(countl.Value);
                middle.GeneralState = Convert.ToBoolean(general.Value);

                middle.Layer1      = Convert.ToSingle(lr1.Value);
                middle.Layer2      = Convert.ToSingle(lr2.Value);
                middle.Layer3      = Convert.ToSingle(lr3.Value);
                middle.IntensityN1 = Convert.ToDouble(int1.Value);
                middle.IntensityN2 = Convert.ToDouble(int2.Value);
                middle.Distance    = Convert.ToSingle(dse.Value);
                middle.Rut         = Convert.ToByte(rt.Value);
                middle.Band        = Convert.ToUInt16(bd.Value);
                middle.IRI         = Convert.ToDouble(ir.Value);
                middle.Latitude    = Convert.ToSingle(lade.Value);
                middle.Longitude   = Convert.ToSingle(lode.Value);



                Messur.Add(middle);
            }
        }