本文整理汇总了C#中SQLDB.getScheduleDeflection方法的典型用法代码示例。如果您正苦于以下问题:C# SQLDB.getScheduleDeflection方法的具体用法?C# SQLDB.getScheduleDeflection怎么用?C# SQLDB.getScheduleDeflection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SQLDB
的用法示例。
在下文中一共展示了SQLDB.getScheduleDeflection方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: getEmployeesScheduleDeflection
public List<ScheduleDeflection> getEmployeesScheduleDeflection(string employee_id, string start_period, string begda, string endda)
{
SQLDB db = new SQLDB();
List<ScheduleDeflection> current = db.getScheduleDeflection(employee_id, start_period, begda, endda);
return current;
}
示例2: GetReportFactTime
public void GetReportFactTime(List<Employee> employees, Period per)
{
OpenReportExcelFile(@"C:\Inetpub\wwwroot\timeboard\Reports\ReportFactTime.xls");
Excel.Workbook workbook = (Excel.Workbook)thisApplication.Workbooks["ReportFactTime.xls"];
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets["Лист1"];
// пишем за какой период отчет
Excel.Range caption = worksheet.get_Range("C4", "H4");
caption.Value2 = "по фактически отработанному времени за " + per.MonthName.ToUpper() + " " + per.Year + " года";
// определяем с какой строки писать
int i = 10;
int last = employees.Count + i - 1;
// определяем границы таблицы
string coord1 = "A" + i.ToString();
string coord2 = "X" + last.ToString();
// рисуем сетку таблицы
Excel.Range range = worksheet.get_Range(coord1, coord2);
range.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;
range.Borders.Weight = Excel.XlBorderWeight.xlThin;
SQLDB sql = new SQLDB();
EmployeeComparerByFullnameASC emp_comp = new EmployeeComparerByFullnameASC();
employees.Sort(emp_comp);
foreach (Employee emp in employees)
{
decimal norma = 0;
decimal overhours = 0;
decimal def_sum = 0;
Deflections d = new Deflections();
List<HRHours> hr_current = sql.getHRHours(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<Schedule> schedule = sql.getSchedule(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<ScheduleDeflection> dschedule = sql.getScheduleDeflection(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
// отклонения
/*decimal def_B = 0; // Б
decimal def_V = 0; // В - выходной
decimal def_VP = 0; // ВП
decimal def_G = 0; // Г
decimal def_DO = 0; // ДО
decimal def_K = 0; // К
decimal def_NN = 0; // НН
decimal def_NP = 0; // НП
decimal def_OV = 0; // ОВ
decimal def_OD = 0; // ОД
decimal def_OJ = 0; // ОЖ
decimal def_OZ = 0; // ОЗ
decimal def_OT = 0; // ОТ
decimal def_PK = 0; // ПК
decimal def_PR = 0; // ПР
decimal def_R = 0; // Р
decimal def_RP = 0; // РП
decimal def_U = 0; // У
decimal def_UD = 0; // УД
*/
foreach (Schedule sch in schedule)
{
// если выходной или изменение на выходной то пишем в отклонения по выходному дню
if (((sch.DaySchedule == "FREE") && (Convert.ToInt32(sch.TimeHours) == 0)) || (sch.DayScheduleVar == "F"))
d.def_V += sch.TimeHours;
else
norma += sch.TimeHours;
}
foreach (HRHours over in hr_current)
overhours += (over.DayOverHours + over.NightOverHours);
foreach (ScheduleDeflection sdf in dschedule)
{
def_sum += sdf.TimeHours;
if (sdf.CodeT13.Equals("РВ"))
{
def_sum -= sdf.TimeHours; // убираем из поля Итого отработано по факту
overhours += sdf.TimeHours; // записываем в поле Итого сверхурочных часов
}
switch (sdf.CodeT13)
{
case "Б":
d.def_B += sdf.TimeHours;
break;
case "ВП":
d.def_VP += sdf.TimeHours;
break;
case "Г":
d.def_G += sdf.TimeHours;
break;
case "ДО":
d.def_DO += sdf.TimeHours;
break;
case "К":
d.def_K += sdf.TimeHours;
//.........这里部分代码省略.........
示例3: Page_Load
protected void Page_Load(object sender, EventArgs e)
{
if (Session["User"] == null) Response.Redirect("Default.aspx");
Date dt = new Date();
SAPDB db = new SAPDB();
SQLDB sql = new SQLDB();
PeriodDB perdb = new PeriodDB();
NightHoursDB nightdb = new NightHoursDB();
Person user = (Person)Session["User"];
string role = "";
string month_id = "";
string year = "";
string start_date = "";
string end_date = "";
if (Request.QueryString["rtb"] != null)
{
EncryptedQueryString QueryString = new EncryptedQueryString(Request.QueryString["rtb"]);
if (QueryString["role"] != null) role = QueryString["role"].ToString();
if (QueryString["month_id"] != null) month_id = QueryString["month_id"].ToString();
if (QueryString["year"] != null) year = QueryString["year"].ToString();
if (QueryString["start_date"] != null) start_date = QueryString["start_date"].ToString();
if (QueryString["end_date"] != null) end_date = QueryString["end_date"].ToString();
}
List<NightHours> nighthours = nightdb.getNightHours();
Period per = perdb.getPeriod(Convert.ToInt32(month_id), Convert.ToInt32(year));
EmployeeList emp_list = new EmployeeList();
List<Employee> all_employees = db.getEmployeeListForReports(start_date, end_date, user.TabNum, role);
if (all_employees == null)
{
MessageBox.Show("Невозможно сформировать отчет! Список сотрудников за период пуст!");
return;
}
EmployeeComparerByFullnameASC emp_comp = new EmployeeComparerByFullnameASC();
all_employees.Sort(emp_comp);
Response.Clear();
Response.Charset = "utf-8";
Response.ContentType = "application/vnd.ms-excel";
string str = @"<table cellspacing='0' cellpadding='0' border='1'>
<tr>
<td width='30px' style='font-weight: bold;' align='center' valign='middle'>
Таб. номер
</td>
<td width='100px' style='font-weight: bold;' align='center' valign='middle'>
ФИО
</td>";
int count_days = dt.getCountDays(per.MonthID, per.Year);
for (int i = 1; i <= count_days; i++)
str += "<td width='20px' style='font-weight: bold;' align='center'>" + i.ToString() + "</td><td width='20px' style='background-color: #99CCFF; font-weight: bold;' align='center' >" + i.ToString() + "a</td>";
str += "<td> </td><td> </td><td> </td></tr>";
foreach (Employee emp in all_employees)
{
str += "<tr>";
str += "<td width='30px' align='center'>" + DeleteZeroFromEmployeeID(emp.EmployeeID) + "</td>";
str += "<td width='100px' align='center'>" + emp.FullName + "</td>";
int day = 1;
List<HRHours> hr_current = sql.getHRHours(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<Schedule> schedule = sql.getSchedule(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<ScheduleDeflection> dschedule = sql.getScheduleDeflection(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
foreach (Schedule sch in schedule)
{
decimal all_hours = 0;
decimal night_hours = 0;
int d = Convert.ToInt32(sch.DayPeriod);
// если у нас день не совпадает с днем в графике, заполняю пустым квадратом
//TimekeeperHours tkh = tkh_current.Find(delegate(TimekeeperHours h) { return Convert.ToInt32(h.Day) == day; });
HRHours hr = hr_current.Find(delegate(HRHours hrh) { return Convert.ToInt32(hrh.Day) == day; });
if (hr != null)
{
all_hours += hr.DayOverHours + hr.NightOverHours;
night_hours += hr.NightOverHours;
}
while (d != day)
{
if (day == count_days) break;
if (all_hours != 0) str += "<td width='20px' align='center'>" + all_hours.ToString() + "</td>";
//.........这里部分代码省略.........
示例4: GetReportTimeboard
public void GetReportTimeboard(List<Employee> all_employees, Period per)
{
SQLDB sql = new SQLDB();
Date dt = new Date();
OpenReportExcelFile(@"C:\Inetpub\wwwroot\timeboard\Reports\ReportTimeboard.xls");
Excel.Workbook workbook = (Excel.Workbook)thisApplication.Workbooks["ReportTimeboard.xls"];
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets["Sheet1"];
NightHoursDB nightdb = new NightHoursDB();
List<NightHours> nighthours = nightdb.getNightHours();
EmployeeComparerByFullnameASC emp_comp = new EmployeeComparerByFullnameASC();
all_employees.Sort(emp_comp);
int count_days = dt.getCountDays(per.MonthID, per.Year);
worksheet.Cells[1, 1] = "Таб. номер";
worksheet.Cells[1, 2] = "ФИО";
int j = 2;
int i = 1;
for (i = 1; i <= count_days; i++)
{
worksheet.Cells[1, ++j] = i;
worksheet.Cells[1, ++j] = i + "a";
}
i = 2;
foreach (Employee emp in all_employees)
{
worksheet.Cells[i, 1] = DeleteZeroFromEmployeeID(emp.EmployeeID);
worksheet.Cells[i, 2] = emp.FullName;
j = 2;
int day = 1;
EmployeeList emp_list = new EmployeeList();
List<HRHours> hr_current = sql.getHRHours(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<Schedule> schedule = sql.getSchedule(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<ScheduleDeflection> dschedule = sql.getScheduleDeflection(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
foreach (Schedule sch in schedule)
{
j++;
decimal all_hours = 0;
decimal night_hours = 0;
int d = Convert.ToInt32(sch.DayPeriod);
// если у нас день не совпадает с днем в графике, заполняю пустым квадратом
HRHours hr = hr_current.Find(delegate(HRHours hrh) { return Convert.ToInt32(hrh.Day) == day; });
if (hr != null)
{
all_hours += hr.DayOverHours + hr.NightOverHours;
night_hours += hr.NightOverHours;
}
while (d != day)
{
if (day == count_days) break;
if (all_hours != 0) worksheet.Cells[i, j] = all_hours.ToString();
if (night_hours != 0) worksheet.Cells[i, ++j] = night_hours.ToString();
else j++;
j++;
day++;
}
ScheduleDeflection sd = dschedule.Find(delegate(ScheduleDeflection dsch) { return Convert.ToInt32(dsch.DayPeriod) == day; });
if (sd != null)
{
//time = CheckDecimalNumber(sd.CodeT13);
decimal diversity = sch.TimeHours - sd.TimeHours;
if (diversity != 0)
{
if (diversity > 0)
{
all_hours = diversity;
}
else
{
all_hours = sd.TimeHours;
}
}
if (all_hours != 0) worksheet.Cells[i, j] = all_hours.ToString();
//.........这里部分代码省略.........
示例5: Page_Load
//.........这里部分代码省略.........
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Прогулы (отсутствие на рабочем месте без уважительных причин в течение времени, установленного законодательством)
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Отпуск по беременности и родам (отпуск в связи с усыновлением новорожденного ребенка)
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Время простоя по вине работодателя
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Дополнительный отпуск в связи с обучением с сохранением среднего заработка работникам, совмещающим работу с обучением
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Дополнительный отпуск в связи с обучением без сохранения заработной платы
</td>
<td style='width:80px; background-color: #FFFF99; font-weight: bold;' align='center'>
Работа в выходные и праздничные дни
</td>
</tr>
";
foreach(Employee emp in all_employees)
{
decimal norma = 0;
decimal overhours = 0;
decimal def_sum = 0;
Deflections d = new Deflections();
List<HRHours> hr_current = sql.getHRHours(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<Schedule> schedule = sql.getSchedule(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
List<ScheduleDeflection> dschedule = sql.getScheduleDeflection(emp.EmployeeID, emp.StartPeriod, emp.BeginDate, emp.EndDate);
foreach (Schedule sch in schedule)
{
// если выходной или изменение на выходной то пишем в отклонения по выходному дню
if (((sch.DaySchedule == "FREE") && (Convert.ToInt32(sch.TimeHours) == 0)) || (sch.DayScheduleVar == "F"))
d.def_V += sch.TimeHours;
else
norma += sch.TimeHours;
}
foreach (HRHours over in hr_current)
overhours += (over.DayOverHours + over.NightOverHours);
foreach (ScheduleDeflection sdf in dschedule)
{
def_sum += sdf.TimeHours;
if (sdf.CodeT13.Equals("РВ"))
{
def_sum -= sdf.TimeHours; // убираем из поля Итого отработано по факту
overhours += sdf.TimeHours; // записываем в поле Итого сверхурочных часов
}
switch (sdf.CodeT13)
{
case "Б":
d.def_B += sdf.TimeHours;
break;
case "ВП":
d.def_VP += sdf.TimeHours;
break;