Exemplo n.º 1
0
        /// <summary>
        /// 获取大事件的列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public BsTableDataSource <AppSumEventModel> GetSumEventUI(RouteSearchEventModel request)
        {
            using (var db = DbFactory.Open())
            {
                string role       = AdcdHelper.GetByAdcdRole(adcd);
                var    whereLamda = db.From <AppWarnEvent>();
                whereLamda.LeftJoin <AppWarnEvent, ADCDInfo>((x, y) => x.adcd == y.adcd);
                if (role == "省级")
                {
                    if (request.CityAdcd == null)
                    {
                        whereLamda.And(x => x.adcd.StartsWith("33"));
                    }
                    else
                    {
                        whereLamda.And(x => x.adcd.StartsWith(request.CityAdcd.Substring(0, 4)));
                    }
                }
                if (role == "市级")
                {
                    whereLamda.And(x => x.adcd.StartsWith(adcd.Substring(0, 4)));
                }
                if (role == "县级")
                {
                    whereLamda.And(x => x.adcd.StartsWith(adcd.Substring(0, 6)));
                }
                if (role == "镇级")
                {
                    whereLamda.And(x => x.adcd == adcd);
                }
                if (request.CountryAdcd != null)
                {
                    whereLamda.And(x => x.adcd == request.CountryAdcd);
                }
                whereLamda.And(x => x.StartTime >= Convert.ToDateTime(DateTime.Now.ToString("yyyy-01-01")));
                if (!string.IsNullOrEmpty(request.EventName))
                {
                    whereLamda.And(x => x.EventName.Contains(request.EventName));
                }

                whereLamda.OrderByDescending(x => x.StartTime);
                var total     = db.Count(whereLamda);
                var PageSize  = request.PageSize == 0 ? 15 : request.PageSize;
                var PageIndex = request.PageIndex == 0 ? 0 : (request.PageIndex) * PageSize;
                whereLamda.Limit(PageIndex, PageSize);
                var list = db.Select <AppSumEventModel>(whereLamda);
                return(new BsTableDataSource <AppSumEventModel> {
                    total = total, rows = list
                });
            }
        }
Exemplo n.º 2
0
 public BsTableDataSource <AppSumEventModel> Get(RouteSearchEventModel request)
 {
     return(sumMessage.GetSumEventUI(request));
 }
        /// <summary>
        /// 获取大事件的列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public BsTableDataSource <AppSumEventModel> GetSumEventUI(RouteSearchEventModel request)
        {
            using (var db = DbFactory.Open())
            {
                string role = AdcdHelper.GetByAdcdRole(adcd);
                List <AppSumTownModel> townList = db.SqlList <AppSumTownModel>("select a.SendMessageByUserName,a.ReceiveDateTime,a.SendMessage, a.AppWarnEventId, b.adnm, b.adcd from AppSendMessage a left join ADCDInfo b on  a.SendAdcd = b.adcd where a.SendAdcd = '" + adcd + "'  and a.SendMessagePhone = a.ReceiveUserPhone ");
                var whereLamda = db.From <AppWarnEvent>();
                whereLamda.LeftJoin <AppWarnEvent, ADCDInfo>((x, y) => x.adcd == y.adcd);
                if (role == "省级")
                {
                    if (request.CityAdcd == null)
                    {
                        whereLamda.And(x => x.adcd.StartsWith("33"));
                    }
                    else
                    {
                        whereLamda.And(x => x.adcd.StartsWith(request.CityAdcd.Substring(0, 4)));
                    }
                }
                if (role == "市级")
                {
                    whereLamda.And(x => x.adcd.StartsWith(adcd.Substring(0, 4)));
                }
                if (role == "县级")
                {
                    whereLamda.And(x => x.adcd.StartsWith(adcd.Substring(0, 6)));
                }
                if (request.CountryAdcd != null)
                {
                    whereLamda.And(x => x.adcd == request.CountryAdcd);
                }
                //whereLamda.And(x => x.StartTime>=Convert.ToDateTime(DateTime.Now.ToString("yyyy-01-01")));
                if (!string.IsNullOrEmpty(request.EventName))
                {
                    whereLamda.And(x => x.EventName.Contains(request.EventName));
                }

                whereLamda.OrderByDescending(x => x.StartTime);
                var total     = db.Count(whereLamda);
                var townTotal = townList.Count();
                var PageSize  = request.PageSize == 0 ? 15 : request.PageSize;
                var PageIndex = request.PageIndex == 0 ? 0 : (request.PageIndex) * PageSize;
                whereLamda.Limit(PageIndex, PageSize);
                townList.Skip(PageSize * (PageIndex - 1)).Take(PageSize);
                var list = db.Select <AppSumEventModel>(whereLamda);
                if (role == "镇级")
                {
                    total = townTotal;
                    list  = new List <AppSumEventModel>();
                    if (!string.IsNullOrEmpty(request.EventName))
                    {
                        townList = townList.FindAll(x => x.sendMessage.Contains(request.EventName));
                    }
                    foreach (var item in townList)
                    {
                        AppSumEventModel model = new AppSumEventModel();
                        model.Id        = item.appWarnEventId;
                        model.adcd      = item.adcd;
                        model.adnm      = item.adnm;
                        model.EventName = item.sendMessage;
                        model.StartTime = item.receiveDateTime;
                        model.UserName  = item.sendMessageByUserName;
                        list.Add(model);
                    }
                }
                return(new BsTableDataSource <AppSumEventModel> {
                    total = total, rows = list
                });
            }
        }