using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using Uninpho.Tools.components.SomethingSetting;
using System.IO;
using DevExpress.XtraBars;

namespace Uninpho.Tools.components.SFZDH
{
    public partial class ZDHSetting : DevExpress.XtraEditors.XtraForm
    {
        BarButtonItem bar;
        public ZDHSetting(BarButtonItem bar)
        {
            InitializeComponent();
            ResetFun();
            this.bar = bar;
        }

        private void SaveBtn_Click(object sender, EventArgs e)
        {
            try
            {
                zdhSetClass.isStartZDH = 1;
                zdhSetClass.folder = PathText.Text;
                DateTime date = Convert.ToDateTime(zdhSetClass.startdate);
                zdhSetClass.startdate = StartDateEdit.Value.ToShortDateString() + " " + StartTimeEdit.EditValue.ToString().Split(' ')[1];
                zdhSetClass.Interval = Convert.ToInt32(IntervalText.Text.Trim());
                reWriteini();           
                new AutoLoopClass(true);
                bar.ImageUri.Uri = "Refresh"; //Refresh // Prev
                bar.Caption = "重启自动化";
                this.Close();
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show("参数有误,请检查!/r/n" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

        }

        private void ResetBtn_Click(object sender, EventArgs e)
        {
            ResetFun();
        }

        private void ResetFun()
        {
            PathText.Text = zdhSetClass.folder;
            DateTime date = Convert.ToDateTime(zdhSetClass.startdate);
            StartDateEdit.Value = date;
            StartTimeEdit.EditValue = date;
            IntervalText.Text = zdhSetClass.Interval.ToString();
        }

        /// <summary>
        /// 更新ini文件
        /// </summary>
        public static void reWriteini()
        {
            StreamWriter sw = new StreamWriter(zdhSetClass.path);
            sw.WriteLine("startdate灬" + zdhSetClass.startdate);
            sw.WriteLine("folder灬" + zdhSetClass.folder);
            sw.WriteLine("Interval灬" + zdhSetClass.Interval);
            sw.WriteLine("isStartZDH灬" + zdhSetClass.isStartZDH);
            sw.Close();
        }

        private void setPathBtn_Click(object sender, EventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Multiselect = false;
            dialog.Title = "请选择配置文件";
            dialog.Filter = "配置文件(*.ini)|*.ini";
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                PathText.Text = dialog.FileName;
            }
        }
    }
}