Ejemplo n.º 1
0
    protected void RadScheduler1_TimeSlotCreated(object sender, TimeSlotCreatedEventArgs e)
    {
        string holidayDescription = string.Empty;

        if (DateTime.Compare(e.TimeSlot.Start.Date, DateTime.Now.Date) == 0)
        {
            e.TimeSlot.CssClass = "RadSchedulerToday";
        }
        else if (e.TimeSlot.Start.Date.DayOfWeek == DayOfWeek.Sunday)
        {
            e.TimeSlot.CssClass = "RadSchedulerHoliday";
        }
        else if (EPublicHoliday.IsHoliday(dbConn, e.TimeSlot.Start.Date))
        {
            e.TimeSlot.CssClass = "RadSchedulerHoliday";
            //Label holidayLabel = new Label();
            //holidayLabel.Text = holidayDescription;
            //holidayLabel.ForeColor = System.Drawing.Color.Red;
            ////holidayLabel.CssClass = "FloatRight";
            ////e.TimeSlot.Control.Controls.AddAt(1, holidayLabel);
            //e.TimeSlot.Control.Controls[0].Controls.AddAt(1, holidayLabel);
        }
        else if (EStatutoryHoliday.IsHoliday(dbConn, e.TimeSlot.Start.Date))
        {
            e.TimeSlot.CssClass = "RadSchedulerHoliday";
            //Label holidayLabel = new Label();
            //holidayLabel.Text = holidayDescription;
            //holidayLabel.ForeColor = System.Drawing.Color.Red;
            ////holidayLabel.CssClass = "FloatRight";
            ////e.TimeSlot.Control.Controls.AddAt(1, holidayLabel);
            //e.TimeSlot.Control.Controls[0].Controls.AddAt(1, holidayLabel);
        }
    }
Ejemplo n.º 2
0
 protected void RadScheduler1_TimeSlotCreated(object sender, TimeSlotCreatedEventArgs e)
 {
     if (DateTime.Compare(e.TimeSlot.Start.Date, DateTime.Now.Date) == 0)
     {
         e.TimeSlot.CssClass = "RadSchedulerToday";
     }
     else if (e.TimeSlot.Start.Date.DayOfWeek == DayOfWeek.Sunday)
     {
         e.TimeSlot.CssClass = "RadSchedulerHoliday";
     }
     else if (EPublicHoliday.IsHoliday(dbConn, e.TimeSlot.Start.Date))
     {
         e.TimeSlot.CssClass = "RadSchedulerHoliday";
     }
     else if (EStatutoryHoliday.IsHoliday(dbConn, e.TimeSlot.Start.Date))
     {
         e.TimeSlot.CssClass = "RadSchedulerHoliday";
     }
 }
