public ActionResult Index(ApplyLoan ApplyLoan, EFPagingInfo <ApplyLoan> p, bool?IsShowSupAgent, int IsFirst = 0)
        {
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            if (ApplyLoan.STime.IsNullOrEmpty())
            {
                ApplyLoan.STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (ApplyLoan.ETime.IsNullOrEmpty())
            {
                //  ApplyLoan.ETime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                ApplyLoan.ETime = DateTime.Now;
            }
            if (IsFirst == 0)
            {
                PageOfItems <ApplyLoan> ApplyLoanList1 = new PageOfItems <ApplyLoan>(new List <ApplyLoan>(), 0, 10, 0, new Hashtable());
                ViewBag.ApplyLoanList  = ApplyLoanList1;
                ViewBag.ApplyLoan      = ApplyLoan;
                ViewBag.SysAgentList   = Entity.SysAgent.Where(n => n.Tier == 1).ToList();
                ViewBag.IsShowSupAgent = IsShowSupAgent;
                ViewBag.Xls            = this.checkPower("Xls");
                return(View());
            }

            if (!ApplyLoan.TrueName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TrueName == ApplyLoan.TrueName);
            }
            if (!ApplyLoan.Education.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Education.Contains(ApplyLoan.Education));
            }
            if (!ApplyLoan.HasSheBao.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasSheBao == (ApplyLoan.HasSheBao == 99 ? 0 : ApplyLoan.HasSheBao));
            }
            if (!ApplyLoan.Marry.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Marry == ApplyLoan.Marry);
            }
            if (!ApplyLoan.HasCar.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasCar == (ApplyLoan.HasCar == 99 ? 0 : ApplyLoan.HasCar));
            }
            if (!ApplyLoan.House.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.House == ApplyLoan.House);
            }
            if (!ApplyLoan.HasCredit.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasCredit == ApplyLoan.HasCredit);
            }
            if (!ApplyLoan.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == ApplyLoan.State);
            }
            if (!ApplyLoan.AgentPay.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentPay == (ApplyLoan.AgentPay == 99 ? 0 : ApplyLoan.AgentPay));
            }
            if (!ApplyLoan.AgentAId.IsNullOrEmpty())
            {
                //是否要显示下级
                if ((bool)IsShowSupAgent)
                {
                    SysAgent         LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == ApplyLoan.AgentAId).FirstOrNew();
                    IList <SysAgent> SysAgentList    = LowerLevelAgent.GetSupAgent(Entity);
                    IList <int>      UID             = new List <int>();
                    foreach (var s in SysAgentList)
                    {
                        UID.Add(s.Id);
                    }
                    p.SqlWhere.Add(f => UID.Contains(f.AgentAId));
                }
                else
                {
                    p.SqlWhere.Add(f => f.AgentAId == ApplyLoan.AgentAId);
                }
            }
            if (!ApplyLoan.STime.IsNullOrEmpty() && !ApplyLoan.ETime.IsNullOrEmpty())
            {
                DateTime ETime = ApplyLoan.ETime;
                p.SqlWhere.Add(f => f.PayTime > ApplyLoan.STime && f.PayTime < ETime);
            }
            p.SqlWhere.Add(f => f.PayState == 1);
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <ApplyLoan> ApplyLoanList = Entity.Selects <ApplyLoan>(p);

            ViewBag.ApplyLoanList = ApplyLoanList;
            ViewBag.ApplyLoan     = ApplyLoan;
            IList <ApplyLoan> List    = ApplyLoanList.GroupBy(n => n.AgentId).Select(n => n.First()).ToList();
            List <int>        AgentId = new List <int>();

            foreach (var pp in List)
            {
                AgentId.Add(pp.AgentId);
            }
            ViewBag.SysAgentList   = Entity.SysAgent.Where(n => AgentId.Contains(n.Id) && n.Tier == 1).ToList();
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.Xls            = this.checkPower("Xls");
            return(View());
        }
예제 #2
0
 private static string getNextPagerButton <T>(IPageOfItems <T> pageOfAList, UrlHelper urlHelper, string routeName, Func <int, RouteValueDictionary> getPageRouteValueDictionary, string queryString, string nextText)
 {
     return(getNextPagerButton(pageOfAList, urlHelper, routeName, getPageRouteValueDictionary, queryString, nextText, null));
 }
예제 #3
0
 private static string getPagerButton <T>(IPageOfItems <T> pageOfAList, UrlHelper urlHelper, string routeName, Func <int, RouteValueDictionary> getPageRouteValueDictionary, int index, string queryString, string cssClass)
 {
     return(getPagerButton(pageOfAList, urlHelper, routeName, getPageRouteValueDictionary, index, queryString, null, cssClass));
 }
        public ActionResult Index(Orders Orders, EFPagingInfo <Orders> p, bool?IsShowSupAgent, int?LowerLevel, int IsFirst = 0)
        {
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            if (IsFirst == 0)
            {
                if (checkPower("ALL"))
                {
                    IsAll = true;
                }
                ViewBag.IsAll = IsAll;
                PageOfItems <Orders> OrdersList1 = new PageOfItems <Orders>(new List <Orders>(), 0, 10, 0, new Hashtable());
                ViewBag.OrdersList = OrdersList1;
                ViewBag.Orders     = Orders;
                //查询对应的商户
                List <int> UId1 = OrdersList1.Select(o => o.UId).Distinct().ToList();
                ViewBag.UsersList      = Entity.Users.Where(n => n.State == 1 && UId1.Contains(n.Id)).ToList();
                ViewBag.PayConfigList  = Entity.PayConfig.Where(n => n.State == 1).ToList();
                ViewBag.IsShowSupAgent = false;
                ViewBag.BasicAgent     = BasicAgent;
                SysSet SysSet1 = Entity.SysSet.FirstOrNew();
                ViewBag.SysSet     = SysSet1;
                ViewBag.Entity     = Entity;
                ViewBag.LowerLevel = 0;
                ViewBag.Edit       = this.checkPower("Edit");
                return(View());
            }

            if (checkPower("ALL"))
            {
                IsAll = true;
            }
            ViewBag.IsAll = IsAll;

            /*有没有指定交易所属代理
             * 有:校验是否从属关系
             * 无:指定当前代理
             */
            if (!Orders.Agent.IsNullOrEmpty())
            {
                if (!IsBelongToAgent(Orders.Agent))
                {
                    ViewBag.ErrorMsg = "只能查询当前用户下属代理的交易";
                    return(View("Error"));
                }
            }
            else
            {
                Orders.Agent = this.BasicAgent.Id;
            }
            LowerLevel = LowerLevel == null ? 0 : LowerLevel;
            //没有"管理所有"权限的只能看到操作员自己的数据
            if (!IsAll)
            {
                p.SqlWhere.Add(f => f.AId == AdminUser.Id);//交易所属用户
            }
            else
            {
                IList <SysAgent> SysAgentList = null;
                if ((bool)IsShowSupAgent)
                {
                    IList <int> UID = new List <int>();
                    if (LowerLevel != 0)
                    {
                        SysAgent LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == LowerLevel).FirstOrNew();
                        SysAgentList = LowerLevelAgent.GetSupAgent(Entity, true);
                    }
                    else
                    {
                        SysAgentList = BasicAgent.GetSupAgent(Entity, true);//获取所有下级代理商信息
                    }
                    UID = SysAgentList.Select(o => o.Id).ToList();
                    p.SqlWhere.Add(f => UID.Contains(f.Agent));
                }
                else
                {
                    p.SqlWhere.Add(f => f.Agent == BasicAgent.Id);//读取全部分支机构
                }
            }
            #region 筛选条件
            if (!Orders.OrderAddress.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OrderAddress.Contains(Orders.OrderAddress));
            }
            if (!Orders.TNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TNum == Orders.TNum);
            }
            if (!Orders.LagEntryDay.IsNullOrEmpty())
            {
                if (Orders.LagEntryDay == 99)
                {
                    p.SqlWhere.Add(f => f.LagEntryDay == 0);
                }
                else
                {
                    p.SqlWhere.Add(f => f.LagEntryDay > 0);
                }
            }
            if (!Orders.TrunType.IsNullOrEmpty())
            {
                if (Orders.TrunType == 1)
                {
                    p.SqlWhere.Add(f => f.TrunType == 1);
                }
                else
                {
                    p.SqlWhere.Add(f => f.TrunType == 0);
                }
            }

            if (!Orders.TName.IsNullOrEmpty())
            {
                IList <Users> UList = Entity.Users.Where(n => n.TrueName.Contains(Orders.TName) || n.NeekName.Contains(Orders.TName) || n.UserName == Orders.TName).ToList();
                List <int>    UIds  = new List <int>();
                foreach (var pp in UList)
                {
                    UIds.Add(pp.Id);
                }
                p.SqlWhere.Add(f => UIds.Contains(f.UId));
            }
            if (!Orders.PayWay.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.PayWay == Orders.PayWay);
            }
            if (!Orders.STime.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AddTime >= Orders.STime);
            }
            if (!Orders.ETime.IsNullOrEmpty())
            {
                DateTime ETime = Orders.ETime.AddHours(23).AddMinutes(59).AddSeconds(59);
                p.SqlWhere.Add(f => f.AddTime <= ETime);
            }
            #region 交易类型条件判断
            if (!Orders.TType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TType == Orders.TType);//读取对应的类型
                if (Orders.TType == 1)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        switch (Orders.TState)
                        {
                        case 1:    //未付
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                            break;

                        case 2:    //已付
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                            break;

                        case 3:    //待传证照
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                            break;

                        case 4:    //待审核
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                            break;

                        case 5:    //审核失败
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                            break;

                        case 6:    //退单
                            p.SqlWhere.Add(f => f.TState == 4);
                            break;

                        case 7:    //待入帐
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.InState == 0);
                            break;
                        }
                    }
                }
                if (Orders.TType == 2)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
                if (Orders.TType == 3)
                {
                    switch (Orders.TState)
                    {
                    case 1:    //未付
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                        break;

                    case 2:    //已付
                        p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                        break;

                    case 3:    //待传证照
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                        break;

                    case 4:    //待审核
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                        break;

                    case 5:    //审核失败
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                        break;
                    }
                }
                if (Orders.TType == 5)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        switch (Orders.TState)
                        {
                        case 99:    //未付
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                            break;

                        case 1:    //处理中
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 0);
                            break;

                        case 2:    //已汇出
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 2);
                            break;

                        case 4:    //出款中
                            p.SqlWhere.Add(f => (f.TState == 2 && f.PayState == 2 && f.IdCardState == 0) || (f.TState == 2 && f.PayState == 1 && f.IdCardState == 3));
                            break;

                        case 3:    //审核失败
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                            break;

                        case 5:    //退款中
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 3);
                            break;

                        case 6:    //已退款
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 4);
                            break;

                        case 7:    //待传身份证
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                            break;

                        case 8:    //已传身份证
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                            break;
                        }
                    }
                }
                if (Orders.TType == 6)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
                if (Orders.TType == 7 || Orders.TType == 8 || Orders.TType == 9)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        if (Orders.TState == 99)
                        {
                            p.SqlWhere.Add(f => f.TState == 0);
                        }
                        if (Orders.TState == 1)
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                        }
                        if (Orders.TState == 2)
                        {
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                        }
                        if (Orders.TState == 3)//退单
                        {
                            p.SqlWhere.Add(f => f.TState == 4);
                        }
                        if (Orders.TState == 4)//待入帐
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.InState == 0);
                        }
                        if (Orders.TState == 5)//待审核
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.InState == 1 && f.IdCardState == 2);
                        }
                        if (Orders.TState == 6)//待传证照
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.InState == 1 && f.IdCardState == 1);
                        }
                        if (Orders.TState == 7)//审核失败
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.InState == 1 && f.IdCardState == 4);
                        }
                    }
                }
                if (Orders.TType == 10)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
            }
            #endregion
            #endregion
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Orders> OrdersList = Entity.Selects <Orders>(p);
            ViewBag.OrdersList = OrdersList;
            ViewBag.Orders     = Orders;
            //查询对应的商户
            List <int> UId = OrdersList.Select(o => o.UId).Distinct().ToList();
            ViewBag.UsersList      = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
            ViewBag.PayConfigList  = Entity.PayConfig.Where(n => n.State == 1).ToList();
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.BasicAgent     = BasicAgent;
            SysSet SysSet = Entity.SysSet.FirstOrNew();
            ViewBag.SysSet     = SysSet;
            ViewBag.Entity     = Entity;
            ViewBag.LowerLevel = LowerLevel;
            ViewBag.Edit       = this.checkPower("Edit");
            return(View());
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[UserLog]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            UserLog UserLog = new UserLog();

            UserLog = JsonToObject.ConvertJsonToModel(UserLog, json);

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == UserLog.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                //DataObj.OutError("2006");
                //return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                //DataObj.OutError("2008");
                //return;
            }

            EFPagingInfo <UserLog> p = new EFPagingInfo <UserLog>();

            if (!UserLog.Pg.IsNullOrEmpty())
            {
                p.PageIndex = UserLog.Pg;
            }
            if (!UserLog.Pgs.IsNullOrEmpty())
            {
                p.PageSize = UserLog.Pgs;
            }

            bool IsOld = true;

            #region 版本比较
            //处理贴牌相关
            var SysAgent = this.Entity.SysAgent.FirstOrDefault(o => o.Id == baseUsers.Agent);
            if (SysAgent == null)
            {
                DataObj.OutError("1000");
                return;
            }
            var topSysAgent = SysAgent.GetTopAgent(this.Entity);

            if (!Equipment.SoftVer.IsNullOrEmpty())
            {
                Version v1 = new Version(Equipment.SoftVer);//当前版本
                Version v2 = new Version("1.0");

                if (Equipment.RqType.ToLower() == "apple")
                {
                    //苹果
                    if (topSysAgent.IsTeiPai == 0)//好付
                    {
                        v2 = new Version("8.0");
                    }
                    else//贴牌
                    {
                        v2 = new Version("6.0");
                    }
                }
                else if (Equipment.RqType.ToLower() == "android")
                {
                    //安卓
                    if (topSysAgent.IsTeiPai == 0)//好付
                    {
                        v2 = new Version("8.0.0");
                    }
                    else //贴牌
                    {
                        v2 = new Version("6.0");
                    }
                }
                if (v1 >= v2)
                {
                    IsOld = false;
                }
            }
            #endregion
            IPageOfItems <UserLog> List = null;
            if (!IsOld)//新版
            {
                p.SqlWhere.Add(f => f.UId == baseUsers.Id && f.OType != 4);
                var three = new int[] { 3, 5 };
                var five  = new int[] { 6, 7, 9, 10, 11, 12 };
                switch (UserLog.OType)
                {
                case 1:
                    p.SqlWhere.Add(o => o.OType == 1);
                    break;

                case 2:
                    p.SqlWhere.Add(o => o.OType == 2);
                    break;

                case 3:
                    p.SqlWhere.Add(o => three.Contains(o.OType));
                    break;

                case 4:
                    p.SqlWhere.Add(o => o.OType == 8);
                    break;

                case 5:
                    p.SqlWhere.Add(o => five.Contains(o.OType));
                    break;

                case 6:
                    p.SqlWhere.Add(o => o.OType == 15);
                    break;
                }
                p.OrderByList.Add("Id", "DESC");
                List = Entity.Selects <UserLog>(p);
            }
            else//旧版
            {
                p.SqlWhere.Add(f => f.UId == baseUsers.Id && f.OType != 4);
                //搜索
                if (!UserLog.OType.IsNullOrEmpty())
                {
                    if (UserLog.OType == 5)
                    {
                        p.SqlWhere.Add(f => f.OType == UserLog.OType || f.OType == 6 || f.OType == 11);
                    }
                    else if (UserLog.OType == 4)
                    {
                        p.SqlWhere.Add(f => f.OType == 8);
                    }
                    else if (UserLog.OType == 6)
                    {
                        IList <String> OrderList = Entity.OrderProfitLog.Where(o => o.UId == baseUsers.Id && o.LogType == 3).Select(o => o.TNum).ToList();
                        p.SqlWhere.Add(f => OrderList.Contains(f.OId));
                    }
                    else
                    {
                        p.SqlWhere.Add(f => f.OType == UserLog.OType);
                    }
                }
                p.OrderByList.Add("Id", "DESC");
                List = Entity.Selects <UserLog>(p);
                //处理转帐订单
                foreach (var pp in List)
                {
                    if (pp.OType == 6)
                    {
                        pp.OType = 5;
                    }
                    if (pp.OType == 12 || pp.OType == 11)
                    {
                        pp.OType = 2;
                    }
                    //pp.DoRemark(Entity);
                    if (pp.OType == 8)
                    {
                        OrderProfitLog OrderProfitLog = Entity.OrderProfitLog.FirstOrDefault(o => o.UId == pp.UId && o.TNum == pp.OId);
                        if (OrderProfitLog != null)
                        {
                            pp.ProfitName = OrderProfitLog.GetProfitName(Entity).ProfitName;
                        }
                    }
                }
            }
            IList <UserLog> iList = List.ToList();
            StringBuilder   sb    = new StringBuilder("");
            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            DataObj.Data = sb.ToString();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
