Exemplo n.º 1
0
        public int SaveMonitorMap(MonitorMap entity)
        {
            if (entity == null)
            {
                return(0);
            }

            if (entity.Id > 0)
            {
                var tracked = context.MonitorMaps.Find(entity.Id);
                if (tracked == null)
                {
                    return(0);
                }
                else
                {
                    context.Entry(tracked).CurrentValues.SetValues(entity);
                    entity = tracked;
                }
            }
            else
            {
                entity = context.MonitorMaps.Add(entity);
            }
            return(context.SaveChanges());
        }
Exemplo n.º 2
0
 public void MonitorDb(MonitorMap source)
 {
     using (var con = new SqlConnection(source.DestinationCon))
     {
         con.Open();
         var sql = "select count(*) from " + source.DestinationAddress;
         if (!string.IsNullOrEmpty(source.DestinationFilter))
         {
             sql = sql + "where " + source.DestinationFilter.Replace("{LastSyncTime}", _lastDate);
         }
         var cmd   = new SqlCommand(sql, con);
         var count = Convert.ToInt32(cmd.ExecuteScalar());
         con.Close();
         Log.Append("" + count + "");
     }
 }
Exemplo n.º 3
0
        public void MonitorFtp(MonitorMap source)
        {
            var parentdi = new DirectoryInfo(source.DestinationAddress);

            if (!parentdi.Exists)
            {
                parentdi.Create();
            }
            var date = Convert.ToDateTime(_lastDate);

            Log.Append("downLoad files: ");
            foreach (FileInfo fi in parentdi.GetFiles())
            {
                if (fi.CreationTime > date)
                {
                    Log.Append(fi.Name + " ");
                }
            }
            Log.Append(";");
        }
Exemplo n.º 4
0
        private int SaveMap(List <MonitorMap> mapList, int systemId, int startX, int startY, int scale, MapSize size, HttpPostedFileBase uploadedFile)
        {
            var tracked = mapList.FirstOrDefault(x => x.MonitorSystemId == systemId && x.SizeType == (int)size);

            if (tracked == null)
            {
                tracked = new MonitorMap {
                    MonitorSystemId = systemId,
                    SizeType        = (int)size,
                    Name            = "",
                    DisplayName     = ""
                };
            }
            tracked.StartX = startX;
            tracked.StartY = startY;
            tracked.Scale  = scale;

            if (uploadedFile != null && uploadedFile.ContentLength > 0)
            {
                var ext         = Path.GetExtension(uploadedFile.FileName);
                var mapName     = string.Format("Map_{0}_{1}{2}", systemId, (int)size, ext);
                var displayName = Path.GetFileName(uploadedFile.FileName);
                var filePath    = "";
                if (!string.IsNullOrEmpty(tracked.Name))
                {
                    filePath = Path.Combine(HttpContext.Server.MapPath("~/Images"), tracked.Name);
                    if (System.IO.File.Exists(filePath))
                    {
                        System.IO.File.Delete(filePath);
                    }
                }

                filePath = Path.Combine(HttpContext.Server.MapPath("~/Images"), mapName);
                uploadedFile.SaveAs(filePath);

                tracked.Name        = mapName;
                tracked.DisplayName = displayName;
            }
            return(_dao.SaveMonitorMap(tracked));
        }
Exemplo n.º 5
0
 public static NonEscapedString Render(HtmlHelper helper, string selectedCategory, MonitorMap map)
 => helper.RenderPartial(new SidebarControlFromMonitor(selectedCategory, map));
Exemplo n.º 6
0
 public SidebarControlFromMonitor(string selectedCategory, MonitorMap map)
 {
     SelectedCategory = selectedCategory;
     Map = map;
 }
