222 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			222 lines
		
	
	
		
			6.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.Windows.Forms;
 | |
| 
 | |
| namespace Project._Common
 | |
| {
 | |
| 	public partial class fAddNewUser : Form // FCOMMON.fBase
 | |
| 	{
 | |
| 		string p_dept = string.Empty;
 | |
| 		string p_id = string.Empty;
 | |
| 
 | |
| 		public fAddNewUser(string dept, string id)
 | |
| 		{
 | |
| 			InitializeComponent();
 | |
| 			p_dept = dept;
 | |
| 			p_id = id;
 | |
| 
 | |
| 			this.tbDept.Text = dept;
 | |
| 			this.StartPosition = FormStartPosition.CenterScreen;
 | |
| 			this.tbId.Text = id;
 | |
| 
 | |
| 			//자료를 불러와서 먼저 불러온다
 | |
| 			if (id.isEmpty() == false)
 | |
| 			{
 | |
| 				tbId.Enabled = false;
 | |
| 				button1.Enabled = false;
 | |
| 				textBox1.Enabled = false;
 | |
| 
 | |
| 
 | |
| 				var db = new EEEntitiesMain();
 | |
| 				var db_user = db.Users.Where(t => t.id == id).FirstOrDefault();
 | |
| 				var db_guser = db.EETGW_GroupUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.uid == id).FirstOrDefault();
 | |
| 				if (db_user != null)
 | |
| 				{
 | |
| 					tbNameK.Text = db_user.name;
 | |
| 					tbNameE.Text = db_user.nameE;
 | |
| 					tbDept.Text = db_user.dept;
 | |
| 					tbEmail.Text = db_user.email;
 | |
| 					tbTel.Text = db_user.tel;
 | |
| 					tbHp.Text = db_user.hp;
 | |
| 					tbDateIn.Text = db_user.indate;
 | |
| 					tbDateO.Text = db_user.outdate;
 | |
| 					tbGrade.Text = db_user.grade;
 | |
| 					tbMemo.Text = db_user.memo;
 | |
| 				}
 | |
| 				if (db_guser != null)
 | |
| 				{
 | |
| 					tbProcess.Text = db_guser.Process;
 | |
| 					tbState.Text = db_guser.state;
 | |
| 
 | |
| 					//this.chkJobReport.Checked = (db_guser.useJobReport == null ? false : (bool)db_guser.useJobReport);
 | |
| 					this.chkJobReport.Checked = (db_guser.useJobReport == null ? false : (bool)db_guser.useJobReport);
 | |
| 					this.chkUseState.Checked = (db_guser.useUserState == null ? false : (bool)db_guser.useUserState);
 | |
| 				}
 | |
| 
 | |
| 				this.Text = "사용자 정보 변경";
 | |
| 			}
 | |
| 			else this.Text = "사용자 정보 추가";
 | |
| 
 | |
| 		}
 | |
| 
 | |
| 
 | |
| 		private void fUserInfo_Load(object sender, EventArgs e)
 | |
| 		{
 | |
| 
 | |
| 		}
 | |
| 		private void button1_Click(object sender, EventArgs e)
 | |
| 		{
 | |
| 			//입력한 id확인해서 잇으면 해당 자료를 표시해준다.
 | |
| 			var id = this.tbId.Text.Trim();
 | |
| 			if (id.isEmpty())
 | |
| 			{
 | |
| 				FCOMMON.Util.MsgE("id를 입력하세요");
 | |
| 				this.tbId.SelectAll();
 | |
| 				this.tbId.Focus();
 | |
| 				return;
 | |
| 			}
 | |
| 
 | |
| 			var db = new EEEntitiesMain();
 | |
| 			var dr_user = db.Users.Where(t => t.id == id).FirstOrDefault();
 | |
| 			if (dr_user == null)
 | |
| 			{
 | |
| 				FCOMMON.Util.MsgE("등록된 자료가 없습니다");
 | |
| 				tbNameK.Focus();
 | |
| 			}
 | |
| 			else
 | |
| 			{
 | |
| 				tbNameK.Text = dr_user.name;
 | |
| 				tbNameE.Text = dr_user.nameE;
 | |
| 				if (tbDept.Text.isEmpty()) tbDept.Text = dr_user.dept;
 | |
| 				tbEmail.Text = dr_user.email;
 | |
| 				tbTel.Text = dr_user.tel;
 | |
| 				tbHp.Text = dr_user.hp;
 | |
| 				tbDateIn.Text = dr_user.indate;
 | |
| 				tbDateO.Text = dr_user.outdate;
 | |
| 				tbGrade.Text = dr_user.grade;
 | |
| 				tbMemo.Text = dr_user.memo;
 | |
| 				tbProcess.Text = string.Empty;
 | |
| 
 | |
| 				//부서가잇다면 해당 부서에서 해당 사용자의 공정을 찾는다
 | |
| 				if (tbDept.Text.isEmpty() == false)
 | |
| 				{
 | |
| 					var drGrp = db.vGroupUser.Where(t => t.id == id).FirstOrDefault();
 | |
| 					if (drGrp != null)
 | |
| 					{
 | |
| 						tbProcess.Text = drGrp.processs;
 | |
| 					}
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		private void button2_Click(object sender, EventArgs e)
 | |
| 		{
 | |
| 			this.Validate();
 | |
| 			var db = new EEEntitiesMain();
 | |
| 
 | |
| 			//해당 그룹에 데이터를 추가한다.
 | |
| 			//var drDept = db.UserGroup.Where(t => t.dept == tbDept.Text).FirstOrDefault();
 | |
| 			//if (drDept == null)
 | |
| 			//{
 | |
| 			//    FCOMMON.Util.MsgE("해당 부서정보가 존재하지 않습니다\n\n부서를 신규로 추가할 수는 없습니다\n관리자에 문의하세요");
 | |
| 			//    return;
 | |
| 			//}
 | |
| 
 | |
| 			//해당 그룹에 해당 사용자가 존재하는지 확이한다.
 | |
| 			var gcode = FCOMMON.info.Login.gcode;
 | |
| 			var uid = (p_id.isEmpty() ? tbId.Text.Trim() : p_id);
 | |
| 			var drGuser = db.EETGW_GroupUser.Where(t => t.gcode == gcode && t.uid == uid).FirstOrDefault();
 | |
| 			if (drGuser != null)
 | |
| 			{
 | |
| 				drGuser.Process = this.tbProcess.Text.Trim();
 | |
| 				drGuser.state = this.tbState.Text.Trim();
 | |
| 				drGuser.useJobReport = chkJobReport.Checked;
 | |
| 				drGuser.useUserState = chkUseState.Checked;
 | |
| 			}
 | |
| 			else
 | |
| 			{
 | |
| 				//불러온경우
 | |
| 				if (tbId.Enabled == false)
 | |
| 				{
 | |
| 					FCOMMON.Util.MsgE("사용자 ID정보가 없어 진행할 수 없습니다");
 | |
| 					return;
 | |
| 				}
 | |
| 
 | |
| 				drGuser = new EETGW_GroupUser();
 | |
| 				drGuser.wuid = FCOMMON.info.Login.no;
 | |
| 				drGuser.wdate = DateTime.Now;
 | |
| 				drGuser.gcode = gcode;
 | |
| 				drGuser.level = 1;
 | |
| 				drGuser.uid = this.tbId.Text.Trim();
 | |
| 				drGuser.state = this.tbState.Text.Trim();
 | |
| 				drGuser.Process = this.tbProcess.Text.Trim();
 | |
| 				//drGuser.useJobReport = this.chkJobReport.Checked;
 | |
| 				drGuser.useJobReport = this.chkJobReport.Checked;
 | |
| 				drGuser.useUserState = this.chkUseState.Checked;
 | |
| 				db.EETGW_GroupUser.Add(drGuser);
 | |
| 			}
 | |
| 
 | |
| 
 | |
| 
 | |
| 			//사용자 목록에 없다면 추가한다
 | |
| 			var drUser = db.Users.SingleOrDefault(t => t.id == uid);
 | |
| 			if (drUser == null)
 | |
| 			{
 | |
| 				drUser = new Users();
 | |
| 				drUser.wuid = FCOMMON.info.Login.no;
 | |
| 				drUser.wdate = DateTime.Now;
 | |
| 				drUser.gcode = gcode;
 | |
| 				drUser.level = 1;
 | |
| 				drUser.id = tbId.Text.Trim();
 | |
| 				drUser.password = "B6589FC6AB0DC82CF12099D1C2D40AB994E8410C"; //기본값0
 | |
| 
 | |
| 				drUser.name = tbNameK.Text.Trim();
 | |
| 				drUser.nameE = tbNameE.Text.Trim();
 | |
| 				drUser.dept = this.tbDept.Text.Trim();
 | |
| 				drUser.email = tbEmail.Text;
 | |
| 				drUser.tel = tbTel.Text;
 | |
| 				drUser.hp = tbHp.Text;
 | |
| 				drUser.indate = tbDateIn.Text;
 | |
| 				drUser.outdate = tbDateO.Text;
 | |
| 				drUser.memo = tbMemo.Text;
 | |
| 				drUser.processs = tbProcess.Text;
 | |
| 				db.Users.Add(drUser);
 | |
| 			}
 | |
| 
 | |
| 			else
 | |
| 			{
 | |
| 				if (drUser.password.isEmpty()) drUser.password = "B6589FC6AB0DC82CF12099D1C2D40AB994E8410C";
 | |
| 				drUser.name = tbNameK.Text.Trim();
 | |
| 				drUser.nameE = tbNameE.Text.Trim();
 | |
| 				drUser.dept = this.tbDept.Text.Trim();
 | |
| 				drUser.email = tbEmail.Text;
 | |
| 				drUser.tel = tbTel.Text;
 | |
| 				drUser.hp = tbHp.Text;
 | |
| 				drUser.indate = tbDateIn.Text;
 | |
| 				drUser.outdate = tbDateO.Text;
 | |
| 				drUser.memo = tbMemo.Text;
 | |
| 				drUser.processs = tbProcess.Text;
 | |
| 
 | |
| 			}
 | |
| 
 | |
| 			db.SaveChanges();
 | |
| 			this.DialogResult = DialogResult.OK;
 | |
| 
 | |
| 		}
 | |
| 
 | |
| 		private void chkUserSt_CheckedChanged(object sender, EventArgs e)
 | |
| 		{
 | |
| 
 | |
| 		}
 | |
| 
 | |
| 		private void chkJobReport_CheckedChanged(object sender, EventArgs e)
 | |
| 		{
 | |
| 		}
 | |
| 	}
 | |
| }
 | 
