private void EmployeeScheduler_AppointmentResize(object sender, AppointmentItemResizeEventArgs e)
 {
     e.Allow = (bool)e.ViewModel.CustomFields["IsBudgetLine"] && e.HitResource.Id.ToString() == "1";
     if (e.Allow)
     {
         AppointmentDragResizeViewModel viewModel = e.ViewModel;
         _currentCorasauBaseEntity = CreateSourceObject(viewModel.Appointment);
     }
 }
Exemple #2
0
        public void OnAppointmentDrop(DevExpress.Xpf.Scheduling.AppointmentItemDragDropEventArgs e)
        {
            AppointmentDragResizeViewModel draggedViewModel = e.ViewModels.First() as AppointmentDragResizeViewModel;

            if (draggedViewModel.CustomFields["FixedTime"] != null)
            {
                if ((bool)draggedViewModel.CustomFields["FixedTime"] &&
                    (draggedViewModel.Start != draggedViewModel.Appointment.Start))
                {
                    e.Allow = false;
                }
            }
        }
 private void EmployeeScheduler_AppointmentDrop(object sender, AppointmentItemDragDropEventArgs e)
 {
     e.Allow = (bool)e.ViewModels[0].CustomFields["IsBudgetLine"] && e.HitResource.Id.ToString() == "1";
     if (e.Allow)
     {
         AppointmentDragResizeViewModel viewModel = e.ViewModels[0];
         viewModel.Appointment.ResourceId = "1";
         var appointment = viewModel.Appointment.SourceObject as EmployeeSchedulerLocal;
         if (viewModel != null && appointment != null)
         {
             _currentCorasauBaseEntity = null;
             appointment.IsBudgetLine  = true;
             appointment.TaskType      = "1";
             appointment.Date          = viewModel.Start;
             appointment.FromTime      = viewModel.Start;
             appointment.NotifyPropertyChanged("FromTime");
             appointment.ToTime = viewModel.End;
             appointment.NotifyPropertyChanged("ToTime");
         }
     }
     else
     {
         AppointmentDragResizeViewModel viewModel = e.ViewModels[0];
         viewModel.Appointment.ResourceId = e.HitResource.Id.ToString();
         var appointment = viewModel.Appointment.SourceObject as EmployeeSchedulerLocal;
         var apt         = new EmployeeSchedulerLocal();
         if (viewModel != null && appointment != null)
         {
             _currentCorasauBaseEntity = null;
             apt.IsBudgetLine          = false;
             apt.TaskType = "2";
             apt.Date     = viewModel.Start;
             apt.FromTime = viewModel.Start;
             apt.NotifyPropertyChanged("FromTime");
             apt.ToTime = viewModel.End;
             apt.NotifyPropertyChanged("ToTime");
         }
     }
 }