public string GetInvoiceList(DateTime stDate, DateTime edDate, int pageIndex = 1, int pageSize = 15, int invoiceStatus = -1, string accId = "")
        {
            string returnJson = "";
            string strWhere   = "";

            if (invoiceStatus != -1)
            {
                strWhere += " invoiceStatus=" + invoiceStatus;
            }

            if (accId != "")
            {
                int accid = 0;
                if (int.TryParse(accId, out accid))
                {
                    strWhere += (strWhere.Length > 0 ? " and " : "") + " o.accId=" + accid.ToString();
                }
            }

            if (stDate.ToShortDateString() == edDate.ToShortDateString() && edDate.ToShortDateString() == DateTime.Now.ToShortDateString())
            {
                edDate = DateTime.Now;
                stDate = edDate.AddMonths(-2);
            }

            strWhere += (strWhere.Length > 0 ? " and " : "") + " o.createDate between '" + stDate + "' and '" + edDate +
                        "'";

            OrderInvoiceList invoice = OrderInfoList.GetInovicePage(pageIndex, pageSize, strWhere, "createDate desc");

            //OrderInvoiceList invoiceForLoop = OrderInfoList.GetInovicePage(pageIndex, pageSize, strWhere, "createDate desc")

            returnJson = CommonLib.Helper.JsonSerializeObject(invoice, "yyyy-MM-dd");

            return(returnJson);
        }
        /// <summary>
        /// 得到数据列表
        /// <para>返回 OrderInvoiceList</para>
        /// </summary>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页行数</param>
        /// <param name="DBwhere">条件</param>
        /// <param name="orderWhere">排序</param>
        /// <returns></returns>
        public OrderInvoiceList GetPage(int pageIndex, int pageSize, string strWhere, string orderWhere)
        {
            OrderInvoiceList dataList = new OrderInvoiceList();

            dataList.PageIndex = pageIndex;
            dataList.PageSize  = pageSize;
            dataList.Data      = new List <OrderInvoiceModel>();
            dataList.PageCount = 0;
            dataList.RowCount  = 0;
            dataList.PageHtml  = "";

            string oidFilter  = string.Empty;
            string originOids = string.Empty;

            string Column = "id,invoiceName,invoiceAddress,invoicePhone,invoiceMoney,o.createDate,o.accId,o.oid,invoiceDesc,invoiceStatus,invoiceRemark,invoiceNo,invoiceOPeratorTime,invoiceOperatorId,invoiceAddressee,invoiceExpress";
            //List<OrderInvoiceModel> Invoiceorigin = GetPage(pageIndex, pageSize, Column, strWhere, orderWhere);

            //foreach (OrderInvoiceModel dr in Invoiceorigin)
            //{
            //    if (dr.oid != 0)
            //    {
            //        originOids += "," + dr.oid.ToString();
            //    }
            //}

            //T_OrderInfoDAL orderDalFilter = new T_OrderInfoDAL();
            //List<dynamic> orderFilter =
            //        orderDalFilter.GetListContainOrderBusiness(
            //            "T_OrderInfo.oid,T_OrderInfo.orderStatus,T_Order_Project.displayName bus_name",
            //            " T_OrderInfo.oid in(" + originOids.Trim(',') + ") and T_OrderInfo.orderStatus=2 ");
            //foreach (dynamic filter in orderFilter)
            //{
            //    oidFilter += "," + filter.oid.ToString();
            //}

            //strWhere += " oid in (" + oidFilter.Trim(',') + ") ";

            List <OrderInvoiceModel> InvoiceDs = GetPage(pageIndex, pageSize, Column, strWhere, orderWhere);

            if (InvoiceDs != null)
            {
                string accids = string.Empty;
                string oids   = string.Empty;
                string opids  = string.Empty;
                foreach (OrderInvoiceModel dr in InvoiceDs)
                {
                    if (dr.accId != 0)
                    {
                        accids += "," + dr.accId.ToString();
                    }
                    if (dr.oid != 0)
                    {
                        oids += "," + dr.oid.ToString();
                    }
                    if (dr.invoiceOperatorId != 0)
                    {
                        opids += "," + dr.invoiceOperatorId.ToString();
                    }
                }

                #region 得到相关 店铺信息

                List <T_Account> AccountDs = new List <T_Account>();
                if (accids.Length > 0)
                {
                    T_AccountDAL accDal = new T_AccountDAL();

                    AccountDs = accDal.GetListByColumn("id,CompanyName,UserRealName", " id in(" + accids.Trim(',') + ") ");
                }
                #endregion
                #region 得到相关  订单信息

                List <dynamic> OrderDs = new List <dynamic>();
                if (oids.Length > 0)
                {
                    T_OrderInfoDAL orderDal = new T_OrderInfoDAL();
                    OrderDs = orderDal.GetListContainOrderBusiness("T_OrderInfo.oid,T_OrderInfo.orderStatus,T_Order_Project.displayName bus_name", " T_OrderInfo.oid in(" + oids.Trim(',') + ") ");
                }
                #endregion
                #region 得到相关 操作人员信息
                List <dynamic> OperDs = new List <dynamic>();
                if (opids.Length > 0)
                {
                    Sys_Manage_UserDAL ManageUserDal = new Sys_Manage_UserDAL();
                    OperDs = ManageUserDal.GetList("Id,UserName", " Id in(" + opids.Trim(',') + ") ");
                }
                #endregion
                foreach (OrderInvoiceModel dr in InvoiceDs)
                {
                    OrderInvoiceModel OIModel = new OrderInvoiceModel();
                    if (dr.id != 0)
                    {
                        OIModel.id = dr.id;
                    }
                    #region 店铺信息
                    if (dr.accId != 0)
                    {
                        OIModel.accId = dr.accId;

                        foreach (T_Account t in AccountDs.Where(x => x.ID == OIModel.accId))
                        {
                            OIModel.CompanyName  = t.CompanyName;
                            OIModel.UserRealName = t.UserRealName;
                        }
                    }
                    #endregion
                    #region 订单信息
                    if (dr.oid != 0)
                    {
                        OIModel.oid = dr.oid;
                        try
                        {
                            foreach (dynamic busRow in OrderDs.Where(x => x.oid == OIModel.oid))
                            {
                                OIModel.bus_name = busRow.bus_name.ToString();
                                if (busRow.orderStatus != null && busRow.orderStatus.ToString() != "")
                                {
                                    OIModel.orderStat = int.Parse(busRow.orderStatus.ToString());
                                }
                                else
                                {
                                    OIModel.orderStat = 0;
                                }
                                OIModel.orderStatName = Enum.GetName(typeof(Model.Enum.OrderEnum.OrderStatus), OIModel.orderStat);
                            }
                        }
                        catch (Exception ex)
                        {
                        }
                    }
                    #endregion
                    if (dr.createDate != null)
                    {
                        OIModel.createDate = Convert.ToDateTime(dr.createDate);
                    }
                    if (dr.invoiceMoney != null)
                    {
                        OIModel.invoiceMoney = Convert.ToDecimal(dr.invoiceMoney);
                    }
                    OIModel.invoiceName      = dr.invoiceName;
                    OIModel.invoiceDesc      = dr.invoiceDesc;
                    OIModel.invoicePhone     = dr.invoicePhone;
                    OIModel.invoiceAddress   = dr.invoiceAddress;
                    OIModel.invoiceAddressee = dr.invoiceAddressee;
                    if (dr.invoiceStatus != null)
                    {
                        OIModel.invoiceStatus = dr.invoiceStatus;
                        if (OIModel.invoiceStatus == 1)
                        {
                            OIModel.invoiceStatusName = "已开发票";
                        }
                    }
                    OIModel.invoiceNo     = dr.invoiceNo;
                    OIModel.invoiceRemark = dr.invoiceRemark;
                    if (dr.invoiceOperatorId != 0)
                    {
                        OIModel.invoiceOperatorId = dr.invoiceOperatorId;
                        if (OperDs != null && OperDs.Count > 0)
                        {
                            foreach (dynamic opDr in OperDs.Where(x => x.Id == OIModel.invoiceOperatorId))
                            {
                                OIModel.invoiceOperatorName = opDr.UserName;
                            }
                        }
                    }
                    if (dr.invoiceOPeratorTime != null)
                    {
                        OIModel.invoiceOPeratorTime = Convert.ToDateTime(dr.invoiceOPeratorTime);
                    }

                    dataList.Data.Add(OIModel);
                }
                //总行数
                int count = GetPageCount(strWhere);
                if (count != 0)
                {
                    dataList.RowCount = count;
                }
                if (dataList.RowCount > 0)
                {
                    dataList.PageCount = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(dataList.RowCount) / Convert.ToDecimal(dataList.PageSize)));
                }
            }
            return(dataList);
        }