public static T_Project ToModel(this T_ProjectModel node) { return(new T_Project() { Id = node.Id, ProjectName = node.ProjectName, BeginDate = node.BeginDate, EndDate = node.EndDate, CompanyId = node.CompanyId, ClientId = node.ClientId, CreateDate = DateTime.Now, CreateUserId = node.CreateUserId, //用户ID CreateUserName = node.CreateUserName, //用户名 ProjectType = node.ProjectType, Property = node.Property, Remark = node.Remark, Towi = node.Towi, VisitDate = node.VisitDate, Blk = node.Blk, BuildingName = node.BuildingName, PostalCode = node.PostalCode, StreetName = node.StreetName, Unit = node.Unit, }); }
public static T_ProjectModel DTO(this T_Project node) { if (node == null) { return(null); } var model = new T_ProjectModel() { Id = node.Id, ProjectName = node.ProjectName, BeginDate = node.BeginDate, EndDate = node.EndDate, CompanyId = node.CompanyId, CreateDate = node.CreateDate, CreateUserId = node.CreateUserId, CreateUserName = node.CreateUserName, ProjectNo = node.ProjectNo, ProjectType = node.ProjectType, Property = node.Property, Remark = node.Remark, Status = node.Status, Towi = node.Towi, VisitDate = node.VisitDate, Blk = node.Blk, BuildingName = node.BuildingName, PostalCode = node.PostalCode, StreetName = node.StreetName, Unit = node.Unit, ClientId = node.ClientId, ClientName = node.Client != null ? node.Client.Name : null, Client = node.Client.DTO(), CompanyName = node.Company != null ? node.Company.Company : null, Company = node.Company.DTO(), Leader = node.ProjectUsers.Count() > 0 ? (node.ProjectUsers.FirstOrDefault(f => f.Role == "Manager") != null ? (node.ProjectUsers.FirstOrDefault(f => f.Role == "Manager").UserName) : null) : null, ProjectUsers = node.ProjectUsers.Count() > 0 ? node.ProjectUsers.ToList().Select(s => s.DTO()).ToList() : null, ProjectPlans = node.ProjectPlans.Count() > 0 ? node.ProjectPlans.ToList().Select(s => s.DTO()).ToList() : null, }; return(model); }
/// <summary> /// 复杂查询 /// </summary> /// <param name="model">查询对象</param> /// <param name="Orders">排序字典key:排序的字段,value:asc升序/desc降序</param> /// <param name="PageSize">每页行数,默认15</param> /// <param name="PageIndex">当前页码,默认100</param> /// <returns></returns> public DataGrid <T_ProjectModel> Search(T_ProjectModel model, Dictionary <string, string> Orders = null, int PageSize = 15, int PageIndex = 100) { Expression <Func <T_Project, bool> > where = null; //最终查询条件 var lambdaList = new List <Expression <Func <T_Project, bool> > >(); //lambda查询条件集合 int total = 0; //总行数 if (model.StatusList.Count() > 0) { lambdaList.Add(c => model.StatusList.Any(a => c.Status == a)); } //将集合表达式树转换成Expression表达式树 MyVisitor <T_Project, T_Project> visitor = new MyVisitor <T_Project, T_Project>(); where = visitor.Modify(lambdaList); var list = dal.Search(out total, where, Orders, PageSize, PageIndex).DTOList().ToList(); var result = new DataGrid <T_ProjectModel>() { rows = list, total = total }; return(result); }
public int DeleteData(T_ProjectModel model) { return(this.Delete(model.Id)); }
public int EditData(T_ProjectModel model) { return(this.Edit(model.ToModel())); }
public int AddData(T_ProjectModel model) { return(this.Add(model.ToModel())); }