public object Many(decimal Id, int Num, DateTime StartTime) { var data = new List <byte?>(); //var dbdata = dbContext.v_Jusoft_CustomerList.Where(k => k.IdPersonSupervision == Person.Id); //Expression<Func<v_Ks_DataList, bool>> where = p => string.IsNullOrEmpty(condition.SearchKey); if (Num == 0) { //where = where.And(p => p.IdPerson == null);//督导Id 为当前用户 data.Add(0); } if (Num == 1) { data = dbContext.v_Kf_DataList.Where(p => p.IdPerson == Id).Select(p => p.State).ToList();//督导Id 为当前用户 } if (Num == 2) { //where = where.And(p => p.IdPersonSupervision == Person.Id);//督导Id 为当前用户 data = dbContext.v_Kf_DataList.Where(p => p.ManagerId == Id).ToList().Where(p => p.CreateTime.ToString("yyyy-MM") == StartTime.ToString("yyyy-MM")).Select(p => p.State).ToList(); } //var data = dbContext.v_Ks_DataList.Where(where).ToList(); ////where = where.And(p => p.CreateTime.ToString("yyyy-MM").Contains(xx)); //data.Select(p => new //{ // p.State, // CreateTime = p.CreateTime.ToString("yyyy-MM") //}).Where(p => p.CreateTime.Contains(condition.StartTime.ToString("yyyy-MM"))); //var list2= dbContext.v_Jusoft_CustomerList.Where(p => p.IdPersonSupervision == Person.Id).ToList(); var Untreated = data.Where(k => k == 0).Count(); //待处理的数量 var Processing = data.Where(k => k == 1).Count(); //处理中的数量 var Endover = data.Where(k => k == 2).Count(); //结束的数量 var AllCount = data.Where(k => true).Count(); //所有的数量 //返回类型 DdTypeCount Pdrs = new DdTypeCount(); Pdrs.Untreated = Untreated; //未处理的数量 Pdrs.Processing = Processing; //同意的数量 Pdrs.Endover = Endover; //驳回的数量 var result = new { Untreated = Untreated, Processing = Processing, Endover = Endover }; return(result); }
public object RegionList(string name, int pagesize = 10, int pageindex = 1) { Expression <Func <OR_Person, bool> > where = p => (string.IsNullOrEmpty(name) || p.Name.Contains(name)); var list = dbContext.OR_Person.Where(where).Select(p => new { p.Id, p.Name }).OrderByDescending(p => p.Id).ToPagedList(pageindex, pagesize); DdTypeCount Pdrs = new DdTypeCount(); Pdrs.ListData = list; //返回数据体 Pdrs.PageCount = list.PageCount; //数据总数 Pdrs.PageIndex = pageindex; //数据页数 Pdrs.HasNextPage = list.HasNextPage; //是否有下一页 Pdrs.TotalItemCount = list.TotalItemCount; //数据总数 return(this.JsonRespData(Pdrs)); }
public object StoreList(string name, int pagesize, int pageindex) { var person = dbContext.OR_Person.FirstOrDefault(p => p.LoginName == User.Identity.Name); if (person == null) { return(this.JsonRespData(1000, "当前登录者不存在")); } var list = dbContext.ST_Store.Where(p => p.IdSupervisor == person.Id || p.Name.Contains(name)).Select(s => new { s.Name, s.Id }).ToPagedList(pageindex, pagesize); DdTypeCount Pdrs = new DdTypeCount(); Pdrs.ListData = list; //返回数据体 Pdrs.PageCount = list.PageCount; //数据总数 Pdrs.PageIndex = pageindex; //数据页数 Pdrs.HasNextPage = list.HasNextPage; //是否有下一页 Pdrs.TotalItemCount = list.TotalItemCount; //数据总数 return(this.JsonRespData(Pdrs)); }
public object SuperList(string name, int pagesize, int pageindex) { var id = dbContext.OR_Person.Where(p => p.Name.Contains(name)).Select(p => p.Id).ToList(); var data = dbContext.CS_CustomerService.AsQueryable(); if (id.Count() != 0) { data = dbContext.CS_CustomerService.Where(p => id.Contains(p.PersonId)); } var list = data.Select(p => new { p.PersonId, Name = p.OR_Person.Name }).ToPagedList(pageindex, pagesize); DdTypeCount Pdrs = new DdTypeCount(); Pdrs.ListData = list; //返回数据体 Pdrs.PageCount = list.PageCount; //数据总数 Pdrs.PageIndex = pageindex; //数据页数 Pdrs.HasNextPage = list.HasNextPage; //是否有下一页 Pdrs.TotalItemCount = list.TotalItemCount; //数据总数 return(this.JsonRespData(Pdrs)); }
public object CustomerComplaintList(DdCustomerListModel model) { try { //获取当前登录者信息 var Person = dbContext.OR_Person.FirstOrDefault(p => p.LoginName == User.Identity.Name); if (Person == null) { return(this.JsonRespData(1000, "登录者不存在,请重新登录")); } //校验审批人可查看单据(下一个审批人员-审批记录人员) var dbdata = dbContext.v_Jusoft_CustomerList.Where(k => k.IdPersonApproval == Person.Id || k.ApprovalIdPerson == Person.Id || k.ConfirmIdPerson == Person.Id); var Customerslist = dbdata.Select(s => new { s.Id, s.StateId, s.CreateTime, s.State, s.Remark, s.SubclassId, s.AbnormalId, s.IdPersonApproval, s.IdPerson, s.RepairTypeId, s.seachkey }).Distinct();//.Where(k => k.IdPerson == Person || k.IdPersonSupervision == Person); #region 判断条件 #region 判断关键字搜索是否为null if (!string.IsNullOrEmpty(model.Seachkey)) { if (model.Seachkey.IndexOf('|') > 0) { return(this.JsonRespData(1001, "搜索不能存在特殊字符")); } Customerslist = Customerslist.Where(k => k.seachkey.Contains(model.Seachkey)); } #endregion #region 判断筛选的开始时间是否为null if (model.StartTime != null) { Customerslist = Customerslist.Where(k => k.CreateTime >= model.StartTime); } #endregion #region 判断筛选的结束时间是否为null if (model.EndTime != null) { Customerslist = Customerslist.Where(k => k.CreateTime <= model.EndTime); } #endregion #region 判断筛选的客诉类型是否为null if (model.CustomerType != null) { Customerslist = Customerslist.Where(k => k.StateId == model.CustomerType); } #endregion #region 判断筛选的所属门店是否为null if (model.OwnedStores != null) { Customerslist = Customerslist.Where(k => k.IdPerson <= model.OwnedStores); } #endregion #region 判断筛选的异常类型是否为null if (model.AbnormalType != null) { Customerslist = Customerslist.Where(k => k.RepairTypeId <= model.AbnormalType); } #endregion #endregion var Untreated = Customerslist.Where(k => k.State == 0).Count(); var Processing = Customerslist.Where(k => k.State == 1).Count(); var Endover = Customerslist.Where(k => k.State == 2 || k.State == 3 || k.State == 4).Count(); var AllCount = Customerslist.Where(k => true).Count(); if ((model.Type ?? new List <int?>()).Count() > 0) { Customerslist = Customerslist.Where(k => model.Type.Contains(k.State)); } var list = Customerslist.ToList(); string url = HttpContext.Request.Url.ToString().Replace(HttpContext.Request.Url.PathAndQuery, ""); //服务器协议+域名+端口 var CusDatas = list.Select(s => new { s.Id, s.StateId, s.CreateTime, s.State, s.Remark, s.SubclassId, SubclassName = dbContext.BA_SysEnType.FirstOrDefault(p => p.Id == s.SubclassId).Name, Abnormal = dbContext.BA_SysEnType.FirstOrDefault(p => p.Id == s.AbnormalId)?.Name, PersonName = dbContext.OR_Person.FirstOrDefault(p => p.Id == s.IdPersonApproval)?.Name, HeadUrl = dbContext.OR_Person.FirstOrDefault(p => p.Id == s.IdPersonApproval)?.HeadUrl, Attachment = dbContext.BA_Attachment.Where(p => p.SourceId == s.Id && p.CodeBusinessType == "KS01") .Select(w => new { w.CodeBusinessType, w.Id, w.FileName, FileAccess = url + w.FileAccess }).ToList(), }).Distinct().OrderByDescending(p => p.Id).ToPagedList(model.PageIndex, model.PageSize); DdTypeCount Pdrs = new DdTypeCount(); Pdrs.ListData = CusDatas; Pdrs.PageCount = CusDatas.PageCount; Pdrs.PageIndex = model.PageIndex; Pdrs.HasNextPage = CusDatas.HasNextPage; Pdrs.TotalItemCount = CusDatas.TotalItemCount; Pdrs.Untreated = Untreated; Pdrs.Processing = Processing; Pdrs.Endover = Endover; Pdrs.AllCount = AllCount; return(this.JsonRespData(Pdrs)); } catch (Exception ex) { return(this.JsonRespData(1000, ex.Message)); } }