예제 #1
0
파일: DBReader.cs 프로젝트: dot-bm/lacznik
        public static void WriteStreamsToFiles(string catalog, BlaRequest request, RoReporter reporter, string caller)
        {
            if (!Directory.Exists(catalog))
            {
                reporter.AddMessage(new RoReMessage
                {
                    Caller  = caller, EvType = RoReEventType.Error,
                    Message = string.Format("Katalog {0} nie istnieje", catalog)
                });
                return;
            }

            try
            {
                foreach (var brs in request.Batches)
                {
                    if ((brs.Result == null) | string.IsNullOrWhiteSpace(brs.FileName))
                    {
                        reporter.AddMessage(new RoReMessage
                        {
                            Caller  = caller, EvType = RoReEventType.Warning,
                            Message = string.Format("Pomijanie zapisu pliku dla podzlecenia {0}", brs.BatchId)
                        });
                        continue;
                    }

                    var path = Path.Combine(catalog, brs.FileName);
                    reporter.AddMessage(new RoReMessage
                    {
                        Caller  = caller, EvType = RoReEventType.Info,
                        Message = string.Format("Zapis pliku dla podzlecenia {0} [{1}]", brs.BatchId, path)
                    });
                    if (!Directory.Exists(Path.GetDirectoryName(path)))
                    {
                        Directory.CreateDirectory(Path.GetDirectoryName(path));
                    }
                    WriteStreamToFile(brs.Result, path);
                }
            }
            catch (Exception e)
            {
                reporter.AddException(e, caller);
            }
        }
예제 #2
0
 public override bool CheckPrerequisities(RoReporter reporter)
 {
     if (!_platform.PuT.Lines.SelectMany(l => l.Strecken.SelectMany(ls => ls.Profiles)).Any())
     {
         reporter.AddMessage(new RoReMessage
         {
             EvType  = RoReEventType.Warning,
             Message = "Nie znaleziono żadnej linii/przebiegu/profilu. Nie będzie możliwe przypisanie kursów"
         });
     }
     return(true);
 }
예제 #3
0
        protected bool _CheckIf_TSysList_Exists(RoReporter reporter)
        {
            var b = _platform.DemFoundation.TSysList != null;

            if (!b)
            {
                reporter.AddMessage(new RoReMessage
                {
                    Message = "Najpierw należy wczytać środki transportu (TSys)", EvType = RoReEventType.Error
                });
            }
            return(b);
        }
예제 #4
0
        public override bool CheckPrerequisities(RoReporter reporter)
        {
            var b = _platform.DemFoundation.TSysList != null;

            if (!b)
            {
                reporter.AddMessage(new RoReMessage
                {
                    Caller = "ReickModule[Mod]", Message = "Najpierw należy wczytać środki transportu (TSys)",
                    EvType = RoReEventType.Error
                });
            }
            return(b);
        }
예제 #5
0
        public override bool CheckPrerequisities(RoReporter reporter)
        {
            var b = _platform.Attributies.HasDefinitions;

            if (!b)
            {
                reporter.AddMessage(new RoReMessage
                {
                    Caller  = __MODNAME, EvType = RoReEventType.Error,
                    Message = "Konieczne jest wcześniejsze wczytanie definicji atrybutów"
                });
            }
            return(b);
        }
        public override bool CheckPrerequisities(RoReporter reporter)
        {
            var b = _CheckIf_TSysList_Exists(reporter);

            if (_platform.Graph.Nodes?.Count == 0)
            {
                reporter.AddMessage(new RoReMessage
                {
                    EvType  = RoReEventType.Warning,
                    Message = "Liczba węzłów wynosi 0. Zatem niemożliwe będzie stworzenie przystanków"
                });
            }
            return(b);
        }
예제 #7
0
        public override bool CheckPrerequisities(RoReporter reporter)
        {
            var b = true;

            if (_platform.DemFoundation.TSysList == null)
            {
                reporter.AddMessage(new RoReMessage
                {
                    Caller  = "Reick Module[AtD]", EvType = RoReEventType.Error,
                    Message = "Systemy Transportu (TSys) muszą być przewtorzone przed uruchomieniem tego modułu"
                });
                b = false;
            }

            return(b);
        }