Example #1
0
        public static Pagination QueryParkVisitorReport(VisitorReportCondition paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination      = new Pagination();
            IStatistics factory          = StatisticsFactory.GetFactory();
            int         recordTotalCount = 0;

            _pagination.VisitorList = factory.QueryParkVisitorReport(paras, PageSize, PageIndex, out recordTotalCount);
            _pagination.Total       = recordTotalCount;
            return(_pagination);
        }
Example #2
0
        /// <summary>
        /// 访客信息
        /// </summary>
        /// <param name="parkingid"></param>
        /// <param name="cardtype"></param>
        /// <param name="platenumber"></param>
        /// <param name="addr"></param>
        /// <param name="mobile"></param>
        /// <param name="pageindex"></param>
        /// <param name="pagesize"></param>
        public void Params_ParkVisitorInfo()
        {
            int page = string.IsNullOrEmpty(Request.Params["page"]) ? 0 : int.Parse(Request.Params["page"]);
            int rows = string.IsNullOrEmpty(Request.Params["rows"]) ? 0 : int.Parse(Request.Params["rows"]);
            VisitorReportCondition paras = new VisitorReportCondition();

            if (string.IsNullOrWhiteSpace(Request.Params["ParkingId"]) || Request.Params["ParkingId"].ToString() == "-1")
            {
                List <BaseParkinfo> parkings = ParkingServices.QueryParkingByVillageIds(base.GetLoginUserVillages.Select(u => u.VID).ToList());
                if (parkings.Count > 0)
                {
                    paras.ParkingIds = parkings.Select(p => p.PKID).ToList();
                }
            }
            else
            {
                paras.ParkingIds = new List <string>()
                {
                    Request.Params["ParkingId"].ToString()
                };
            }
            paras.PlateNumber  = Request.Params["PlateNumber"].ToString();
            paras.MoblieOrName = Request.Params["MoblieOrName"].ToString();
            paras.BeginTime    = DateTime.Parse(Request.Params["BeginTime"].ToString());
            paras.EndTime      = DateTime.Parse(Request.Params["EndTime"].ToString());
            if (!string.IsNullOrWhiteSpace(Request.Params["VisitorSource"]) && Request.Params["VisitorSource"].ToString() != "-1")
            {
                paras.VisitorSource = int.Parse(Request.Params["VisitorSource"].ToString());
            }

            if (!string.IsNullOrWhiteSpace(Request.Params["VisitorState"]) && Request.Params["VisitorState"].ToString() != "-1")
            {
                paras.VisitorState = int.Parse(Request.Params["VisitorState"].ToString());
            }
            System.Web.HttpContext.Current.Session["VisitorReportCondition"] = paras;
            System.Web.HttpContext.Current.Session["QueryParams"]            = new InParams
            {
                PageIndex  = page,
                PageSize   = rows,
                ReportType = ReportType.ParkVisitorInfo
            };
        }
