Example #1
0
        public double GetCompanyOrder()
        {
            var SP1 = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.SP1);
            var SP2 = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.SP2);
            var SP3 = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.SP3);
            var G1  = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.G1);
            var G2  = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.G2);
            var G3  = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.G3);
            var G4  = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.G4);
            var G5  = Advertisments.Count(_ => _.Value.GetQResultTypeExtended() == QResultTypeExtended.G5);

            var advCount          = SP1 + SP2 + SP3 + G1 + G2 + G3 + G4 + G5;
            var notCoveredQueries = _totalQueriesCount - advCount;
            var advRaiting        =
                SP1 * 1.6 +
                SP2 * 1.5 +
                SP3 * 1.4 +
                G1 * 0.7 +
                G2 * 0.6 +
                G3 * 0.5 +
                G4 * 0.4 +
                G5 * 0.3 +
                notCoveredQueries * 0.3;

            /*
             * 0,3	Пустых
             * 1,6	СР1
             * 1,5	СР2
             * 1,4	СР3
             * 0,7	Г1
             * 0,6	Г2
             * 0,5	Г3
             * 0,4	Г4
             * 0,3	Г5*/
            return(advRaiting);
        }