コード例 #1
0
        private void BtnDelegate_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.IsValid)
                {
                    var savedDelegationsOfNewTasks   = false;
                    var savedDelectedDelegationTasks = false;
                    //if (this.cbDelegationNewTask.Checked)
                    var isDelegationOfNewTaskChecked = true;
                    if (isDelegationOfNewTaskChecked)
                    {
                        List <DelegationOfNewTask> delegationOfNewTaskEntities = new List <DelegationOfNewTask>();

                        JavaScriptSerializer seriallizer = new JavaScriptSerializer();
                        var selectedModules = seriallizer.Deserialize <List <string> >(this.hdSelectedModules.Value);
                        // Select all modules
                        if (selectedModules != null && selectedModules.Count > 0)
                        {
                            foreach (var listUrl in selectedModules)
                            {
                                if (!string.IsNullOrEmpty(listUrl))
                                {
                                    DelegationOfNewTask delegationOfNewTask = InitDelegationOfNewTask(listUrl);
                                    var isExisted = DelegationManager.IsDelegationOfNewTaskExisted(delegationOfNewTask, this.SiteUrl);
                                    if (!isExisted)
                                    {
                                        delegationOfNewTaskEntities.Add(delegationOfNewTask);
                                    }
                                }
                            }
                        }

                        if (delegationOfNewTaskEntities.Count > 0)
                        {
                            savedDelegationsOfNewTasks = this.delegationsOfNewTaskDAL.SaveItems(delegationOfNewTaskEntities);
                        }
                        else
                        {
                            savedDelegationsOfNewTasks = true;
                        }
                    }

                    if (this.selectedDelegationTasks != null && this.selectedDelegationTasks.Count > 0)
                    {
                        savedDelectedDelegationTasks = this.delegationsDAL.SaveItems(selectedDelegationTasks);
                    }
                    else
                    {
                        savedDelectedDelegationTasks = true;
                    }

                    if (savedDelegationsOfNewTasks && savedDelectedDelegationTasks)
                    {
                        SendEmail();
                        CloseForm(sender);
                    }
                    else
                    {
                        // TODO: Continue show error message.
                    }
                }
            }
            catch (Exception ex)
            {
                this.hdErrorMessage.Value = ex.Message;
                ULSLogging.LogError(ex);
            }
        }