public JsonResult UploadAccounts() { var oEsi = new YodleeServiceInfo(); var yodlees = new List <YodleeAccountModel>(); foreach (var marketplace in this.customer.CustomerMarketPlaces.Where(mp => mp.Marketplace.InternalId == oEsi.InternalId && mp.DisplayName != "ParsedBank")) { yodlees.Add(YodleeAccountModel.ToModel(marketplace)); } var companyFilesSI = new CompanyFilesServiceInfo(); bool hasCompanyFilesMp = this.customer.CustomerMarketPlaces.Any(mp => mp.Marketplace.InternalId == companyFilesSI.InternalId); if (hasCompanyFilesMp) { var companyFiles = this.companyFilesMetaDataRepository.GetBankStatementFiles(this.customer.Id) .ToList(); yodlees.AddRange(companyFiles.Select(x => new YodleeAccountModel { displayName = x })); } return(Json(yodlees, JsonRequestBehavior.AllowGet)); }
public ViewResult YodleeCallback() { Log.InfoFormat("Got to yodlee's callback with params:{0}", HttpContext.Request.Params); foreach (string key in HttpContext.Request.Params.Keys) { if (key == "oauth_error_code") { Log.WarnFormat("Yodlee returned an error. oauth_error_code:{0} oauth_error_problem:{1}", HttpContext.Request.Params["oauth_error_code"], HttpContext.Request.Params["oauth_error_problem"]); if (HttpContext.Request.Params["oauth_error_code"] == "407") { return(View(new { error = "Failure linking account" })); } } } var yodleeAccount = this.yodleeAccountsRepository.Search(this.customer.Id); string decryptedPassword = Encrypted.Decrypt(yodleeAccount.Password); string displayname; long csId; var yodleeMain = new YodleeMain(); var oEsi = new YodleeServiceInfo(); var items = this.customer.CustomerMarketPlaces .Where(mp => mp.Marketplace.InternalId == oEsi.InternalId) .Select(mp => Serialized.Deserialize <YodleeSecurityInfo>(mp.SecurityData).ItemId).ToList(); long itemId = yodleeMain.GetItemId(yodleeAccount.Username, decryptedPassword, items, out displayname, out csId); if (itemId == -1) { return(View(new { error = "Failure linking account" })); } int marketPlaceId = this.mpTypes .GetAll() .First(a => a.InternalId == oEsi.InternalId) .Id; var securityData = new YodleeSecurityInfo { ItemId = itemId, Name = yodleeAccount.Username, Password = yodleeAccount.Password, MarketplaceId = marketPlaceId, CsId = csId }; var yodleeDatabaseMarketPlace = new YodleeDatabaseMarketPlace(); var marketPlace = this.dbHelper.SaveOrUpdateCustomerMarketplace(displayname, yodleeDatabaseMarketPlace, securityData, this.customer); Log.InfoFormat("Added or updated yodlee marketplace: {0}", marketPlace.Id); this.serviceClient.Instance.UpdateMarketplace(this.context.Customer.Id, marketPlace.Id, true, this.context.UserId); return(View(YodleeAccountModel.ToModel(marketPlace, this.yodleeBanksRepository))); }
public JsonResult Accounts() { var oEsi = new YodleeServiceInfo(); var yodlees = new List <YodleeAccountModel>(); foreach (var marketplace in this.customer.CustomerMarketPlaces.Where(mp => mp.Marketplace.InternalId == oEsi.InternalId && mp.DisplayName != "ParsedBank")) { yodlees.Add(YodleeAccountModel.ToModel(marketplace, this.yodleeBanksRepository)); } return(Json(yodlees, JsonRequestBehavior.AllowGet)); }
public async Task <ActionResult> UpdateYodleeAccounts() { DateTime start = DateTime.Now; YodleeAccountModel model = new YodleeAccountModel(); bool result = await model.UpdateYodlee(); DateTime end = DateTime.Now; AutomatedLog log = new AutomatedLog(); log.SaveLog(start, end, "UpdateYodleeAccounts", result); return(Ok(result)); }