自动累加病假天数
C V大师 2020-08-14 07:11:28 c# 满一年增加4天病假,不满一年增加2天病假,该怎么写啊
var employee_Name = LeaveSystem_BaseNumBLL.Select();
var employee = BPMU_USERBLL.BPMU_USERSelect1();
foreach (var item in employee)
{
var name = item.Account;
var dateTimeNow = DateTime.Now.Date;
TimeSpan span = new TimeSpan();
var basenum = 0;
span = dateTimeNow - item.JoinDate;
//大于28天可能大于1个月
if (span.TotalDays > 28)
{
//是否月份确实有变化差1个月以上
if (item.JoinDate.Month < dateTimeNow.Month)
{
//判断需要补加几个月的
int OneYearMonth = 0;
int OverOneYearMonth = 0;
//判断入职时间到不到1年
if (span.Days > 365)
{
foreach (var items in employee_Name)
{
//获取LeaveSystem表的员工名
var names = items.Account;
//判断BPMU_USER表的员工名与LeaveSystem表的员工名是否相同
if (names == name)
{
//如果相同直接修改天数
LeaveSystem_BaseNumBLL.Update(basenum, names);
}
else
{
//给ID获取值
string t = Guid.NewGuid().ToString("N");
//转换类型
string id = t.Substring(0, 32);
//如果不相同把BPMU_USER表的员工名添加到与LeaveSystem表中
LeaveSystem_BaseNumBLL.Add(id, name);
//修改天数
LeaveSystem_BaseNumBLL.Update(basenum, names);
}
}
//for (int OverOneYearMonth)
//{
// Func(adddays, 4)
//}
//加4天
}
else
{
foreach (var items in employee_Name)
{
//获取LeaveSystem表的员工名
var names = items.Account;
//判断BPMU_USER表的员工名与LeaveSystem表的员工名是否相同
if (names == name)
{
//如果相同直接修改天数
LeaveSystem_BaseNumBLL.Update(basenum, names);
}
else
{
//给ID获取值
string t = Guid.NewGuid().ToString("N");
//转换类型
string id = t.Substring(0, 32);
//如果不相同把BPMU_USER表的员工名添加到与LeaveSystem表中
LeaveSystem_BaseNumBLL.Add(id, name);
//修改天数
LeaveSystem_BaseNumBLL.Update(basenum, names);
}
}
//for (int OneYearMonth)
// Func(adddays, 2)
//加2天
}
}
}