예제 #6
0
        public ActionResult Index(OrderHouse OrderHouse, EFPagingInfo <OrderHouse> p, bool?IsShowSupAgent, int IsFirst = 0)
        {
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            if (Request.QueryString["PageSize"].IsNullOrEmpty())
            {
                p.PageSize = 30;
            }
            p.SqlWhere.Add(f => f.OrderState == 2);
            p.SqlWhere.Add(f => f.PayState == 1 || f.PayState == 2);
            //if (OrderHouse.AddTime.IsNullOrEmpty())
            //{
            //    OrderHouse.AddTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            //}
            //if (OrderHouse.FTime.IsNullOrEmpty())
            //{
            //    OrderHouse.FTime = DateTime.Now;
            //}
            if (IsFirst == 0)
            {
                PageOfItems <OrderHouse> OrderHouseList1 = new PageOfItems <OrderHouse>(new List <OrderHouse>(), 0, 10, 0, new Hashtable());
                ViewBag.OrderHouseList = OrderHouseList1;
                ViewBag.OrderHouse     = OrderHouse;
                ViewBag.UsersList      = new List <Users>();
                ViewBag.SysAgentList   = Entity.SysAgent.Where(n => n.State == 1 && n.Tier == 1).ToList();
                ViewBag.IsShowSupAgent = IsShowSupAgent;
                ViewBag.Edit           = this.checkPower("Edit");
                ViewBag.Cancel         = this.checkPower("Cancel");
                ViewBag.Save           = this.checkPower("Save");
                return(View());
            }
            //if (!OrderHouse.UId.IsNullOrEmpty()) { p.SqlWhere.Add(f => f.UId == OrderHouse.UId); }
            if (!OrderHouse.HouseOwner.IsNullOrEmpty())
            {
                IList <Users> UList = Entity.Users.Where(n => n.TrueName.Contains(OrderHouse.HouseOwner) || n.NeekName.Contains(OrderHouse.HouseOwner) || n.UserName == OrderHouse.HouseOwner).ToList();
                List <int>    UIds  = new List <int>();
                foreach (var pp in UList)
                {
                    UIds.Add(pp.Id);
                }
                p.SqlWhere.Add(f => UIds.Contains(f.UId));
            }
            if (!OrderHouse.OId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OId == OrderHouse.OId);
            }
            if (!OrderHouse.Agent.IsNullOrEmpty())
            {
                //是否要显示下级
                if ((bool)IsShowSupAgent)
                {
                    SysAgent         LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == OrderHouse.Agent).FirstOrNew();
                    IList <SysAgent> SysAgentList    = LowerLevelAgent.GetSupAgent(Entity);
                    IList <int>      UID             = new List <int>();
                    foreach (var s in SysAgentList)
                    {
                        UID.Add(s.Id);
                    }
                    p.SqlWhere.Add(f => UID.Contains(f.Agent));
                }
                else
                {
                    p.SqlWhere.Add(f => f.Agent == OrderHouse.Agent);
                }
            }
            if (!OrderHouse.FState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.FState == (OrderHouse.FState == 99 ? 0 : OrderHouse.FState));
            }
            if (!OrderHouse.TrunType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TrunType == (OrderHouse.TrunType == 99 ? 0 : OrderHouse.TrunType));
            }
            if (!OrderHouse.AId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AId == OrderHouse.AId);
            }
            if (!OrderHouse.FId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.FId == OrderHouse.FId);
            }
            if (!OrderHouse.AgentState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentState == OrderHouse.AgentState);
            }
            if (!OrderHouse.AddTime.IsNullOrEmpty() && !OrderHouse.FTime.IsNullOrEmpty())
            {
                // DateTime FTime = ((DateTime)OrderHouse.FTime).AddDays(1);
                DateTime FTime = OrderHouse.FTime.Value;
                p.SqlWhere.Add(f => f.PayTime > OrderHouse.AddTime && f.PayTime < FTime);
            }
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <OrderHouse> OrderHouseList = null;

            if (IsFirst == 0)
            {
                OrderHouseList = new PageOfItems <OrderHouse>(new List <OrderHouse>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                OrderHouseList = Entity.Selects <OrderHouse>(p);
            }
            ViewBag.OrderHouseList = OrderHouseList;
            ViewBag.OrderHouse     = OrderHouse;
            IList <OrderHouse> List = OrderHouseList.GroupBy(n => n.UId).Select(n => n.First()).ToList();
            List <int>         UId  = new List <int>();

            foreach (var pp in List)
            {
                UId.Add(pp.UId);
            }
            ViewBag.UsersList      = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
            ViewBag.SysAgentList   = Entity.SysAgent.Where(n => n.Tier == 1).ToList();
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.Edit           = this.checkPower("Edit");
            ViewBag.Cancel         = this.checkPower("Cancel");
            ViewBag.Save           = this.checkPower("Save");
            return(View());
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[FastOrders]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            FastOrder FastOrder = new FastOrder();

            FastOrder = JsonToObject.ConvertJsonToModel(FastOrder, json);

            //var ford = this.Entity.FastOrder.FirstOrDefault(o => o.TNum == "20170606_01_0000024928");
            //if (ford != null)
            //{
            //    FastOrderExtensions.PushMsg(ford, this.Entity);
            //}

            //var Ord = new Orders()
            //{
            //    Id = 5555,
            //    TState =1,
            //    TType = 8,
            //    TNum = "20170625111111111111",
            //    Amoney = 50,
            //    Poundage = 8,
            //    AddTime = DateTime.Now,
            //    ComeWay = 1,
            //    UId = 566,
            //    PayState = 1,
            //    IdCardState = 0,
            //};
            //Ord.SendMsg(this.Entity);

            //System.Threading.Thread.Sleep(1000 * 60 * 1);

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == FastOrder.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }

            EFPagingInfo <FastOrder> p = new EFPagingInfo <FastOrder>();

            if (!FastOrder.Pg.IsNullOrEmpty())
            {
                p.PageIndex = FastOrder.Pg;
            }
            if (!FastOrder.Pgs.IsNullOrEmpty())
            {
                p.PageSize = FastOrder.Pgs;
            }

            p.SqlWhere.Add(f => f.UId == baseUsers.Id);
            //搜索
            if (!FastOrder.OType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OType == FastOrder.OType);
            }
            if (!FastOrder.State.IsNullOrEmpty())
            {
                switch (FastOrder.State)
                {
                case 1:
                    p.SqlWhere.Add(f => f.State == 1 && f.PayState == 0);
                    break;

                case 2:
                    p.SqlWhere.Add(f => f.State == 1 && f.PayState == 1);
                    break;

                case 3:
                    p.SqlWhere.Add(f => f.State == 1 && f.PayState == 1 && f.UserState == 0);
                    break;

                case 4:
                    p.SqlWhere.Add(f => f.State == 1 && f.PayState == 1 && f.UserState == 1);
                    break;
                }
            }
            if (!FastOrder.STime.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AddTime >= FastOrder.STime);
            }
            if (!FastOrder.ETime.IsNullOrEmpty())
            {
                FastOrder.ETime = FastOrder.ETime.AddHours(24);
                p.SqlWhere.Add(f => f.AddTime <= FastOrder.ETime);
            }

            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <FastOrder> List = Entity.Selects <FastOrder>(p);

            //处理转帐订单
            foreach (var pp in List)
            {
                if (pp.State == 1)
                {
                    if (pp.PayState == 1)
                    {
                        if (pp.UserState == 1)
                        {
                            pp.State = 3;
                        }
                        else
                        {
                            pp.State = 2;
                        }
                    }
                    else
                    {
                        pp.State = 1;
                    }
                }
                else
                {
                    pp.State = 0;
                }
            }

            IList <FastOrder> iList = List.ToList();
            StringBuilder     sb    = new StringBuilder("");

            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            DataObj.Data = sb.ToString();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
