public static List <EnterpriseUserViewModel> GetEnterpriseUserConfig(int pageIndex, int pageSize, Guid userId, out int total) { List <EnterpriseUserViewModel> result = null; total = 0; try { var userIdList = BeautyServicePackageDal.GetEnterpriseUserUserId(pageIndex, pageSize, userId, out total); if (userIdList != null && userIdList != null && userIdList.Any()) { var userServiceDetails = BeautyServicePackageDal.GetEnterpriseUserServiceConfig(userIdList); var userModuleConfigs = BeautyServicePackageDal.GetEnterpriseUserModuleConfig(userIdList); if (userServiceDetails != null && userServiceDetails.Any()) { result = new List <EnterpriseUserViewModel>(); foreach (var userService in userServiceDetails) { if (result.Where(x => x.UserId == userService.UserId).Count() <= 0) { //List<CooperateUserConfig> cooperateUserConfig = new List<CooperateUserConfig>(); //var cooperateUserServices = BeautyServicePackageDal.GetCooperateUserServices(userServiceDetails.Where(z => z.UserId == userService.UserId).Select(x => x.PackageDetailsId).ToList()); //if (cooperateUserServices != null && cooperateUserServices.Any()) //{ // foreach (var cooperate in cooperateUserServices) // { // if (cooperateUserConfig.Where(x => x.CooperateId == cooperate.CooperateId).Count() <= 0) // { // CooperateUserConfig config = new CooperateUserConfig() // { // CooperateId = cooperate.CooperateId, // CooperateName = cooperate.CooperateName, // CooperateUserServiceDetails = cooperateUserServices?.Where(z => z.CooperateId == cooperate.CooperateId).ToList() // }; // cooperateUserConfig.Add(config); // } // } //} EnterpriseUserViewModel item = new EnterpriseUserViewModel() { UserId = userService.UserId, Remark = userService.Remark, CooperateUserServiceDeails = BeautyServicePackageDal.GetCooperateUserServices(userServiceDetails.Where(z => z.UserId == userService.UserId).Select(x => x.PackageDetailsId).ToList()), UserModuleDetails = userModuleConfigs?.Where(z => z.UserId == userService.UserId).ToList(), CreateDateTime = userService.CreateDateTime, UpdateDateTime = userService.UpdateDateTime }; result.Add(item); } } } } } catch (Exception ex) { Logger.Error(ex.Message, ex); } return(result); }