Пример #1
0
        public async Task <IActionResult> Add([FromBody] ServerNodeVM model)
        {
            var requiredResult = CheckRequired(model);

            if (!requiredResult.Item1)
            {
                Response.StatusCode = 400;
                return(Json(new
                {
                    message = requiredResult.Item2
                }));
            }

            var ctrl   = new ServerNodeController(_serverNodeService, _sysLogService, _remoteServerNodeProxy);
            var result = (await ctrl.Add(model)) as JsonResult;

            dynamic obj = result.Value;

            if (obj.success == true)
            {
                return(Created("", ""));
            }

            Response.StatusCode = 400;
            return(Json(new
            {
                obj.message
            }));
        }
Пример #2
0
        public async Task <IActionResult> Delete([FromBody] ServerNodeVM model)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }

            var node = await _serverNodeService.GetAsync(model.Address);

            if (node == null)
            {
                return(Json(new
                {
                    success = false,
                    message = "未找到对应的节点。"
                }));
            }

            var result = await _serverNodeService.DeleteAsync(node);

            if (result)
            {
                await _sysLogService.AddSysLogSync(new SysLog
                {
                    LogTime = DateTime.Now,
                    LogType = SysLogType.Normal,
                    LogText = $"删除节点:{node.Address}"
                });
            }
            return(Json(new
            {
                success = result,
                message = !result ? "删除节点失败,请查看错误日志" : ""
            }));
        }
Пример #3
0
        private (bool, string) CheckRequired(ServerNodeVM model)
        {
            if (string.IsNullOrEmpty(model.Address))
            {
                return(false, "Address不能为空");
            }

            return(true, "");
        }
        public async Task <IActionResult> Add([FromBody] ServerNodeVM model)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }
            model.Address = model.Address.TrimEnd('/');
            var oldNode = await _serverNodeService.GetAsync(model.Address);

            if (oldNode != null)
            {
                return(Json(new
                {
                    success = false,
                    message = "节点已存在,请重新输入。"
                }));
            }

            var node = new ServerNode();

            node.Address    = model.Address.TrimEnd('/');
            node.Remark     = model.Remark;
            node.Status     = NodeStatus.Offline;
            node.CreateTime = DateTime.Now;

            var result = await _serverNodeService.AddAsync(node);

            if (result)
            {
                await _sysLogService.AddSysLogAsync(new SysLog
                {
                    LogTime = DateTime.Now,
                    LogType = SysLogType.Normal,
                    LogText = $"新增节点:{node.Address}"
                });

                await _remoteServerNodeProxy.TestEchoAsync(node.Address);
            }

            return(Json(new
            {
                data = node,
                success = result,
                message = !result ? "添加节点失败,请查看错误日志" : ""
            }));
        }
Пример #5
0
        public async Task <IActionResult> Add([FromBody] ServerNodeVM model)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }
            model.Address = model.Address.TrimEnd('/');
            var oldNode = await _serverNodeService.GetAsync(model.Address);

            if (oldNode != null)
            {
                return(Json(new
                {
                    success = false,
                    message = "节点已存在,请重新输入。"
                }));
            }

            var node = new ServerNode();

            node.Address    = model.Address.TrimEnd('/');
            node.Remark     = model.Remark;
            node.Status     = NodeStatus.Offline;
            node.CreateTime = DateTime.Now;

            var result = await _serverNodeService.AddAsync(node);

            if (result)
            {
                dynamic param = new ExpandoObject();
                param.node     = node;
                param.userName = this.GetCurrentUserName();
                TinyEventBus.Instance.Fire(EventKeys.ADD_NODE_SUCCESS, param);
                await _remoteServerNodeProxy.TestEchoAsync(node.Address);
            }

            return(Json(new
            {
                data = node,
                success = result,
                message = !result ? "添加节点失败,请查看错误日志" : ""
            }));
        }
Пример #6
0
        public async Task <IActionResult> Delete([FromBody] ServerNodeVM model)
        {
            if (Appsettings.IsPreviewMode)
            {
                return(Json(new
                {
                    success = false,
                    message = "演示模式请勿删除节点"
                }));
            }
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }

            var node = await _serverNodeService.GetAsync(model.Address);

            if (node == null)
            {
                return(Json(new
                {
                    success = false,
                    message = "未找到对应的节点。"
                }));
            }

            var result = await _serverNodeService.DeleteAsync(node);

            if (result)
            {
                TinyEventBus.Instance.Fire(EventKeys.ADD_SYSLOG, new SysLog
                {
                    LogTime = DateTime.Now,
                    LogType = SysLogType.Normal,
                    LogText = $"删除节点:{node.Address}"
                });
            }
            return(Json(new
            {
                success = result,
                message = !result ? "删除节点失败,请查看错误日志" : ""
            }));
        }
Пример #7
0
        public async Task <IActionResult> Delete([FromBody] ServerNodeVM model)
        {
            if (Appsettings.IsPreviewMode)
            {
                return(Json(new
                {
                    success = false,
                    message = "演示模式请勿删除节点"
                }));
            }
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }

            var node = await _serverNodeService.GetAsync(model.Address);

            if (node == null)
            {
                return(Json(new
                {
                    success = false,
                    message = "未找到对应的节点。"
                }));
            }

            var result = await _serverNodeService.DeleteAsync(node);

            if (result)
            {
                dynamic param = new ExpandoObject();
                param.node     = node;
                param.userName = this.GetCurrentUserName();
                TinyEventBus.Instance.Fire(EventKeys.DELETE_NODE_SUCCESS, param);
            }
            return(Json(new
            {
                success = result,
                message = !result ? "删除节点失败,请查看错误日志" : ""
            }));
        }