Advertisement
yambroskin

Производственный календарь ELMA

Feb 19th, 2017
467
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.47 KB | None | 0 0
  1.  
  2.      //С помощью данного сервиса можно управлять рабочим календарём: вычислять рабочее время,
  3.      //проверить, является ли день рабочим, получать рабочее время, получать начало и конец рабочего дня,
  4.      //изменять рабочие рамки.
  5.    
  6.      //запишем сервис в переменную, чтобы с ним легче было работать
  7.      var service = Locator.GetServiceNotNull<IProductionCalendarService>();
  8.    
  9.      //Чтобы проверить, является ли дата рабочим днем, используйте функцию IsWorkDay(dateTime)
  10.      var isWorkDay = service.IsWorkDay(DateTime.Now.AddDays(3));
  11.    
  12.      //Чтобы вычислить дату и время по истечении срока в соответствии с календарём, используйте функцию EvalTargetTime(startTime, interval)
  13.      //или EvalTargetTime(startTime, intervalHours), где:
  14.      //DateTime startTime - Дата начада;
  15.      //TimeSpan interval - интервал времени;
  16.      //double intervalHours - интревал в часах
  17.      var dateTime = service.EvalTargetTime(DateTime.Now.AddDays(1), 5);
  18.    
  19.      //Чтобы вычислить интервал рабочего времени между датами используйте следующие функции:
  20.      //1.EvalWorkTimeSpanDifference(startDate, endDate) (значение в днях, часах, минутах и секундах)
  21.      var timeSpan = service.EvalWorkTimeSpanDifference(startDate, endDate);
  22.    
  23.      //2.EvalWorkTimeDifference(startTime, endTime) (значение в часах, минутах и секундах)
  24.      var timeSpan = service.EvalWorkTimeDifference(startTime, endTime);
  25.    
  26.      //3.EvalWorkTimeHoursDifference(startTime, endTime) (значение в часах)
  27.      var hours = service.EvalWorkTimeHoursDifference(startTime, endTime);
  28.    
  29.      //Чтобы определить рамки рабочего лня, используйте следующие функции:
  30.      //1.GetWorkTimeStart(day) - получить начало рабочего времени
  31.      var workTimeStart = service.GetWorkTimeStart(DateTime.Now);
  32.    
  33.      //2.GetWorkTimeEnd(day) - получить конец рабочего дня
  34.      var workTimeEnd = service.GetWorkTimeEnd(DateTime.Now);
  35.    
  36.      //Чтобы получить продолжительность рабочего дня используйте следующие функции:
  37.      //1.GetWorkTimeInDay() - для текущего дня
  38.      var currentWorkTime = service.GetWorkTimeInDay();
  39.    
  40.      //2.GetWorkTimeInDay(day) - для определённого дня
  41.      var workTime = service.GetWorkTimeInDay(DateTime.Now.AddDays(3));
  42.    
  43.      //3.MinutesInDay() - количество минут в текущем рабочем дне
  44.      var currentMinutes = service.MinutesInDay();
  45.    
  46.      //4.MinutesInDay(day) - количество минут в определённом дне
  47.      var minutes = service.MinutesInDay(DateTime.Now);
  48.    
  49.      //Чтобы добавить к дате определенное количество дней с учетом календаря (без учеты времени работы)
  50.      //используйте функцию AddDays(startTime, addDays)
  51.      var resultDate = service.AddDays(DateTime.Now, 5);
  52.    
  53.      //Чтобы установить выходной день используйте функцию SetHoliday(day)
  54.      service.SetHoliday(DateTime.Now.AddDays(3));
  55.    
  56.      //Чтобы установить (изменить) рабочее время используйте следующие функции:
  57.      //1.SetWorkDayTime(workStart) - установить только начало рабочего дня
  58.      //в данном случае устанавливается рабоче время 9 утра
  59.      service.SetWorkDayTime(new TimeSpan(9, 0, 0));
  60.    
  61.      //2.SetWorkDayTime(workStart, workEnd) - установить начало и конец рабочего дня
  62.      service.SetWorkDayTime(new TimeSpan(9, 0, 0), new TimeSpan(18, 0, 0));
  63.    
  64.      //3.SetWorkDayTime(workStart, workEnd, dinnerStart, dinnerEnd) - установить начало и конец рабочего дня, начало и конец обеда
  65.      service.SetWorkDayTime(new TimeSpan(9, 0, 0), new TimeSpan(18, 0, 0), new TimeSpan(12, 30, 0), new TimeSpan(13, 30, 0));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement