Exemple #1
0
        public void Execute()
        {
            RayConfigRepository repo = new RayConfigRepository();

            IList <RayPort> ports = repo.GetRayPorts();

            ConsoleConfigDisplayer.DisplayRayPorts(ports);
            try
            {
                int ch = InputHelper.GetNumberInput("输入端口索引选择端口", tipsColor: ConsoleColor.DarkGreen);
                ch -= 1;
                if (ch >= ports.Count)
                {
                    Displayer.ShowLine("输入错误, 超出索引.", ConsoleColor.Red);
                    return;
                }

                ConsoleInputRayPortConfigBuilder rayPortBuilder =
                    new ConsoleInputRayPortConfigBuilder(ports[ch]);
                RayPortUser user = rayPortBuilder.BuildPortUser();
                repo.AddUserToPort(ports[ch], user);

                Displayer.ShowLine("操作成功!", ConsoleColor.DarkGreen, true);
                ConsoleConfigDisplayer.DisplayUser(user);
            }
            catch (Exception ex)
            {
                Displayer.ShowLine($"操作失败!\r\n错误:{ex.Message}", ConsoleColor.Red, true);
            }
        }
Exemple #2
0
        private void FinishModify()
        {
            configRepo.UpdatePort(portToModify, ConfigToModify);

            RayPort rayPortModified = configRepo.GetRayPort(ConfigToModify.Port);

            Displayer.ShowCutLine();
            Displayer.ShowLine("修改成功!", intend: 2, addReturn: true);
            ConsoleConfigDisplayer.DisplayRayPort(rayPortModified);
            Displayer.PressAnyKeyToContinue();

            exitFunction = true;
        }
Exemple #3
0
        private void ShowRayPortsAndGetRayPortToDelete()
        {
            IList <RayPort> rayPorts = repo.GetRayPorts();

            ConsoleConfigDisplayer.DisplayRayPorts(rayPorts, false);

            int?ch = InputHelper.TryGetNumberInput(
                "输入索引选择要删除的端口", "删除端口将删除端口下的全部用户",
                new Tuple <int, int>(1, rayPorts.Count));

            if (ch == null)
            {
                throw new Exception("输入有误");
            }

            rayPortToDelete = rayPorts[ch.Value - 1];
        }
Exemple #4
0
        private static RayPortUser GetRayPortUserToModify()
        {
            var repo          = new RayConfigRepository();
            var rayPortsUsers = repo.GetRayPortsUsers();

            ConsoleConfigDisplayer.DisplayRayPortUsers(
                rayPortsUsers, displayUserIndex:true, intend: 2);

            int?index = InputHelper.TryGetNumberInput(
                inputRange: new Tuple <int, int>(1, rayPortsUsers.Count)) - 1;

            if (index == null)
            {
                return(GetRayPortUserToModify());
            }
            ;

            return(rayPortsUsers[index.Value]);
        }
Exemple #5
0
        private static RayPort GetRayPortToModify()
        {
            RayConfigRepository repo = new RayConfigRepository();

            IList <RayPort> rayPorts = repo.GetRayPorts();

            ConsoleConfigDisplayer.DisplayRayPorts(rayPorts, false, true);

            int?index = InputHelper.TryGetNumberInput(
                inputRange: new Tuple <int, int>(1, rayPorts.Count)) - 1;

            if (index == null)
            {
                return(GetRayPortToModify());
            }
            ;

            return(rayPorts[index.Value]);
        }
Exemple #6
0
        private void ShowRayPortsUsersAndGetRayPortUserToDelete()
        {
            IList <RayPortUser> rayPortsUsers = repo.GetRayPortsUsers();

            Console.Clear();

            ConsoleConfigDisplayer.DisplayRayPortUsers(
                rayPortsUsers, displayUserIndex: true, intend: 2);

            int?ch = InputHelper.TryGetNumberInput(
                "输入索引来选择要删除的用户", inputRange: new Tuple <int, int>(1, rayPortsUsers.Count));

            if (ch == null)
            {
                throw new Exception($"输入错误, 输入范围必须是1-{rayPortsUsers.Count}的数字");
            }

            rayPortUserToDelete = rayPortsUsers[ch.Value - 1];
        }
Exemple #7
0
        public void Execute()
        {
            Console.Clear();
            Console.WriteLine();
            Displayer.ShowLine("新建端口向导!", 2, ConsoleColor.Yellow);
            Console.WriteLine();
            Displayer.ShowCutLine();
            Console.WriteLine("\r\n");
            ConsoleInputRayPortConfigBuilder rayPortBuilder = new ConsoleInputRayPortConfigBuilder();

            try
            {
                RayConfigRepository repo    = new RayConfigRepository();
                RayPort             rayPort = rayPortBuilder.BuildPort();
                repo.AddPort(rayPort);
                Displayer.ShowLine("  创建成功!\r\n", ConsoleColor.DarkGreen);
                ConsoleConfigDisplayer.DisplayRayPort(rayPort, displayUser: true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
Exemple #8
0
 public void Execute()
 {
     Console.Clear();
     ConsoleConfigDisplayer.Display();
     Displayer.PressAnyKeyToContinue();
 }