예제 #8
0
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[JobOrders]:", "【Data】" + Data, Ex);
                DataObj.OutError("1000");
                return;
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            JobOrders JobOrders = new JobOrders();

            JobOrders = JsonToObject.ConvertJsonToModel(JobOrders, json);

            #region 获取用户信息
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == JobOrders.Token);
            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            #endregion

            EFPagingInfo <JobOrders> p = new EFPagingInfo <JobOrders>();
            if (!JobOrders.Pg.IsNullOrEmpty())
            {
                p.PageIndex = JobOrders.Pg;
            }
            if (!JobOrders.Pgs.IsNullOrEmpty())
            {
                p.PageSize = JobOrders.Pgs;
            }
            p.SqlWhere.Add(f => f.UId == baseUsers.Id);

            //这里JobOrders.State=1进行中 JobOrders.State=2已完成
            if (JobOrders.State == 1)
            {
                p.SqlWhere.Add(f => f.State == 2 || f.State == 3);
            }
            else if (JobOrders.State == 2)
            {
                p.SqlWhere.Add(f => f.State == 4 || f.State == 5);
            }

            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <JobOrders> List = Entity.Selects <JobOrders>(p);
            var             tnums         = List.Select(o => o.TNum).ToList();
            var             UserCardIds   = List.Select(o => o.UserCardId).ToList();
            List <JobItem>  JobItemList   = Entity.JobItem.Where(n => tnums.Contains(n.TNum)).ToList();
            List <UserCard> UserCardList  = Entity.UserCard.Where(n => UserCardIds.Contains(n.Id)).ToList();
            foreach (var item in List)
            {
                item.Cols = item.Cols + ",Items,UsersCard";

                var itemList         = JobItemList.Where(o => o.TNum == item.TNum).ToList();
                var JobItemModelList = itemList.GroupBy(o => o.RunTime.Date, (x, o) => new JobItemModel
                {
                    date = x,
                    item = o.OrderBy(k => k.RunType).ToList().EntityToJson(),
                }).OrderBy(o => o.date).ToList();
                item.Items = JobItemModelList.EntityToJson();

                var     UserCard    = UserCardList.FirstOrNew(o => o.Id == item.UserCardId);
                string  UserCardStr = UserCard.OutJson();
                JObject JS          = new JObject();
                try
                {
                    JS = (JObject)JsonConvert.DeserializeObject(UserCardStr);
                }
                catch (Exception Ex)
                {
                    Log.Write("[JobOrders]:", "【JsStr】" + UserCardStr, Ex);
                }
                item.UsersCard = JS;
            }
            IList <JobOrders> iList = List.ToList();
            StringBuilder     sb    = new StringBuilder("");
            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            string data = sb.ToString();
            data         = data.Replace("\"[{", "[{").Replace("}]\"", "}]").Replace("\\", "").Replace("]\"}", "]}");
            DataObj.Data = data;
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[ApplyCredit]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            ApplyCredit ApplyCredit = new ApplyCredit();

            ApplyCredit = JsonToObject.ConvertJsonToModel(ApplyCredit, json);

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == ApplyCredit.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }

            EFPagingInfo <ApplyCredit> p = new EFPagingInfo <ApplyCredit>();

            if (!ApplyCredit.Pg.IsNullOrEmpty())
            {
                p.PageIndex = ApplyCredit.Pg;
            }
            if (!ApplyCredit.Pgs.IsNullOrEmpty())
            {
                p.PageSize = ApplyCredit.Pgs;
            }

            p.SqlWhere.Add(f => f.UId == baseUsers.Id);
            p.SqlWhere.Add(f => f.State > 0);

            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <ApplyCredit> List   = Entity.Selects <ApplyCredit>(p);
            IList <BasicBank>          BBList = Entity.BasicBank.Where(n => n.State == 1).ToList();

            foreach (var pp in List)
            {
                if (!pp.BankId.IsNullOrEmpty())
                {
                    pp.BankName = BBList.FirstOrNew(n => n.Id == pp.BankId).Name;
                }
            }
            IList <ApplyCredit> iList = List.ToList();
            StringBuilder       sb    = new StringBuilder("");

            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            DataObj.Data = sb.ToString();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        public ActionResult Index(Orders Orders, EFPagingInfo <Orders> p, bool?IsShowSupAgent, int IsFirst = 0)
        {
            this.TempData.Remove("SysAgentList");
            #region 校验与初始化
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }

            if (Orders.STime.IsNullOrEmpty())
            {
                Orders.STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (Orders.ETime.IsNullOrEmpty())
            {
                //Orders.ETime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                Orders.ETime = DateTime.Now;
            }
            p.SqlWhere.Add(f => f.PayState == 1);
            p.SqlWhere.Add(f => f.TState == 2);
            if (!Orders.TNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TNum == Orders.TNum);
            }
            if (!Orders.TName.IsNullOrEmpty())
            {
                IList <Users> UList = Entity.Users.Where(n => n.TrueName == Orders.TName || n.NeekName == Orders.TName || n.UserName == Orders.TName).ToList();
                List <int>    UIds  = new List <int>();
                foreach (var pp in UList)
                {
                    UIds.Add(pp.Id);
                }
                p.SqlWhere.Add(f => UIds.Contains(f.UId));
            }
            if (!Orders.TType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TType == Orders.TType);
            }
            if (!Orders.Agent.IsNullOrEmpty())
            {
                //是否要显示下级
                if ((bool)IsShowSupAgent)
                {
                    SysAgent         LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == Orders.Agent).FirstOrNew();
                    IList <SysAgent> SysAgentList    = LowerLevelAgent.GetSupAgent(Entity);
                    IList <int>      UID             = new List <int>();
                    foreach (var s in SysAgentList)
                    {
                        UID.Add(s.Id);
                    }
                    p.SqlWhere.Add(f => UID.Contains(f.Agent));
                }
                else
                {
                    p.SqlWhere.Add(f => f.Agent == Orders.Agent);
                }
            }
            if (!Orders.AgentState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentState == (Orders.AgentState == 99 ? 0 : Orders.AgentState));
            }
            if (!Orders.STime.IsNullOrEmpty() && !Orders.ETime.IsNullOrEmpty())
            {
                DateTime ETime = Orders.ETime;
                p.SqlWhere.Add(f => f.PayTime > Orders.STime && f.PayTime < ETime);
            }
            #endregion
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Orders> OrdersList = null;
            if (IsFirst == 0)
            {
                OrdersList = new PageOfItems <Orders>(new List <Orders>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                OrdersList = Entity.Selects <Orders>(p);
            }
            ViewBag.OrdersList = OrdersList;
            ViewBag.Orders     = Orders;
            IList <Orders> List = OrdersList.GroupBy(n => n.UId).Select(n => n.First()).ToList();
            List <int>     UId  = new List <int>();
            foreach (var pp in List)
            {
                UId.Add(pp.UId);
            }
            ViewBag.UsersList     = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
            ViewBag.PayConfigList = Entity.PayConfig.Where(n => n.State == 1).ToList();
            IList <Orders> List1   = OrdersList.GroupBy(n => n.Agent).Select(n => n.First()).ToList();
            List <int>     AgentId = new List <int>();
            foreach (var pp in List1)
            {
                AgentId.Add(pp.Agent);
            }
            ViewBag.SysAgentList          = Entity.SysAgent.Where(n => AgentId.Contains(n.Id) && n.Tier == 1).ToList();
            this.TempData["SysAgentList"] = ViewBag.SysAgentList;
            ViewBag.SelectSysAgentList    = Entity.SysAgent.Where(n => n.State == 1).ToList();
            ViewBag.IsShowSupAgent        = IsShowSupAgent;
            ViewBag.Xls = this.checkPower("Xls");
            return(View());
        }
        /// <summary>
        /// 导出
        /// </summary>
        /// <returns></returns>
        public ActionResult ExcelExport(JobItem JobItem, EFPagingInfo <JobItem> p, DateTime?STime, DateTime?ETime, int IsFirst = 0)
        {
            IPageOfItems <JobItem> JobItemList = null;

            if (IsFirst == 0)
            {
                JobItemList = new PageOfItems <JobItem>(new List <JobItem>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                if (STime.IsNullOrEmpty())
                {
                    STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                }
                if (ETime.IsNullOrEmpty())
                {
                    ETime = DateTime.Now;
                }
                TimeSpan TS   = Convert.ToDateTime(ETime) - Convert.ToDateTime(STime);
                int      Days = TS.Days;
                if (Days > 10)
                {
                    ViewBag.ErrorMsg = "导出时间间隔不能超过10天!";
                    return(View("Error"));
                }
                p           = this.Condition(JobItem, p, STime, ETime);
                p.PageSize  = 9999999;
                JobItemList = Entity.Selects <JobItem>(p);
            }
            DataTable table = new DataTable();
            DataRow   row   = null;

            // 创建 datatable
            table.Columns.Add(new DataColumn("订单号", typeof(string)));
            table.Columns.Add(new DataColumn("交易号", typeof(string)));
            table.Columns.Add(new DataColumn("执行金额", typeof(string)));
            table.Columns.Add(new DataColumn("执行时间", typeof(string)));
            table.Columns.Add(new DataColumn("手续费", typeof(string)));
            table.Columns.Add(new DataColumn("利润", typeof(string)));
            table.Columns.Add(new DataColumn("成本", typeof(string)));
            table.Columns.Add(new DataColumn("分润", typeof(string)));
            table.Columns.Add(new DataColumn("状态", typeof(string)));
            table.Columns.Add(new DataColumn("类型", typeof(string)));
            table.Columns.Add(new DataColumn("备注", typeof(string)));
            table.Columns.Add(new DataColumn("订单状态备注", typeof(string)));
            string state = "";

            // 填充数据
            #region 明细
            foreach (var item in JobItemList)
            {
                row    = table.NewRow();
                row[0] = item.TNum;
                row[1] = item.RunNum;
                row[2] = item.RunMoney.ToString("F2");
                row[3] = item.RunTime.ToString("yyyy-MM-dd HH:mm");
                row[4] = item.Poundage.ToString("F2");
                row[5] = item.HFGet.ToString("F2");
                row[6] = item.RunGet.ToString("F2");
                row[7] = item.AgentGet.ToString("F2");
                switch (item.State)
                {
                case 0:
                    state = "取消";
                    break;

                case 1:
                    state = "待执行";
                    break;

                case 2:
                    state = "执行中";
                    break;

                case 3:
                    state = "执行完成";
                    break;

                case 4:
                    state = "执行失败";
                    break;
                }
                row[8]  = state;
                row[9]  = item.RunType == 1 ? "消费" : "还款";
                row[10] = item.Remark;
                string stateremark = "";
                if (item.State == 4)
                {
                    JobItem JobItemTemp = Entity.JobItem.Where(o => o.TNum == item.TNum).OrderBy(o => o.RunTime).FirstOrNew();
                    if (JobItemTemp.State == 4)
                    {
                        stateremark = "首笔支付失败";
                    }
                }
                row[11] = stateremark;
                table.Rows.Add(row);
            }
            #endregion
            string Time = DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99);
            return(this.ExportExcelBase(table, "任务订单明细-" + Time));
        }
        public void XLSDo(Orders Orders, EFPagingInfo <Orders> p)
        {
            if (Orders.STime.IsNullOrEmpty())
            {
                Orders.STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (Orders.ETime.IsNullOrEmpty())
            {
                Orders.ETime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            p.SqlWhere.Add(f => f.PayState == 1);
            p.SqlWhere.Add(f => f.TState == 2);
            if (!Orders.TNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TNum == Orders.TNum);
            }
            //if (!Orders.UId.IsNullOrEmpty()) { p.SqlWhere.Add(f => f.UId == Orders.UId); }
            if (!Orders.TName.IsNullOrEmpty())
            {
                IList <Users> UList = Entity.Users.Where(n => n.TrueName.Contains(Orders.TName) || n.NeekName.Contains(Orders.TName) || n.UserName == Orders.TName).ToList();
                List <int>    UIds  = new List <int>();
                foreach (var pp in UList)
                {
                    UIds.Add(pp.Id);
                }
                p.SqlWhere.Add(f => UIds.Contains(f.UId));
            }
            if (!Orders.TType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TType == Orders.TType);
            }
            if (!Orders.Agent.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Agent == Orders.Agent);
            }
            if (!Orders.AgentState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentState == (Orders.AgentState == 99 ? 0 : Orders.AgentState));
            }
            if (!Orders.STime.IsNullOrEmpty() && !Orders.ETime.IsNullOrEmpty())
            {
                DateTime ETime = Orders.ETime;
                p.SqlWhere.Add(f => f.PayTime > Orders.STime && f.PayTime < ETime);
            }
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Orders> OrdersList = Entity.Selects <Orders>(p);
            IList <Orders>        List       = OrdersList.GroupBy(n => n.UId).Select(n => n.First()).ToList();
            List <int>            UId        = new List <int>();

            foreach (var pp in List)
            {
                UId.Add(pp.UId);
            }
            IList <Users>  UsersList = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
            IList <Orders> List1     = OrdersList.GroupBy(n => n.Agent).Select(n => n.First()).ToList();
            List <int>     AgentId   = new List <int>();

            foreach (var pp in List1)
            {
                AgentId.Add(pp.Agent);
            }
            if (this.TempData["SysAgentList"] == null)
            {
                Response.Write("当前页面数据已过期");
            }
            this.TempData.Keep("SysAgentList");
            IList <SysAgent> SysAgentList = this.TempData["SysAgentList"] as IList <SysAgent>;//Entity.SysAgent.Where(n => n.State == 1 && AgentId.Contains(n.Id)).ToList();

            if (SysAgentList != null && SysAgentList.Count > 0)
            {
                //加载对应模板
                string       tempname = "order.xlsx";
                string       file     = Server.MapPath("/template") + "\\" + tempname;
                ExcelPackage package  = new ExcelPackage(new FileInfo(file), true);
                //设置数据开始行
                int Befor  = 2;
                int maxCol = 8;//最大列数
                //加载模板第一张表
                var     sheet      = package.Workbook.Worksheets[1];
                var     cells      = sheet.Cells;
                decimal TotalMoney = 0; //计算总金额
                double  TotalPrice = 0; //计算总金额
                int     Rows       = OrdersList.Count() + SysAgentList.Count();
                sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                int i = Befor;
                foreach (var item in SysAgentList)
                {
                    IList <Orders> ListSub    = OrdersList.Where(n => n.Agent == item.Id).ToList();
                    decimal        AgentMoney = 0; //计算供应商金额
                    double         AgentPrice = 0; //计算供应商金额
                    foreach (var s in ListSub)
                    {
                        sheet.Row(i).Height = 20;//设置行高
                        Users U = UsersList.FirstOrNew(n => n.Id == s.UId);
                        //分支机构
                        cells["A" + i].Value = item.Name;
                        //交易号
                        cells["B" + i].Value = s.TNum;
                        //交易商户
                        cells["C" + i].Value = U.TrueName;
                        //交易类型
                        cells["D" + i].Value = s.GetTTName();
                        //交易内容
                        cells["E" + i].Value = s.GetPayNameWithTName();
                        //交易金额
                        cells["F" + i].Value = s.Amoney;
                        //交易时间
                        cells["G" + i].Value = s.PayTime;
                        //结算金额
                        double agentmoney = s.GetAgentMoney(Entity);
                        cells["H" + i].Value = agentmoney;
                        AgentMoney          += s.Amoney;
                        AgentPrice          += agentmoney;
                        i++;
                    }
                    sheet.Row(i).Height = 28;//设置行高
                    //交易金额汇总
                    cells["F" + i].Value = AgentMoney;
                    //结算金额汇总
                    cells["H" + i].Value = AgentPrice;
                    Color bgColor = ColorTranslator.FromHtml("#DDDDDD");
                    Color fColor  = ColorTranslator.FromHtml("#FF0000");
                    sheet.Cells[i, 1, i, maxCol].Style.Fill.PatternType = ExcelFillStyle.Solid;
                    sheet.Cells[i, 1, i, maxCol].Style.Fill.BackgroundColor.SetColor(bgColor);
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Size = 16;
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Bold = true;
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Color.SetColor(fColor);
                    TotalMoney += AgentMoney;
                    TotalPrice += AgentPrice;
                    i++;
                }
                Color bgColor_ = ColorTranslator.FromHtml("#7030A0");
                Color fColor_  = ColorTranslator.FromHtml("#FFFFFF");
                sheet.Cells[i, 1, i, maxCol].Style.Fill.PatternType = ExcelFillStyle.Solid;
                sheet.Cells[i, 1, i, maxCol].Style.Fill.BackgroundColor.SetColor(bgColor_);
                sheet.Cells[i, 1, i, maxCol].Style.Font.Size = 20;
                sheet.Cells[i, 1, i, maxCol].Style.Font.Bold = true;
                sheet.Cells[i, 1, i, maxCol].Style.Font.Color.SetColor(fColor_);
                sheet.Row(i).Height = 40;//设置行高
                //交易金额汇总
                cells["F" + i].Value = TotalMoney;
                //结算金额汇总
                cells["H" + i].Value = TotalPrice;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Left.Style   = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Right.Style  = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Top.Style    = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 6, i, 6].Style.Numberformat.Format      = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 7, i, 7].Style.Numberformat.Format      = "yyyy-mm-dd hh:mm";
                sheet.Cells[Befor, 8, i, 8].Style.Numberformat.Format      = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                Response.BinaryWrite(package.GetAsByteArray());//输出
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;  filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99) + ".xlsx");
            }
            else
            {
                Response.Write("暂无符合条件数据");
            }
        }
