Beispiel #1
0
        private void AccountDays()
        {
            double day = 0;

            if (dpStartDate.Text != "" && dpEndDate.Text != "")
            {
                day = Convert.ToDouble((Convert.ToDateTime(dpEndDate.Text) - Convert.ToDateTime(dpStartDate.Text)).Days) + 1;
                V_ATTENDANCERECORD tempStart = cbxStartTime.SelectedItem as V_ATTENDANCERECORD;
                V_ATTENDANCERECORD tempEnd   = cbxEndTime.SelectedItem as V_ATTENDANCERECORD;
                if (tempStart != null && tempEnd != null)
                {
                    day = day + (tempEnd.ENDVALUE - tempStart.STARTVALUE);
                }
                nudToTaldays.Value = day;
            }
        }
Beispiel #2
0
 void client_GetAttendanceRecordByEmployeeIDCompleted(object sender, GetAttendanceRecordByEmployeeIDCompletedEventArgs e)
 {
     if (e.Error != null)
     {
         Utility.ShowCustomMessage(MessageTypes.Error, Utility.GetResourceStr("ERROR"), Utility.GetResourceStr(e.Error.Message));
     }
     else
     {
         if (e.UserState.ToString() == "dpStartDate")
         {
             cbxStartTime.ItemsSource       = e.Result;
             cbxStartTime.DisplayMemberPath = "STARTTIME";
             if (Evection != null)
             {
                 foreach (var item in cbxStartTime.Items)
                 {
                     V_ATTENDANCERECORD temp = item as V_ATTENDANCERECORD;
                     if (temp.STARTTIME == Evection.STARTTIME)
                     {
                         cbxStartTime.SelectedItem = item;
                         break;
                     }
                 }
             }
         }
         else
         {
             cbxEndTime.ItemsSource       = e.Result;
             cbxEndTime.DisplayMemberPath = "ENDTIME";
             if (Evection != null)
             {
                 foreach (var item in cbxEndTime.Items)
                 {
                     V_ATTENDANCERECORD temp = item as V_ATTENDANCERECORD;
                     if (temp.ENDTIME == Evection.ENDTIME)
                     {
                         cbxEndTime.SelectedItem = item;
                         break;
                     }
                 }
             }
         }
     }
     AccountDays();
 }
Beispiel #3
0
        /// <summary>
        /// 根据员工ID和日期获取班次定义的前两段起止时间
        /// </summary>
        /// <param name="employeeID">员工ID</param>
        /// <param name="date">日期</param>
        /// <returns></returns>
        public List <V_ATTENDANCERECORD> GetAttendanceRecordByEmployeeID(string employeeID, string strDate)
        {
            DateTime dtAttendanceDate = new DateTime();

            DateTime.TryParse(strDate, out dtAttendanceDate);
            var ent = dal.GetObjects().Include("T_HR_SHIFTDEFINE").FirstOrDefault(s => s.EMPLOYEEID == employeeID && s.ATTENDANCEDATE == dtAttendanceDate);
            List <V_ATTENDANCERECORD> attendanceRecord = new List <V_ATTENDANCERECORD>();

            if (ent != null)
            {
                V_ATTENDANCERECORD temp = new V_ATTENDANCERECORD();
                temp.STARTTIME  = ent.T_HR_SHIFTDEFINE.FIRSTSTARTTIME;
                temp.STARTVALUE = 0;
                temp.ENDTIME    = ent.T_HR_SHIFTDEFINE.FIRSTENDTIME;
                temp.ENDVALUE   = 0.5;
                attendanceRecord.Add(temp);
                temp.STARTTIME  = ent.T_HR_SHIFTDEFINE.SECONDSTARTTIME;
                temp.STARTVALUE = 0.5;
                temp.ENDTIME    = ent.T_HR_SHIFTDEFINE.SECONDENDTIME;
                temp.ENDVALUE   = 1;
                attendanceRecord.Add(temp);
            }
            return(attendanceRecord);
        }