public List <Flow_Node> SearchInfoNiWenWhere(FlowNodeNiWenSearchViewModel flowNodeNiWenSearchViewModel) { //查询条件 var predicate = SearchNodeNiWenWhere(flowNodeNiWenSearchViewModel); var result = DbSet.Where(predicate).Where(s => s.User_Info.status != "1" && s.Pre_User_Info.status != "1" && s.Repair_Info.status != "1") .OrderByDescending(o => o.Repair_Info.repairsDate).ToList(); return(result); }
private Expression <Func <Flow_Node, bool> > SearchNodeNiWenWhere(FlowNodeNiWenSearchViewModel flowNodeNiWenSearchViewModel) { var predicate = WhereExtension.True <Flow_Node>();//初始化where表达式 predicate = predicate.And(p => p.status == "0"); predicate = predicate.And(p => p.operate == "2"); predicate = predicate.And(p => p.Repair_InfoId == flowNodeNiWenSearchViewModel.Repair_InfoId); if (flowNodeNiWenSearchViewModel.Parent_Flow_NodeDefineId != null) { predicate = predicate.And(p => p.Parent_Flow_NodeDefineId == flowNodeNiWenSearchViewModel.Parent_Flow_NodeDefineId); } else { predicate = predicate.And(p => p.Parent_Flow_NodeDefineId == null); } return(predicate); }
/// <summary> /// 根据节点查用户列表 /// </summary> /// <param name="roleByNodeSearchViewModel"></param> /// <returns></returns> public List <UserSearchMiddlecs> User_By_Node_Search(RoleByNodeSearchViewModel roleByNodeSearchViewModel) { List <Flow_Relate_NodeRole> node_Relate_Info_Roles = _IRelateRoleByNodeRepository.SearchRoleInfoByWhere(roleByNodeSearchViewModel); List <int> RoleList = new List <int>(); for (int i = 0; i < node_Relate_Info_Roles.Count; i++) { int User_RoleId = node_Relate_Info_Roles[i].User_RoleId; RoleList.Add(User_RoleId); } /***********************查询当前节点处理人的上一步处理人**************************/ FlowNodeSearchViewModel flowNodeSearchViewModel = new FlowNodeSearchViewModel(); if (roleByNodeSearchViewModel.Repair_InfoId != null) { flowNodeSearchViewModel.Repair_InfoId = roleByNodeSearchViewModel.Repair_InfoId.Value; } flowNodeSearchViewModel.operate = "1"; if (roleByNodeSearchViewModel.user_InfoId != null) { flowNodeSearchViewModel.User_InfoId = roleByNodeSearchViewModel.user_InfoId.Value; } flowNodeSearchViewModel.status = "0"; flowNodeSearchViewModel.isHandler = roleByNodeSearchViewModel.isHandler; flowNodeSearchViewModel.pageViewModel.CurrentPageNum = 0; flowNodeSearchViewModel.pageViewModel.PageSize = 99; List <Flow_Node> node_Infos = _IFlowNodeRepository.SearchInfoByNodeWhere(flowNodeSearchViewModel); /***********************查询当前节点处理人的上一步处理人**************************/ //FlowNodeKeepSearchViewModel flowNodeKeepSearchViewModel = new FlowNodeKeepSearchViewModel(); //flowNodeKeepSearchViewModel.Repair_InfoId = roleByNodeSearchViewModel.Repair_InfoId.Value; //flowNodeKeepSearchViewModel.Flow_NodeDefineId = roleByNodeSearchViewModel.Flow_NodeDefineId; //flowNodeKeepSearchViewModel.Flow_NextNodeDefineId = roleByNodeSearchViewModel.Flow_NextNodeDefineId; //List<Flow_Node> node_Infos4 = _IFlowNodeRepository.SearchInfoByNode2Where(flowNodeKeepSearchViewModel); /***********************查询当前表单ID查询拟文处理人**************************/ FlowNodeNiWenSearchViewModel flowNodeNiWenSearchViewModel = new FlowNodeNiWenSearchViewModel(); flowNodeNiWenSearchViewModel.Repair_InfoId = roleByNodeSearchViewModel.Repair_InfoId.Value; List <Flow_Node> node_Infos2 = _IFlowNodeRepository.SearchInfoNiWenWhere(flowNodeNiWenSearchViewModel); flowNodeNiWenSearchViewModel.Parent_Flow_NodeDefineId = node_Infos2[0].Flow_NodeDefineId; List <Flow_Node> node_Infos3 = _IFlowNodeRepository.SearchInfoNiWenWhere(flowNodeNiWenSearchViewModel); /*************************查询当前表单ID查询拟文处理人************************/ int userId2 = node_Infos3[0].User_InfoId.Value; int userId = node_Infos[0].Pre_User_InfoId.Value; // int userId = node_Infos4[0].User_InfoId.Value; int departId = roleByNodeSearchViewModel.departId.Value; string nodeType = roleByNodeSearchViewModel.NodeKeep; List <User_Info> user_Relate_Info_Users = _IUserRelateInfoRoleRepository.SearchUserInfoByListWhere(RoleList); List <UserSearchMiddlecs> userSearchMiddlecs = new List <UserSearchMiddlecs>(); var userLsit_Info = _IMapper.Map <List <User_Info>, List <UserSearchMiddlecs> >(user_Relate_Info_Users); if (nodeType == "部门保持") { for (int i = 0; i < userLsit_Info.Count; i++) { if (userLsit_Info[i].user_DepartId == departId) { userSearchMiddlecs.Add(userLsit_Info[i]); } } } else if (nodeType == "用户保持") { for (int i = 0; i < userLsit_Info.Count; i++) { if (userLsit_Info[i].id == userId) { userSearchMiddlecs.Add(userLsit_Info[i]); } } } else if (nodeType == "拟文保持") { for (int i = 0; i < userLsit_Info.Count; i++) { if (userLsit_Info[i].id == userId2) { userSearchMiddlecs.Add(userLsit_Info[i]); } } } else { userSearchMiddlecs = userLsit_Info; //无任何保持 } return(userSearchMiddlecs); }