예제 #13
0
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[MsgCallBack]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            MsgCallBack MsgCallBack = new MsgCallBack();

            MsgCallBack = JsonToObject.ConvertJsonToModel(MsgCallBack, json);
            if (MsgCallBack.Name.IsNullOrEmpty())
            {
                MsgCallBack.Name = "1.0";
            }
            if (MsgCallBack.Name != "2.0")
            {
                MsgCallBack.Name = "1.0";
            }

            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == MsgCallBack.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }

            EFPagingInfo <MsgCallBack> p = new EFPagingInfo <MsgCallBack>();

            if (MsgCallBack.Pg.IsNullOrEmpty())
            {
                MsgCallBack.Pg = 1;
            }
            if (!MsgCallBack.Pg.IsNullOrEmpty())
            {
                p.PageIndex = MsgCallBack.Pg;
            }
            if (!MsgCallBack.Pgs.IsNullOrEmpty())
            {
                p.PageSize = MsgCallBack.Pgs;
            }

            p.SqlWhere.Add(f => f.UId == baseUsers.Id);
            p.SqlWhere.Add(f => f.State > 0);

            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <MsgCallBack> List  = Entity.Selects <MsgCallBack>(p);
            IList <MsgCallBack>        iList = new List <MsgCallBack>();

            if (MsgCallBack.Name == "2.0")
            { //处理接口
                var i = 1;
                foreach (var item in List)
                {
                    if (item.State == 2)
                    {
                        if (!item.Result.IsNullOrEmpty())
                        {
                            MsgCallBack Msg = new MsgCallBack();
                            Msg.Id      = i;
                            Msg.Info    = item.Result;
                            Msg.State   = 2;
                            Msg.AddTime = (DateTime)item.EditTime;
                            Msg.Cols    = "Info,State,AddTime";
                            iList.Add(Msg);
                            i++;
                        }
                    }
                    MsgCallBack msg = new MsgCallBack();
                    msg.Id      = i;
                    msg.Info    = item.Info;
                    msg.State   = 1;
                    msg.AddTime = item.AddTime;
                    msg.Cols    = "Info,State,AddTime";
                    iList.Add(msg);
                    i++;
                }
                if (List.TotalPage == MsgCallBack.Pg || List.TotalPage == 0)
                {
                    MsgCallBack msg = new MsgCallBack();
                    msg.Id      = i;
                    msg.Info    = "您好,很高兴为您服务!";
                    msg.State   = 2;
                    msg.AddTime = DateTime.Now;
                    msg.Cols    = "Info,State,AddTime";
                    iList.Add(msg);
                    i++;
                }
                iList = iList.OrderByDescending(n => n.Id).ToList();
            }
            else
            {
                iList = List.ToList();
            }
            StringBuilder sb = new StringBuilder("");

            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            DataObj.Data = sb.ToString();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
예제 #14
0
        public void XLSDo(Orders Orders, EFPagingInfo <Orders> p, bool?IsShowSupAgent, int TimeType = 1)
        {
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            p = this.Condition(Orders, p, IsShowSupAgent, TimeType);

            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Orders> OrdersList = Entity.Selects <Orders>(p);

            if (OrdersList.Count() > 0)
            {
                #region 导出
                string       file    = Server.MapPath("/template") + "\\finorders.xlsx";
                ExcelPackage package = new ExcelPackage(new FileInfo(file), true);
                var          sheet   = package.Workbook.Worksheets[1];
                var          cells   = sheet.Cells;
                int          Rows    = OrdersList.Count();
                //设置数据开始行
                int Befor = 2;
                sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                int i = Befor;
                sheet.Row(i - 1).Height = 22;//设置行高
                int maxCol = 0;
                //获取机构及管理员
                IList <Orders> List = OrdersList.GroupBy(n => n.UId).Select(n => n.First()).ToList();
                List <int>     UId  = new List <int>();
                foreach (var pp in List)
                {
                    UId.Add(pp.UId);
                }
                IList <Users>     UsersList     = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
                IList <PayConfig> PayConfigList = Entity.PayConfig.Where(n => n.State == 1).ToList();
                IList <SysAgent>  SysAgentList  = Entity.SysAgent.ToList();
                foreach (var item in OrdersList)
                {
                    #region MyRegion
                    string AName = "--";
                    if (item.AId > 0)
                    {
                        SysAgent SA = SysAgentList.FirstOrNew(n => n.Id == item.Agent);
                        if (!SA.Name.IsNullOrEmpty())
                        {
                            AName = SA.Name;
                        }
                    }
                    string BName = "--";
                    Users  OU    = UsersList.FirstOrNew(n => n.Id == item.UId);
                    if (!OU.TrueName.IsNullOrEmpty())
                    {
                        BName = OU.TrueName;
                    }
                    PayConfig PayConfig = PayConfigList.FirstOrNew(n => n.Id == item.PayWay);
                    sheet.Row(i).Height = 22;//设置行高
                    //机构
                    cells["A" + i].Value = AName;
                    //交易号
                    cells["B" + i].Value = item.TNum;
                    //交易商户
                    cells["C" + i].Value = OU.NeekName + "[" + OU.TrueName + "]";
                    //交易类型
                    cells["D" + i].Value = item.GetTTName();
                    //交易内容
                    cells["E" + i].Value = item.GetPayNameWithTName();
                    //交易金额
                    cells["F" + i].Value = item.Amoney.ToString("f2");
                    //交易时间
                    cells["G" + i].Value = item.PayTime;
                    //入账时间
                    cells["H" + i].Value = (item.InTimed != null?Convert.ToDateTime(item.InTimed).ToString():"");
                    //支付方式
                    cells["I" + i].Value = PayConfig.Name;
                    //订单状态
                    cells["J" + i].Value = item.GetState();
                    string temp = string.Empty;
                    if (item.TType == 2 || item.TType == 5)
                    {
                        temp = "T+" + item.TrunType;
                    }
                    if (item.TType == 1 || item.TType == 7 || item.TType == 8 || item.TType == 9)
                    {
                        temp = "T+" + item.LagEntryDay;
                    }
                    //接收方式
                    cells["K" + i].Value = temp;
                    double  I = 0, K = 0, N = 0;
                    decimal J = 0, L = 0, M = 0;
                    string  Is = "";
                    #region MyRegion
                    if (item.TType == 1)
                    {                                                                                                                            //银联卡支付订单
                        OrderRecharge OrderRecharge = Entity.OrderRecharge.FirstOrNew(n => n.OId == item.TNum);
                        I = OrderRecharge.UserRate;                                                                                              //商户费率
                        J = OrderRecharge.Poundage;                                                                                              //手续费
                        K = OrderRecharge.SysRate;                                                                                               //第三方费率
                        L = ((decimal)OrderRecharge.SysRate * OrderRecharge.Amoney).Ceiling();                                                   //第三方手续费
                        N = OrderRecharge.AgentPayGet;                                                                                           //分支机构提成
                        M = OrderRecharge.Poundage - (decimal)OrderRecharge.SysRate * OrderRecharge.Amoney - (decimal)OrderRecharge.AgentPayGet; //利润
                    }
                    if (item.TType == 2)
                    { //提现订单
                        OrderCash OrderCash = Entity.OrderCash.FirstOrNew(n => n.OId == item.TNum);
                        I = 0;
                        if (!OrderCash.ECash.IsNullOrEmpty() && !OrderCash.Cash.IsNullOrEmpty())
                        {
                            Is = OrderCash.ECash.ToMoney() + "+" + (OrderCash.Cash * 100).ToString("F2") + "%";
                        }
                        else if (!OrderCash.ECash.IsNullOrEmpty())
                        {
                            Is = OrderCash.ECash.ToMoney();
                        }
                        else if (!OrderCash.Cash.IsNullOrEmpty())
                        {
                            Is = (OrderCash.Cash * 100).ToString("F2") + "%";
                        }
                        else
                        {
                            Is = "0";
                        }
                        J = (decimal)OrderCash.UserRate;                                                        //手续费
                        K = 0;                                                                                  //第三方费率
                        L = OrderCash.CashRate;                                                                 //第三方手续费
                        N = OrderCash.AgentCashGet;                                                             //分支机构提成
                        M = (decimal)OrderCash.UserRate - OrderCash.CashRate - (decimal)OrderCash.AgentCashGet; //利润
                    }
                    if (item.TType == 3)
                    {                                                                                               //转帐订单
                        OrderTransfer OrderTransfer = Entity.OrderTransfer.FirstOrNew(n => n.OId == item.TNum);
                        I = OrderTransfer.UserRate;                                                                 //商户费率
                        J = OrderTransfer.Poundage;                                                                 //手续费
                        K = OrderTransfer.SysRate;                                                                  //第三方费率
                        L = ((decimal)OrderTransfer.SysRate * OrderTransfer.Amoney).Ceiling();                      //第三方手续费
                        N = OrderTransfer.AgentPayGet;                                                              //分支机构提成
                        M = OrderTransfer.Amoney - OrderTransfer.PayMoney - L - (decimal)OrderTransfer.AgentPayGet; //利润
                    }
                    if (item.TType == 5)
                    {                                                                                      //付房租订单
                        OrderHouse OrderHouse = Entity.OrderHouse.FirstOrNew(n => n.OId == item.TNum);
                        I = OrderHouse.UserRate + (double)OrderHouse.CashRate;                             //商户费率
                        J = OrderHouse.Poundage;                                                           //手续费
                        K = OrderHouse.SysRate;                                                            //第三方费率
                        L = ((decimal)OrderHouse.SysRate * OrderHouse.Amoney).Ceiling();                   //第三方手续费
                        N = OrderHouse.AgentPayGet;                                                        //分支机构提成
                        M = OrderHouse.Amoney - OrderHouse.PayMoney - L - (decimal)OrderHouse.AgentPayGet; //利润
                    }
                    if (item.TType == 6)
                    {                                                                            //升级订单
                        PayConfigOrder PayConfigOrder = Entity.PayConfigOrder.FirstOrNew(n => n.OId == item.TNum);
                        I = 0;                                                                   //商户费率
                        J = PayConfigOrder.Poundage;                                             //手续费
                        K = PayConfigOrder.SysRate;                                              //第三方费率
                        L = ((decimal)PayConfigOrder.SysRate * PayConfigOrder.Amoney).Ceiling(); //第三方手续费
                        N = PayConfigOrder.AgentGet;                                             //分支机构提成
                        M = PayConfigOrder.Amoney - (decimal)PayConfigOrder.AgentGet;            //利润
                    }
                    if (item.TType == 7 || item.TType == 8 || item.TType == 9)
                    {                                                                                                        //当面付
                        OrderF2F OrderF2F = Entity.OrderF2F.FirstOrNew(n => n.OId == item.TNum);
                        I = OrderF2F.UserRate;                                                                               //商户费率
                        J = OrderF2F.Poundage;                                                                               //手续费
                        K = OrderF2F.SysRate;                                                                                //第三方费率
                        L = ((decimal)OrderF2F.SysRate * OrderF2F.Amoney).Ceiling();                                         //第三方手续费
                        N = OrderF2F.AgentPayGet;                                                                            //分支机构提成
                        M = OrderF2F.Poundage - (decimal)OrderF2F.SysRate * OrderF2F.Amoney - (decimal)OrderF2F.AgentPayGet; //利润
                    }
                    if (item.TType == 10)
                    {                                                         //升级订单
                        DaiLiOrder DaiLiOrder = Entity.DaiLiOrder.FirstOrNew(n => n.OId == item.TNum);
                        I = 0;                                                //商户费率
                        J = 0;                                                //手续费
                        K = 0;                                                //第三方费率
                        L = 0;                                                //第三方手续费
                        N = DaiLiOrder.AgentGet;                              //分支机构提成
                        M = DaiLiOrder.Amoney - (decimal)DaiLiOrder.AgentGet; //利润
                    }
                    #endregion
                    //用户费率9
                    if (item.TType == 2)
                    {
                        cells["L" + i].Value = Is;
                    }
                    else
                    {
                        cells["L" + i].Value = I;
                    }
                    //用户手续费10
                    cells["M" + i].Value = J;
                    //支出费率11 系统费率
                    cells["N" + i].Value = K;
                    //支出手续费12
                    cells["O" + i].Value = L;
                    //利润13
                    cells["P" + i].Value = M;
                    //结算金额14
                    cells["Q" + i].Value = N;
                    i++;
                    #endregion
                }
                sheet.Row(i).Height = 40;//设置行高
                //交易总额
                cells["F" + i].Formula = "SUM(F" + Befor + ":F" + (i - 1) + ")";
                //用户手续费10
                cells["M" + i].Formula = "SUM(M" + Befor + ":M" + (i - 1) + ")";
                //支出手续费12
                cells["O" + i].Formula = "SUM(O" + Befor + ":O" + (i - 1) + ")";
                //利润13
                cells["P" + i].Formula = "SUM(P" + Befor + ":P" + (i - 1) + ")";
                //结算金额14
                cells["Q" + i].Formula = "SUM(Q" + Befor + ":Q" + (i - 1) + ")";

                i--;
                maxCol = 17;
                //cells["B" + (i + 2)].Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Left.Style   = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Right.Style  = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Top.Style    = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;//居中
                sheet.Cells[Befor, 7, i, 7].Style.Numberformat.Format      = "yyyy-mm-dd HH:mm:ss";
                sheet.Cells[Befor, 8, i, 8].Style.Numberformat.Format      = "yyyy-mm-dd HH:mm:ss";
                sheet.Cells[Befor, 12, i, 12].Style.Numberformat.Format    = "#0.00%";
                sheet.Cells[Befor, 14, i, 14].Style.Numberformat.Format    = "#0.00%";
                i++;
                sheet.Cells[Befor, 6, i, 6].Style.Numberformat.Format   = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 13, i, 13].Style.Numberformat.Format = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 15, i, 15].Style.Numberformat.Format = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 16, i, 16].Style.Numberformat.Format = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 17, i, 17].Style.Numberformat.Format = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                Response.BinaryWrite(package.GetAsByteArray());
                //输出
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;  filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99) + ".xlsx");
                #endregion
            }
            else
            {
                Response.Write("暂无符合条件数据");
            }
        }
