Пример #1
0
        /// <summary>
        /// 获取用户开户行列表
        /// </summary>
        /// <param name="currentPage">当前页码</param>
        /// <param name="uBank">查询实体</param>
        /// <returns></returns>
        private List <Apply_Main> GetApply_MainList(int currentPage, Apply_Main AM, string beginDate, string endDate)
        {
            var  amList    = db.Apply_Main.AsQueryable();
            User loginUser = Session[SessionList.FamilyManageUser.ToString()] as User;

            //区分用户加载数据,如果不是超级管理员,只能查看自己的数据
            if (!UserPower.adminUserCode.Contains(loginUser.cUserCode))
            {
                amList = amList.Where(ub => ub.ApplyUserID == loginUser.ID);
            }
            #region 条件筛选
            if (AM != null && !string.IsNullOrEmpty(AM.ApplyUserID.ToString()) && AM.ApplyUserID > 0)
            {
                amList = amList.Where(ub => ub.ApplyUserID == AM.ApplyUserID);
            }

            //如果用户选择了开始时间和结束时间
            if (!string.IsNullOrEmpty(beginDate) && !string.IsNullOrEmpty(endDate))
            {
                int[]    beginArr = WebComm.GetIntArrayByStringArray(beginDate.Split('-'));
                int[]    endArr = WebComm.GetIntArrayByStringArray(endDate.Split('-'));
                DateTime bDate, dDate;
                bDate = Convert.ToDateTime(beginDate);
                dDate = Convert.ToDateTime(endDate);
                int beginYear  = beginArr[0];
                int beginMonth = beginArr[1];
                int beginDay   = beginArr[2];
                int endYear    = endArr[0];
                int endMonth   = endArr[1];
                int endDay     = endArr[2];
                //amList = amList.Where(a => a.iyear >= beginYear && a.imonth >= beginMonth && a.iday >= beginDay)
                //    .Where(a => a.iyear <= endYear && a.imonth <= endMonth && a.iday <= endDay);
                amList = amList.Where(a => a.ApplyDate >= bDate && a.ApplyDate <= dDate);
            }
            //如果只选择了开始时间
            else if (!string.IsNullOrEmpty(beginDate) && string.IsNullOrEmpty(endDate))
            {
                DateTime bDate;
                bDate = Convert.ToDateTime(beginDate);
                //int[] beginArr = WebComm.GetIntArrayByStringArray(beginDate.Split('-'));
                //int beginYear = beginArr[0];
                //int beginMonth = beginArr[1];
                //int beginDay = beginArr[2];
                //amList = amList.Where(a => a.iyear >= beginYear && a.imonth >= beginMonth && a.iday >= beginDay);
                amList = amList.Where(a => a.ApplyDate >= bDate);
            }
            #endregion

            SetPagerOptions(amList.Count(), currentPage);
            List <Apply_Main> list = amList.OrderBy(b => b.ID).Skip((currentPage - 1) * pageSize).Take(pageSize).ToList();
            //添加合计行
            Apply_Main applySum = new Apply_Main();
            applySum.Apply_Sub     = null;
            applySum.ApplyDate     = new DateTime();
            applySum.ApplyInMoney  = list.Sum(l => l.ApplyInMoney);
            applySum.ApplyOutMoney = list.Sum(l => l.ApplyOutMoney);
            applySum.ApplyUserID   = loginUser.ID;
            applySum.CreateDate    = null;
            applySum.ID            = 0;
            applySum.iday          = 0;
            applySum.imonth        = 0;
            applySum.iNowCashMoney = 0;
            applySum.iyear         = 0;
            applySum.User          = null;
            list.Insert(0, applySum);

            return(list);
        }