考勤时间计算方法探讨
来源:互联网 发布:中国洪涝灾害数据分析 编辑:程序博客网 时间:2024/05/17 05:17
private void btnSeek_Click(object sender, EventArgs e)
{
int totalCount = getCalcCount(timeFrom.Time, timeTo.Time);
DateTime tempTime=timeFrom.Time;
double Y = 0;
double R = 0;
double D = 0;
for (int i = 0; i < totalCount; i++)
{
if (chkNight.Checked)
{
if (!isInNightBanCi(tempTime))
{
if (isNightWork(tempTime))
{
Y = Y + 0.5;
}
else
{
R = R + 0.5;
}
}
else
{
D =D+ 0.5;
}
}
else
{
if (!isInDayBanCi(tempTime))
{
if (isNightWork(tempTime))
{
Y = Y + 0.5;
}
else
{
R = R + 0.5;
}
}
else
{
D = D + 0.5;
}
}
tempTime = tempTime.AddMinutes(30);
}
txtMemo.Text = string.Format("Y={0}; R={1}; D={2}", Y, R,D);
}
int getCalcCount(DateTime d1, DateTime d2)
{
double d=(d2 - d1).TotalMinutes;
if (d < 0)
{
d2 = d2.AddDays(1);
}
return (int)( (d2 - d1).TotalMinutes / 30);
}
bool isInDayBanCi(DateTime d)
{
return DHasInD1_D2(d, Convert.ToDateTime("8:00:00"), Convert.ToDateTime("18:00:00"));
}
bool isInNightBanCi(DateTime d)
{
if (DHasInD1_D2(d, Convert.ToDateTime("0:00"), Convert.ToDateTime("9:00")))
return true;
if (DHasInD1_D2(d, Convert.ToDateTime("20:00"), Convert.ToDateTime("23:59:59")))
return true;
return false;
}
bool isNightWork(DateTime d)
{
return !DHasInD1_D2(Convert.ToDateTime(d.Hour+":"+d.Minute), Convert.ToDateTime("9:00"), Convert.ToDateTime("20:00"));
}
bool DHasInD1_D2(DateTime d, DateTime d1, DateTime d2)
{
d=Convert.ToDateTime(d.Hour+":"+d.Minute);
d1=Convert.ToDateTime(d1.Hour+":"+d1.Minute);
d2=Convert.ToDateTime(d2.Hour+":"+d2.Minute);
if (d1 <= d && d <= d2)
{
return true;
}
else
{
return false;
}
}
- 考勤时间计算方法探讨
- HR人力资源软件考勤的两种计算方法
- crontab定时时间计算方法
- 手机电池充电时间计算方法
- java时间日期计算方法
- 时间复杂度的计算方法
- 单片机指令时间计算方法
- rtsp时间戳计算方法
- 时间复杂度的计算方法
- aop 计算方法运行时间
- ios NSDateComponents 时间计算方法
- 时间复杂度计算方法
- 算法时间复杂度计算方法
- 时间复杂度计算方法
- Android 计算方法运行时间
- 算法时间复杂度计算方法
- RTC时间计算方法
- 考勤
- Win7下安装OpenCV开发环境:Code::Blocks+MinGW+DX+OpenCV
- 使用Struts2验证框架实现输入校验
- JAVA中的I/0流实验(一)
- uva 10673 - Play with Floor and Ceil
- 成功移植UT6410的800*480的LCD驱动
- 考勤时间计算方法探讨
- 【orange】关于从软盘加载内核到内存的一点感悟
- zoj 1331
- 无知
- 类
- iPhone UI开发建议
- 平面多边形面积问题
- java.security.SecureRandom导致jetty、hadoop启动受阻问题
- 天干地支六十四卦