Пример #1
0
        /// <summary>
        /// Gets the type of the finding summary.
        /// </summary>
        /// <param name="findingSummaryType">Type of the finding summary.</param>
        /// <param name="findingSummary">The finding summary.</param>
        /// <returns></returns>
        public List <FindingSummaryDetail> GetFindingSummaryType(string findingSummaryType, FindingSummary findingSummary)
        {
            switch (findingSummaryType.ToUpper())
            {
            case DataConstants.FindingSummaryInScope:
                return(findingSummary.InScopeReview);

            case DataConstants.FindingSummaryOutScope:
                return(findingSummary.OutScopeReview);

            case DataConstants.FindingSummaryRecovery:
                return(findingSummary.RecoveryReview);

            default:
                return(findingSummary.InScopeReview);
            }
        }
Пример #2
0
        /// <summary>
        /// Gets the finding summary report.
        /// </summary>
        /// <param name="viewModel">The view model.</param>
        /// <returns></returns>
        public FindingSummary GetFindingSummaryReport(SearchCriteriaViewModel viewModel)
        {
            var results = new FindingSummary();

            using (var connection = new SqlConnection(DbConnection))
            {
                using (var command = new SqlCommand("PaReportFindingSummary", connection))
                {
                    var sqlParams        = new List <SqlParameter>();
                    var paramReturnValue = new SqlParameter("@return_value", SqlDbType.Int)
                    {
                        Direction = ParameterDirection.ReturnValue
                    };

                    sqlParams.Add(paramReturnValue);

                    SqlHelper.AddVarcharPara(viewModel.OrgCode, "@OrgCode", sqlParams);
                    SqlHelper.AddVarcharPara(viewModel.ESACode, "@ESACode", sqlParams);
                    SqlHelper.AddVarcharPara(viewModel.SiteCode, "@SiteCode", sqlParams);
                    SqlHelper.AddVarcharPara(viewModel.ProjectID, "@ProjectID", sqlParams);
                    SqlHelper.AddVarcharPara(viewModel.ProjectType, "@ProjectType", sqlParams);
                    SqlHelper.AddVarcharPara(viewModel.ContractType, "@ContractType", sqlParams);
                    SqlHelper.AddDatePara(viewModel.UploadDateFrom, "@UploadDateFrom", sqlParams);
                    SqlHelper.AddDatePara(viewModel.UploadDateTo, "@UploadDateTo", sqlParams);

                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddRange(sqlParams.ToArray());
                    connection.Open();

                    SqlDataReader reader = null;

                    try
                    {
                        reader = command.ExecuteReader();

                        while (reader.HasRows)
                        {
                            while (reader.Read())
                            {
                                var findingSummaryDetail = new FindingSummaryDetail
                                {
                                    Type        = string.Format("{0}", reader["Type"]),
                                    Code        = string.Format("{0}", reader["Code"]),
                                    Description = string.Format("{0}", reader["Description"]),
                                    ReviewCount = AppHelper.ToDecimal(reader["ReviewCount"])
                                };

                                var findingSummaryType = GetFindingSummaryType(findingSummaryDetail.Type, results);
                                findingSummaryType.Add(findingSummaryDetail);
                            }

                            reader.NextResult();
                        }
                    }
                    finally
                    {
                        if (reader != null)
                        {
                            reader.Close();
                        }
                    }
                }
            }

            return(results);
        }