コード例 #1
0
		public DayIntervalPartDetailsViewModel(DayInterval dayInterval, Guid organisationUID, DayIntervalPart dayIntervalPart = null)
		{
			DayInterval = dayInterval;
			if (dayIntervalPart == null)
			{
				Title = "Новый интервал";
				IsNew = true;
				dayIntervalPart = new DayIntervalPart()
				{
					DayIntervalUID = dayInterval.UID,
				};
			}
			else
			{
				Title = "Редактирование интервала";
				IsNew = false;
			}
			DayIntervalPart = dayIntervalPart;

			OrganisationUID = organisationUID;
			AvailableTransitions = new ObservableCollection<DayIntervalPartTransitionType>(Enum.GetValues(typeof(DayIntervalPartTransitionType)).OfType<DayIntervalPartTransitionType>());
			BeginTime = dayIntervalPart.BeginTime;
			EndTime = dayIntervalPart.EndTime;
			SelectedTransition = dayIntervalPart.TransitionType;
			oldBeginTime = BeginTime;
			oldEndTime = EndTime;
			oldTransitionType = SelectedTransition;
		}
コード例 #2
0
		List<DayIntervalPart> CloneDayIntervalPart()
		{
			var dayIntervalParts = new List<DayIntervalPart>();
			foreach (var dayIntervalPart in DayInterval.DayIntervalParts)
			{
				var clonedDayIntervalPart = new DayIntervalPart()
				{
					UID = dayIntervalPart.UID,
					BeginTime = dayIntervalPart.BeginTime,
					EndTime = dayIntervalPart.EndTime,
					TransitionType = dayIntervalPart.TransitionType,
					DayIntervalUID = dayIntervalPart.DayIntervalUID,
				};
				dayIntervalParts.Add(clonedDayIntervalPart);
			}
			if (IsNew)
			{
				var newEmployeeDayIntervalPart = new DayIntervalPart()
				{
					BeginTime = BeginTime,
					EndTime = EndTime,
					TransitionType = SelectedTransition,
					DayIntervalUID = DayInterval.UID,
				};
				dayIntervalParts.Add(newEmployeeDayIntervalPart);
			}
			else
			{
				var deitingDayIntervalPart = dayIntervalParts.FirstOrDefault(x => x.UID == DayIntervalPart.UID);
				if (deitingDayIntervalPart != null)
				{
					deitingDayIntervalPart.BeginTime = BeginTime;
					deitingDayIntervalPart.EndTime = EndTime;
					deitingDayIntervalPart.TransitionType = SelectedTransition;
				}
			}
			dayIntervalParts = dayIntervalParts.OrderBy(item => item.BeginTime).ToList();
			return dayIntervalParts;


		}
コード例 #3
0
		public DayIntervalPartViewModel(DayIntervalPart dayIntervalPart)
		{
			DayIntervalPart = dayIntervalPart;
		}