diff --git a/Txgy.RBS.DTO/ProjectUsedDTO.cs b/Txgy.RBS.DTO/ProjectUsedDTO.cs index b53f042..ea7772c 100644 --- a/Txgy.RBS.DTO/ProjectUsedDTO.cs +++ b/Txgy.RBS.DTO/ProjectUsedDTO.cs @@ -16,7 +16,7 @@ namespace Txgy.RBS.DTO } public int id { get; set; } - + public string project_name { set; get; } public int current_project_id { get; set; } diff --git a/Txgy.RBS.Server.WebApi/rbs_server_db.db b/Txgy.RBS.Server.WebApi/rbs_server_db.db index 2196321..51591ba 100644 Binary files a/Txgy.RBS.Server.WebApi/rbs_server_db.db and b/Txgy.RBS.Server.WebApi/rbs_server_db.db differ diff --git a/Txgy.RBS.Services/ProcessManagerService.cs b/Txgy.RBS.Services/ProcessManagerService.cs index 50f102e..8fe2abd 100644 --- a/Txgy.RBS.Services/ProcessManagerService.cs +++ b/Txgy.RBS.Services/ProcessManagerService.cs @@ -29,6 +29,7 @@ namespace Txgy.RBS.Services _cache = cache; RedisServer = new ProcessInfo() { + ProPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, CommonData.RedisDefaultPath), ProName = "server", StartTime = DateTime.Now, State = true @@ -40,13 +41,16 @@ namespace Txgy.RBS.Services { foreach (var item in ProjectMonitor) { - _redisList.Publish(CommonData.RedisPublish, Newtonsoft.Json.JsonConvert.SerializeObject(new + int sfServer = FindProcess(RedisServer); + RedisServer.State = sfServer == 0 ? true : false; + var messageRerver = new { projectName = item.Key, ProName = RedisServer.ProName, - RunState = RedisServer.State?1:0, + RunState = RedisServer.State ? 1 :2, RunTime = (DateTime.Now - RedisServer.StartTime).TotalSeconds, - })); + }; + _redisList.Publish(CommonData.RedisPublish, Newtonsoft.Json.JsonConvert.SerializeObject(messageRerver)); foreach (var proValue in item.Value.GetType().GetProperties()) { var pro = proValue.GetValue(item.Value) as ProcessInfo; @@ -68,7 +72,8 @@ namespace Txgy.RBS.Services { projectName=item.Key, ProName = pro.ProName, - RunState = sfp == 0 ? 1 : 0, + //0已停止,1正常启动,2启动失败; + RunState = sfp == 0 ? 1 : 2, RunTime = (DateTime.Now - pro.StartTime).TotalSeconds, })); } @@ -104,8 +109,9 @@ namespace Txgy.RBS.Services { projectName = projectName, ProName = pro.ProName, + //0已停止,1正常启动,2启动失败; RunState = 0, - RunTime = (DateTime.Now - pro.StartTime).TotalSeconds, + RunTime = 0, })); } } @@ -336,14 +342,7 @@ namespace Txgy.RBS.Services else { List pro = null; - if (processInfo.ProName == "server") - { - pro = localByName.Where(p => p.MainModule.FileName.Contains(processInfo.ProName)).ToList(); - } - else - { - pro = localByName.Where(p => p.MainModule.FileName.Contains(processInfo.ProPath)).ToList(); - } + pro = localByName.Where(p => p.MainModule.FileName.Contains(processInfo.ProPath)).ToList(); if (!pro.Any()) { ri = 1; diff --git a/Txgy.RBS.Services/ProjectInfoService.cs b/Txgy.RBS.Services/ProjectInfoService.cs index 8874657..bc28742 100644 --- a/Txgy.RBS.Services/ProjectInfoService.cs +++ b/Txgy.RBS.Services/ProjectInfoService.cs @@ -75,12 +75,22 @@ namespace Txgy.RBS.Services { var curProject = _Client.Queryable().Where(c=>c.client_id== clientName).First(); var projectUse=_iMapper.Map(curProject); + if (projectUse != null) + { + var pro = _Client.Queryable().Where(p => p.project_id == curProject.current_project_id).First(); + projectUse.project_name = pro.project_name; + } return projectUse; } public ProjectUsedDTO GetCurrentProjectUsed(int projectId) { var curProject = _Client.Queryable().Where(c => c.current_project_id == projectId).First(); var projectUse = _iMapper.Map(curProject); + if (projectUse != null) + { + var pro = _Client.Queryable().Where(p => p.project_id == curProject.current_project_id).First(); + projectUse.project_name = pro.project_name; + } return projectUse; } public ApiResult UpdateProjectInfo(ProjectInfoDTO project)