예제 #15
0
        public ActionResult Index(PagerParametersWithSortFields pagerParameters, string searchPhrase, string contentTypes, int?projectId)
        {
            if (!this.contentOwnershipService.IsCurrentUserCustomer() &&
                !this.contentOwnershipService.IsCurrentUserOperator())
            {
                return(new HttpUnauthorizedResult());
            }

            var pager = new Pager(_siteService.GetSiteSettings(), pagerParameters);

            var matchedContentTypes = string.IsNullOrEmpty(contentTypes) ?
                                      contentTypes.Split(',').Where(c => this.searchFieldsBasedOnContentType.Any(d => d.Key == c)) :
                                      this.searchFieldsBasedOnContentType.Keys;

            if (matchedContentTypes.Count() == 0)
            {
                matchedContentTypes = this.searchFieldsBasedOnContentType.Keys;
            }

            var fields = this.searchFieldsBasedOnContentType
                         .Where(c => matchedContentTypes.Any(d => d == c.Key))
                         .SelectMany(d => d.Value)
                         .Distinct()
                         .ToArray();

            IPageOfItems <IContent> searchHits = null;

            try
            {
                searchHits = _projectSearchService.Query(pagerParameters, searchPhrase, projectId, matchedContentTypes.ToArray(), fields);
            }
            catch (Exception exception)
            {
                Logger.Error(T("Invalid search query: {0}", exception.Message).Text);
            }

            var list = Shape.List();

            foreach (var contentItem in searchHits)
            {
                var     contentType = contentDefinitionManager.GetTypeDefinition(contentItem.ContentItem.ContentType);
                dynamic model       = new ExpandoObject();
                model.Shape = _contentManager.BuildDisplay(contentItem, "Summary");
                model.ContentTypeDisplayName = contentType.DisplayName;
                list.Add(model);
            }



            var pagerShape      = Shape.Pager(pager).TotalItemCount(searchHits.TotalItemCount);
            var searchViewModel = new ProjectSearchViewModel
            {
                Query          = searchPhrase,
                TotalItemCount = searchHits.TotalItemCount,
                StartPosition  = (pager.Page - 1) * pager.PageSize + 1,
                EndPosition    = pager.Page * pager.PageSize > searchHits.TotalItemCount ? searchHits.TotalItemCount : pager.Page * pager.PageSize,
                ContentItems   = list,
                ProjectId      = projectId,
                ContentTypes   = contentTypes,
                Pager          = pagerShape
            };

            if (projectId.HasValue)
            {
                var project = this.projectService.GetProject(projectId.Value);
                searchViewModel.ProjectName = project != null ? project.Title : string.Empty;
            }

            return(View(searchViewModel));
        }
        public ActionResult Index(Card Card, EFPagingInfo <Card> p, string Num0, string Num1, int IsFirst = 0)
        {
            bool SetSave = false;

            if (checkPower("SetSave"))
            {
                SetSave = true;
            }
            ViewBag.SetSave = SetSave;

            if (!Card.Code.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Code == Card.Code);
            }
            if (!Num0.IsNullOrEmpty() && !Num1.IsNullOrEmpty())
            {
                long num0 = Int64.Parse(Num0);
                long num1 = Int64.Parse(Num1);
                num0 = num0 - 1000000000;
                num1 = num1 - 1000000000;
                p.SqlWhere.Add(f => f.Id >= num0 && f.Id <= num1);
            }
            else
            {
                if (!Num0.IsNullOrEmpty())
                {
                    p.SqlWhere.Add(f => f.Code == Num0);
                }
            }
            if (!Card.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == (Card.State == 99 ? 0 : Card.State));
            }
            if (!Card.AId.IsNullOrEmpty())
            {
                if (Card.AId == 99)
                {
                    p.SqlWhere.Add(f => f.AdminId == 0);
                }
                if (Card.AId == 1)
                {
                    p.SqlWhere.Add(f => f.AdminId > 0);
                }
            }
            if (!Card.AdminId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AdminId == Card.AdminId);
            }
            if (BasicAgent.LinkMobile == AdminUser.UserName)
            {
                p.SqlWhere.Add(f => f.AId == BasicAgent.Id);//读取全部分支机构
                ViewBag.SysAdminList = Entity.SysAdmin.Where(n => n.AgentId == BasicAgent.Id && n.State == 1).ToList();
            }
            else
            {
                p.SqlWhere.Add(f => f.AdminId == AdminUser.Id);//读取用户
                ViewBag.SysAdminList = new List <SysAdmin>();
            }
            if (p.PageSize.IsNullOrEmpty())
            {
                p.PageSize = 20;
            }
            if (p.PageSize == 10)
            {
                p.PageSize = 20;
            }
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Card> CardList = null;

            if (IsFirst == 0)
            {
                CardList = new PageOfItems <Card>(new List <Card>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                CardList = Entity.Selects <Card>(p);
            }
            ViewBag.CardList = CardList;
            ViewBag.Card     = Card;
            ViewBag.Num0     = Num0;
            ViewBag.Num1     = Num1;
            IList <SysAgent> SysAgentList = new List <SysAgent>();

            if (BasicAgent.Tier < BasicAgent.AgentLevelMax)
            {
                SysAgentList = Entity.SysAgent.Where(n => n.AgentID == BasicAgent.Id).ToList();
            }
            ViewBag.SysAgentList = SysAgentList;
            ViewBag.Save         = this.checkPower("Save");

            return(View());
        }
예제 #17
0
        /// <summary>
        /// 导出
        /// </summary>
        /// <returns></returns>
        public FileResult ExcelExport(DeductMoney DeductMoney, EFPagingInfo <DeductMoney> p, int IsFirst = 0, string Mobile = "")
        {
            if (!DeductMoney.TState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TState == DeductMoney.TState);
            }
            if (!DeductMoney.UserName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.UserName.Contains(DeductMoney.UserName));
            }
            if (!Mobile.IsNullOrEmpty())
            {
                Users Users = Entity.Users.FirstOrDefault(n => n.Mobile == Mobile);
                if (Users != null)
                {
                    p.SqlWhere.Add(f => f.UId == Users.Id);
                }
            }
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <DeductMoney> DeductMoneyList = null;

            if (IsFirst == 0)
            {
                DeductMoneyList = new PageOfItems <DeductMoney>(new List <DeductMoney>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                DeductMoneyList = Entity.Selects <DeductMoney>(p);
            }

            List <int>    UId       = DeductMoneyList.Select(o => o.UId).Distinct().ToList();
            IList <Users> UsersList = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();


            DataTable table = new DataTable();
            DataRow   row   = null;

            // 创建 datatable
            table.Columns.Add(new DataColumn("真实姓名", typeof(string)));
            table.Columns.Add(new DataColumn("金额", typeof(string)));
            table.Columns.Add(new DataColumn("状态", typeof(string)));
            table.Columns.Add(new DataColumn("手机号", typeof(string)));
            table.Columns.Add(new DataColumn("发起人", typeof(string)));
            table.Columns.Add(new DataColumn("发起时间", typeof(string)));
            table.Columns.Add(new DataColumn("审核人", typeof(string)));
            table.Columns.Add(new DataColumn("审核时间", typeof(string)));

            // 填充数据
            foreach (var item in DeductMoneyList)
            {
                Users Users = UsersList.FirstOrNew(n => n.Id == item.UId);
                row    = table.NewRow();
                row[0] = item.UserName;
                row[1] = item.Amoney.ToString("f2");

                string TState = "待审核";
                switch (item.TState)
                {
                case 1:
                    TState = "待审核";
                    break;

                case 2:
                    TState = "审核通过";
                    break;

                case 3:
                    TState = "审核不通过";
                    break;
                }

                row[2] = TState;
                row[3] = Users.Mobile;
                row[4] = item.CreateAdminName;
                row[5] = item.AddTime;
                row[6] = item.AuditAdminName;
                row[7] = (item.AuditTime.HasValue ? item.AuditTime.Value.ToString() : "");
                table.Rows.Add(row);
            }
            string Time = DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99);

            return(this.ExportExcelBase(table, "扣款管理-" + Time));
        }
        public ActionResult Index(Users Users, EFPagingInfo <Users> p, bool?IsShowSupAgent, int?LowerLevel, int IsFirst = 0)
        {
            #region 条件
            if (checkPower("ALL"))
            {
                IsAll = true;
            }
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            LowerLevel    = LowerLevel == null ? 0 : LowerLevel;
            ViewBag.IsAll = IsAll;

            /*有没有指定交易所属代理
             * 有:校验是否从属关系
             * 无:指定当前代理
             */
            if (!Users.Agent.IsNullOrEmpty())
            {
                if (!IsBelongToAgent(Users.Agent))
                {
                    ViewBag.ErrorMsg = "只能查询当前用户下属代理的交易";
                    return(View("Error"));
                }
            }
            else
            {
                Users.Agent = this.BasicAgent.Id;
            }
            IList <SysAgent> SysAgentList = null;
            //没有"管理所有"权限的只能看到操作员自己的数据
            if (!IsAll)
            {
                p.SqlWhere.Add(f => f.AId == AdminUser.Id);//指定的操作员
            }
            else
            {
                if ((bool)IsShowSupAgent)
                {
                    IList <int> UID = new List <int>();
                    if (LowerLevel != 0)
                    {
                        SysAgent LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == LowerLevel).FirstOrNew();
                        SysAgentList = LowerLevelAgent.GetSupAgent(Entity, true);
                    }
                    else
                    {
                        SysAgentList = BasicAgent.GetSupAgent(Entity);//获取所有下级代理商信息
                    }
                    foreach (var s in SysAgentList)
                    {
                        UID.Add(s.Id);
                    }
                    p.SqlWhere.Add(f => UID.Contains(f.Agent));
                }
                else
                {
                    p.SqlWhere.Add(f => f.Agent == Users.Agent);//指定的代理
                }
            }
            if (Users.CardStae.IsNullOrEmpty())
            {
                Users.CardStae = 2;
            }
            if (!Users.RegAddress.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.RegAddress.Contains(Users.RegAddress));
            }
            if (!Users.UserName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.UserName == Users.UserName);
            }
            if (!Users.TrueName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TrueName == Users.TrueName || f.NeekName == Users.TrueName);
            }
            if (!Users.Mobile.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Mobile == Users.Mobile);
            }
            if (!Users.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == (Users.State == 99 ? 0 : Users.State));
            }
            if (!Users.CardNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.CardNum == Users.CardNum);
            }
            if (!Users.CardStae.IsNullOrEmpty())
            {
                int CardStae = Users.CardStae;
                if (CardStae == 99)
                {
                    CardStae = 0;
                }
                if (CardStae != 88)
                {
                    p.SqlWhere.Add(f => f.CardStae == CardStae);
                }
            }
            #endregion
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Users> UsersList = null;
            if (IsFirst == 0)
            {
                UsersList = new PageOfItems <Users>(new List <Users>(), 0, 10, 0, new Hashtable());
            }
            else
            {
                UsersList = Entity.Selects <Users>(p);
            }

            foreach (var item in UsersList)
            {
                item.Address = item.QRCode();
            }
            ViewBag.UsersList = UsersList;
            ViewBag.Users     = Users;
            SysSet SysSet = Entity.SysSet.FirstOrNew();
            ViewBag.SysSet         = SysSet;
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.SysAgentList   = SysAgentList;
            ViewBag.LowerLevel     = LowerLevel;
            ViewBag.Entity         = Entity;
            ViewBag.IsAssureImg    = checkPower("SaveAssureImg");
            ViewBag.IsFrozen       = this.checkPower("Frozen");
            ViewBag.IsUnFrozen     = this.checkPower("UnFrozen");
            ViewBag.MyUsers        = this.checkPower("MyUsers");

            return(View());
        }
