Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static TimeSheetWorkShiftModel Create(TimeSheetWorkShiftModel model)
        {
            var entity = new hr_TimeSheetWorkShift();

            model.FillEntity(ref entity);

            return(new TimeSheetWorkShiftModel(hr_TimeSheetWorkShiftServices.Create(entity)));
        }
Пример #2
0
        private void EditData(hr_TimeSheetWorkShift timeSheet)
        {
            if (!string.IsNullOrEmpty(hdfGroupWorkShift.Text))
            {
                timeSheet.GroupWorkShiftId = Convert.ToInt32(hdfGroupWorkShift.Text);
            }

            if (!string.IsNullOrEmpty(inTime.Text))
            {
                timeSheet.InTime = inTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(outTime.Text))
            {
                timeSheet.OutTime = outTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(startInTime.Text))
            {
                timeSheet.StartInTime = startInTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(endInTime.Text))
            {
                timeSheet.EndInTime = endInTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(startOutTime.Text))
            {
                timeSheet.StartOutTime = startOutTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(endOutTime.Text))
            {
                timeSheet.EndOutTime = endOutTime.Text.Replace(":", "");
            }
            if (!string.IsNullOrEmpty(txtWorkConvert.Text))
            {
                timeSheet.WorkConvert =
                    Convert.ToDouble(txtWorkConvert.Text.Replace(",", "."), CultureInfo.InvariantCulture);
            }
            if (!string.IsNullOrEmpty(txtTimeConvert.Text))
            {
                timeSheet.TimeConvert =
                    Convert.ToDouble(txtTimeConvert.Text.Replace(",", "."), CultureInfo.InvariantCulture);
            }
            if (!string.IsNullOrEmpty(hdfSymbolId.Text))
            {
                timeSheet.SymbolId = Convert.ToInt32(hdfSymbolId.Text);
                timeSheet.Symbol   = cat_TimeSheetSymbolServices.GetFieldValueById(timeSheet.SymbolId, "Code");
            }

            timeSheet.GroupSymbolType = hdfGroupSymbol.Text;
            timeSheet.SymbolDisplay   = txtSymbolDisplay.Text;
            timeSheet.StyleColor      = txtStyleColor.Text;
            if (!string.IsNullOrEmpty(txtFactorOverTime.Text))
            {
                timeSheet.FactorOverTime =
                    Convert.ToDouble(txtFactorOverTime.Text.Replace(",", "."), CultureInfo.InvariantCulture);
            }
            timeSheet.IsOverTime     = chk_IsOverTime.Checked;
            timeSheet.IsHasInOutTime = chk_IsHasInOutTime.Checked;
        }
