more specs.

This commit is contained in:
Bryce Covert
2018-04-09 16:27:03 -07:00
parent f7dea19d2e
commit 5e7add409f
25 changed files with 246 additions and 209 deletions

View File

@@ -1,14 +1,17 @@
(ns auto-ap.db.companies
(:require [clojure.java.jdbc :as j]
[auto-ap.db.utils :refer [clj->db db->clj get-conn]]
[clojure.edn :as edn]))
(:require [auto-ap.db.utils :refer [clj->db db->clj get-conn assign-namespace]]
[auto-ap.entities.companies :as entity]
[clojure.edn :as edn]
[clojure.java.jdbc :as j]))
(defn merge-data [{:keys [data] :as x}]
(defn merge-data [{:keys [::entity/data] :as x}]
(merge x (edn/read-string data)))
(defn parse [x]
(-> x
(db->clj)
(assign-namespace "auto-ap.entities.companies")
merge-data
))
@@ -20,4 +23,4 @@
(defn upsert [id data]
(j/update! (get-conn) :companies (clj->db data) ["id = ?" (Integer/parseInt id)] )
(merge-data (db->clj (first (j/query (get-conn) ["SELECT * FROM companies WHERE id = ?" (Integer/parseInt id)])))))
(parse (first (j/query (get-conn) ["SELECT * FROM companies WHERE id = ?" (Integer/parseInt id)]))))

View File

@@ -1,7 +1,8 @@
(ns auto-ap.db.invoices
(:require [clojure.java.jdbc :as j]
(:require [auto-ap.db.utils :refer [clj->db db->clj get-conn]]
[auto-ap.parse :as parse]
[auto-ap.db.utils :refer [clj->db db->clj get-conn]]))
[auto-ap.entities.companies :as company]
[clojure.java.jdbc :as j]))
(defn insert-multi! [rows]
(j/insert-multi! (get-conn)
@@ -34,6 +35,6 @@
(do
(println row)
(assoc row
:company-id (:id (parse/best-match companies customer-identifier))
:company-id (::company/id (parse/best-match companies customer-identifier))
:imported false
:potential-duplicate false)))))

View File

@@ -1,9 +1,7 @@
(ns auto-ap.db.reminders
(:require [clojure.java.jdbc :as j]
[auto-ap.parse :as parse]
[auto-ap.db.utils :refer [clj->db db->clj get-conn]]
[clj-time.jdbc]
(:require [auto-ap.db.utils :refer [clj->db db->clj get-conn]]
[clj-time.core :as time]
[clojure.java.jdbc :as j]
[clojure.string :as str]))
(defn insert [row]

View File

@@ -1,7 +1,7 @@
(ns auto-ap.db.users
(:require [clojure.java.jdbc :as j]
(:require [auto-ap.db.utils :refer [get-conn]]
[clojure.edn :as edn]
[auto-ap.db.utils :refer [clj->db db->clj get-conn]]))
[clojure.java.jdbc :as j]))
(defn find-or-insert! [row]
(let [user (first (j/find-by-keys (get-conn)

View File

@@ -1,6 +1,6 @@
(ns auto-ap.db.utils
(:require [config.core :refer [env]])
(:require [clojure.string :as str]))
(:require [clojure.string :as str]
[config.core :refer [env]]))
(defn snake->kebab [s]
(str/replace s #"_" "-"))
@@ -34,3 +34,14 @@
:user "ap"
:password "fifteen-invoices-imported!"}))
(defn assign-namespace [x n]
(reduce-kv
(fn [x k v]
(assoc x (if (and (keyword? k)
(not (qualified-keyword? k)))
(keyword n (name k))
k)
v))
{}
x))

View File

@@ -1,23 +1,12 @@
(ns auto-ap.db.vendors
(:require [clojure.java.jdbc :as j]
[auto-ap.db.utils :refer [clj->db db->clj get-conn]]
(:require [auto-ap.db.utils :refer [clj->db db->clj get-conn assign-namespace]]
[auto-ap.entities.vendors :as entities]
[clojure.edn :as edn]))
[clojure.edn :as edn]
[clojure.java.jdbc :as j]))
(defn merge-data [{:keys [data] :as x}]
(merge x (edn/read-string data)))
(defn assign-namespace [x n]
(reduce-kv
(fn [x k v]
(assoc x (if (and (keyword? k)
(not (qualified-keyword? k)))
(keyword n (name k))
k)
v))
{}
x))
(defn parse [x]
(-> x
(db->clj)