public BsTableDataSource <SumAppWarnInfoModel> GetSumWarnInfoUI(RouteSearcWarnInfoModel request) { using (var db = DbFactory.Open()) { var list = db.SqlList <SumAppWarnInfoModel>("select a.SendMessage as eventName,b.Warninglevel,a.SendMessageByUserName+'('+c.adnm+')' as SendMessageByUserName,a.ReceiveDateTime, a.AppWarnInfoID from AppSendMessage a left join AppWarnLevel b on a.Warninglevel = b.Id left join ADCDInfo c on c.adcd = a.ReciveAdcd inner join AppMobileLogin d on d.userName = a.ReceiveUserPhone where a.AppWarnEventId = '" + request.EventId + "' and a.ReceiveUserName=a.SendMessageByUserName and Remark='' and VillageMessage is null "); var townList = db.SqlList <SumAppWarnInfoModel>("select a.Remark as eventName,b.Warninglevel,a.SendMessageByUserName+'('+c.adnm+')' as SendMessageByUserName,a.ReceiveDateTime, a.AppWarnInfoID from AppSendMessage a left join AppWarnLevel b on a.Warninglevel = b.Id left join ADCDInfo c on c.adcd = a.ReciveAdcd inner join AppMobileLogin d on d.userName = a.ReceiveUserPhone where a.AppWarnEventId = '" + request.EventId + "' and a.ReceiveUserName=a.SendMessageByUserName and Remark!='' and VillageMessage is null "); var vilageList = db.SqlList <SumAppWarnInfoModel>("select a.VillageMessage as eventName,b.Warninglevel,a.SendMessageByUserName+'('+c.adnm+')' as SendMessageByUserName,a.ReceiveDateTime, a.AppWarnInfoID from AppSendMessage a left join AppWarnLevel b on a.Warninglevel = b.Id left join ADCDInfo c on c.adcd = a.ReciveAdcd inner join AppMobileLogin d on d.userName = a.ReceiveUserPhone where a.AppWarnEventId = '" + request.EventId + "' and a.ReceiveUserName=a.SendMessageByUserName and Remark!='' and VillageMessage is not null "); list.AddRange(townList); list.AddRange(vilageList); foreach (var item in list) { var appSendMessageList = db.SqlList <AppSendMessage>("select a.* from AppSendMessage a inner join AppMobileLogin b on b.userName=a.ReceiveUserPhone where AppWarnInfoID = '" + item.AppWarnInfoID + "' and ReceiveUserName != SendMessageByUserName and a.Position!='驻村干部' "); item.ReadCount = appSendMessageList.Count(x => x.IsReaded == true); item.NoReadCount = appSendMessageList.Count(x => x.IsReaded == false); } var pageList = list.Skip(request.PageSize * (request.PageIndex - 1)) .Take(request.PageSize).OrderByDescending(x => x.ReceiveDateTime).ToList(); return(new BsTableDataSource <SumAppWarnInfoModel> { total = list.Count(), rows = pageList }); } }
public BsTableDataSource <SumAppWarnInfoModel> Get(RouteSearcWarnInfoModel request) { return(sumMessage.GetSumWarnInfoUI(request)); }