Example #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            InParams            paras        = (InParams)System.Web.HttpContext.Current.Session["QueryParams"];
            List <ParkIORecord> iorecordlist = new List <ParkIORecord> ();

            if (paras != null)
            {
                switch (paras.ReportType)
                {
                //在场车辆
                case ReportType.Presence:
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_Presence(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            iorecordlist = v.IORecordsList;
                        }
                    }
                    else
                    {
                        iorecordlist = StatisticsServices.Search_Presence(paras);
                    }
                    EmptyTransfer(iorecordlist);
                    rdocument.Load(Server.MapPath(RptPresence));
                    rdocument.SetDataSource(iorecordlist);
                    break;

                //在场无牌车辆
                case ReportType.NoPlateNumber:
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_NoPlateNumber(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            iorecordlist = v.IORecordsList;
                        }
                    }
                    else
                    {
                        iorecordlist = StatisticsServices.Search_NoPlateNumber(paras);
                    }
                    EmptyTransfer(iorecordlist);
                    rdocument.Load(Server.MapPath(RptNoPlateNumber));
                    rdocument.SetDataSource(iorecordlist);
                    break;

                //进出记录
                case ReportType.InOut:
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_InOutRecords(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            iorecordlist = v.IORecordsList;
                        }
                    }
                    else
                    {
                        iorecordlist = StatisticsServices.Search_InOutRecords(paras);
                    }
                    EmptyTransfer(iorecordlist);
                    rdocument.Load(Server.MapPath(RptInOut));
                    rdocument.SetDataSource(iorecordlist);
                    break;

                //异常放行
                case ReportType.ExceptionRelease:
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_ExceptionRelease(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            iorecordlist = v.IORecordsList;
                        }
                    }
                    else
                    {
                        iorecordlist = StatisticsServices.Search_ExceptionRelease(paras);
                    }
                    EmptyTransfer(iorecordlist);
                    rdocument.Load(Server.MapPath(RptExceptionRelease));
                    rdocument.SetDataSource(iorecordlist);
                    break;

                //通道事件
                case ReportType.GateEvent:
                    List <ParkEvent> parkeventlist = new List <ParkEvent> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_GateEvents(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            parkeventlist = v.GateEventList;
                        }
                    }
                    else
                    {
                        parkeventlist = StatisticsServices.Search_GateEvents(paras);
                    }
                    rdocument.Load(Server.MapPath(RptGateEvent));
                    rdocument.SetDataSource(EmptyTransferEvent(parkeventlist));
                    break;

                //当班统计
                case ReportType.OnDuty:
                    List <Statistics_ChangeShift> changeshiftlist = new System.Collections.Generic.List <Statistics_ChangeShift> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_OnDuty(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            changeshiftlist = v.OnDutyList;
                        }
                    }
                    else
                    {
                        changeshiftlist = StatisticsServices.Search_OnDuty(paras);
                    }
                    rdocument.Load(Server.MapPath(RptOnDuty));
                    rdocument.SetDataSource(changeshiftlist);
                    break;

                //订单明细
                case ReportType.Order:
                    List <ParkOrder> parkorderlist = new List <ParkOrder> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_Orders(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            parkorderlist = v.OrderList;
                        }
                    }
                    else
                    {
                        parkorderlist = StatisticsServices.Search_Orders(paras);
                    }
                    rdocument.Load(Server.MapPath(RptOrder));
                    rdocument.SetDataSource(EmptyTransferOrder(parkorderlist));
                    break;

                //月卡续期
                case ReportType.CardExtension:
                    List <ParkOrder> cardextensionorderlist = new List <ParkOrder> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_CardExtension(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            cardextensionorderlist = v.OrderList;
                        }
                    }
                    else
                    {
                        cardextensionorderlist = StatisticsServices.Search_CardExtension(paras);
                    }
                    rdocument.Load(Server.MapPath(RptCardExtension));
                    rdocument.SetDataSource(EmptyTransferOrder(cardextensionorderlist));
                    break;

                //临停缴费
                case ReportType.TempPay:
                    List <ParkOrder> temppayorderlist = new List <ParkOrder> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_TempPays(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            temppayorderlist = v.OrderList;
                        }
                    }
                    else
                    {
                        temppayorderlist = StatisticsServices.Search_TempPays(paras);
                    }
                    rdocument.Load(Server.MapPath(RptTempPay));
                    rdocument.SetDataSource(EmptyTransferOrder(temppayorderlist));
                    break;

                //商家优免
                case ReportType.Coupon:
                    List <ParkCarDerate> parkcarderatelist = new List <ParkCarDerate> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_CarDerates(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            parkcarderatelist = v.CarDerateList;
                        }
                    }
                    else
                    {
                        parkcarderatelist = StatisticsServices.Search_CarDerates(paras);
                    }
                    EmptyTransferCarDerate(parkcarderatelist);
                    rdocument.Load(Server.MapPath(RptCoupon));
                    rdocument.SetDataSource(parkcarderatelist);
                    break;

                //日报表
                case ReportType.DailyFee:
                    List <Statistics_Gather> dailystatisticslist = new List <Statistics_Gather> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_DailyStatistics(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            dailystatisticslist = v.StatisticsGatherList;
                        }
                    }
                    else
                    {
                        dailystatisticslist = StatisticsServices.Search_DailyStatistics(paras);
                    }
                    rdocument.Load(Server.MapPath(RptStatisticsDaily));
                    rdocument.SetDataSource(dailystatisticslist);
                    break;

                //月报表
                case ReportType.MonthFee:
                    List <Statistics_Gather> monthstatisticslist = new List <Statistics_Gather> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_MonthStatistics(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            monthstatisticslist = v.StatisticsGatherList;
                        }
                    }
                    else
                    {
                        monthstatisticslist = StatisticsServices.Search_MonthStatistics(paras);
                    }
                    rdocument.Load(Server.MapPath(RptStatisticsMonth));
                    rdocument.SetDataSource(monthstatisticslist);
                    break;

                //日汇总报表
                case ReportType.DailyGather:
                    List <Statistics_Gather> dailystatisticsgatherlist = new List <Statistics_Gather> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_DailyStatistics(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            dailystatisticsgatherlist = v.StatisticsGatherList;
                        }
                    }
                    else
                    {
                        dailystatisticsgatherlist = StatisticsServices.Search_DailyStatistics(paras);
                    }
                    rdocument.Load(Server.MapPath(RptStatisticsDailyGather));
                    rdocument.SetDataSource(dailystatisticsgatherlist);
                    break;

                //月汇总报表
                case ReportType.MonthGather:
                    List <Statistics_Gather> monthstatisticsgatherlist = new List <Statistics_Gather> ();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_MonthStatistics(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            monthstatisticsgatherlist = v.StatisticsGatherList;
                        }
                    }
                    else
                    {
                        monthstatisticsgatherlist = StatisticsServices.Search_MonthStatistics(paras);
                    }
                    rdocument.Load(Server.MapPath(RptStatisticsMonthGather));
                    rdocument.SetDataSource(monthstatisticsgatherlist);
                    break;

                //月卡信息
                case ReportType.MonthCardInfo:
                    List <MonthCardInfoModel> monthcardinfolist = new List <MonthCardInfoModel>();
                    if (paras.PageIndex > 0)
                    {
                        var v = StatisticsServices.Search_MonthCardInfo(paras, paras.PageSize, paras.PageIndex);
                        if (v != null)
                        {
                            monthcardinfolist = v.MonthCardList;
                        }
                    }
                    else
                    {
                        monthcardinfolist = StatisticsServices.Search_MonthCardInfo(paras);
                    }
                    EmptyTransfer(monthcardinfolist);
                    rdocument.Load(Server.MapPath(RptMonthCardInfo));
                    rdocument.SetDataSource(monthcardinfolist);
                    break;

                //访客信息
                case ReportType.ParkVisitorInfo:
                    List <ParkVisitorReportModel> models    = new List <ParkVisitorReportModel>();
                    VisitorReportCondition        condition = (VisitorReportCondition)System.Web.HttpContext.Current.Session["VisitorReportCondition"];
                    int        pageIndex = paras.PageIndex < 0 ? 1 : paras.PageIndex;
                    int        pageSize  = paras.PageIndex < 0 ? int.MaxValue : paras.PageSize;
                    Pagination result    = StatisticsServices.QueryParkVisitorReport(condition, pageSize, pageIndex);
                    if (result != null)
                    {
                        models = result.VisitorList;
                        foreach (var item in models)
                        {
                            if (string.IsNullOrWhiteSpace(item.VisitorName))
                            {
                                item.VisitorName = "-";
                            }
                        }
                    }

                    rdocument.Load(Server.MapPath(RptParkVisitorInfo));
                    rdocument.SetDataSource(models);
                    break;

                default:
                    break;
                }
            }
            this.StatisticsReportViewer1.ReportSource = rdocument;
            this.StatisticsReportViewer1.DataBind();
        }