using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FCOMMON
{
	public partial class fMagam : fBase
    {
		public fMagam()
		{
			InitializeComponent();
		}

		private void fMagam_Load(object sender, EventArgs e)
		{
			EnsureVisibleAndUsableSize();
			int curLevel = Math.Max(FCOMMON.info.Login.level, FCOMMON.DBM.getAuth(FCOMMON.DBM.eAuthType.holyday));
			
			button2.Enabled = curLevel >= 5;
			button1.Enabled = curLevel >= 5;


			textBox1.Text = DateTime.Now.ToString("yyyy-MM");
			refreshList();
		}
      
        void refreshList()
		{
			var lst = FCOMMON.DBM.GetMagamList();
			this.listView1.Items.Clear();
			foreach (var item in lst)
			{
				var lv = this.listView1.Items.Add(item);
				lv.SubItems.Add("O");
			}
		}

		private void button2_Click(object sender, EventArgs e)
		{
			///마감작업
			var data = textBox1.Text.Trim();
			if (FCOMMON.Util.MsgQ($"{data} 월 자료를 마감할까요?\n마감을 하게 되면 업무일지/휴가/근태 정보를 변경할 수 없습니다") != DialogResult.Yes) return;

			var rlt = FCOMMON.DBM.AddMagamList(data);
			if (rlt == false)
			{
				FCOMMON.Util.MsgE("마감 등록 실패");
			}
			refreshList();
		}

		private void button1_Click(object sender, EventArgs e)
		{
			///마감작업
			///
			if(listView1.FocusedItem == null)
			{
				Util.MsgE("아래 목록에서 마감취소할 자료를 선택 하세요");
				return;
			}
			var data = listView1.FocusedItem.Text.Trim();
			if (FCOMMON.Util.MsgQ($"{data} 월 자료의 마감을 취소 할까요?") != DialogResult.Yes) return;

			var rlt = FCOMMON.DBM.DelMagamList(data);
			if (rlt == false)
			{
				FCOMMON.Util.MsgE("마감 취소 실패");
			}
			refreshList();
		}
	}
}
