Example #1
0
        public AppConsumeReportDTO GetAppCountPriceAndPoint(AppConsumeReportDTO item)
        {
            try
            {
                if (item == null)
                {
                    return(null);
                }


                foreach (var listitem in AppInformationList)
                {
                    if (listitem.CategoryType == item.AppType)
                    {
                        item.AveragePoint = item.Average * listitem.PointCount;
                        break;
                    }
                }
                return(item);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Example #2
0
        public List <AppConsumeReportDTO> SW_GetUnitAppCountReports(int userID, string userName, int year)
        {
            var           result   = new List <AppConsumeReportDTO>();
            StringBuilder allQuery = new StringBuilder();
            var           query    = @"select * from  [GetUnitAppUsage](@P_USERID,@P_year) ";

            allQuery.Append(query);

            using (var connection = new SqlConnection(ConnectionStrings.ConnectionString))
            {
                connection.Open();

                using (var command = new SqlCommand(allQuery.ToString(), connection))
                {
                    SqlParameter puserID = new SqlParameter("@P_USERID", SqlDbType.Int);
                    puserID.Value = userID;
                    command.Parameters.Add(puserID);
                    SqlParameter pyear = new SqlParameter("@P_year", SqlDbType.Int);
                    pyear.Value = year;
                    command.Parameters.Add(pyear);
                    var reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        AppConsumeReportDTO appConsumeReportDTO = new AppConsumeReportDTO()
                        {
                            INOUT_EVType = reader.GetInt32OrDefaultValue(0),
                            AppType      = reader.GetInt32OrDefaultValue(1),
                            AppTypeDesc  = reader.GetStringOrEmpty(2),
                            AppName      = reader.GetStringOrEmpty(3),
                            Year         = reader.GetInt32OrDefaultValue(4),
                            January      = reader.GetDecimalOrDefaultValue2(5),
                            February     = reader.GetDecimalOrDefaultValue2(6),
                            March        = reader.GetDecimalOrDefaultValue2(7),
                            April        = reader.GetDecimalOrDefaultValue2(8),
                            May          = reader.GetDecimalOrDefaultValue2(9),
                            June         = reader.GetDecimalOrDefaultValue2(10),
                            July         = reader.GetDecimalOrDefaultValue2(11),
                            August       = reader.GetDecimalOrDefaultValue2(12),
                            September    = reader.GetDecimalOrDefaultValue2(13),
                            October      = reader.GetDecimalOrDefaultValue2(14),
                            November     = reader.GetDecimalOrDefaultValue2(15),
                            December     = reader.GetDecimalOrDefaultValue2(16),
                        };


                        appConsumeReportDTO.Average = GetAverage(appConsumeReportDTO);
                        appConsumeReportDTO         = GetAppConsumePriceAndPoint(appConsumeReportDTO);

                        result.Add(appConsumeReportDTO);
                    }
                }
                connection.Close();
            }

            return(result);
        }
Example #3
0
        public decimal GetAverage(AppConsumeReportDTO item)
        {
            int     k            = 0;
            decimal averageTotal = 0;

            if (item.January.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.January;
            }
            if (item.February.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.February;
            }
            if (item.March.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.March;
            }
            if (item.April.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.April;
            }
            if (item.May.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.May;
            }

            if (item.June.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.June;
            }
            if (item.July.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.July;
            }
            if (item.August.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.August;
            }
            if (item.September.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.September;
            }
            if (item.October.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.October;
            }
            if (item.November.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.November;
            }
            if (item.December.HasValue)
            {
                k++;
                averageTotal = averageTotal + (int)item.December;
            }

            decimal average = averageTotal / (k == 0 ? 1 : k);

            return(average);
        }