Exemple #1
0
        public CitiesStatistic GetCitiesStat()
        {
            CitiesStatistic result     = new CitiesStatistic(db);
            List <City>     someCities = db.Cities.ToList();

            result.GraphData = "[";

            CityOperations cityOp = new CityOperations(db);

            foreach (City item in someCities)
            {
                CityStatistic someCityStat = cityOp.GetCityStatistic(item);

                result.TotalServicesProvided     += someCityStat.ServicesProvided;
                result.TotalSuccessServicesCount += someCityStat.SuccessServicesProvided;
                result.TotalFailedServicesCount  += someCityStat.FailedServicesProvided;

                result.GraphData += "{ 'label': '" + item.Name + "', 'value': '" + someCityStat.ServicesProvided + "' },";

                result.CitiesStats.Add(someCityStat);
            }

            result.GraphData           = result.GraphData.TrimEnd(',') + "]";
            result.TreeMapData         = GetTreeMapData(result);
            result.DetailedTreeMapData = GetDetailedTreeMapData(result);
            return(result);
        }
Exemple #2
0
        private string GetTreeMapData(CitiesStatistic someSitiesStat)
        {
            // full value of data parameter. Should be quoted in view
            string result = "["; //  "data": [

            result += "{            \"label\": \"Україна\",       \"fillcolor\": \"8c8c8c\",  \"value\": \"" + someSitiesStat.TotalServicesProvided + "\",      \"data\":       \r\n\t[ ";


            foreach (CityStatistic city in someSitiesStat.CitiesStats)
            {
                result += " \r\n\t{\r\n\t\t\"label\": \"" + city.City.Name + "\",    \"fillcolor\": \"8c8c8c\",  \"value\": \"" + city.ServicesProvided + "\", \"data\": \r\n\t\t[\r\n";

                OrganizationOperations orgOp = new OrganizationOperations(db);

                foreach (Organization organization in city.City.Organizations)
                {
                    OrganizationStatistic orgStat = orgOp.GetOrganizationStatistic(organization.Id, false);
                    result += "\r\n\t\t\t{\r\n \t\t\t\t\"label\": \"" + organization.Name + "\",  \"value\": \"" + orgStat.TotalServices + "\",  \"sValue\": \"" + orgStat.SummaryIndex.ToString("0.#") + "\" ";
                    result += "\r\n\t\t\t}\r\n\t\t\t ,";
                }
                result  = result.TrimEnd(',');
                result += "\r\n\t\t]\r\n \r\n\t}\r\n\t ,"; // data of city
            }
            result  = result.TrimEnd(',');
            result += "\r\n\t]}\r\n]\r\n";

            result += ",\r\n \"colorrange\": {        \"mapbypercent\": \"1\",        \"gradient\": \"1\",        \"minvalue\": \"0\",        \"code\": ";

            result += "   \"7FFF00\",        \"startlabel\": \"Позитивно\",      \"endlabel\": \"Негативно\",        \"color\": [            {";
            result += "\"code\": \"EE0000\",                \"maxvalue\": \"100\",                \"label\": \"Static\"            },            {                \"code\": \"7FFF00\",                \"maxvalue\": \"100\",                \"label\": \"AVERAGE\"            }        ]    }  ";


            return(result);
        }
Exemple #3
0
        public string GetSummaryCitiesStat(CitiesStatistic someCitiesStat)
        {
            string result = "[ {  'category': [";

            foreach (CityStatistic item in someCitiesStat.CitiesStats)
            {
                result += "{ 'label': '" + item.City.Name + "'},";
            }
            result  = result.TrimEnd(',') + "] } ],";
            result += " 'dataset': [ ";

            #region Total

            /*
             * result += "{ 'seriesname': 'разом' ,";
             * result += " 'data': [ ";
             *
             * foreach (CitiesStatistic.OneCityStat item in someCitiesStat.CitiesStats)
             * {
             *  result += "{ 'value': '" + item.ServicesProvidedCount + "'}, ";
             * }
             * result += " ] },";
             */
            #endregion
            #region Successful
            result += "{ 'seriesname': 'успішно' ,";
            result += " 'data': [ ";

            foreach (CityStatistic item in someCitiesStat.CitiesStats)
            {
                result += "{ 'value': '" + item.SuccessServicesProvided + "'}, ";
            }
            result += " ] },";
            #endregion
            #region Failed
            result += "{ 'seriesname': 'неуспішно' ,";
            result += " 'data': [ ";

            foreach (CityStatistic item in someCitiesStat.CitiesStats)
            {
                result += "{ 'value': '" + item.FailedServicesProvided + "'}, ";
            }
            result += " ] } ]";
            #endregion
            return(result);
        }
Exemple #4
0
        private string GetDetailedTreeMapData(CitiesStatistic someSitiesStat)
        {
            // full value of data parameter. Should be quoted in view
            string result = "[";             //  "data": [

            result += "{            \"label\": \"Україна\",       \"fillcolor\": \"8c8c8c\",  \"value\": \"" + someSitiesStat.TotalServicesProvided + "\",      \"data\":       \r\n\t[ ";


            foreach (CityStatistic city in someSitiesStat.CitiesStats)
            {
                result += " \r\n\t{\r\n\t\t\"label\": \"" + city.City.Name + "\",    \"fillcolor\": \"8c8c8c\",  \"value\": \"" + city.ServicesProvided + "\", \"data\": \r\n\t\t[\r\n";


                IEnumerable <Worker> someWorkers = db.Workers.Where(m => m.WorkPlace.Division.Organization.CityId == city.City.Id).OrderByDescending(m => m.ServicesToClients.Count());

                foreach (Worker worker in someWorkers)
                {
                    WorkerOperations workerOp       = new WorkerOperations(db);
                    WorkerStatistic  someWorkerStat = workerOp.FillWorkerStatistic(worker);

                    result += "\r\n\t\t\t{\r\n \t\t\t\t\"label\": \"" + worker.AspNetUser.Name + "\",  \"value\": \"" + worker.ServicesToClients.Where(m => m.ValueSet.HasValue).Count() + "\",  \"sValue\": \"" + someWorkerStat.SummaryIndex.ToString("0.#") + "\" ";
                    result += "\r\n\t\t\t}\r\n\t\t\t ,";
                }

                /*
                 * result += "\r\n\t\t\t{\r\n \t\t\t\t\"label\": \"" + organization.Name + "\",  \"value\": \"" + orgStat.TotalServices + "\",  \"sValue\": \"" + orgStat.SummaryIndex.ToString("0.#") + "\" ";
                 * result += "\r\n\t\t\t}\r\n\t\t\t ,";
                 */


                result  = result.TrimEnd(',');
                result += "\r\n\t\t]\r\n \r\n\t}\r\n\t ,";                 // data of city
            }
            result  = result.TrimEnd(',');
            result += "\r\n\t]}\r\n]\r\n";

            result += ",\r\n \"colorrange\": {        \"mapbypercent\": \"1\",        \"gradient\": \"1\",        \"minvalue\": \"0\",        \"code\": ";

            result += "   \"7FFF00\",        \"startlabel\": \"Позитивно\",      \"endlabel\": \"Негативно\",        \"color\": [            {";
            result += "\"code\": \"EE0000\",                \"maxvalue\": \"100\",                \"label\": \"Static\"            },            {                \"code\": \"7FFF00\",                \"maxvalue\": \"100\",                \"label\": \"AVERAGE\"            }        ]    }  ";


            return(result);
        }