/// <summary> /// 更新一条数据 /// </summary> public void Update(Hownet.Model.AttendanceRecords model) { dal.Update(model); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(Hownet.Model.AttendanceRecords model) { return(dal.Add(model)); }
public void CaicMinute(int ID) { try { Hownet.Model.AttendanceRecords modAR = GetModel(ID); modAR.DayWorkMin = modAR.AbsenteeismMin = modAR.BeLateMin = modAR.OvertimeMin = modAR.LeaveEarlyMin = modAR.LateAtNight = 0; Hownet.BLL.OtherType bllOT = new Hownet.BLL.OtherType(); DataTable dtAttRules = bllOT.GetTypeList("考勤设置").Tables[0]; bool IsCaic = Convert.ToInt32(bllOT.GetList("(Name='按实际刷卡计时')").Tables[0].Rows[0]["Value"]) == 1; int a = 0; if (IsCaic) { if (modAR.TimeOne.HasValue && modAR.TimeTwo.HasValue) { TimeSpan ts = (TimeSpan)(modAR.TimeTwo - modAR.TimeOne); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.DayWorkMin += a; } } if (modAR.TimeThree.HasValue && modAR.TimeFour.HasValue) { TimeSpan ts = (TimeSpan)(modAR.TimeFour - modAR.TimeThree); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.DayWorkMin += a; } } if (modAR.TimeFive.HasValue && modAR.TimeSix.HasValue) { DateTime ddN = Convert.ToDateTime(modAR.DateDay.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='lThree')")[0]["Value"]); //晚上加班下班时间,用于判断晚班有深夜班时间 if (!(ddN < (DateTime)(modAR.TimeSix))) //晚上下班提前或正常下班的。 { TimeSpan ts = (TimeSpan)(modAR.TimeSix - modAR.TimeFive); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.OvertimeMin = a; } } else//超过夜班下班时间的。 { TimeSpan ts = (TimeSpan)(ddN - modAR.TimeFive); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.OvertimeMin = a; } ts = (TimeSpan)(modAR.TimeSix - ddN); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.LateAtNight = a; } } } } else { DateTime dt = modAR.DateDay; DateTime one = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='One')")[0]["Value"].ToString()); DateTime lone = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='lOne')")[0]["Value"].ToString()); DateTime two = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='Two')")[0]["Value"].ToString()); DateTime ltwo = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='lTwo')")[0]["Value"].ToString()); DateTime three = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='Three')")[0]["Value"].ToString()); DateTime lthree = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='lThree')")[0]["Value"].ToString()); if (modAR.TimeOne.HasValue && modAR.TimeTwo.HasValue) { if (modAR.TimeTwo < lone) { lone = Convert.ToDateTime(modAR.TimeTwo); } if (modAR.TimeOne > one) { one = Convert.ToDateTime(modAR.TimeOne); } TimeSpan ts = (TimeSpan)(lone - one); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.DayWorkMin += a; } } if (modAR.TimeThree.HasValue && modAR.TimeFour.HasValue) { if (modAR.TimeFour < ltwo) { ltwo = Convert.ToDateTime(modAR.TimeFour); } if (modAR.TimeThree > two) { two = Convert.ToDateTime(modAR.TimeThree); } TimeSpan ts = (TimeSpan)(ltwo - two); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.DayWorkMin += a; } } if (modAR.TimeFive.HasValue && modAR.TimeSix.HasValue) { if (!(lthree < (DateTime)(modAR.TimeSix))) //晚上下班提前或正常下班的。 { if (modAR.TimeFive > three) { three = Convert.ToDateTime(modAR.TimeFive); } TimeSpan ts = (TimeSpan)(modAR.TimeSix - three); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.OvertimeMin = a; } } else//超过夜班下班时间的。 { if (modAR.TimeFive > three) { three = Convert.ToDateTime(modAR.TimeFive); } TimeSpan ts = (TimeSpan)(lthree - three); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.OvertimeMin = a; } ts = (TimeSpan)(modAR.TimeSix - lthree); a = ts.Hours * 60 + ts.Minutes; if (a > 0) { modAR.LateAtNight = a; } } } } Update(modAR); } catch (Exception ex) { } ////try ////{ //Hownet.BLL.OtherType bllOT = new OtherType(); //DataTable dtAttRules = bllOT.GetTypeList("考勤设置").Tables[0]; //Hownet.Model.AttendanceRecords modAR = GetModel(ID); //modAR.DayWorkMin = modAR.AbsenteeismMin = modAR.BeLateMin = modAR.OvertimeMin = modAR.LeaveEarlyMin = 0; //if (modAR.TimeOne.HasValue && modAR.TimeTwo.HasValue) //{ // TimeSpan ts = (TimeSpan)(modAR.TimeTwo - modAR.TimeOne); // if (ts.Minutes > 0) // modAR.DayWorkMin += ts.Hours * 60 + ts.Minutes; //} //if (modAR.TimeThree.HasValue && modAR.TimeFour.HasValue) //{ // TimeSpan ts = (TimeSpan)(modAR.TimeFour - modAR.TimeThree); // if (ts.Minutes > 0) // modAR.DayWorkMin += ts.Hours * 60 + ts.Minutes; //} //if (modAR.TimeFive.HasValue && modAR.TimeSix.HasValue) //{ // DateTime ddN = Convert.ToDateTime(modAR.DateDay.Date.ToShortDateString() + " " + dtAttRules.Select("(Name='lThree')")[0]["Value"]);//晚上加班下班时间,用于判断晚班有深夜班时间 // if (!(ddN < (DateTime)(modAR.TimeSix))) //晚上下班提前或正常下班的。 // { // TimeSpan ts = (TimeSpan)(modAR.TimeSix - modAR.TimeFive); // if (ts.Minutes > 0) // modAR.OvertimeMin = ts.Hours * 60 + ts.Minutes; // } // else//超过夜班下班时间的。 // { // TimeSpan ts = (TimeSpan)(ddN - modAR.TimeFive); // if (ts.Minutes > 0) // modAR.OvertimeMin = ts.Hours * 60 + ts.Minutes; // ts = (TimeSpan)(modAR.TimeSix - ddN); // if (ts.Minutes > 0) // modAR.LateAtNight = ts.Hours * 60 + ts.Minutes; // } //} ////} ////catch (Exception ex) ////{ ////} //Update(modAR); }
/// <summary> /// 获得数据列表 /// </summary> public List <Hownet.Model.AttendanceRecords> DataTableToList(DataTable dt) { List <Hownet.Model.AttendanceRecords> modelList = new List <Hownet.Model.AttendanceRecords>(); int rowsCount = dt.Rows.Count; if (rowsCount > 0) { Hownet.Model.AttendanceRecords model; for (int n = 0; n < rowsCount; n++) { model = new Hownet.Model.AttendanceRecords(); if (dt.Rows[n]["ID"].ToString() != "") { model.ID = int.Parse(dt.Rows[n]["ID"].ToString()); } else { model.ID = 0; } if (dt.Rows[n]["EmployeeID"].ToString() != "") { model.EmployeeID = int.Parse(dt.Rows[n]["EmployeeID"].ToString()); } else { model.EmployeeID = 0; } if (dt.Rows[n]["DateDay"].ToString() != "") { model.DateDay = DateTime.Parse(dt.Rows[n]["DateDay"].ToString()); } //else //{ // model.DateDay = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeOne"].ToString() != "") { model.TimeOne = DateTime.Parse(dt.Rows[n]["TimeOne"].ToString()); } //else //{ // model.TimeOne = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeTwo"].ToString() != "") { model.TimeTwo = DateTime.Parse(dt.Rows[n]["TimeTwo"].ToString()); } //else //{ // model.TimeTwo = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeThree"].ToString() != "") { model.TimeThree = DateTime.Parse(dt.Rows[n]["TimeThree"].ToString()); } //else //{ // model.TimeThree = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeFour"].ToString() != "") { model.TimeFour = DateTime.Parse(dt.Rows[n]["TimeFour"].ToString()); } //else //{ // model.TimeFour = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeFive"].ToString() != "") { model.TimeFive = DateTime.Parse(dt.Rows[n]["TimeFive"].ToString()); } //else //{ // model.TimeFive = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["TimeSix"].ToString() != "") { model.TimeSix = DateTime.Parse(dt.Rows[n]["TimeSix"].ToString()); } //else //{ // model.TimeSix = DateTime.Parse("1900-1-1"); //} if (dt.Rows[n]["BeLateMin"].ToString() != "") { model.BeLateMin = int.Parse(dt.Rows[n]["BeLateMin"].ToString()); } else { model.BeLateMin = 0; } if (dt.Rows[n]["LeaveEarlyMin"].ToString() != "") { model.LeaveEarlyMin = int.Parse(dt.Rows[n]["LeaveEarlyMin"].ToString()); } else { model.LeaveEarlyMin = 0; } if (dt.Rows[n]["DayWorkMin"].ToString() != "") { model.DayWorkMin = int.Parse(dt.Rows[n]["DayWorkMin"].ToString()); } else { model.DayWorkMin = 0; } if (dt.Rows[n]["IsSum"].ToString() != "") { if ((dt.Rows[n]["IsSum"].ToString() == "1") || (dt.Rows[n]["IsSum"].ToString().ToLower() == "true")) { model.IsSum = true; } else { model.IsSum = false; } } if (dt.Rows[n]["AbsenteeismMin"].ToString() != "") { model.AbsenteeismMin = int.Parse(dt.Rows[n]["AbsenteeismMin"].ToString()); } else { model.AbsenteeismMin = 0; } if (dt.Rows[n]["OvertimeMin"].ToString() != "") { model.OvertimeMin = int.Parse(dt.Rows[n]["OvertimeMin"].ToString()); } else { model.OvertimeMin = 0; } if (dt.Rows[n]["IsWuLianBan"].ToString() != "") { if ((dt.Rows[n]["IsWuLianBan"].ToString() == "1") || (dt.Rows[n]["IsWuLianBan"].ToString().ToLower() == "true")) { model.IsWuLianBan = true; } else { model.IsWuLianBan = false; } } if (dt.Rows[n]["IsWanLianBan"].ToString() != "") { if ((dt.Rows[n]["IsWanLianBan"].ToString() == "1") || (dt.Rows[n]["IsWanLianBan"].ToString().ToLower() == "true")) { model.IsWanLianBan = true; } else { model.IsWanLianBan = false; } } if (dt.Rows[n]["IsTongXiao"].ToString() != "") { if ((dt.Rows[n]["IsTongXiao"].ToString() == "1") || (dt.Rows[n]["IsTongXiao"].ToString().ToLower() == "true")) { model.IsTongXiao = true; } else { model.IsTongXiao = false; } } if (dt.Rows[n]["LateAtNight"].ToString() != "") { model.LateAtNight = int.Parse(dt.Rows[n]["LateAtNight"].ToString()); } else { model.LateAtNight = 0; } model.A = int.Parse(dt.Rows[n]["A"].ToString()); modelList.Add(model); } } return(modelList); }