diff options
| author | ckonstanski <kostcarl@isu.edu> | 2026-07-20 21:09:54 -0600 |
|---|---|---|
| committer | ckonstanski <kostcarl@isu.edu> | 2026-07-20 21:09:54 -0600 |
| commit | 8ab94f4677f8d56655a45bb636917429dcddda24 (patch) | |
| tree | b8481a5b04eca19fca1056340e35f1d6665a4fbd /lisp/sql | |
| parent | 9486b95432298bc89f6d7e4639721fb4e49879e0 (diff) | |
got contact info working
Diffstat (limited to 'lisp/sql')
| -rw-r--r-- | lisp/sql/contactinfo.lisp | 17 | ||||
| -rw-r--r-- | lisp/sql/resume-pkg.lisp | 43 | ||||
| -rw-r--r-- | lisp/sql/visastatus.lisp | 6 |
3 files changed, 62 insertions, 4 deletions
diff --git a/lisp/sql/contactinfo.lisp b/lisp/sql/contactinfo.lisp index 83c271d..efaed37 100644 --- a/lisp/sql/contactinfo.lisp +++ b/lisp/sql/contactinfo.lisp @@ -7,6 +7,9 @@ ((id :initarg :id :initform nil :accessor id) + (user_id :initarg :user_id + :initform nil + :accessor user_id) (address :initarg :address :initform nil :accessor address) @@ -28,3 +31,17 @@ (*table :initform "resume.contactinfo") (*where-expression :initform "id = ~a")) (:documentation "Holds the data for a resume.contactinfo record.")) + +(defclass contactinfo-v (contactinfo) + ((state_name :initarg :state_name + :initform nil + :accessor state_name) + (state_abbr :initarg :state_abbr + :initform nil + :accessor state_abbr) + (visastatus :initarg :visastatus + :initform nil + :accessor visastatus) + (*table :initform "resume.contactinfo_v") + (*where-expression :initform "id = ~a")) + (:documentation "Holds the data for a resume.contactinfo_v record.")) diff --git a/lisp/sql/resume-pkg.lisp b/lisp/sql/resume-pkg.lisp index 8a7b0fa..a0fc3d2 100644 --- a/lisp/sql/resume-pkg.lisp +++ b/lisp/sql/resume-pkg.lisp @@ -7,7 +7,9 @@ () (:documentation "")) -(defmethod get-all-resumes-for-user ((resume-pkg resume-pkg) (user user)) +;; resumes + +(defmethod get-all-resumes ((resume-pkg resume-pkg) (user user)) (let ((resume (make-instance 'resume :user_id (id user)))) (get-records resume-pkg resume "name asc"))) @@ -29,3 +31,42 @@ "resume.delete_resume(~a)" (id resume))) (caar (call-pg-function resume-pkg resume))) + +;; contactinfo + +(defmethod get-all-contactinfo ((resume-pkg resume-pkg) (user user)) + (let ((contactinfo-v (make-instance 'contactinfo-v :user_id (id user)))) + (get-records resume-pkg contactinfo-v "state_name asc, city asc, address asc, email asc, phone asc, visastatus asc"))) + +(defmethod get-contactinfo ((resume-pkg resume-pkg) (contactinfo-v contactinfo-v)) + (get-record resume-pkg contactinfo-v)) + +(defmethod insert-contactinfo ((resume-pkg resume-pkg) (contactinfo contactinfo)) + (setf (*table contactinfo) (format nil + "resume.insert_contactinfo(~a, ~a, ~a, '~a', '~a', '~a', '~a')" + (user_id contactinfo) + (state_id contactinfo) + (visastatus_id contactinfo) + (address contactinfo) + (city contactinfo) + (phone contactinfo) + (email contactinfo))) + (caar (call-pg-function resume-pkg contactinfo))) + +(defmethod update-contactinfo ((resume-pkg resume-pkg) (contactinfo contactinfo)) + (update-record resume-pkg contactinfo)) + +(defmethod delete-contactinfo ((resume-pkg resume-pkg) (contactinfo contactinfo)) + (delete-record resume-pkg contactinfo)) + +;; education + + + +;; language + + + +;; job + + diff --git a/lisp/sql/visastatus.lisp b/lisp/sql/visastatus.lisp index 3f6293c..a4c6744 100644 --- a/lisp/sql/visastatus.lisp +++ b/lisp/sql/visastatus.lisp @@ -7,9 +7,9 @@ ((id :initarg :id :initform nil :accessor id) - (visastatus :initarg :visastatus - :initform nil - :accessor visastatus) + (status :initarg :status + :initform nil + :accessor status) (*table :initform "resume.visastatus") (*where-expression :initform "id = ~a")) (:documentation "Holds the data for a resume.visastatus record.")) |
