Пример #1
0
        private async void gccSchedule_ItemPropertyChanged(object sender, GanttChartItemPropertyChangedEventArgs e)
        {
            if (e.Item != null && e.IsDirect && e.IsFinal)
            {
                _currentExtScheduler = e.Item.Tag as DataLibrary.ExtSchedulerDTO;

                if (e.PropertyName == "IsSelected")
                {
                    if (_id > 0 && _id != _currentExtScheduler.Id)
                    {
                        if (_newStartDate != e.Item.Start.DateTime.ToString("MM/dd/yyyy") ||
                            _newEndDate != e.Item.Finish.DateTime.ToString("MM/dd/yyyy"))
                        {
                            if (updateCount < 1)
                            {
                                updateCount++;
                                await UpdateSchedule(false);
                            }
                        }
                    }
                }
                else
                {
                    if (isUpdate == false)
                    {
                        _id = _currentExtScheduler.Id;
                        _extScheduler = _currentExtScheduler;

                        _newStartDate = e.Item.Start.DateTime.ToString("MM/dd/yyyy");
                        _newEndDate = e.Item.Finish.DateTime.ToString("MM/dd/yyyy");
                    }

                    txtRequestStartDate.Text = e.Item.Start.DateTime.ToString("MM/dd/yyyy");
                    txtRequestEndDate.Text = e.Item.Finish.DateTime.ToString("MM/dd/yyyy");
                }

                LoadIWPSchedule(_currentExtScheduler, e.Item.Start.DateTime.ToString("MM/dd/yyyy"), e.Item.Finish.DateTime.ToString("MM/dd/yyyy"));
                
                if (gccSchedule.Width > 915)
                {
                    Login.MasterPage.HideUserStatus();

                    if (_currentExtScheduler != null && _currentExtScheduler.Id > 0)
                        gccSchedule.SelectedItem = gccSchedule.Items.Where(x => (x.Tag as DataLibrary.ExtSchedulerDTO).Id == _currentExtScheduler.Id).ToList()[0];
                    
                    gccSchedule.Width = 915;
                    gccSchedule.ChartWidthPercent = 80;
                    gccSchedule.GridWidthPercent = 20;
                }
                
                detailPanel.Visibility = Windows.UI.Xaml.Visibility.Visible;
                _sbDetailON.Begin();
            }

            //if (e.IsDirect && e.IsFinal && e.PropertyName != "IsSelected" && e.PropertyName != "IsExpanded")
            //{
            //    MessageDialog dialog = new MessageDialog(string.Format("{1} property has changed for {0}.", e.Item.Content, e.PropertyName));
            //    await dialog.ShowAsync();
            //}
        }
Пример #2
0
        public async Task<DataLibrary.ExtSchedulerDTO> UpdateFiwpScheduler(DataLibrary.ExtSchedulerDTO extScheduler, string startDate, string finishDate)
        {
            DataLibrary.ExtSchedulerDTO fiwp = new DataLibrary.ExtSchedulerDTO();

            try
            {
                fiwp.Id = extScheduler.Id;
                fiwp.Name = extScheduler.Name;
                fiwp.FavoriteColor = extScheduler.FavoriteColor;
                fiwp.ResourceId = extScheduler.ResourceId;
                fiwp.Title = extScheduler.Title;
                fiwp.ResourceName = extScheduler.ResourceName;
                fiwp.StartDate = Convert.ToDateTime(startDate + " 07:00:00 AM");
                fiwp.EndDate = Convert.ToDateTime(finishDate + " 05:00:00 PM");
                fiwp.TotalMH = extScheduler.TotalMH;
                fiwp.CrewMembers = extScheduler.CrewMembers;
                fiwp.RowStyle = extScheduler.RowStyle;
                fiwp.Color = extScheduler.Color;
                fiwp.ReferenceID = extScheduler.ReferenceID;
                fiwp.IsProgressed = extScheduler.IsProgressed;

                Dictionary<string, dynamic> dParams = new Dictionary<string, dynamic>();
                dParams.Add("extscheduler", fiwp);
                dParams.Add("userName", string.Empty);
                dParams.Add("password", string.Empty);
                var retValue = await JsonHelper.PutDataAsync<DataLibrary.ExtSchedulerDTO>("JsonUpdateFiwpScheduler", dParams, JsonHelper.ProjectService);

                if (string.IsNullOrEmpty(retValue.ExceptionMessage))
                {
                    extScheduler.Id = retValue.Id;
                    extScheduler.Name = retValue.Name;
                    extScheduler.FavoriteColor = retValue.FavoriteColor;
                    extScheduler.ResourceId = retValue.ResourceId;
                    extScheduler.Title = retValue.Title;
                    extScheduler.ResourceName = retValue.ResourceName;
                    extScheduler.StartDate = retValue.StartDate;
                    extScheduler.EndDate = retValue.EndDate;
                    extScheduler.TotalMH = retValue.TotalMH;
                    extScheduler.CrewMembers = retValue.CrewMembers;
                    extScheduler.RowStyle = retValue.RowStyle;
                    extScheduler.Color = retValue.Color;
                    extScheduler.ReferenceID = retValue.ReferenceID;
                    extScheduler.IsProgressed = retValue.IsProgressed;
                }
                extScheduler.ExceptionMessage = retValue.ExceptionMessage; 
                return extScheduler;
            }
            catch
            {
                extScheduler.ExceptionMessage = "There was an error at update";
                return extScheduler;
            }
        }