Beispiel #1
0
        public static ABossSellerRptResponse GetSellerReportByAgentBoss(ABossSellerRptRequest request)
        {
            var productIdList = request.products.Select(x => x.product_id).ToList();
            ABossSellerRptResponse response = new ABossSellerRptResponse();

            try
            {
                if (!AgentBossServices.CheckAgentBoss(request.user_id, request.auth_token, response))
                {
                    return(response);
                }
                response.sales_details = new List <ABossSellerRptDto>();
                using (OrderDao dao = new OrderDao())
                {
                    int periodRange = Common.GetAppSetting <int>(APPSETTING_REPORTPERIOD_RANGE, 6);

                    if (productIdList != null && productIdList.Count > 0)
                    {
                        string productIds = string.Join(",", productIdList.Select(n => n.ToString()).ToArray());

                        var sellerRpt = dao.GetSellerReportByAgentBoss(request.user_id, request.total_type, request.periodical_data, periodRange, productIds);
                        if (sellerRpt != null && sellerRpt.Count > 0)
                        {
                            response.sales_details = sellerRpt.Select(r => new ABossSellerRptDto
                            {
                                key   = r.Period,
                                value = r.Value.ToDecimal()
                            }).ToList();
                        }
                    }
                    response.code         = 0;
                    response.has_resource = 1;
                    response.message      = MessagesSource.GetMessage("boss.sales.report");
                    return(response);
                }
            }
            catch (Exception ex)
            {
                response.MakeExceptionResponse(ex);
                return(response);
            }
        }
        public NegotiatedContentResult <ABossSellerRptResponse> PostGetSellerReport([FromBody] ABossSellerRptRequest request)
        {
            ABossSellerRptResponse resp = ReportsServices.GetSellerReportByAgentBoss(request);

            return(Content(HttpStatusCode.OK, resp));
        }