Пример #3
0
 /// <summary>
 /// Create by day of week
 /// </summary>
 /// <param name="date"></param>
 /// <param name="timeSheet"></param>
 private void CheckCreateTimeSheetWorkShift(DateTime date, hr_TimeSheetWorkShift timeSheet)
 {
     if (checkGroupDay.CheckedItems.Count > 0)
     {
         foreach (var item in checkGroupDay.CheckedItems)
         {
             if (item.ID == "chkMonday" && date.DayOfWeek.ToString() == "Monday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkTuesday" && date.DayOfWeek.ToString() == "Tuesday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkWednesday" && date.DayOfWeek.ToString() == "Wednesday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkThursday" && date.DayOfWeek.ToString() == "Thursday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkFriday" && date.DayOfWeek.ToString() == "Friday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkSaturday" && date.DayOfWeek.ToString() == "Saturday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
             if (item.ID == "chkSunday" && date.DayOfWeek.ToString() == "Sunday")
             {
                 //Create
                 CreateWorkShift(timeSheet, date);
             }
         }
     }
 }
Пример #4
0
        private void Insert(DirectEventArgs e)
        {
            //validation
            if (timeSheetFromDate.SelectedValue == null)
            {
                Dialog.ShowNotification("Bạn chưa chọn ngày bắt đầu");
                return;
            }

            if (timeSheetToDate.SelectedValue == null)
            {
                Dialog.ShowNotification("Bạn chưa chọn ngày kết thúc");
                return;
            }

            if (checkGroupDay.CheckedItems.Count < 0)
            {
                Dialog.ShowNotification("Bạn chưa chọn thứ");
                return;
            }

            try
            {
                var timeSheet = new hr_TimeSheetWorkShift()
                {
                    Name = txtName.Text,
                    //Code = txtCode.Text,
                    CreatedDate = DateTime.Now,
                };

                EditData(timeSheet);

                var startDate  = timeSheetFromDate.SelectedDate;
                var endDate    = timeSheetToDate.SelectedDate;
                var startMonth = timeSheetFromDate.SelectedDate.Month;
                var endMonth   = timeSheetToDate.SelectedDate.Month;
                var startYear  = timeSheetFromDate.SelectedDate.Year;
                var endYear    = timeSheetToDate.SelectedDate.Year;
                if (startMonth == endMonth)
                {
                    var dayOfMonth = DateTime.DaysInMonth(startYear, startMonth);
                    var endDay     = endDate.Day;
                    if (endDate.Day > dayOfMonth)
                    {
                        endDay = dayOfMonth;
                    }

                    for (var i = startDate.Day; i <= endDay; i++)
                    {
                        var date = new DateTime(startYear, startMonth, i);

                        //Bo nghi le tet
                        //Lay danh sach ngay nghi le tet
                        //Kiem tra xem ngay do co phai la ngay le khong. Neu la ngay le thi bo qua khong di dang ky
                        if (chkTetHoliday.Checked)
                        {
                            var holiday   = cat_HolidayServices.GetAll();
                            var isProcess = false;
                            foreach (var itemHoliday in holiday)
                            {
                                if (itemHoliday.DaySolar == i &&
                                    itemHoliday.MonthSolar == startMonth &&
                                    itemHoliday.YearSolar == startYear)
                                {
                                    isProcess = true;
                                }
                            }

                            if (isProcess)
                            {
                                continue;
                            }
                        }

                        //create timeSheetWorkShift
                        CheckCreateTimeSheetWorkShift(date, timeSheet);
                    }
                }
                else
                {
                    //Chi xet trong 1 nam
                    if (startYear == endYear)
                    {
                        for (int j = startMonth; j <= endMonth; j++)
                        {
                            var dayOfMonth = DateTime.DaysInMonth(startYear, j);

                            for (var i = startDate.Day; i <= dayOfMonth; i++)
                            {
                                var date = new DateTime(startYear, j, i);
                                //Bo nghi le tet
                                //Lay danh sach ngay nghi le tet
                                //Kiem tra xem ngay do co phai la ngay le khong. Neu la ngay le thi bo qua khong di dang ky
                                if (chkTetHoliday.Checked)
                                {
                                    var holiday   = cat_HolidayServices.GetAll();
                                    var isProcess = false;
                                    foreach (var itemHoliday in holiday)
                                    {
                                        if (itemHoliday.DaySolar == i &&
                                            itemHoliday.MonthSolar == j &&
                                            itemHoliday.YearSolar == startYear)
                                        {
                                            isProcess = true;
                                        }
                                    }

                                    if (isProcess)
                                    {
                                        continue;
                                    }
                                }

                                //create timeSheetWorkShift
                                CheckCreateTimeSheetWorkShift(date, timeSheet);
                            }
                        }
                    }
                }

                if (e.ExtraParams["Close"] != "True")
                {
                    return;
                }
                wdTimeSheetRule.Hide();
                ResetForm();
            }
            catch (Exception ex)
            {
                Dialog.Alert("Có lỗi xảy ra trong quá trình thêm mới: {0}".FormatWith(ex.Message));
            }
        }
Пример #5
0
 private static void CreateWorkShift(hr_TimeSheetWorkShift timeSheet, DateTime date)
 {
     timeSheet.SpecifyDate = date;
     //register table workShift
     hr_TimeSheetWorkShiftServices.Create(timeSheet);
 }