示例#1
0
        public async Task <IActionResult> SuccessTest()
        {
            StartupListRootObject  startupList  = (await Utilities.GetApiResponse <StartupListRootObject>("v0/appFo187B73tuYhyg", "Master List", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();
            FeedbackListRootObject feedbackList = (await Utilities.GetApiResponse <FeedbackListRootObject>("v0/appFo187B73tuYhyg", "Feedback", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();

            ViewBag.StartupList  = startupList.Records;
            ViewBag.FeedbackList = feedbackList.Records;
            return(View());
        }
示例#2
0
        public async Task <IActionResult> Index()
        {
            StartupListRootObject  startupList  = (await Utilities.GetApiResponse <StartupListRootObject>("v0/appFo187B73tuYhyg", "Master List", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();
            FeedbackListRootObject feedbackList = (await Utilities.GetApiResponse <FeedbackListRootObject>("v0/appFo187B73tuYhyg", "Feedback", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();

            ViewBag.StartupList  = startupList.Records;
            ViewBag.FeedbackList = feedbackList.Records;
            //old cold pulling form airtable
            //StartupListRootObject returnValue = (await Utilities.GetApiResponse<StartupListRootObject>("v0/appFo187B73tuYhyg", "Master List", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();
            //return View(returnValue.Records);

            string id       = User.FindFirst(ClaimTypes.NameIdentifier).Value;
            var    thisUser = _context.AspNetUsers.FirstOrDefault(x => x.Id == id);

            return(View(thisUser));
        }
示例#3
0
        public async Task <List <PredictedApiStartup> > CompareSuccess(int id)
        {
            //List<string> techAreasStrings = new List<string>();
            Models.Startup startupToEdit = _context.Startup.Find(id);
            // List<ApiStartup> newList = new List<ApiStartup>();
            //var newList = startupToEdit;

            string[] techAreaStrings                  = startupToEdit.TechArea.Replace(" ", "").Split(',');
            StartupListRootObject startupList         = (await Utilities.GetApiResponse <StartupListRootObject>("v0/appFo187B73tuYhyg", "Master List", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();
            StartupListRootObject filteredStartupList = new StartupListRootObject();

            filteredStartupList.Records = new List <StartupContainer>();
            foreach (string ta in techAreaStrings)
            {
                foreach (var record in startupList.Records)
                {
                    if (record.Fields.TechAreas != null)
                    {
                        string apiTechAreas = record.Fields.TechAreas.Replace(" ", "").ToLower();
                        string thisTechArea = ta.Replace(" ", "").ToLower();
                        if (apiTechAreas.Contains(thisTechArea))
                        {
                            filteredStartupList.Records.Add(record);
                        }
                    }
                }
            }

            FeedbackListRootObject     feedbackList             = (await Utilities.GetApiResponse <FeedbackListRootObject>("v0/appFo187B73tuYhyg", "Feedback", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();
            List <PredictedApiStartup> ratedFilteredApiStartups = new List <PredictedApiStartup>();

            for (int i = 0; i < filteredStartupList.Records.Count; i++)
            {
                ApiStartup singleStartup = (ApiStartup)filteredStartupList.Records[i].Fields;
                //PredictedApiStartup thisone = singleStartup as PredictedApiStartup;

                if (singleStartup != null)
                {
                    PredictedApiStartup pas = new PredictedApiStartup();
                    pas.CompanyName     = singleStartup.CompanyName;
                    pas.CompanySummary  = singleStartup.CompanySummary;
                    pas.PredictedRating = SuccessPredictor.PredictSuccess(filteredStartupList.Records[i].Fields, feedbackList.Records);
                    ratedFilteredApiStartups.Add(pas);
                }
            }

            ratedFilteredApiStartups = ratedFilteredApiStartups.OrderBy(x => x.PredictedRating).Reverse().ToList();
            List <PredictedApiStartup> topResults = new List <PredictedApiStartup>();

            for (int i = 0; i < 3; i++) //change i<# to change number of results
            {
                try
                {
                    topResults.Add(ratedFilteredApiStartups[i]);
                }
                catch
                {
                    break;
                }
            }

            return(topResults);
        }
示例#4
0
        public async Task <IActionResult> Index2()
        {
            FeedbackListRootObject test = (await Utilities.GetApiResponse <FeedbackListRootObject>("v0/appFo187B73tuYhyg", "Feedback", "https://api.airtable.com", "api_key", ApiKey)).FirstOrDefault();

            return(View(test.Records));
        }