Ejemplo n.º 3
0
        public override CrystalDecisions.CrystalReports.Engine.ReportDocument GenerateReport()
        {
            if (EmpIDList.Count > 0)
            {
                DataSet ds = new DataSet();
                ds.ReadXmlSchema(schemaXSDPath);
                DataTable empInfoTable          = ds.Tables["EmpInfo"];
                DataTable attendanceRecordTable = ds.Tables["AttendanceRecord"];

                DateTime periodFrom = new DateTime(year, month, 1);
                DateTime periodTo   = new DateTime(year, month, DateTime.DaysInMonth(year, month));

                foreach (int EmpID in EmpIDList)
                {
                    EEmpPersonalInfo empInfo = new EEmpPersonalInfo();
                    empInfo.EmpID = EmpID;
                    if (EEmpPersonalInfo.db.select(dbConn, empInfo))
                    {
                        DataRow empRow = empInfoTable.NewRow();
                        empRow["EmpID"]      = EmpID;
                        empRow["EmpNo"]      = empInfo.EmpNo;
                        empRow["EmpName"]    = empInfo.EmpEngFullName;
                        empRow["PeriodFrom"] = periodFrom;
                        empRow["PeriodTo"]   = periodTo;

                        EEmpPositionInfo empPos = AppUtils.GetLastPositionInfo(dbConn, periodTo, EmpID);
                        if (empPos != null)
                        {
                            EAuthorizationWorkFlow workFlow = new EAuthorizationWorkFlow();
                            workFlow.AuthorizationWorkFlowID = empPos.AuthorizationWorkFlowIDLeaveApp;
                            if (EAuthorizationWorkFlow.db.select(dbConn, workFlow))
                            {
                                empRow["Section"] = workFlow.AuthorizationWorkFlowDescription;
                            }

                            EWorkHourPattern workHourPattern = new EWorkHourPattern();
                            workHourPattern.WorkHourPatternID = empPos.WorkHourPatternID;
                            if (EWorkHourPattern.db.select(dbConn, workHourPattern))
                            {
                                empRow["RosterGroup"] = workHourPattern.WorkHourPatternCode + " - " + workHourPattern.WorkHourPatternDesc;
                            }
                        }
                        empInfoTable.Rows.Add(empRow);
                    }

                    DBFilter attendanceRecordFilter = new DBFilter();
                    attendanceRecordFilter.add(new Match("EmpID", EmpID));
                    attendanceRecordFilter.add(new Match("AttendanceRecordDate", ">=", periodFrom));
                    attendanceRecordFilter.add(new Match("AttendanceRecordDate", "<=", periodTo));
                    attendanceRecordFilter.add("AttendanceRecordDate", true);
                    ArrayList attendanceRecordList = EAttendanceRecord.db.select(dbConn, attendanceRecordFilter);

                    foreach (EAttendanceRecord attendanceRecord in attendanceRecordList)
                    {
                        DataRow attendanceRecordRow = attendanceRecordTable.NewRow();


                        attendanceRecordRow["AttendanceRecordID"] = attendanceRecord.AttendanceRecordID;
                        attendanceRecordRow["EmpID"] = attendanceRecord.EmpID;
                        attendanceRecordRow["AttendanceRecordDate"] = attendanceRecord.AttendanceRecordDate;
                        if (attendanceRecord.AttendanceRecordWorkStart.Ticks > 0)
                        {
                            attendanceRecordRow["AttendanceRecordWorkStart"] = attendanceRecord.AttendanceRecordWorkStart;
                        }
                        if (attendanceRecord.AttendanceRecordWorkEnd.Ticks > 0)
                        {
                            attendanceRecordRow["AttendanceRecordWorkEnd"] = attendanceRecord.AttendanceRecordWorkEnd;
                        }
                        attendanceRecordRow["AttendanceRecordLateMins"]       = attendanceRecord.AttendanceRecordActualLateMins;
                        attendanceRecordRow["AttendanceRecordEarlyLeaveMins"] = attendanceRecord.AttendanceRecordActualEarlyLeaveMins;
                        if (attendanceRecord.AttendanceRecordIsAbsent && string.IsNullOrEmpty(attendanceRecord.AttendanceRecordRemark))
                        {
                            attendanceRecordRow["AttendanceRecordRemark"] = "Absent";
                        }
                        else
                        {
                            attendanceRecordRow["AttendanceRecordRemark"] = attendanceRecord.AttendanceRecordRemark;
                        }
                        attendanceRecordRow["IsPublicHoliday"] = EPublicHoliday.IsHoliday(dbConn, attendanceRecord.AttendanceRecordDate) || attendanceRecord.AttendanceRecordDate.DayOfWeek == DayOfWeek.Sunday;
                        // Start 0000058, KuangWei, 2014-07-10
                        attendanceRecordRow["AttendanceRecordOvertimeMins"] = attendanceRecord.AttendanceRecordActualOvertimeMins;
                        // End 0000058, KuangWei, 2014-07-10
                        attendanceRecordTable.Rows.Add(attendanceRecordRow);
                    }
                }

                //System.Data.DataTable table = null;
                //foreach (int EmpID in EmpList)
                //{
                //    string select = "P.*,EmpPos.*,Pos.*,Comp.* ";
                //    string from = "from EmpPersonalInfo P LEFT JOIN EmpPositionInfo EmpPos ON P.EmpID=EmpPos.EmpID AND EmpPos.EmpPosEffTo IS NULL LEFT JOIN Position Pos ON EmpPos.PositionID=Pos.PositionID LEFT JOIN Company Comp ON EmpPos.CompanyID=Comp.CompanyID";
                //    DBFilter filter = new DBFilter();
                //    OR or = new OR();
                //    filter.add(new Match("P.EmpID", EmpID));
                //    System.Data.DataTable resulttable = filter.loadData(null, select, from);
                //    if (table == null)
                //        table = resulttable;
                //    else
                //        table.Merge(resulttable);
                //}
                //DBAESEncryptStringFieldAttribute.decode(table, "EmpHKID", true);
                //DBAESEncryptStringFieldAttribute.decode(table, "EmpPassportNo", false);


                //if (reportDocument == null)
                //{
                //    reportDocument = new ReportTemplate.Report_Employee_List();
                //}
                //else
                //{

                //}
                reportDocument.SetDataSource(ds);

                return(reportDocument);
            }
            else
            {
                return(null);
            }
        }