157 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			157 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| 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 FPJ0000.OtConfirm
 | |
| {
 | |
|     public partial class fHolyRequestAdd : Form
 | |
|     {
 | |
|         DSKuntae.EETGW_HolydayRequestRow dr;
 | |
|         public fHolyRequestAdd(DSKuntae.EETGW_HolydayRequestRow dr_)
 | |
|         {
 | |
|             InitializeComponent();
 | |
|             dr = dr_;
 | |
| 
 | |
| 
 | |
|             var 구분목록 = FCOMMON.DBM.getCodeList("50");
 | |
|             var 사유목록 = FCOMMON.DBM.getCodeList("51");
 | |
|             var 위치목록 = FCOMMON.DBM.getCodeList("52");
 | |
|             var 백업목록 = FCOMMON.DBM.getCodeList("53");
 | |
| 
 | |
|             tbCate.Items.Clear();
 | |
|             tbReason.Items.Clear();
 | |
|             tbLocation.Items.Clear();
 | |
|             tbBackup.Items.Clear();
 | |
| 
 | |
|             foreach (var item in 구분목록) tbCate.Items.Add(item.Value);
 | |
|             foreach (var item in 사유목록) tbReason.Items.Add(item.Value);
 | |
|             foreach (var item in 위치목록) tbLocation.Items.Add(item.Value);
 | |
|             foreach (var item in 백업목록) tbBackup.Items.Add(item.Value);
 | |
| 
 | |
| 
 | |
|             if (dr.RowState == DataRowState.Detached)
 | |
|             {
 | |
|                 this.Text = "휴가신청 추가";
 | |
|                 tbName.Text = FCOMMON.info.Login.nameK;
 | |
|                 tbProcess.Text = FCOMMON.info.Login.process;
 | |
|                 tbTel.Text = FCOMMON.info.Login.tel;
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 this.Text = "휴가신청 편집";
 | |
|                 tbName.Text = dr.name;
 | |
|                 tbProcess.Text = dr.processs;
 | |
|                 tbTel.Text = dr.tel;
 | |
|             }
 | |
|             if (dr.conf == 1) rad1.Checked = true;
 | |
|             else if (dr.conf == 2) rad2.Checked = true;
 | |
|             else rad0.Checked = true;
 | |
| 
 | |
|             tbCate.Text = dr.cate;
 | |
|             tbRemark.Text = dr.Remark;
 | |
|             tbResponse.Text = dr.Response;
 | |
|             tbSD.Value = DateTime.Parse(dr.sdate);
 | |
|             tbED.Value = DateTime.Parse(dr.edate);
 | |
|             tbReason.Text = dr.HolyReason;
 | |
|             tbLocation.Text = dr.HolyLocation;
 | |
|             tbBackup.Text = dr.HolyBackup;
 | |
|             tbDays.Text = dr.HolyDays.ToString();   //211224
 | |
|             tbTimes.Text = dr.HolyTimes.ToString();
 | |
| 
 | |
|         }
 | |
|         int curLevel = 0;
 | |
|         private void fHolyRequestAdd_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             curLevel = Math.Max(FCOMMON.info.Login.level, FCOMMON.DBM.getAuth(FCOMMON.DBM.eAuthType.holyreq));
 | |
| 
 | |
| 
 | |
|             //관리자라면 관리자패널을 활성해준다.
 | |
|             if (dr.RowState == DataRowState.Detached)
 | |
|             {
 | |
|                 grpAdmin.Enabled = false;
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 grpAdmin.Enabled = curLevel >= 5;
 | |
|             }
 | |
| 
 | |
| 
 | |
|         }
 | |
| 
 | |
|         private void button1_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             var cate = tbCate.Text.Trim();
 | |
|             var remark = tbRemark.Text.Trim();
 | |
|             var response = tbResponse.Text.Trim();
 | |
|             if (string.IsNullOrEmpty(cate))
 | |
|             {
 | |
|                 FCOMMON.Util.MsgE("구분을 입력하세요 (연차/하기휴가/연장근무)");
 | |
|                 tbCate.Focus();
 | |
|                 return;
 | |
|             }
 | |
| 
 | |
|             if (tbED.Value.ToShortDateString().CompareTo(tbSD.Value.ToShortDateString()) < 0)
 | |
|             {
 | |
|                 FCOMMON.Util.MsgE("시작일~종료일 범위를 확인하세요");
 | |
|                 return;
 | |
|             }
 | |
| 
 | |
|             if (dr.RowState == DataRowState.Detached)
 | |
|             {
 | |
|                 var dlg = FCOMMON.Util.MsgQ("입력을 완료하시겠습니까?\r\n관리자에게 메일로 알림이 발생 합니다");
 | |
|                 if (dlg != DialogResult.Yes) return;
 | |
|             }
 | |
| 
 | |
|             if (curLevel >= 5 && rad2.Checked)
 | |
|             {
 | |
|                 if (string.IsNullOrEmpty(response))
 | |
|                 {
 | |
|                     FCOMMON.Util.MsgE("거절 사유를 입력 해주세요");
 | |
|                     tbResponse.Focus();
 | |
|                     return;
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             var vDay = 0;
 | |
|             var vTime = 0f;
 | |
| 
 | |
|             if (tbDays.Text.IsNumeric()) vDay = int.Parse(tbDays.Text.Trim());
 | |
|             if (tbTimes.Text.IsNumeric()) vTime = float.Parse(tbTimes.Text.Trim());
 | |
| 
 | |
|             if (vDay < 1 && vTime < 0.1)
 | |
|             {
 | |
|                 FCOMMON.Util.MsgE("사용 일/시간 값을 입력해주세요");
 | |
|                 return;
 | |
|             }
 | |
| 
 | |
|             dr.HolyReason = tbReason.Text.Trim();
 | |
|             dr.HolyLocation = tbLocation.Text.Trim();
 | |
|             dr.HolyBackup = tbBackup.Text.Trim();
 | |
|             dr.cate = tbCate.Text.Trim();
 | |
|             dr.Remark = tbRemark.Text.Trim();
 | |
|             dr.Response = tbResponse.Text.Trim();
 | |
|             dr.sdate = tbSD.Value.ToShortDateString();
 | |
|             dr.edate = tbED.Value.ToShortDateString();
 | |
| 
 | |
|             dr.HolyDays = vDay;
 | |
|             dr.HolyTimes = vTime;//
 | |
| 
 | |
|             if (rad0.Checked) dr.conf = 0;
 | |
|             else if (rad1.Checked) dr.conf = 1;
 | |
|             else if (rad2.Checked) dr.conf = 2;
 | |
|             else dr.conf = 0;
 | |
|             dr.EndEdit();
 | |
| 
 | |
|             DialogResult = DialogResult.OK;
 | |
|         }
 | |
| 
 | |
| 
 | |
|     }
 | |
| }
 | 