Exemplo n.º 7
0
        public Monitor LoadMonitorInfo(XmlNode node)
        {
            var monitor = new Monitor();
            var jobType = node.SelectSingleNode("JobType");

            if (jobType == null || string.IsNullOrEmpty(jobType.InnerText))
            {
                throw new Exception("Cannot find jobType info under the node: " + node);
            }
            monitor.JobType = jobType.InnerText;

            var triggerInterval = node.SelectSingleNode("TriggerInterval");

            if (triggerInterval == null || string.IsNullOrEmpty(triggerInterval.InnerText))
            {
                throw new Exception("Cannot find triggerInterval info under the node: " + node);
            }
            monitor.TriggerInterval = triggerInterval.InnerText;

            var nodes = node.SelectNodes("mappings/table-mapping");

            if (nodes != null)
            {
                monitor.Mappings = new List <MonitorMap>();
                foreach (XmlNode node1 in nodes)
                {
                    var map    = new MonitorMap();
                    var source = node1.SelectSingleNode("source");
                    if (source != null)
                    {
                        map.Source = source.InnerText;
                    }

                    var dataProvider = node1.SelectSingleNode("DataProvider");
                    if (dataProvider != null)
                    {
                        map.DataProvider = dataProvider.InnerText;
                    }

                    var description = node1.SelectSingleNode("description");
                    if (description != null)
                    {
                        map.Description = description.InnerText;
                    }

                    var selectSingleNode1 = node1.SelectSingleNode("destination/type");
                    if (selectSingleNode1 != null)
                    {
                        map.DestinationType = selectSingleNode1.InnerText;
                    }
                    var singleNode1 = node1.SelectSingleNode("destination/address");
                    if (singleNode1 != null)
                    {
                        map.DestinationAddress = singleNode1.InnerText;
                        if (singleNode1.Attributes != null)
                        {
                            if (singleNode1.Attributes["con"] != null)
                            {
                                map.DestinationCon = singleNode1.Attributes["con"].InnerText;
                            }
                            if (singleNode1.Attributes["filter"] != null)
                            {
                                map.DestinationFilter = singleNode1.Attributes["filter"].InnerText;
                            }
                        }
                    }
                    monitor.Mappings.Add(map);
                }
            }
            return(monitor);
        }
