Ejemplo n.º 1
0
        private async void btnCheck_Click(object sender, EventArgs e)
        {
            //
            this.btnCheck.Enabled = false;

            string strSFID = this.txtSFID.Text.Trim();

            var GetCaseInfoByID = SalesforceProxy.GetCaseInfoByID(strSFID);
            var caseInfo        = await GetCaseInfoByID;

            AccelaCase[] accelaCaseList = caseInfo.ToArray();
            if (accelaCaseList.Length == 0)
            {
                MessageBox.Show("No case is found.");
            }
            else
            {
                this.txtCustomerInfo.Text        = accelaCaseList[0].Customer != null ? accelaCaseList[0].Customer.Name : (accelaCaseList[0].Account != null ? accelaCaseList[0].Account.Name : "");
                this.txtVersion.Text             = accelaCaseList[0].CurrentVersion;
                this.chbAccelaHostedFlag.Checked = (accelaCaseList[0].Hosted != null && accelaCaseList[0].Hosted.IndexOf("Accela") >= 0 ? true : false);
                this.txtCaseOwner.Text           = accelaCaseList[0].CreatedBy.Name;
                this.txtIssueSubject.Text        = accelaCaseList[0].Subject;
                this.txtProduct.Text             = accelaCaseList[0].Product;
                this.txtPriority.Text            = "";
                if (accelaCaseList[0].Priority.IndexOf("Critical") >= 0)
                {
                    this.txtPriority.Text = "Critical";
                }

                if (accelaCaseList[0].Priority.IndexOf("High") >= 0)
                {
                    this.txtPriority.Text = "High";
                }

                if (accelaCaseList[0].Priority.IndexOf("Medium") >= 0)
                {
                    this.txtPriority.Text = "Medium";
                }

                if (accelaCaseList[0].Priority.IndexOf("Low") >= 0)
                {
                    this.txtPriority.Text = "Low";
                }
            }

            var GetIssueByID = JiraProxy.GetIssueByID("ENGSUPP", "", strSFID);
            var issueInfo    = await GetIssueByID;

            if (issueInfo == null)
            {
                return;
            }

            this.txtEngsuppID.Text = issueInfo.key;
            this.txtReviewer.Text  = issueInfo.fields.assignee.name;

            bool hasOldDB = issueInfo.fields.labels.IndexOf("DB") >= 0;

            if (hasOldDB && AccelaDBMapper.ContainsKey(this.txtCustomerInfo.Text))
            {
                AcccelaDBModel acccelaDBInfo = AccelaDBMapper[this.txtCustomerInfo.Text];
                this.txtDBType.Text       = acccelaDBInfo.DBType;
                this.txtDBServerIP.Text   = acccelaDBInfo.IP;
                this.txtDBServerPort.Text = acccelaDBInfo.Port;
                this.txtDBInstance.Text   = acccelaDBInfo.DBName;
                this.txtDBVersion.Text    = acccelaDBInfo.Version;
                this.txtDBUser.Text       = acccelaDBInfo.User;
                this.txtDBPassword.Text   = acccelaDBInfo.Password;
                this.txtRelatedCase.Text  = acccelaDBInfo.SFCase;
            }

            var GetDBTaskBySFID = JiraProxy.GetDatabaseTaskByCaseID("DATABASE", "Task", strSFID);
            var taskInfo        = await GetDBTaskBySFID;

            if (taskInfo != null)
            {
                this.txtDatabaseID.Text = taskInfo.key;
            }

            this.btnRequest.Enabled = true;
            this.btnCheck.Enabled   = true;
        }