예제 #19
0
        public void XLSDo(OrderHouse OrderHouse, EFPagingInfo <OrderHouse> p)
        {
            if (OrderHouse.AddTime.IsNullOrEmpty())
            {
                OrderHouse.AddTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (OrderHouse.FTime.IsNullOrEmpty())
            {
                //OrderHouse.FTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                OrderHouse.FTime = DateTime.Now;
            }
            if (!OrderHouse.AddTime.IsNullOrEmpty() && !OrderHouse.FTime.IsNullOrEmpty())
            {
                // OrderHouse.FTime = ((DateTime)OrderHouse.FTime).AddDays(1);
                p.SqlWhere.Add(f => f.AddTime > OrderHouse.AddTime && f.AddTime < OrderHouse.FTime);
            }
            //if (!OrderHouse.UId.IsNullOrEmpty()) { p.SqlWhere.Add(f => f.UId == OrderHouse.UId); }
            if (!OrderHouse.HouseOwner.IsNullOrEmpty())
            {
                IList <Users> UList = Entity.Users.Where(n => n.TrueName.Contains(OrderHouse.HouseOwner) || n.NeekName.Contains(OrderHouse.HouseOwner) || n.UserName == OrderHouse.HouseOwner).ToList();
                List <int>    UIds  = new List <int>();
                foreach (var pp in UList)
                {
                    UIds.Add(pp.Id);
                }
                p.SqlWhere.Add(f => UIds.Contains(f.UId));
            }
            if (!OrderHouse.OId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OId == OrderHouse.OId);
            }
            if (!OrderHouse.Agent.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Agent == OrderHouse.Agent);
            }
            if (!OrderHouse.TrunType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TrunType == (OrderHouse.TrunType == 99 ? 0 : OrderHouse.TrunType));
            }
            if (!OrderHouse.AId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AId == OrderHouse.AId);
            }
            if (!OrderHouse.FId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.FId == OrderHouse.FId);
            }
            if (!OrderHouse.AgentState.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentState == OrderHouse.AgentState);
            }
            p.SqlWhere.Add(f => f.OrderState == 2 && f.PayState == 1 && f.FState == 0);
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <OrderHouse> OrderHouseList = Entity.Selects <OrderHouse>(p);

            if (OrderHouseList.Count() > 0)
            {
                //当前导出缩合表,民生跨行,工行,民生同行
                int    BankIdMS   = 13; //民生ID
                int    BankIdGS   = 1;  //工商Id
                string BankNameMS = Entity.BasicBank.FirstOrNew(n => n.Id == BankIdMS).Name;
                string BankNameGS = Entity.BasicBank.FirstOrNew(n => n.Id == BankIdGS).Name;
                //加载对应银行模板
                string       tempname = "bank.xlsx";
                string       file     = Server.MapPath("/template") + "\\" + tempname;
                ExcelPackage package  = new ExcelPackage(new FileInfo(file), true);
                //民生
                IList <OrderHouse> ListMS = OrderHouseList.Where(n => n.Bank == BankNameMS).ToList();
                //工商
                IList <OrderHouse> ListGS = OrderHouseList.Where(n => n.Bank == BankNameGS).ToList();
                //其它
                IList <OrderHouse> ListOT = OrderHouseList.Where(n => n.Bank != BankNameMS && n.Bank != BankNameGS).ToList();
                //设置数据开始行
                int Befor  = 0;
                int maxCol = 0;//最大列数
                if (ListOT.Count > 0)
                {
                    //加载模板第一张表
                    var     sheet      = package.Workbook.Worksheets[1];
                    var     cells      = sheet.Cells;
                    decimal TotalMoney = 0; //计算总金额
                    int     Rows       = ListOT.Count();
                    Befor = 5;              //民生他行从5开始
                    sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                    int i = Befor;
                    foreach (var item in ListOT)
                    {
                        string  zdlx  = "2";
                        decimal Money = item.PayMoney;
                        TotalMoney += Money;
                        //制单类型
                        cells["A" + i].Value = zdlx.ToString();
                        //企业自制凭证号
                        cells["B" + i].Value = item.Id.ToString().PadLeft(8, '0');
                        //客户号
                        cells["C" + i].Value = "2200488356";
                        //预约标志
                        cells["D" + i].Value = "0";
                        //付款账号
                        cells["E" + i].Value = "613111800";
                        //交易金额
                        cells["F" + i].Value = Money;
                        //收款账号
                        cells["G" + i].Value = item.CardNum;
                        //收款人姓名
                        cells["H" + i].Value = item.HouseOwner;
                        //收款账户类型
                        cells["I" + i].Value = "1";
                        //子客户号
                        cells["J" + i].Value = "";
                        //子付款账号
                        cells["K" + i].Value = "";
                        //子付款账户名
                        cells["L" + i].Value = "";
                        //子付款账户开户行名
                        cells["M" + i].Value = "";
                        //用途
                        cells["N" + i].Value = "房租";
                        //汇路
                        cells["O" + i].Value = Money > 50000 ? "7" : "6";
                        //是否通知收款人
                        cells["P" + i].Value = "0";
                        //手机
                        cells["Q" + i].Value = item.Mobile;
                        //邮箱
                        cells["R" + i].Value = "";
                        //支付行号&支付行名称
                        cells["S" + i].Value = item.Bin + "&" + item.Deposit;
                        maxCol = 19;
                        i++;
                    }
                    i--;
                    //审核方式(文件类型)
                    cells["B1"].Value = "1";
                    //总金额
                    cells["B2"].Value = TotalMoney.ToString("F2");
                    //总交易数
                    cells["B3"].Value = Rows.ToString();
                    sheet.Cells[Befor, 6, i, 6].Style.Numberformat.Format = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                }
                if (ListMS.Count > 0)
                {
                    //加载模板第二张表
                    var     sheet      = package.Workbook.Worksheets[2];
                    var     cells      = sheet.Cells;
                    decimal TotalMoney = 0; //计算总金额
                    int     Rows       = ListMS.Count();
                    Befor = 9;              //民生本行从9开始
                    sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                    int i = Befor;
                    foreach (var item in ListMS)
                    {
                        decimal Money = item.PayMoney;
                        TotalMoney += Money;
                        //收款账号
                        cells["A" + i].Value = item.CardNum;
                        //交易金额
                        cells["B" + i].Value = Money.ToString("F2");
                        //收款人姓名
                        cells["C" + i].Value = item.HouseOwner;
                        //用途
                        cells["D" + i].Value = "349";
                        maxCol = 4;
                        i++;
                    }
                    i--;
                    //总金额
                    cells["B6"].Value = TotalMoney.ToString();
                    //总交易数
                    cells["B7"].Value = Rows.ToString();
                }
                if (ListGS.Count > 0)
                {
                    //加载模板第三张表
                    var     sheet      = package.Workbook.Worksheets[3];
                    var     cells      = sheet.Cells;
                    decimal TotalMoney = 0; //计算总金额
                    int     Rows       = ListGS.Count();
                    Befor = 2;              //工行本行从2开始
                    sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                    int i = Befor;
                    IList <BasicProvince> PList = Entity.BasicProvince.Where(n => n.State == 1).ToList();
                    IList <BasicCity>     CList = Entity.BasicCity.Where(n => n.State == 1).ToList();
                    foreach (var item in ListGS)
                    {
                        decimal Money = item.PayMoney;
                        TotalMoney += Money;
                        //币种
                        cells["A" + i].Value = "RMB";
                        //日期
                        cells["B" + i].Value = DateTime.Now.ToString("yyyyMMdd");
                        //明细标志
                        cells["C" + i].Value = "";
                        //顺序号
                        cells["D" + i].Value = i - Befor + 1;
                        //付款账号开户行
                        cells["E" + i].Value = "工商银行";
                        //付款账号
                        cells["F" + i].Value = "4000051709100125887";
                        //付款账号名称
                        cells["G" + i].Value = "好付支付(深圳)有限公司";
                        //收款账号开户行
                        cells["H" + i].Value = "工商银行";
                        //收款账号省份
                        cells["I" + i].Value = PList.FirstOrNew(n => n.Id == item.Province).Name;
                        //收款账号地市
                        cells["J" + i].Value = CList.FirstOrNew(n => n.Id == item.City).Name;
                        //收款账号地区码
                        cells["K" + i].Value = "";
                        //收款账号
                        cells["L" + i].Value = item.CardNum;
                        //收款账号名称
                        cells["M" + i].Value = item.HouseOwner;
                        //金额
                        cells["N" + i].Value = Money.ToString("F2");
                        //汇款用途
                        cells["O" + i].Value = "房租";
                        //备注信息
                        cells["P" + i].Value = "";
                        //汇款方式
                        cells["Q" + i].Value = 1;
                        //收款账户短信通知手机号码
                        cells["R" + i].Value = "";
                        //自定义序号
                        cells["S" + i].Value = item.Id;
                        maxCol = 19;
                        i++;
                    }
                    i--;
                }
                //无数据表删除
                if (ListGS.Count == 0)
                {
                    package.Workbook.Worksheets.Delete(package.Workbook.Worksheets[3]);
                }
                if (ListMS.Count == 0)
                {
                    package.Workbook.Worksheets.Delete(package.Workbook.Worksheets[2]);
                }
                if (ListOT.Count == 0)
                {
                    package.Workbook.Worksheets.Delete(package.Workbook.Worksheets[1]);
                }
                Response.BinaryWrite(package.GetAsByteArray());//输出
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;  filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99) + ".xlsx");
            }
            else
            {
                Response.Write("暂无符合条件数据");
            }
        }
        //
        // GET: /ApplyCreditCard/

        public ActionResult Index(ApplyCreditCard ApplyCreditCard, EFPagingInfo <ApplyCreditCard> p, DateTime?STime, DateTime?ETime, int IsFirst = 0, int IsShowSupAgent = -1, string BankName = "")
        {
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.Entity         = Entity;
            if (STime.IsNullOrEmpty())
            {
                STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (ETime.IsNullOrEmpty())
            {
                // ETime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                ETime = DateTime.Now;
            }
            ViewBag.ETime           = ETime;
            ViewBag.STime           = STime;
            ViewBag.BasicBankList   = Entity.BasicBank.Where(n => n.CreditCardUrl != null).ToList();
            ViewBag.ApplyCreditCard = ApplyCreditCard;
            ViewBag.BankName        = BankName;
            ViewBag.BasicAgent      = BasicAgent;
            if (IsFirst == 0)
            {
                PageOfItems <ApplyCreditCard> ApplyCreditCardList1 = new PageOfItems <ApplyCreditCard>(new List <ApplyCreditCard>(), 0, 10, 0, new Hashtable());
                ViewBag.ApplyCreditCardList = ApplyCreditCardList1;
                return(View());
            }
            // ETime = ETime.Value.AddDays(1);
            p.SqlWhere.Add(f => f.AddTime >= STime && f.AddTime <= ETime);
            //if (BasicAgent.Tier == 1)
            //{
            //    p.SqlWhere.Add(f => f.FirstAgentId == BasicAgent.Id);
            //}
            //else
            //{
            //    p.SqlWhere.Add(f => f.AgentId == BasicAgent.Id);
            //}
            if (IsShowSupAgent == 1)
            {
                List <Int32>     AgentId      = new List <Int32>();
                IList <SysAgent> SysAgentList = BasicAgent.GetSupAgent(Entity);
                foreach (var pp in SysAgentList)
                {
                    AgentId.Add(pp.Id);
                }
                p.SqlWhere.Add(f => AgentId.Contains(f.AgentId));
            }
            else
            {
                p.SqlWhere.Add(f => f.AgentId == BasicAgent.Id);
            }
            if (!BankName.IsNullOrEmpty())
            {
                IList <BasicBank> BasicBankList = Entity.BasicBank.Where(b => b.Name.Contains(BankName)).ToList();
                IList <int>       BasicBankId   = new List <int>();
                foreach (var item in BasicBankList)
                {
                    BasicBankId.Add(item.Id);
                }
                p.SqlWhere.Add(f => BasicBankId.Contains(f.BankId));
            }
            if (!ApplyCreditCard.OrderNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.OrderNum == ApplyCreditCard.OrderNum);
            }
            if (!ApplyCreditCard.UserMobile.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.UserMobile == ApplyCreditCard.UserMobile);
            }
            if (!ApplyCreditCard.UserName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.UserName == ApplyCreditCard.UserName);
            }
            if (!ApplyCreditCard.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == ApplyCreditCard.State);
            }
            if (!ApplyCreditCard.FirstAgentAmount.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.FirstAgentAmount == ApplyCreditCard.FirstAgentAmount);
            }
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <ApplyCreditCard> ApplyCreditCardList = Entity.Selects <ApplyCreditCard>(p);

            ViewBag.ApplyCreditCardList = ApplyCreditCardList;

            return(View());
        }
        public ActionResult MyOrders(Orders Orders, EFPagingInfo <Orders> p)
        {
            p.SqlWhere.Add(f => f.UId == BasicUsers.Id || (f.RUId == BasicUsers.Id && f.PayState == 1));//交易所属用户
            if (!Orders.TNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TNum == Orders.TNum);
            }
            if (!Orders.STime.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AddTime >= Orders.STime);
            }
            if (!Orders.ETime.IsNullOrEmpty())
            {
                DateTime ETime = Orders.ETime.AddDays(1);
                p.SqlWhere.Add(f => f.AddTime < ETime);
            }
            #region 交易类型条件判断
            if (!Orders.TType.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TType == Orders.TType);//读取对应的类型
                if (Orders.TType == 1)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        switch (Orders.TState)
                        {
                        case 1:    //未付
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                            break;

                        case 2:    //已付
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                            break;

                        case 3:    //待传证照
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                            break;

                        case 4:    //待审核
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                            break;

                        case 5:    //审核失败
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                            break;
                        }
                    }
                }
                if (Orders.TType == 2)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
                if (Orders.TType == 3)
                {
                    switch (Orders.TState)
                    {
                    case 1:    //未付
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                        break;

                    case 2:    //已付
                        p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                        break;

                    case 3:    //待传证照
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                        break;

                    case 4:    //待审核
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                        break;

                    case 5:    //审核失败
                        p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                        break;
                    }
                }
                if (Orders.TType == 5)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        switch (Orders.TState)
                        {
                        case 99:    //未付
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                            break;

                        case 1:    //处理中
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 0);
                            break;

                        case 2:    //已汇出
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 2);
                            break;

                        case 4:    //出款中
                            p.SqlWhere.Add(f => (f.TState == 2 && f.PayState == 2 && f.IdCardState == 0) || (f.TState == 2 && f.PayState == 1 && f.IdCardState == 3));
                            break;

                        case 3:    //审核失败
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 4);
                            break;

                        case 5:    //退款中
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 3);
                            break;

                        case 6:    //已退款
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 4);
                            break;

                        case 7:    //待传身份证
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 1);
                            break;

                        case 8:    //已传身份证
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 1 && f.IdCardState == 2);
                            break;
                        }
                    }
                }
                if (Orders.TType == 6)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
                if (Orders.TType == 7 || Orders.TType == 8 || Orders.TType == 9)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        if (Orders.TState == 99)
                        {
                            p.SqlWhere.Add(f => f.TState == 0);
                        }
                        if (Orders.TState == 1)
                        {
                            p.SqlWhere.Add(f => f.TState == 1 && f.PayState == 0);
                        }
                        if (Orders.TState == 2)
                        {
                            p.SqlWhere.Add(f => f.TState == 2 && f.PayState == 1);
                        }
                    }
                }
                if (Orders.TType == 10)
                {
                    if (!Orders.TState.IsNullOrEmpty())
                    {
                        p.SqlWhere.Add(f => f.TState == Orders.TState);
                    }
                }
            }
            #endregion
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Orders> OrdersList = Entity.Selects <Orders>(p);
            ViewBag.OrdersList = OrdersList;
            ViewBag.Orders     = Orders;
            return(View());
        }
        public ActionResult Index(Card Card, EFPagingInfo <Card> p, string Num0, string Num1, bool?IsShowSupAgent, int IsFirst = 0)
        {
            if (IsShowSupAgent == null)
            {
                IsShowSupAgent = false;
            }
            if (IsFirst == 0)
            {
                PageOfItems <Card> CardList1 = new PageOfItems <Card>(new List <Card>(), 0, 10, 0, new Hashtable());
                ViewBag.CardList       = CardList1;
                ViewBag.Card           = Card;
                ViewBag.SysAgentList   = Entity.SysAgent.Where(n => n.State == 1).ToList();
                ViewBag.Num0           = Num0;
                ViewBag.Num1           = Num1;
                ViewBag.IsShowSupAgent = IsShowSupAgent;
                ViewBag.Add            = this.checkPower("Add");
                ViewBag.Xls            = this.checkPower("Xls");
                ViewBag.Save           = this.checkPower("Save");
                return(View());
            }
            if (!Card.Code.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Code == Card.Code);
            }
            if (!Card.AId.IsNullOrEmpty())
            {
                //是否要显示下级
                if ((bool)IsShowSupAgent)
                {
                    SysAgent         LowerLevelAgent = Entity.SysAgent.Where(s => s.Id == Card.AId).FirstOrNew();
                    IList <SysAgent> SysAgentList    = LowerLevelAgent.GetSupAgent(Entity);
                    IList <int>      UID             = new List <int>();
                    foreach (var s in SysAgentList)
                    {
                        UID.Add(s.Id);
                    }
                    p.SqlWhere.Add(f => UID.Contains(f.AId));
                }
                else
                {
                    p.SqlWhere.Add(f => f.AId == Card.AId);
                }
            }
            if (!Card.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == (Card.State == 99 ? 0 : Card.State));
            }
            if (!Card.Auto.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Auto == (Card.Auto == 99 ? 0 : Card.Auto));
            }
            if (!Num0.IsNullOrEmpty() && !Num1.IsNullOrEmpty())
            {
                long num0 = Int64.Parse(Num0);
                long num1 = Int64.Parse(Num1);
                num0 = num0 - 1000000000;
                num1 = num1 - 1000000000;
                p.SqlWhere.Add(f => f.Id >= num0 && f.Id <= num1);
            }
            else
            {
                if (!Num0.IsNullOrEmpty())
                {
                    p.SqlWhere.Add(f => f.Code == Num0);
                }
            }
            p.OrderByList.Add("Id", "DESC");
            if (p.PageSize.IsNullOrEmpty())
            {
                p.PageSize = 20;
            }
            if (p.PageSize == 10)
            {
                p.PageSize = 20;
            }
            IPageOfItems <Card> CardList = Entity.Selects <Card>(p);

            ViewBag.CardList       = CardList;
            ViewBag.Card           = Card;
            ViewBag.SysAgentList   = Entity.SysAgent.Where(n => n.State == 1).ToList();
            ViewBag.Num0           = Num0;
            ViewBag.Num1           = Num1;
            ViewBag.IsShowSupAgent = IsShowSupAgent;
            ViewBag.Add            = this.checkPower("Add");
            ViewBag.Xls            = this.checkPower("Xls");
            ViewBag.Save           = this.checkPower("Save");
            return(View());
        }
        public ActionResult OrdersRiskIndex(Orders Orders, EFPagingInfo <Orders> p, int IsFirst = 0)
        {
            ViewBag.Add  = this.checkPower("Add");
            ViewBag.Edit = this.checkPower("Edit");
            if (IsFirst == 0)
            {
                var AgentList1 = this.BasicAgent.GetSupAgent(this.Entity);
                PageOfItems <Orders> OrdersList1 = new PageOfItems <Orders>(new List <Orders>(), 0, 10, 0, new Hashtable());
                ViewBag.Orders     = Orders;
                ViewBag.OrdersList = OrdersList1;
                ViewBag.UsersList  = new List <Users>();
                ViewBag.AgentList  = AgentList1;
                return(View());
            }
            if (!Orders.DDAuto.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.DDAuto == Orders.DDAuto);
            }
            if (!Orders.IdCardState.IsNullOrEmpty())
            {
                if (Orders.IdCardState == 99)
                {
                    p.SqlWhere.Add(f => f.IdCardState > 0);
                }
                else
                {
                    p.SqlWhere.Add(f => f.IdCardState == Orders.IdCardState);
                }
            }
            else
            {
                Orders.IdCardState = 1;
                p.SqlWhere.Add(f => f.IdCardState == Orders.IdCardState);
            }
            if (!Orders.TNum.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TNum == Orders.TNum);
            }
            if (!Orders.STime.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.CardAddTime >= Orders.STime);
            }
            if (!Orders.ETime.IsNullOrEmpty())
            {
                var ETime = Orders.ETime.AddSeconds(-1);
                p.SqlWhere.Add(f => f.CardAddTime <= ETime);
            }
            //下级代理
            var AgentList = this.BasicAgent.GetSupAgent(this.Entity);

            if (this.BasicAgent.Tier == 1)
            {
                var aids = AgentList.Select(o => o.Id).ToList();
                p.SqlWhere.Add(o => aids.Contains(o.Agent));
            }
            else
            {
                p.SqlWhere.Add(o => o.Agent == this.BasicAgent.Id);
            }
            p.OrderByList.Add("CardAddTime", "DESC");
            IPageOfItems <Orders> OrdersList = Entity.Selects <Orders>(p);

            ViewBag.Orders     = Orders;
            ViewBag.OrdersList = OrdersList;
            //查询对应的商户
            List <int> UId = OrdersList.Select(o => o.UId).Distinct().ToList();

            ViewBag.UsersList     = Entity.Users.Where(n => n.State == 1 && UId.Contains(n.Id)).ToList();
            ViewBag.AgentList     = AgentList;
            ViewBag.SaveAssureImg = this.checkPower("SaveAssureImg");
            return(View("OrdersRiskIndex"));
        }
        public void XLSDo(Card Card, EFPagingInfo <Card> p, DateTime?FInTime, DateTime?FOutTime, string Num0, string Num1, string Password)
        {
            if (!Card.State.IsNullOrEmpty())
            {
                if (Card.State == 99)
                {
                    Card.State = 0;
                }
                p.SqlWhere.Add(f => f.State == Card.State);
            }
            if (!Card.Auto.IsNullOrEmpty())
            {
                if (Card.Auto == 99)
                {
                    Card.Auto = 0;
                }
                p.SqlWhere.Add(f => f.Auto == Card.Auto);
            }
            if (!Card.AId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AId == Card.AId);
            }
            if (!Card.AdminId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AdminId == Card.AdminId);
            }
            if (!FInTime.IsNullOrEmpty() && !FOutTime.IsNullOrEmpty())
            {
                // FOutTime = ((DateTime)FOutTime).AddDays(1);
                p.SqlWhere.Add(f => f.AddTime > FInTime && f.AddTime < FOutTime);
            }
            if (!Num0.IsNullOrEmpty() && !Num1.IsNullOrEmpty())
            {
                long num0 = Int64.Parse(Num0);
                long num1 = Int64.Parse(Num1);
                num0 = num0 - 1000000000;
                num1 = num1 - 1000000000;
                p.SqlWhere.Add(f => f.Id >= num0 && f.Id <= num1);
            }
            p.PageSize = 100000;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <Card> cardList = Entity.Selects <Card>(p);

            if (cardList.Count() > 0)
            {
                string       file    = Server.MapPath("/template") + "\\card.xlsx";
                ExcelPackage package = new ExcelPackage(new FileInfo(file), true);
                var          sheet   = package.Workbook.Worksheets[1];
                var          cells   = sheet.Cells;
                int          Rows    = cardList.Count();
                //设置数据开始行
                int Befor = 2;
                sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                int i = Befor;
                sheet.Row(i - 1).Height = 22;//设置行高
                string[] State  = new string[] { "已失效", "正常", "已使用" };
                string[] Auto   = new string[] { "自动", "保留" };
                int      maxCol = 0;
                //获取机构及管理员
                IList <SysAgent> SAList    = Entity.SysAgent.Where(n => n.State == 1).ToList();
                IList <SysAdmin> AdminList = Entity.SysAdmin.Where(n => n.State == 1 && n.AgentId > 0).ToList();
                foreach (var item in cardList)
                {
                    string AName = "--";
                    if (item.AId > 0)
                    {
                        SysAgent SA = SAList.FirstOrNew(n => n.Id == item.AId);
                        if (!SA.Name.IsNullOrEmpty())
                        {
                            AName = SA.Name;
                        }
                    }
                    string BName = "--";
                    if (item.AdminId > 0)
                    {
                        SysAdmin SAA = AdminList.FirstOrNew(n => n.Id == item.AdminId);
                        if (!SAA.TrueName.IsNullOrEmpty())
                        {
                            BName = SAA.TrueName;
                        }
                    }
                    sheet.Row(i).Height = 20;//设置行高
                    //机构
                    cells["A" + i].Value = AName;
                    //编号
                    cells["B" + i].Value = BName;
                    //卡号
                    cells["C" + i].Value = item.Code;
                    //密码
                    cells["D" + i].Value = item.PasWd;
                    //时间
                    cells["E" + i].Value = item.AddTime;
                    //状态
                    int state = (int)item.State;
                    if (state > 2)
                    {
                        state = 0;
                    }
                    cells["F" + i].Value = State[state];
                    //保留
                    byte auto = item.Auto;
                    if (auto > 2)
                    {
                        auto = 0;
                    }
                    cells["G" + i].Value = Auto[auto];
                    i++;
                }
                i--;
                maxCol = 7;
                //cells["B" + (i + 2)].Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Left.Style   = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Right.Style  = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Top.Style    = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;//居中
                sheet.Cells[Befor, 5, i, 5].Style.Numberformat.Format      = "yyyy-mm-dd HH:mm:ss";
                for (int j = i + 1; j <= i + 2; j++)
                {
                    sheet.Row(j).Height = 20;//设置行高
                }
                //设置密码
                if (!Password.IsNullOrEmpty())
                {
                    Response.BinaryWrite(package.GetAsByteArray(Password));
                }
                else
                {
                    Response.BinaryWrite(package.GetAsByteArray());
                }
                //输出
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;  filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99) + ".xlsx");
            }
            else
            {
                Response.Write("暂无符合条件数据");
            }
        }