Exemplo n.º 8
0
        public override void Execute()
        {
            WriteLiteral("\r\n");



            WriteLiteral("\r\n");



            #line 10 "..\..\Dashboard\MonitorPage.cshtml"

            Layout = new LayoutPage(Strings.MonitorPage_Title);

            string        selectedCategory = this.SelectedCategory;
            MonitorMap    jobMap           = this.Map;
            JobKitOptions options          = this.Options;

            var availableJobs = jobMap.JobCollection.ContainsKey(selectedCategory)
        ? jobMap.JobCollection[selectedCategory]
        : new List <MonitorJob>();

            var format = selectedCategory == "Daily"
        ? "HH:mm" : "MM-dd HH:mm";



            #line default
            #line hidden
            WriteLiteral("\r\n<script type=\"text/javascript\">\r\n    \r\n</script>\r\n\r\n<div class=\"row\">\r\n    <div" +
                         " class=\"col-md-3\">\r\n        ");



            #line 33 "..\..\Dashboard\MonitorPage.cshtml"
            Write(SidebarControlFromMonitor.Render(Html, selectedCategory, jobMap));


            #line default
            #line hidden
            WriteLiteral("\r\n    </div>\r\n    <h1 class=\"page-header\">");



            #line 35 "..\..\Dashboard\MonitorPage.cshtml"
            Write(this.SelectedCategoryText);


            #line default
            #line hidden


            #line 35 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Title);


            #line default
            #line hidden
            WriteLiteral("</h1>\r\n    <div class=\"col-md-9\">\r\n        <div class=\"table-responsive\">\r\n      " +
                         "      <table class=\"table\">\r\n                <thead>\r\n                    <tr>\r\n" +
                         "                        <th>");



            #line 41 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_Name);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        <th class=\"min-width\">");



            #line 42 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_Cron);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        <th>");



            #line 43 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_Action);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        <th class=\"align-right min-width\">");



            #line 44 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_ScheduleTime);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        <th class=\"align-right min-width\">");



            #line 45 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_ExecutedTime);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        <th class=\"align-right min-width\">");



            #line 46 "..\..\Dashboard\MonitorPage.cshtml"
            Write(Strings.MonitorPage_Table_Status);


            #line default
            #line hidden
            WriteLiteral("</th>\r\n                        \r\n                    </tr>\r\n                </the" +
                         "ad>\r\n                <tbody>\r\n");



            #line 51 "..\..\Dashboard\MonitorPage.cshtml"
            foreach (var job in availableJobs.OrderBy(x => x.MonitorTime))
            {
                var jobStatus = job.GetStatus(Storage);



            #line default
            #line hidden
                WriteLiteral("                        <tr class=\"js-jobs-list-row hover\">\r\n                    " +
                             "        <td class=\"word-break width-15\">");



            #line 56 "..\..\Dashboard\MonitorPage.cshtml"
                Write(job.Name);


            #line default
            #line hidden
                WriteLiteral("</td>\r\n                            <td class=\"word-break width-15\"><code>");



            #line 57 "..\..\Dashboard\MonitorPage.cshtml"
                Write(job.Cron);


            #line default
            #line hidden
                WriteLiteral("</code></td>\r\n                            <td class=\"align-right min-width\">");



            #line 58 "..\..\Dashboard\MonitorPage.cshtml"
                Write(job.ActionName);


            #line default
            #line hidden
                WriteLiteral(" </td>\r\n                            <td class=\"align-right min-width\">");



            #line 59 "..\..\Dashboard\MonitorPage.cshtml"
                Write(job.MonitorTime.ToLocalTime().ToString(format));


            #line default
            #line hidden
                WriteLiteral("  </td>\r\n                            <td class=\"align-right min-width\">");



            #line 60 "..\..\Dashboard\MonitorPage.cshtml"
                Write(jobStatus.ExecutedTime.HasValue ? jobStatus.ExecutedTime.Value.ToLocalTime().ToString(format) : "-");


            #line default
            #line hidden
                WriteLiteral("</td>\r\n                            <td class=\"align-right min-width\">\r\n");



            #line 62 "..\..\Dashboard\MonitorPage.cshtml"
                switch (jobStatus.Status)
                {
                case MonitorJobStatus.Successed:


            #line default
            #line hidden
                    WriteLiteral("                                        <a href=\"");



            #line 65 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Url.JobDetails(jobStatus.ExecutedJobId));


            #line default
            #line hidden
                    WriteLiteral("\">\r\n                                            <span class=\"badge\" style=\"backgr" +
                                 "ound-color:#198754;\">");



            #line 66 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Strings.MonitorStatus_Successed);


            #line default
            #line hidden
                    WriteLiteral("</span>\r\n                                        </a>\r\n");



            #line 68 "..\..\Dashboard\MonitorPage.cshtml"
                    break;

                case MonitorJobStatus.Failed:


            #line default
            #line hidden
                    WriteLiteral("                                        <a href=\"");



            #line 70 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Url.JobDetails(jobStatus.ExecutedJobId));


            #line default
            #line hidden
                    WriteLiteral("\">\r\n                                            <span class=\"badge\" style=\"backgr" +
                                 "ound-color:#dc3545;\">");



            #line 71 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Strings.MonitorStatus_Failed);


            #line default
            #line hidden
                    WriteLiteral("</span>\r\n                                        </a>\r\n");



            #line 73 "..\..\Dashboard\MonitorPage.cshtml"
                    break;

                case MonitorJobStatus.Invalid:


            #line default
            #line hidden
                    WriteLiteral("                                        <a href=\"");



            #line 75 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Url.JobDetails(jobStatus.ExecutedJobId));


            #line default
            #line hidden
                    WriteLiteral("\">\r\n                                            <span class=\"badge\" style=\"backgr" +
                                 "ound-color:#ffc107;color:#000000\">");



            #line 76 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Strings.MonitorStatus_Invalid);


            #line default
            #line hidden
                    WriteLiteral("</span>\r\n                                        </a>\r\n");



            #line 78 "..\..\Dashboard\MonitorPage.cshtml"
                    break;

                case MonitorJobStatus.Unexecuted:


            #line default
            #line hidden
                    WriteLiteral("                                        <span class=\"badge\">");



            #line 80 "..\..\Dashboard\MonitorPage.cshtml"
                    Write(Strings.MonitorStatus_Unexecuted);


            #line default
            #line hidden
                    WriteLiteral("</span>\r\n");



            #line 81 "..\..\Dashboard\MonitorPage.cshtml"
                    break;

                default:


            #line default
            #line hidden

            #line 83 "..\..\Dashboard\MonitorPage.cshtml"
                    Write("-");


            #line default
            #line hidden

            #line 83 "..\..\Dashboard\MonitorPage.cshtml"

                    break;
                }


            #line default
            #line hidden
                WriteLiteral("\r\n                            </td>\r\n                        </tr>\r\n");



            #line 89 "..\..\Dashboard\MonitorPage.cshtml"
            }


            #line default
            #line hidden
            WriteLiteral("                </tbody>\r\n            </table>\r\n        </div>\r\n    </div>\r\n</div" +
                         ">\r\n");
        }
Exemplo n.º 9
0
 public MonitorPage(string selectedCategory, MonitorMap map, JobKitOptions options)
 {
     SelectedCategory = selectedCategory;
     Map     = map;
     Options = options;
 }