minor error

This commit is contained in:
Bryce
2023-10-27 20:44:10 -07:00
parent 166a9ea935
commit 0f74b71cd1

View File

@@ -40,21 +40,21 @@
#_#_:attribute-names ["All"]}))]
(let [message-body (json/read-str (:body message)
:key-fn keyword)]
(doseq [r (:Records message-body)]
(alog/info ::processing-record :record r )
(doseq [r (:Records message-body)]
(alog/info ::processing-record :record r)
(let [props (Session/getDefaultInstance (Properties.))
message-stream (-> (s3/get-object {:key (-> r :s3 :object :key)
:bucket-name (-> r :s3 :bucket :name)})
:input-stream)
mail (message/read-message (MimeMessage. props message-stream))]
(alog/info ::reading-mail :body (->> mail :body (filter :content-type) (map :body) ))
(alog/info ::reading-mail :body (->> mail :body (filter :content-type) (map :body)))
(mu/with-context {:email-record {:key (-> r :s3 :object :key)
:bucket-name (-> r :s3 :bucket :name)}}
(doseq [pdf-stream (->> (-> mail :body)
(filter :content-type)
#_(filter #(re-find #"application/pdf" (:content-type %)) ))
#_(filter #(re-find #"application/pdf" (:content-type %))))
:let [filename (str "/tmp/" (UUID/randomUUID) ".pdf")]]
(try
(try
(let [_ (io/copy (:body pdf-stream) (io/file filename))
extension (last (str/split (.getName (io/file filename)) #"\."))
s3-location (str "invoice-files/" (str (UUID/randomUUID)) "." extension)]
@@ -71,13 +71,13 @@
s3-location)
:import-status :import-status/imported)))]
(alog/info ::found-imports :imports imports)
(invoices/import-uploaded-invoice {:user/role "admin"} imports ))))
(invoices/import-uploaded-invoice {:user/role "admin"} imports))))
(catch Exception e
(alog/warn ::cant-import :error e)
(send-email-about-failed-message (-> r :s3 :bucket :name) (-> r :s3 :object :key)) (str e))
(finally
(send-email-about-failed-message (-> r :s3 :bucket :name) (-> r :s3 :object :key) (str e)))
(finally
(io/delete-file filename))))))))
(sqs/delete-message (assoc message :queue-url (:invoice-import-queue-url env) ))))
(sqs/delete-message (assoc message :queue-url (:invoice-import-queue-url env)))))
(defn -main [& _]
(execute "import-uploaded-invoices" process-sqs))