private DataArchivingViewModel()
        {
            archiveTableManager    = new ArchiveTableManager();
            keyValueSettingManager = new KeyValueSettingManager();
            ArchiveTables          = new ObservableCollection <ArchiveTable>();

            archiveTableManager.ArchiveTables().ForEach(x =>
            {
                ArchiveTables.Add(x);
            });

            ExecuteDataArchiveCommand = new DelegateCommand();
            ExecuteDataArchiveCommand.ExecuteAction = DataArchive;


            AddTableCommand = new DelegateCommand();
            AddTableCommand.ExecuteAction = AddTable;

            RemoveTableCommand = new DelegateCommand();
            RemoveTableCommand.ExecuteAction = RemoveTable;


            AutoArchive  = EnvironmentInfo.IsAutoArchive;
            ManulArchive = !EnvironmentInfo.IsAutoArchive;
            DataSource   = new Dictionary <int, string>();

            Progress         = 0;
            IsIndeterminate  = false;
            IsPercentVisible = true;
        }
        public MainWindow()
        {
            InitializeComponent();
            viewModel              = new MainWindowViewModel();
            DataContext            = viewModel;
            ContentControl.Content = MainWindowViewModel.partialViewDic["Information"];//加载介绍窗口

            manager = new KeyValueSettingManager();

            backgroundWorker.WorkerReportsProgress = true;
            backgroundWorker.DoWork          += BackgroundWorker_DoWork;
            backgroundWorker.ProgressChanged += BackgroundWorker_ProgressChanged;

            this.notifyIcon         = new NotifyIcon();
            this.notifyIcon.Text    = "JieLink运维工具持续工作中...";
            this.notifyIcon.Icon    = System.Drawing.Icon.ExtractAssociatedIcon(System.Windows.Forms.Application.ExecutablePath);
            this.notifyIcon.Visible = true;
            //打开菜单项
            System.Windows.Forms.MenuItem open = new System.Windows.Forms.MenuItem("打开");
            open.Click += Show;
            //退出菜单项
            System.Windows.Forms.MenuItem exit = new System.Windows.Forms.MenuItem("退出");
            exit.Click += Exit;
            //关联托盘控件
            System.Windows.Forms.MenuItem[] childen = new System.Windows.Forms.MenuItem[] { open, exit };
            notifyIcon.ContextMenu = new System.Windows.Forms.ContextMenu(childen);

            this.notifyIcon.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler((o, e) =>
            {
                if (e.Button == MouseButtons.Left)
                {
                    this.Show(o, e);
                }
            });
        }
Beispiel #3
0
        public SystemSetting()
        {
            InitializeComponent();
            viewModel = new ProjectInfoWindowViewModel();
            gridProjectConfig.DataContext = viewModel;

            dbConnViewModel          = new DBConnViewModel();
            gridDBConfig.DataContext = dbConnViewModel;

            manager = new KeyValueSettingManager();
            backUpJobConfigManger = new BackUpJobConfigManger();
        }
        private MySqlBackUpViewModel()
        {
            manger                = new BackUpJobConfigManger();
            TaskStartCommand      = new DelegateCommand();
            TaskStopCommand       = new DelegateCommand();
            ManualExecuteCommand  = new DelegateCommand();
            RemovePolicyCommand   = new DelegateCommand();
            AddPolicyCommand      = new DelegateCommand();
            ChooseAllCommand      = new DelegateCommand();
            RecoverDefaultCommand = new DelegateCommand();
            EditPolicyCommand     = new DelegateCommand();
            SaveFileDayCommand    = new DelegateCommand();

            manager = new KeyValueSettingManager();

            TaskStartCommand.ExecuteAction     = Start;
            TaskStopCommand.ExecuteAction      = Stop;
            ManualExecuteCommand.ExecuteAction = ManualExecute;
            RemovePolicyCommand.ExecuteAction  = RemovePolicy;

            AddPolicyCommand.ExecuteAction      = AddPolicy;
            ChooseAllCommand.ExecuteAction      = ChooseAll;
            RecoverDefaultCommand.ExecuteAction = RecoverDefault;
            EditPolicyCommand.ExecuteAction     = EditPolicy;

            SaveFileDayCommand.ExecuteAction = SaveFileDayAction;

            Policys       = new ObservableCollection <BackUpPolicy>();
            Tables        = new ObservableCollection <BackUpTable>();
            Databases     = new ObservableCollection <BackUpDatabase>();
            CurrentPolicy = new BackUpPolicy();
            CurrentPolicy.DataBaseName = EnvironmentInfo.DbConnEntity.DbName;
            CurrentPolicyBak           = DeepCopy(CurrentPolicy);

            ReadPolicyConfig();
            GetTables();

            int saveday = 7;

            int.TryParse(EnvironmentInfo.Settings.FirstOrDefault(x => x.KeyId == "SaveFileDay")?.ValueText, out saveday);
            SaveFileDay = saveday;

            ProcessHelper.ShowOutputMessage += ProcessHelper_ShowOutputMessage;

            Message = "说明:\r\n1)全库备份,是完整备份。基础业务备份,是只备份核心业务数据。\r\n2)哪些表数据属于核心业务,系统已经默认配置了,也可以自行勾选,但是建议只多不少。\r\n3)如果要全部勾选,建议就不要配置为基础业务备份,直接使用全库备份即可。\r\n4)基础业务的备份频率一定要高于全库备份,因为全库备份包含了一些历史表,会很大。\r\n5)配置策略之后,重新启动不需要再去点执行任务,系统会自动执行。\r\n";
        }
        public OrderMonitorViewModel()
        {
            GetVerifyCodeCommand = new DelegateCommand();
            GetVerifyCodeCommand.ExecuteAction  = GetVerifyCode;
            GetVerifyCodeCommand.CanExecuteFunc = new Func <object, bool>((object parameter) =>
            {
                return(!string.IsNullOrEmpty(this.UserName));
            });

            IsCanLogin   = !string.IsNullOrEmpty(this.VerifyCode) && !string.IsNullOrEmpty(this.UserName);
            LoginCommand = new DelegateCommand();
            LoginCommand.ExecuteAction  = Login;
            LoginCommand.CanExecuteFunc = new Func <object, bool>((object parameter) =>
            {
                return(IsCanLogin);
            });

            StartTaskCommand = new DelegateCommand();
            StartTaskCommand.ExecuteAction  = StartTask;
            StartTaskCommand.CanExecuteFunc = new Func <object, bool>((object parameter) =>
            {
                return(!IsNeedLogin);
            });

            keyValueSettingManager = new KeyValueSettingManager();
            devJsrmOrderManager    = new DevJsrmOrderManager();

            UserName = "******";
            user     = JsonHelper.DeserializeObject <Operator>(keyValueSettingManager.ReadSetting("JSRMUserInfo")?.ValueText);
            if (user == null)
            {
                user = new Operator();
            }

            GetOrderJob        = keyValueSettingManager.ReadSetting("GetOrderJob")?.ValueText;
            DispatchJob        = keyValueSettingManager.ReadSetting("DispatchJob")?.ValueText;
            YesterdayReportJob = keyValueSettingManager.ReadSetting("YesterdayReportJob")?.ValueText;
            ReceiveEmail       = keyValueSettingManager.ReadSetting("ReceiveEmail")?.ValueText;
        }
