Esempio n. 1
0
        //Super User
        public static ReportKeyValueListResponseFloatDto GetSuperUserReportSellerOnTime(SuperUserReportSellerOnTimeRequest request)
        {
            ReportKeyValueListResponseFloatDto response = new ReportKeyValueListResponseFloatDto();

            try
            {
                if (!SuperUserServices.CheckSuperUser(request.user_id, request.auth_token, response))
                {
                    response.message = MessagesSource.GetMessage("invalid.super.user");
                    return(response);
                }

                SellerReportOnTimeRequest req = new SellerReportOnTimeRequest
                {
                    entity_id       = request.agency_id,
                    periodical_data = request.periodical_data,
                    for_role        = UserType.SuperUser
                };

                return(ReportsServices.GetSellerReportOnTime(req));
            }
            catch (Exception e)
            {
                response.MakeExceptionResponse(e);
                return(response);
            }
        }
Esempio n. 2
0
        //Reports OnTime for AgentBoss
        private static List <ReportKeyValuePairDoubleDto> GetAgentBossReportDataOnTimeWeekly(SellerReportOnTimeRequest request)
        {
            List <ReportKeyValuePairDoubleDto> resp = new List <ReportKeyValuePairDoubleDto>();

            Random random = new Random();

            for (int i = 0; i < 4; i++)
            {
                resp.Add(new ReportKeyValuePairDoubleDto()
                {
                    key   = "Week " + (i + 1),
                    value = random.NextDouble() * 100.0
                });
            }

            return(resp);
        }
Esempio n. 3
0
        //Reports On Time for AgentBoss
        private static List <ReportKeyValuePairDoubleDto> GetAgentBossReportDataOnTimeMonthly(SellerReportOnTimeRequest request)
        {
            List <ReportKeyValuePairDoubleDto> resp = new List <ReportKeyValuePairDoubleDto>();

            List <String> lastFourMonth = GetLastMonths(4);

            Random random = new Random();

            for (int i = 0; i < 4; i++)
            {
                resp.Add(new ReportKeyValuePairDoubleDto()
                {
                    key   = lastFourMonth[i],
                    value = random.NextDouble() * 100.0
                });
            }

            return(resp);
        }
Esempio n. 4
0
        public static ReportKeyValueListResponseFloatDto GetSellerReportOnTime(SellerReportOnTimeRequest request)
        {
            ReportKeyValueListResponseFloatDto resp = new ReportKeyValueListResponseFloatDto
            {
                report = new List <ReportKeyValuePairDoubleDto>()
            };

            switch (request.for_role)
            {
            case UserType.SuperUser:

                resp.code         = 1;
                resp.has_resource = 1;
                resp.httpCode     = System.Net.HttpStatusCode.OK;

                switch (request.periodical_data)
                {
                case 1:         //Month
                    resp.report.AddRange(GetSuperUserReportDataOnTimeMonthly(request));
                    break;

                case 2:         //Week
                    resp.report.AddRange(GetSuperUserReportDataOnTimeWeekly(request));
                    break;

                default:

                    resp.message      = "Wrong period. Only accept 1 for Month and 2 for Week" + request.periodical_data;
                    resp.code         = 0;
                    resp.has_resource = 0;
                    resp.httpCode     = System.Net.HttpStatusCode.BadRequest;
                    break;
                }

                break;

            case UserType.AgentBoss:

                resp.code         = 1;
                resp.has_resource = 1;
                resp.httpCode     = System.Net.HttpStatusCode.OK;

                switch (request.periodical_data)
                {
                case 1:         //Month
                    resp.report.AddRange(GetAgentBossReportDataOnTimeMonthly(request));
                    break;

                case 2:         //Week
                    resp.report.AddRange(GetAgentBossReportDataOnTimeWeekly(request));
                    break;

                default:

                    resp.message      = "Wrong period. Only accept 1 for Month and 2 for Week" + request.periodical_data;
                    resp.code         = 0;
                    resp.has_resource = 0;
                    resp.httpCode     = System.Net.HttpStatusCode.BadRequest;

                    break;
                }

                break;

            case UserType.AgentAdmin:
                resp.message      = "Wrong role " + request.for_role.ToCleanString();
                resp.code         = 0;
                resp.has_resource = 0;
                resp.httpCode     = System.Net.HttpStatusCode.BadRequest;
                break;

            case UserType.Driver:
                resp.message      = "Wrong role " + request.for_role.ToCleanString();
                resp.code         = 0;
                resp.has_resource = 0;
                resp.httpCode     = System.Net.HttpStatusCode.BadRequest;
                break;

            case UserType.Consumer:
                resp.message      = "Wrong role " + request.for_role.ToCleanString();
                resp.code         = 0;
                resp.has_resource = 0;
                resp.httpCode     = System.Net.HttpStatusCode.BadRequest;
                break;

            default:
                resp.message      = "Wrong role " + request.for_role.ToCleanString();
                resp.code         = 0;
                resp.has_resource = 0;
                resp.httpCode     = System.Net.HttpStatusCode.BadRequest;
                break;
            }

            return(resp);
        }