using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace FBS0000 { public partial class fHolyday_Add : FCOMMON.fBase { Boolean bInit = false; dsMSSQL.HolydayRow dr; public fHolyday_Add(dsMSSQL.HolydayRow dr_) { InitializeComponent(); this.dr = dr_; //if (idx == -1) //{ // dr = this.dsMSSQL.Holyday.NewHolydayRow(); // dr.sdate = DateTime.Parse(DateTime.Now.Year.ToString() + "-01-01"); // dr.edate = dr.sdate; // dr.wuid = FCOMMON.info.Login.no; // dr.wdate = DateTime.Now; // dr.term = 0.0; // dr.cate = "10"; // dr.gcode = FCOMMON.info.Login.gcode; // dr.uid = FCOMMON.info.Login.no; // this.dsMSSQL.Holyday.AddHolydayRow(dr); //} //else //{ // ta.FillByIdx(this.dsMSSQL.Holyday, FCOMMON.info.Login.gcode, idx); // this.dr = this.dsMSSQL.Holyday.Rows[0] as dsMSSQL.HolydayRow; // if (dr.term > 0 || dr.CrTime > 0) radCR.Checked = true; // else radDR.Checked = true; //} //사용자 목록 업데이트 this.cmbUser.DataSource = FCOMMON.DBM.getUserTable(); this.cmbUser.DisplayMember = "dispName"; this.cmbUser.ValueMember = "id"; // this.bs.DataSource = dr; var catelist = FCOMMON.DBM.getCodeList("50"); var lst = catelist.Select(t => t.Value).ToArray(); cmbType.Items.Clear(); foreach (var item in lst) cmbType.Items.Add(item); } private void __Load(object sender, EventArgs e) { cmbUser.SelectedValue = dr.uid;// FCOMMON.info.Login.no;// .Text = FCOMMON.info.Login.nameK + "(" + FCOMMON.info.Login.no + ")"; dateTimePicker1.Value = dr.sdate; dateTimePicker2.Value = dr.edate; cmbType.Text = dr.cate; contentsTextBox.Text = dr.contents; this.nudCrDAy.Value = (decimal)dr.term; this.nudCrHour.Value = (decimal)dr.CrTime; this.nudDrDay.Value = (decimal)dr.termDr; this.nudDrHour.Value = (decimal)dr.DrTime; bInit = true; if (this.WindowState == FormWindowState.Minimized) this.WindowState = FormWindowState.Normal; if (this.RestoreBounds.X + this.RestoreBounds.Width < 300 && this.RestoreBounds.X < 0) this.Location = new Point(0, 0); } private void btOK_Click(object sender, EventArgs e) { //기본값처리 this.Validate(); if(string.IsNullOrEmpty( this.cmbType.Text)) { FCOMMON.Util.MsgE("구분을 입력하세요"); cmbType.Focus(); return; } var vs = dateTimePicker1.Value; var ve = dateTimePicker2.Value; if(ve < vs) { FCOMMON.Util.MsgE("종료일이 시작일보다 작습니다"); return; } var usertxt = cmbUser.Text.Trim(); var userid = usertxt.Substring(usertxt.IndexOf('(')+1, usertxt.LastIndexOf(')') - usertxt.IndexOf('(') -1); if(string.IsNullOrEmpty(userid)) { FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다"); return; } dr.uid = userid;// cmbType.SelectedValue.ToString(); dr.sdate = dateTimePicker1.Value; // dr.edate = dr.sdate; dr.edate = dateTimePicker2.Value; dr.cate = cmbType.Text; dr.contents = contentsTextBox.Text; dr.term = (double)this.nudCrDAy.Value; dr.CrTime = (double)this.nudCrHour.Value; dr.termDr = (double)this.nudDrDay.Value; dr.DrTime = (double)this.nudDrHour.Value; this.dr.EndEdit(); DialogResult = DialogResult.OK; } private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { if (!bInit) return; //if(dateTimePicker1.Value > this.dateTimePicker2.Value) // this.dateTimePicker2.Value = dateTimePicker1.Value; RefreshTerm(); } void RefreshTerm() { //var ts = dateTimePicker2.Value - dateTimePicker1.Value; //var days = Math.Ceiling(ts.TotalDays) + 1; //this.numericUpDown1.Value = (decimal)days; //this.dr.term = days; } private void dateTimePicker2_ValueChanged(object sender, EventArgs e) { if (!bInit) return; RefreshTerm(); } } }