Beispiel #6
0
        void OnStart()
        {
            KeyValueSettingManager keyValueSettingManager = new KeyValueSettingManager();
            BackUpJobConfigManger  backUpJobConfigManger  = new BackUpJobConfigManger();

            EnvironmentInfo.Settings.AddRange(keyValueSettingManager.KeyValueSettings());
            EnvironmentInfo.BackUpJobConfigs.AddRange(backUpJobConfigManger.BackUpJobConfigs());

            //迁移到数据库中
            string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "JieShun.JieLink.DevOps.App.exe.config");
            var    setting  = keyValueSettingManager.ReadSetting("IsTransfered");

            if (setting != null && setting.ValueText == "0")
            {
                XDocument myXDoc   = XDocument.Load(filePath);
                XElement  rootNode = myXDoc.Element("configuration");
                foreach (XElement node in rootNode.Elements("appSettings"))
                {
                    foreach (XElement element in node.Elements("add"))
                    {
                        keyValueSettingManager.WriteSetting(new KeyValueSetting()
                        {
                            KeyId     = element.Attribute("key").Value,
                            ValueText = element.Attribute("value").Value
                        });
                    }
                }

                EnvironmentInfo.Settings.Clear();
                EnvironmentInfo.Settings.AddRange(keyValueSettingManager.KeyValueSettings());

                if (keyValueSettingManager.ReadSetting("ServerUrl").ValueText != "http://www.dwburning.top:1688")
                {
                    keyValueSettingManager.WriteSetting(new KeyValueSetting()
                    {
                        KeyId     = "ServerUrl",
                        ValueText = "http://www.dwburning.top:1688"//强制搞一下
                    });
                }

                backUpJobConfigManger.WriteBackUpJobConfig(new BackUpJobConfig()
                {
                    Id           = Guid.NewGuid().ToString(),
                    DataBaseName = EnvironmentInfo.DbConnEntity.DbName,
                    Cron         = "00 00 03 ? * 4",
                    BackUpType   = 0
                });

                backUpJobConfigManger.WriteBackUpJobConfig(new BackUpJobConfig()
                {
                    Id           = Guid.NewGuid().ToString(),
                    DataBaseName = EnvironmentInfo.DbConnEntity.DbName,
                    Cron         = "00 00 03 ? * 2,6",
                    BackUpType   = 1
                });

                keyValueSettingManager.WriteSetting(new KeyValueSetting()
                {
                    KeyId     = "IsTransfered",
                    ValueText = "1"
                });
            }

            EnvironmentInfo.ServerUrl = keyValueSettingManager.ReadSetting("ServerUrl").ValueText;

            EnvironmentInfo.DbConnEntity = JsonHelper.DeserializeObject <DbConnEntity>(keyValueSettingManager.ReadSetting("ConnectionString").ValueText);

            EnvironmentInfo.AutoStartCorectEntity = JsonHelper.DeserializeObject <AutoStartCorectEntity>(keyValueSettingManager.ReadSetting("AutoStartCorectString").ValueText);

            EnvironmentInfo.AutoStartSyncEntity = JsonHelper.DeserializeObject <AutoStartSyncEntity>(keyValueSettingManager.ReadSetting("AutoStartSyncString").ValueText);

            EnvironmentInfo.IsAutoArchive = keyValueSettingManager.ReadSetting("AutoStartSyncString").ValueText == "1";

            EnvironmentInfo.AutoArchiveMonth = int.Parse(keyValueSettingManager.ReadSetting("AutoArchiveMonth").ValueText);

            EnvironmentInfo.IsJieLink3x = keyValueSettingManager.ReadSetting("IsJieLink3x").ValueText == "1";
        }