예제 #1
0
        private void Form1_Shown(object sender, EventArgs e)
        {
            try
            {
                ShowMsg(RemoteConnect.ConnectState(_sjmyHelper.Site, _sjmyHelper.Account, _sjmyHelper.Password));
                ShowMsg(RemoteConnect.ConnectState(@"\\192.168.9.179", "blacknull", "shangjia!@#123.idc1"));
                ShowMsg(RemoteConnect.ConnectState(@"\\172.24.140.83", "blacknull", "IDC2.passwd*()"));
                Directory.SetCurrentDirectory(@"D:\developer");

                const int port = 6000;
                // 创建监听套接字,使用ip4协议,流式传输,tcp链接
                _sokWatch = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

                // 绑定端口
                // 获取网络节点对象
                var address  = IPAddress.Parse(get64segmentIP.LocalIp);
                var endPoint = new IPEndPoint(address, port);

                // 绑定端口(其实内部 就向系统的端口表中注册了一个端口,并指定了当前程序句柄)
                _sokWatch.Bind(endPoint);

                // 设置监听队列,指限制同时处理的连接请求数,即同时处理的客户端连接请求。
                _sokWatch.Listen(10);

                // 开始监听,调用监听线程 执行 监听套接字的监听方法。
                _thrWatch = new Thread(WatchConncting)
                {
                    IsBackground = true
                };
                _thrWatch.Start();

                ShowMsg("服务器已启动!");
            }
            catch (SocketException soex)
            {
                ShowMsg("异常:" + soex);
            }
            catch (Exception ex)
            {
                ShowMsg("异常:" + ex);
            }
        }
예제 #2
0
        /// <summary>
        /// 检测到任务后执行----
        /// </summary>
        private void DetermineSend()
        {
            while (true)
            {
                if (_sjmyHelper.TaskCheck)
                {
                    ShowMsg("查询到任务!!!!");

                    _sjmyHelper.ProjectSite = $@"D:\developer\{_sjmyHelper.Gnpy}";

                    // 复制初始库,也要通过GNPY区分初始库
                    ShowMsg(RemoteConnect.ConnectState(@"\\172.24.140.83", "blacknull", "IDC2.passwd*()"));
                    ShowMsg(RemoteConnect.ConnectState(@"\\192.168.9.179", "blacknull", "shangjia!@#123.idc1"));
                    ShowMsg("开始复制初始库");
                    var copyInitLog = _sjmyHelper.CopyInitial(_sjmyHelper.Gnpy, _sjmyHelper.AppSrc);
                    ShowMsg(copyInitLog);
                    if (copyInitLog != "初始库复制完成")
                    {
                        ShowMsg("初始库复制异常, 终止任务");
                        Process.Start(
                            $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe",
                            $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,初始库复制异常,终止任务");
                        _sjmyHelper.SetScriptFlog(2);
                        Restart();
                        return;
                    }

                    // 刷库操作
                    switch (_sjmyHelper.Gnpy)
                    {
                    case "sjmy":



                        if (_sjmyHelper.GetSqlPath() != string.Empty)
                        {
                            if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}"))
                            {
                                ShowMsg("刷库异常,终止任务。");
                                Process.Start(
                                    $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe",
                                    $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束");
                                _sjmyHelper.SetScriptFlog(2);
                                Restart();
                                return;
                            }
                        }

                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\monthcardinit.sql");
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\rechargeweal.sql");
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_{_sjmyHelper.Gnpy}.sql");
                        ShowMsg("已完成刷库操作");
                        break;

                    case "xsjmy":

                        if (_sjmyHelper.GetSqlPath() != string.Empty)
                        {
                            if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}"))
                            {
                                ShowMsg("刷库异常,终止任务。");
                                Process.Start(
                                    $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe",
                                    $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束");
                                _sjmyHelper.SetScriptFlog(2);
                                Restart();
                                return;
                            }
                        }
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\monthcardinit.sql");
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\rechargeweal.sql");
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_{_sjmyHelper.Gnpy}.sql");
                        ShowMsg("已完成刷库操作");
                        break;

                    case "myht":

                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\userinfo.sql");
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\mynfkuaice.sql");
                        if (_sjmyHelper.GetSqlPath() != string.Empty)
                        {
                            if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}"))
                            {
                                ShowMsg("刷库异常,终止任务。");
                                Process.Start(
                                    $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe",
                                    $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束");
                                _sjmyHelper.SetScriptFlog(2);
                                Restart();
                                return;
                            }
                        }
                        _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_myht.sql");
                        break;
                    }

                    // apk解析
                    _sjmyHelper.ApkAnalysis();
                    ShowMsg($"apk解析完成:ApkPackage = {_sjmyHelper.ApkPackage},ApkVersion = {_sjmyHelper.ApkVersion}");

                    // 运行换库脚本
                    ShowMsg("开始执行换库操作");

                    _sjmyHelper.RunCmdPython($@"{_sjmyHelper.ProjectSite}\data\script\servercase\sqlconfig.py", _sjmyHelper.AppSrc);
                    _sjmyHelper.RunCmdPython($@"{_sjmyHelper.ProjectSite}\data\script\servercase\server.py", _sjmyHelper.GetSeversion(), _sjmyHelper.GetNpcVer());

                    ShowMsg("换库操作完成,服务器若开启失败请检查pythonSyslog");

                    // 清除交易服数据 (独立xsj和sjmy)

                    switch (_sjmyHelper.Gnpy)
                    {
                    case "sjmy" when _iniFile.IniReadValue("server", "TradingDelSjmy") == "1":
                        ShowMsg(_sjmyHelper.DelDeal(_sjmyHelper.Mtid, _sjmyHelper.Gnpy));

                        ShowMsg("交易服数据清除完成");
                        break;

                    case "xsjmy" when _iniFile.IniReadValue("server", "TradingDelXsj") == "1":
                        ShowMsg(_sjmyHelper.DelDeal(_sjmyHelper.Mtid, _sjmyHelper.Gnpy));

                        ShowMsg("交易服数据清除完成");
                        break;

                    default:
                        ShowMsg("本次任务不清除交易服数据");
                        break;
                    }

                    // 群发送给客户端
                    ShowMsg("下发分控安装信息");
                    GroupSend($"搭建测试环境*{_sjmyHelper.Gnpy}*{_sjmyHelper.AppSrc}*{_sjmyHelper.ApkVersion}*{_sjmyHelper.Mtid}*{_sjmyHelper.Uninstall}*{_iniFile.IniReadValue("client", "FastLogin")}*{_iniFile.IniReadValue("client", "AllUninstall")}*{_sjmyHelper.ApkPackage}");

                    // 重置 MobileScriptModule  where  flog + mobile + uploadflog
                    ShowMsg($"已重置数据库共有{_sjmyHelper.ResetOne()}条数据受到影响");

                    // 修改ScriptFlog = 1
                    _sjmyHelper.SetScriptFlog(1);

                    _sjmyHelper.StartTime = DateTime.Now.ToString(CultureInfo.InvariantCulture);

                    break;
                }
            }
        }