예제 #25
0
 private static string getPreviousPagerButton <T>(IPageOfItems <T> pageOfAList, UrlHelper urlHelper, string routeName, Func <int, RouteValueDictionary> getPageRouteValueDictionary, string queryString, string previousText, string cssClass)
 {
     return(getPagerButton(pageOfAList, urlHelper, routeName, getPageRouteValueDictionary, pageOfAList.PageIndex > 0 ? pageOfAList.PageIndex - 1 : pageOfAList.PageIndex, queryString, previousText, !string.IsNullOrEmpty(cssClass) ? string.Format("prev {0}", cssClass) : "prev"));
 }
예제 #26
0
 public static string SearchResultPager <T>(this HtmlHelper htmlHelper, IPageOfItems <T> pageOfAList, Func <string, string, string> localize)
 {
     return(SearchResultPager(htmlHelper, pageOfAList, localize, null, localize("NewerPager", "&laquo; Newer"), localize("OlderPager", "Older &raquo;"), false));
 }
예제 #27
0
 private static string getNextPagerButton <T>(IPageOfItems <T> pageOfAList, UrlHelper urlHelper, string routeName, Func <int, RouteValueDictionary> getPageRouteValueDictionary, string queryString, string nextText, string cssClass)
 {
     return(getPagerButton(pageOfAList, urlHelper, routeName, getPageRouteValueDictionary, pageOfAList.PageIndex < pageOfAList.TotalPageCount - 1 ? pageOfAList.PageIndex + 1 : pageOfAList.PageIndex, queryString, nextText, !string.IsNullOrEmpty(cssClass) ? string.Format("next {0}", cssClass) : "next"));
 }
