using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WX.CRM.BLL.Application.UserComBox; using WX.CRM.Common; using WX.CRM.DAL.Res; using WX.CRM.IBLL.Res; using WX.CRM.Model.DTO; using WX.CRM.Model.Entity; using WX.CRM.Model.MAP; namespace WX.CRM.BLL.Res { public class RES_SCENE_BL : DbContextRepository, IRES_SCENE { private readonly RES_SCENE_DAL _dal = new RES_SCENE_DAL(); public List GetList(ref Pager pager, QueryUserComboDto usercomboDto, string nickName, decimal? sceneType, DateTime? sTime, DateTime? eTime) { List ALLdeptIDS = new List(); List ALLgidS = new List(); if (string.IsNullOrEmpty(usercomboDto.groupIds) && !string.IsNullOrEmpty(usercomboDto.deptId)) { var depts = OperationUtil.ConvertToDecimal(usercomboDto.deptId.Split(',')); UserServices userservices = new UserServices(); foreach (var item in depts) { List deptIDS = new List(); List gidS = new List(); userservices.GetAllDeptIDOrGidByDeptId(item, ref deptIDS, ref gidS);//获取所有的组别和gid ALLdeptIDS.AddRange(deptIDS); ALLgidS.AddRange(gidS); } ALLdeptIDS.AddRange(ALLgidS); usercomboDto.deptId = string.Join(",", ALLdeptIDS);//所有的部门ID和销售组ID } var ds = _dal.List(ref pager, usercomboDto, nickName, sceneType, sTime, eTime); var list = ds.Tables[0].ToList(); if (list.Any()) { var row = list.FirstOrDefault(p => p.ResId == "rowcount"); pager.totalRows = Convert.ToInt32(row.rn); list.Remove(row); } return list; } public List GetSceneType() { using (var db = new crmContext()) { var q = (from a in db.RES_SCENE group a by new { a.SCENETYPE, a.SCENETITLE } into g select new ResSceneType { SCENETYPE = g.Key.SCENETYPE, SCENETITLE = g.Key.SCENETITLE } ).ToList(); return q; } } } }