diff --git a/src/clj/auto_ap/handler.clj b/src/clj/auto_ap/handler.clj index 77064fda..b2ceb3f8 100644 --- a/src/clj/auto_ap/handler.clj +++ b/src/clj/auto_ap/handler.clj @@ -77,6 +77,7 @@ :source "request" :user-role (:user/role (:identity request)) :user-name (:user/name (:identity request))} + (when-not (str/includes? (:uri request) "health-check") (log/info "Beginning request" (:uri request))) (handler request)))) diff --git a/src/clj/auto_ap/routes/yodlee.clj b/src/clj/auto_ap/routes/yodlee.clj index ba3c3e96..ba94e89c 100644 --- a/src/clj/auto_ap/routes/yodlee.clj +++ b/src/clj/auto_ap/routes/yodlee.clj @@ -40,10 +40,10 @@ (GET "/provider-accounts" {:keys [query-params identity] :as request} (assert-admin identity) - (let [[session token] (yodlee/get-access-token)] - {:status 200 - :headers {"Content-Type" "application/edn"} - :body (pr-str @yodlee/in-memory-cache) })) + (log/info "working on provider accounts...") + {:status 200 + :headers {"Content-Type" "application/edn"} + :body (pr-str @yodlee/in-memory-cache) }) (POST "/reauthenticate/:id" {:keys [query-params identity] {:keys [id]} :route-params data :edn-params :as request} diff --git a/src/clj/auto_ap/yodlee/core.clj b/src/clj/auto_ap/yodlee/core.clj index 7ae8daa8..fbf58b57 100644 --- a/src/clj/auto_ap/yodlee/core.clj +++ b/src/clj/auto_ap/yodlee/core.clj @@ -208,14 +208,36 @@ (recur (concat transactions transaction-batch) (+ batch-size skip)) transactions))))) +(defn get-specific-transactions-with-date [account start end] + (let [cob-session (login-cobrand) + user-session (login-user cob-session) + batch-size 100 + get-transaction-batch (fn [skip] + (-> (str (:yodlee-base-url env) "/transactions?top=" batch-size "&fromDate=" start "&toDate=" end "&skip=" skip "&accountId=" account) + + (client/get (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) + :as :json} + other-config)) + :body + :transaction + ))] + + (loop [transactions [] + skip 0] + (let [transaction-batch (get-transaction-batch skip)] + (if (seq transaction-batch) + (recur (concat transactions transaction-batch) (+ batch-size skip)) + transactions))))) + (defn count-specific-transactions [account] (let [cob-session (login-cobrand) user-session (login-user cob-session)] (-> (str (:yodlee-base-url env) "/transactions/count?accountId=" account) - (client/get {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) - :as :json}) + (client/get (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) + :as :json} + other-config)) :body :transaction ))) @@ -227,8 +249,9 @@ (str (:yodlee-base-url env) "/user/accessTokens?appIds=" 10003600) (client/get - {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) - :as :json}) + (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) + :as :json} + other-config)) :body :user :accessTokens @@ -240,11 +263,12 @@ (defn create-user [] (let [cob-session (login-cobrand)] (-> (str (:yodlee-base-url env) "/user/register") - (client/post {:headers (merge base-headers {"Authorization" (auth-header cob-session)}) - :body (json/write-str {:user {:loginName "brycesPersoonal2" - :password "kV@mdv3TU11" - :email "yodleepersonal2@brycecovertoperations.com"}}) - :as :json}) + (client/post (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session)}) + :body (json/write-str {:user {:loginName "brycesPersoonal2" + :password "kV@mdv3TU11" + :email "yodleepersonal2@brycecovertoperations.com"}}) + :as :json} + other-config)) :body))) @@ -315,8 +339,9 @@ (-> (str (:yodlee-base-url env) "/providerAccounts/" id ) - (client/delete {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) - :as :json}) + (client/delete (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) + :as :json} + other-config)) :body :providerAccount first)) @@ -338,9 +363,10 @@ (-> (str (:yodlee-base-url env) "/providerAccounts?providerAccountIds=" pa) - (client/put {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) - :body (json/write-str data) - :as :json})) + (client/put (merge {:headers (merge base-headers {"Authorization" (auth-header cob-session user-session)}) + :body (json/write-str data) + :as :json} + other-config))) (refresh-provider-account pa))) #_(defn get-users []