fixed warnings.
This commit is contained in:
135
src/clj/user.clj
135
src/clj/user.clj
@@ -1,24 +1,29 @@
|
||||
(ns user
|
||||
(:require [auto-ap.datomic :refer [uri]]
|
||||
[config.core :refer [env]]
|
||||
[auto-ap.utils :refer [by]]
|
||||
[auto-ap.time :as atime]
|
||||
[clojure.core.async :as async]
|
||||
[unilog.context :as lc]
|
||||
[auto-ap.square.core :as square]
|
||||
[mount.core :as mount]
|
||||
[auto-ap.server ]
|
||||
[datomic.api :as d]
|
||||
[clojure.data.csv :as csv]
|
||||
[clj-time.coerce :as c]
|
||||
[clj-time.core :as t]
|
||||
[clj-time.periodic :as per]
|
||||
[clojure.java.io :as io]
|
||||
[clojure.string :as str]
|
||||
|
||||
[amazonica.aws.s3 :as s3])
|
||||
(:import [org.apache.commons.io.input BOMInputStream]))
|
||||
(:require
|
||||
[amazonica.aws.s3 :as s3]
|
||||
[auto-ap.datomic :refer [uri]]
|
||||
[auto-ap.ledger :as l]
|
||||
[auto-ap.server ]
|
||||
[auto-ap.square.core :as square]
|
||||
[auto-ap.time :as atime]
|
||||
[auto-ap.utils :refer [by]]
|
||||
[clj-time.coerce :as c]
|
||||
[clj-time.core :as t]
|
||||
[clj-time.periodic :as per]
|
||||
[clojure.core.async :as async]
|
||||
[clojure.data.csv :as csv]
|
||||
[clojure.java.io :as io]
|
||||
clojure.pprint
|
||||
[clojure.string :as str]
|
||||
[config.core :refer [env]]
|
||||
[datomic.api :as d]
|
||||
[mount.core :as mount]
|
||||
nrepl.middleware.print
|
||||
[unilog.context :as lc])
|
||||
(:import
|
||||
[org.apache.commons.io.input BOMInputStream]))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn mark-until-date [client end]
|
||||
(let [conn (d/connect uri)]
|
||||
(doseq [p (->>
|
||||
@@ -60,6 +65,7 @@
|
||||
|
||||
@(d/transact conn p) (println "process 100"))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn unapprove-all []
|
||||
(let [conn (d/connect uri)]
|
||||
(doseq [p (->>
|
||||
@@ -76,12 +82,9 @@
|
||||
@(d/transact conn p)
|
||||
(println "process 100"))))
|
||||
|
||||
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn load-accounts [conn]
|
||||
(let [[header & rows] (-> "master-account-list.csv" (io/resource) io/input-stream (BOMInputStream.) (io/reader) csv/read-csv)
|
||||
headers (map read-string header)
|
||||
code->existing-account (by :account/numeric-code (map first (d/query {:query {:find ['(pull ?e [:account/numeric-code
|
||||
:db/id])]
|
||||
:in ['$]
|
||||
@@ -96,7 +99,7 @@
|
||||
:where ['[?a :account/numeric-code ?ac]]}
|
||||
:args [(d/db conn) also-merge ]}))]
|
||||
(into (mapv
|
||||
(fn [[entity id sunset-account]]
|
||||
(fn [[entity id _]]
|
||||
[:db/add entity id old-account-id])
|
||||
(d/query {:query {:find ['?e '?id '?a ]
|
||||
:in ['$ '?ac ]
|
||||
@@ -157,6 +160,7 @@
|
||||
rows)]
|
||||
@(d/transact conn txes)))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn find-bad-accounts []
|
||||
(set (map second (d/query {:query {:find ['(pull ?x [*]) '?z]
|
||||
:in ['$]
|
||||
@@ -165,6 +169,7 @@
|
||||
'[?x ?a ?e]]}
|
||||
:args [(d/db (d/connect uri))]}))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn delete-4-digit-accounts []
|
||||
@(d/transact (d/connect uri)
|
||||
(transduce
|
||||
@@ -182,9 +187,10 @@
|
||||
)
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn find-conflicting-accounts []
|
||||
(filter
|
||||
(fn [[k v]]
|
||||
(fn [[_ v]]
|
||||
(> (count v) 1))
|
||||
(reduce
|
||||
(fn [acc [e z]]
|
||||
@@ -195,15 +201,15 @@
|
||||
:where ['[?e :account/numeric-code ?z]]}
|
||||
:args [(d/db (d/connect uri))]}))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn customize-accounts [customer filename]
|
||||
(let [conn (d/connect uri)
|
||||
[header & rows] (-> filename (io/resource) io/input-stream (BOMInputStream.) (io/reader) csv/read-csv)
|
||||
[_ & rows] (-> filename (io/resource) io/input-stream (BOMInputStream.) (io/reader) csv/read-csv)
|
||||
[client-id] (first (d/query (-> {:query {:find ['?e]
|
||||
:in ['$ '?z]
|
||||
:where [['?e :client/code '?z]]}
|
||||
:args [(d/db (d/connect uri)) customer]})))
|
||||
_ (println client-id)
|
||||
headers (map read-string header)
|
||||
code->existing-account (by :account/numeric-code (map first (d/query {:query {:find ['(pull ?e [:account/numeric-code
|
||||
{:account/applicability [:db/ident]}
|
||||
:db/id])]
|
||||
@@ -218,7 +224,7 @@
|
||||
|
||||
|
||||
|
||||
_ (if-let [bad-rows (seq (->> rows
|
||||
_ (when-let [bad-rows (seq (->> rows
|
||||
(group-by (fn [[_ account]]
|
||||
account))
|
||||
vals
|
||||
@@ -278,13 +284,7 @@
|
||||
#_@(d/transact conn txes)))
|
||||
|
||||
|
||||
|
||||
(defn attach-signature [client-code filename]
|
||||
@(d/transact (d/connect uri)
|
||||
[{:db/id [:client/code client-code]
|
||||
:client/signature-file (str "https://s3.amazonaws.com/integreat-signature-images/" filename)}]))
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn fix-transactions-without-locations [client-code location]
|
||||
(->>
|
||||
(d/query {:query {:find ['(pull ?e [*])]
|
||||
@@ -369,11 +369,13 @@
|
||||
:args [(d/db (d/connect uri))]})])
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn go []
|
||||
(require '[mount.core :as mount])
|
||||
(require '[auto-ap.server])
|
||||
(mount/start-without #'auto-ap.server/jetty))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn entity-history [i]
|
||||
(vec (sort-by first (d/query
|
||||
{:query {:find ['?tx '?z '?v ]
|
||||
@@ -383,6 +385,7 @@
|
||||
'[(= ?ad true)]]}
|
||||
:args [i (d/history (d/db (d/connect uri)))]}))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn entity-history-with-revert [i]
|
||||
(vec (sort-by first (d/query
|
||||
{:query {:find ['?tx '?z '?v '?ad ]
|
||||
@@ -391,12 +394,14 @@
|
||||
'[?a :db/ident ?z]]}
|
||||
:args [i (d/history (d/db (d/connect uri)))]}))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn tx-detail [i]
|
||||
(map (juxt :e #(d/ident (d/db (d/connect uri)) (:a %)) :v)
|
||||
(:data (first
|
||||
(d/tx-range (d/log (d/connect uri))
|
||||
i
|
||||
(inc i))))))
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn tx-range-detail [i]
|
||||
(map (juxt :e #(d/ident (d/db (d/connect uri)) (:a %)) :v)
|
||||
|
||||
@@ -405,14 +410,17 @@
|
||||
(+ i 100)))))
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn start-db []
|
||||
(mount.core/start (mount.core/only #{#'auto-ap.datomic/conn})))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn touch-transaction-ledger [e]
|
||||
@(d/transact auto-ap.datomic/conn [[:db/retractEntity [:journal-entry/original-entity e]]])
|
||||
@(d/transact auto-ap.datomic/conn [(auto-ap.ledger/entity-change->ledger (d/db auto-ap.datomic/conn)
|
||||
[:transaction e])]))
|
||||
@(d/transact auto-ap.datomic/conn [(l/entity-change->ledger (d/db auto-ap.datomic/conn)
|
||||
[:transaction e])]))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn mismatched-transactions []
|
||||
(let [jel-accounts (reduce
|
||||
(fn [acc [e lia]]
|
||||
@@ -444,6 +452,7 @@
|
||||
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn spit-csv [columns data ]
|
||||
(csv/write-csv *out*
|
||||
(into [(map name columns)]
|
||||
@@ -451,32 +460,34 @@
|
||||
((apply juxt columns) r )))))
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn find-queries [words]
|
||||
(let [obj (s3/list-objects-v2 :bucket-name (:data-bucket env)
|
||||
:prefix (str "queries/"))]
|
||||
(let [concurrent 30
|
||||
output-chan (async/chan)]
|
||||
(async/pipeline-blocking concurrent
|
||||
output-chan
|
||||
(comp
|
||||
(map #(do
|
||||
[(:key %)
|
||||
(str (slurp (:object-content (s3/get-object
|
||||
(let [obj (s3/list-objects-v2 :bucket-name (:data-bucket env)
|
||||
:prefix (str "queries/"))
|
||||
concurrent 30
|
||||
output-chan (async/chan)]
|
||||
(async/pipeline-blocking concurrent
|
||||
output-chan
|
||||
(comp
|
||||
(map #(do
|
||||
[(:key %)
|
||||
(str (slurp (:object-content (s3/get-object
|
||||
:bucket-name (:data-bucket env)
|
||||
:key (:key %)))))]))
|
||||
|
||||
(filter #(->> words
|
||||
(every? (fn [w] (str/includes? (second %) w)))))
|
||||
(map first)
|
||||
(map #(str/replace % #"queries/" ""))
|
||||
)
|
||||
(async/to-chan (:object-summaries obj))
|
||||
true
|
||||
(fn [e]
|
||||
(println "failed " e)))
|
||||
(async/<!! (async/into [] output-chan)))))
|
||||
|
||||
(filter #(->> words
|
||||
(every? (fn [w] (str/includes? (second %) w)))))
|
||||
(map first)
|
||||
(map #(str/replace % #"queries/" ""))
|
||||
)
|
||||
(async/to-chan! (:object-summaries obj))
|
||||
true
|
||||
(fn [e]
|
||||
(println "failed " e)))
|
||||
(async/<!! (async/into [] output-chan))))
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn historical-load-sales [client-code days]
|
||||
(let [client (d/pull (d/db auto-ap.datomic/conn)
|
||||
square/square-read
|
||||
@@ -508,6 +519,7 @@
|
||||
|
||||
(square/upsert-settlements client square-location)))))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn load-sales-for-day [date]
|
||||
(doseq [client (d/q [:find [(list 'pull '?e square/square-read ) '...]
|
||||
:where ['?e :client/square-locations ]]
|
||||
@@ -537,7 +549,7 @@
|
||||
]))
|
||||
(into {}))]
|
||||
(->>
|
||||
(for [[invoice-id invoice-expense-account-id target-account target-date amount expense-account location] (drop 1 data)
|
||||
(for [[invoice-id invoice-expense-account-id target-account target-date amount _ location] (drop 1 data)
|
||||
:let [
|
||||
invoice-id (Long/parseLong invoice-id)
|
||||
|
||||
@@ -567,7 +579,7 @@
|
||||
target-expense-account-location location
|
||||
|
||||
|
||||
[[payment-id payment-amount invoice-payment]] (vec (d/q
|
||||
[[_ _ invoice-payment]] (vec (d/q
|
||||
'[:find ?p ?a ?ip
|
||||
:in $ ?i
|
||||
:where [?ip :invoice-payment/invoice ?i]
|
||||
@@ -613,6 +625,7 @@
|
||||
vec)))
|
||||
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn get-schema [prefix]
|
||||
(->> (d/q '[:find ?i
|
||||
:in $ ?p
|
||||
@@ -621,6 +634,7 @@
|
||||
(mapcat identity)
|
||||
vec))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn get-idents []
|
||||
(->> (d/q '[:find ?i
|
||||
:in $
|
||||
@@ -631,6 +645,7 @@
|
||||
(sort)
|
||||
vec))
|
||||
|
||||
#_{:clj-kondo/ignore [:clojure-lsp/unused-public-var]}
|
||||
(defn init-repl []
|
||||
(set! nrepl.middleware.print/*print-fn* clojure.pprint/pprint))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user