Esempio n. 1
0
        private void cmdOk_Click(object sender, System.EventArgs e)
        {
            try
            {
                long mainTaskId = 0;

                if (_IsLoading.Value)
                {
                    return;
                }
                using (var locker = new BoolLocker(ref _IsLoading))
                {
                    using (var releaseService = new Service.Release.Front.ReleaseService(_Group.GetEnvironment().GetSQLExtendConnectionString()))
                    {
                        if (!ControlValidator())
                        {
                            MessageBox.Show("Données invalides");
                            return;
                        }

                        if (_StatusEnum == StatusEnum.New)
                        {
                            var newMaintask = FillFromControl();
                            mainTaskId = releaseService.AddMainTask(newMaintask);
                        }
                        else if (_StatusEnum == StatusEnum.Modified)
                        {
                            var theMainTask = FillFromControl();
                            mainTaskId = theMainTask.MainTaskId;
                            releaseService.UpdateMainTask(theMainTask);
                        }
                        else
                        {
                            throw new NotSupportedException(_StatusEnum.ToStringWithEnumName());
                        }

                        DialogResult = System.Windows.Forms.DialogResult.OK;
                    }

                    //Applications des droits sur dev
                    Tools.Tools.ReleaseProjectsRights(_Group);
                }
                EditionEventArgs.StatusEnum status;
                if (_StatusEnum == StatusEnum.New)
                {
                    status = EditionEventArgs.StatusEnum.New;
                }
                else if (_StatusEnum == StatusEnum.Modified)
                {
                    status = EditionEventArgs.StatusEnum.Update;
                }
                else
                {
                    throw new NotSupportedException(_StatusEnum.ToStringWithEnumName());
                }

                Close(this, new EditionEventArgs(mainTaskId, status));
            }
            catch (Exception ex)
            {
                ex.ShowInMessageBox();
            }
        }