예제 #28
0
 public static string SearchResultPager <T>(this HtmlHelper htmlHelper, IPageOfItems <T> pageOfAList, Func <string, string, string> localize, object values, string previousText, string nextText, bool alwaysShowPreviousAndNext)
 {
     return(htmlHelper.SimplePager(pageOfAList, "PageOfPostsBySearch", values, previousText, nextText, alwaysShowPreviousAndNext));
 }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[Users]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);

            //获取用户信息
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Users.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.MiBao != 1)//未设置支付密码
            {
                DataObj.OutError("2008");
                return;
            }
            if (Users.UserType != 1 && Users.UserType != 2)
            {
                DataObj.OutError("9002");
                return;
            }

            //判断是否为代理商
            SysAgent         SysAgent     = Entity.SysAgent.FirstOrDefault(o => o.LinkMobile == baseUsers.UserName && o.State == 1);
            IList <SysAgent> SysAgentList = null;
            IList <Users>    UsersList    = null;
            SysSet           baseSysSet   = Entity.SysSet.FirstOrDefault();

            //1用户2代理商
            if (SysAgent == null && Users.UserType == 2)
            {
                DataObj.OutError("9003");
                return;
            }
            //if (Users.UserType == 1 && SysAgent!=null)
            //{
            //    UsersList = baseUsers.GetSupUsers(Entity, baseSysSet.GlobaPromoteMaxLevel);
            //    SysAgentList = SysAgent.GetSupAgent(Entity);
            //    IList<int> agents = SysAgentList.Select(o => o.Id).ToList();
            //    IList<Users> AgentUsersList = Entity.Users.Where(o => agents.Contains(o.Agent)).ToList();
            //    UsersList = UsersList.Concat(AgentUsersList).ToList();
            //}
            if (Users.UserType == 1)
            {
                UsersList = baseUsers.GetSupUsers(Entity, baseSysSet.GlobaPromoteMaxLevel);
            }
            if (Users.UserType == 2)
            {
                SysAgentList = SysAgent.GetSupAgent(Entity);
                //IList<int> agents = SysAgentList.Select(o => o.Id).ToList();
                //UsersList = Entity.Users.Where(o => agents.Contains(o.Agent)).ToList();
                IList <string> agents = SysAgentList.Select(o => o.LinkMobile).ToList();
                UsersList = Entity.Users.Where(o => agents.Contains(o.UserName)).ToList();
            }

            EFPagingInfo <Users> p = new EFPagingInfo <Users>();

            if (!Users.Pg.IsNullOrEmpty())
            {
                p.PageIndex = Users.Pg;
            }
            if (!Users.Pgs.IsNullOrEmpty())
            {
                p.PageSize = Users.Pgs;
            }
            if (UsersList == null)
            {
                p.SqlWhere.Add(o => o.Id == 0);
                p.OrderByList.Add("Id", "DESC");
                IPageOfItems <Users> List1  = Entity.Selects <Users>(p);
                IList <Users>        iList1 = List1.ToList();
                StringBuilder        sb1    = new StringBuilder("");
                sb1.Append("{");
                sb1.Append(List1.PageToString());
                sb1.Append(",");
                sb1.Append(iList1.EntityToString());
                sb1.Append("}");
                DataObj.Data = sb1.ToString();
                DataObj.Code = "0000";
                DataObj.OutString();
                return;
            }
            IList <int> usersid = UsersList.Where(o => o.Id != baseUsers.Id).Select(o => o.Id).ToList();

            p.SqlWhere.Add(f => usersid.Contains(f.Id));
            p.SqlWhere.Add(f => f.Id != baseUsers.Id);
            p.OrderByList.Add("Agent", "ASC");

            IPageOfItems <Users> List = Entity.Selects <Users>(p);

            IList <Users> iList = List.ToList();

            foreach (var info in iList)
            {
                if (Users.UserType == 1)
                {
                    if (info.MyPId != baseUsers.Id)
                    {
                        info.TrueName = info.TrueName.IsNullOrEmpty() ? "未认证" : info.TrueName.Substring(0, 1) + "**";
                        info.UserName = info.UserName.Substring(0, 3) + "****" + info.UserName.Substring(7, 4);
                    }
                    else
                    {
                        info.TrueName = info.TrueName.IsNullOrEmpty() ? "未认证" : info.TrueName;
                    }
                }
                if (Users.UserType == 2)
                {
                    SysAgent agentTemp = Entity.SysAgent.FirstOrDefault(o => o.Id == info.Agent);
                    if (agentTemp == null || agentTemp.AgentID != SysAgent.Id)
                    {
                        info.TrueName = info.TrueName.IsNullOrEmpty() ? "未认证" : info.TrueName.Substring(0, 1) + "**";
                        info.UserName = info.UserName.Substring(0, 3) + "****" + info.UserName.Substring(7, 4);
                    }
                    else
                    {
                        info.TrueName = info.TrueName.IsNullOrEmpty() ? "未认证" : info.TrueName;
                    }
                }
            }
            StringBuilder sb = new StringBuilder("");

            sb.Append("{");
            sb.Append(List.PageToString());
            sb.Append(",");
            sb.Append(iList.EntityToString());
            sb.Append("}");
            DataObj.Data = sb.ToString();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        public void XLSDo(ApplyLoan ApplyLoan, EFPagingInfo <ApplyLoan> p)
        {
            if (ApplyLoan.STime.IsNullOrEmpty())
            {
                ApplyLoan.STime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
            }
            if (ApplyLoan.ETime.IsNullOrEmpty())
            {
                //ApplyLoan.ETime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                ApplyLoan.ETime = DateTime.Now;
            }
            if (!ApplyLoan.TrueName.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.TrueName == ApplyLoan.TrueName);
            }
            if (!ApplyLoan.Education.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Education.Contains(ApplyLoan.Education));
            }
            if (!ApplyLoan.HasSheBao.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasSheBao == (ApplyLoan.HasSheBao == 99 ? 0 : ApplyLoan.HasSheBao));
            }
            if (!ApplyLoan.Marry.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.Marry == ApplyLoan.Marry);
            }
            if (!ApplyLoan.HasCar.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasCar == (ApplyLoan.HasCar == 99 ? 0 : ApplyLoan.HasCar));
            }
            if (!ApplyLoan.House.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.House == ApplyLoan.House);
            }
            if (!ApplyLoan.HasCredit.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.HasCredit == ApplyLoan.HasCredit);
            }
            if (!ApplyLoan.State.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.State == ApplyLoan.State);
            }
            if (!ApplyLoan.AgentPay.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentPay == (ApplyLoan.AgentPay == 99 ? 0 : ApplyLoan.AgentPay));
            }
            if (!ApplyLoan.AgentAId.IsNullOrEmpty())
            {
                p.SqlWhere.Add(f => f.AgentAId == ApplyLoan.AgentAId);
            }
            if (!ApplyLoan.STime.IsNullOrEmpty() && !ApplyLoan.ETime.IsNullOrEmpty())
            {
                DateTime ETime = ApplyLoan.ETime;
                p.SqlWhere.Add(f => f.PayTime > ApplyLoan.STime && f.PayTime < ETime);
            }
            p.SqlWhere.Add(f => f.PayState == 1);
            p.PageSize = 99999999;
            p.OrderByList.Add("Id", "DESC");
            IPageOfItems <ApplyLoan> ApplyLoanList = Entity.Selects <ApplyLoan>(p);
            IList <ApplyLoan>        List          = ApplyLoanList.GroupBy(n => n.AgentId).Select(n => n.First()).ToList();
            List <int> AgentId = new List <int>();

            foreach (var pp in List)
            {
                AgentId.Add(pp.AgentId);
            }
            IList <SysAgent> SysAgentList = Entity.SysAgent.Where(n => n.State == 1 && AgentId.Contains(n.Id)).ToList();

            if (SysAgentList.Count > 0)
            {
                //加载对应银行模板
                string       tempname = "AgentLoan.xlsx";
                string       file     = Server.MapPath("/template") + "\\" + tempname;
                ExcelPackage package  = new ExcelPackage(new FileInfo(file), true);
                //设置数据开始行
                int Befor  = 2;
                int maxCol = 6;//最大列数
                //加载模板第一张表
                var     sheet      = package.Workbook.Worksheets[1];
                var     cells      = sheet.Cells;
                decimal TotalMoney = 0; //计算总金额
                decimal TotalPrice = 0; //计算总金额
                int     Rows       = ApplyLoanList.Count() + SysAgentList.Count();
                sheet.InsertRow(Befor + 1, Rows - 1, Befor);
                int i = Befor;
                foreach (var item in SysAgentList)
                {
                    IList <ApplyLoan> ListSub    = ApplyLoanList.Where(n => n.AgentId == item.Id).ToList();
                    decimal           AgentMoney = 0; //计算供应商金额
                    decimal           AgentPrice = 0; //计算供应商金额
                    foreach (var s in ListSub)
                    {
                        sheet.Row(i).Height = 20;//设置行高
                        //分支机构
                        cells["A" + i].Value = item.Name;
                        //编号
                        cells["B" + i].Value = s.Id;
                        //姓名
                        cells["C" + i].Value = s.TrueName;
                        //售出金额
                        cells["D" + i].Value = s.Amoney;
                        //售出时间
                        cells["E" + i].Value = s.PayTime;
                        //结算金额
                        cells["F" + i].Value = s.AgentMoney;
                        AgentMoney          += s.Amoney;
                        AgentPrice          += s.AgentMoney;
                        i++;
                    }
                    sheet.Row(i).Height = 28;//设置行高
                    //交易金额汇总
                    cells["D" + i].Value = AgentMoney;
                    //结算金额汇总
                    cells["F" + i].Value = AgentPrice;
                    Color bgColor = ColorTranslator.FromHtml("#DDDDDD");
                    Color fColor  = ColorTranslator.FromHtml("#FF0000");
                    sheet.Cells[i, 1, i, maxCol].Style.Fill.PatternType = ExcelFillStyle.Solid;
                    sheet.Cells[i, 1, i, maxCol].Style.Fill.BackgroundColor.SetColor(bgColor);
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Size = 16;
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Bold = true;
                    sheet.Cells[i, 1, i, maxCol].Style.Font.Color.SetColor(fColor);
                    TotalMoney += AgentMoney;
                    TotalPrice += AgentPrice;
                    i++;
                }
                Color bgColor_ = ColorTranslator.FromHtml("#7030A0");
                Color fColor_  = ColorTranslator.FromHtml("#FFFFFF");
                sheet.Cells[i, 1, i, maxCol].Style.Fill.PatternType = ExcelFillStyle.Solid;
                sheet.Cells[i, 1, i, maxCol].Style.Fill.BackgroundColor.SetColor(bgColor_);
                sheet.Cells[i, 1, i, maxCol].Style.Font.Size = 20;
                sheet.Cells[i, 1, i, maxCol].Style.Font.Bold = true;
                sheet.Cells[i, 1, i, maxCol].Style.Font.Color.SetColor(fColor_);
                sheet.Row(i).Height = 40;//设置行高
                //交易金额汇总
                cells["D" + i].Value = TotalMoney;
                //结算金额汇总
                cells["F" + i].Value = TotalPrice;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Left.Style   = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Right.Style  = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Top.Style    = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 1, i, maxCol].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                sheet.Cells[Befor, 4, i, 4].Style.Numberformat.Format      = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                sheet.Cells[Befor, 5, i, 5].Style.Numberformat.Format      = "yyyy-mm-dd hh:mm";
                sheet.Cells[Befor, 6, i, 6].Style.Numberformat.Format      = "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)";
                Response.BinaryWrite(package.GetAsByteArray());//输出
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;  filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(10, 99) + ".xlsx");
            }
            else
            {
                Response.Write("暂无符合条件数据");
            }
        }