using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Configuration; using System.IO; using System.Linq; using System.Globalization; public partial class admin_hr_attendances : MyWeb.config { private Model.ezEntities _db = new Model.ezEntities(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { InitEnumsOptions(check_type); //出勤型態 if (isStrNull(Request["num"])) { } else { int _num = Val(Request["num"]); var qry = _db.member_check.AsEnumerable(); var prod = qry.Where(q => q.num == _num).FirstOrDefault(); if (prod != null) { try //TODO: 迴圈裡的try catch可能導致效能問題 { foreach (Control obj in cardBodyPanel.Controls) { if (obj is TextBox) { var ObjValue = prod.GetType().GetProperty(obj.ID).GetValue(prod, null); if (!isStrNull(ObjValue)) { var textBox = (TextBox)obj; if (textBox.TextMode == TextBoxMode.Date) { textBox.Text = Convert.ToDateTime(ObjValue).ToString("yyyy-MM-dd"); } else { textBox.Text = ObjValue.ToString(); } } } else if (obj is DropDownList && ((DropDownList)obj).SelectedIndex == 0) { var ObjValue = prod.GetType().GetProperty(obj.ID).GetValue(prod, null); if (!isStrNull(ObjValue)) { var dropDown = (DropDownList)obj; dropDown.SelectedValue = ObjValue.ToString(); } } } } catch (Exception ex) { } if (prod.mem_num.HasValue) { mem_num_txt.Value = prod.member.u_name.ToString(); mem_num.Value = prod.mem_num.ToString(); } ip.Text = prod.login_ip; edit.Visible = true; goback.Visible = true; add.Visible = false; } else { Response.Redirect("index2.aspx"); } } } } protected void goback_Click(object sender, EventArgs e) { Response.Redirect("index2.aspx?page=" + Convert.ToString(Request["page"])); } #region 資料新增 protected void add_Click(object sender, EventArgs e) { if (Page.IsValid) { L_msg.Text = ""; Model.member_check member_check = new Model.member_check(); member_check.login_ip = Request.UserHostAddress; member_check.login_type = (int)Model.member.attendances.login.Enter; member_check.mem_num = Val(mem_num.Value); member_check.check_type = Val(check_type.SelectedValue); if (!isStrNull(check_date.Text) && isDate(check_date.Text)) member_check.check_date = ValDate(check_date.Text); if (!isStrNull(check_time.Text)) member_check.check_time = TimeSpan.Parse(check_time.Text); if (!isStrNull(hour.Text)) member_check.hour = Val(hour.Text); member_check.demo = demo.Text; try { _db.member_check.Add(member_check); _db.SaveChanges(); Response.Redirect("index2.aspx"); } catch (Exception ex) { //L_msg.Text = ex.Message; L_msg.Type = alert_type.danger; L_msg.Text = "操作失敗"; } } } #endregion #region 資料修改 protected void edit_Click(object sender, EventArgs e) { if (Page.IsValid) { L_msg.Text = ""; int _num = Val(Request["num"]); Model.member_check member_check = _db.member_check.Where(q => q.num == _num).FirstOrDefault(); if (member_check != null) { member_check.login_type = (int)Model.member.attendances.login.Enter; member_check.mem_num = Val(mem_num.Value); member_check.check_type = Val(check_type.SelectedValue); if (!isStrNull(check_date.Text) && isDate(check_date.Text)) member_check.check_date = ValDate(check_date.Text); if (!isStrNull(check_time.Text)) member_check.check_time = TimeSpan.Parse(check_time.Text); if (!isStrNull(hour.Text)) member_check.hour = Val(hour.Text); member_check.demo = demo.Text; } try { _db.SaveChanges(); Response.Redirect("index2.aspx?page=" + Convert.ToString(Request["page"])); } catch (Exception ex) { L_msg.Type = alert_type.danger; //L_msg.Text = ex.InnerException.Message; L_msg.Text = "操作失敗"; } } } #endregion }