mbosse99 commited on
Commit
628e667
·
1 Parent(s): a1089cc

init created interface

Browse files
Files changed (3) hide show
  1. .gitignore +3 -0
  2. app.py +59 -0
  3. requirements.txt +4 -0
.gitignore ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ __pycache__/
2
+ .venv/
3
+ .env
app.py ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from dotenv import load_dotenv
3
+ from azure.cosmos import CosmosClient
4
+ from typing import List
5
+ import os
6
+
7
+ load_dotenv()
8
+
9
+ def get_db_items(offset: int, database_name: str, container_name: str, num_items: int = 10) -> List[dict]:
10
+ try:
11
+
12
+ database = client.get_database_client(database_name)
13
+ container = database.get_container_client(container_name)
14
+
15
+ # Abfrage für die DB-Daten mit OFFSET
16
+ query = f"SELECT * FROM c OFFSET {offset} LIMIT {num_items}"
17
+ items = list(container.query_items(query=query, enable_cross_partition_query=True))
18
+
19
+ return items
20
+
21
+ except Exception as e:
22
+ print(f"Fehler beim Abrufen der Daten aus der Cosmos DB: {e}")
23
+ st.error("Someting went wrong. Please try again later.", icon="🚨")
24
+ return []
25
+
26
+ if "db_items" not in st.session_state:
27
+ endpoint = os.getenv("COSMOS_DB_ENDPOINT")
28
+ key = os.getenv("COSMOS_DB_KEY")
29
+ client = CosmosClient(endpoint, key)
30
+ st.session_state["db_items"] = client
31
+ if "interview_items" not in st.session_state:
32
+ initial_items = get_db_items(0, "appointment-database", "appointments")
33
+ st.session_state["interview_items"] = initial_items
34
+ if "assessment_items" not in st.session_state:
35
+ initial_items = get_db_items(0, "assessment-database", "assessments")
36
+ st.session_state["assessment_items"] = initial_items
37
+ if "items_to_show" not in st.session_state:
38
+ st.session_state["items_to_show"] = st.session_state["interview_items"]
39
+
40
+
41
+ col1, col2 = st.columns([2, 1])
42
+
43
+ col1.title("Meeting Manager")
44
+ col2.image("https://www.workgenius.com/wp-content/uploads/2023/03/WorkGenius_navy-1.svg")
45
+
46
+ def change_meeting_items():
47
+ if st.session_state["meeting_type"] == "Candidate interview":
48
+ st.session_state["items_to_show"] = st.session_state["interview_items"]
49
+ else:
50
+ st.session_state["items_to_show"] = st.session_state["assessment_items"]
51
+
52
+ st.radio("Select a meeting type", ("Candidate interview", "Peer to peer assessment"), key="meeting_type", on_change=change_meeting_items)
53
+ st.divider()
54
+ st.subheader("Candidate interview:" if st.session_state["meeting_type"] == "Candidate interview" else "Peer to peer assessments:")
55
+ # st.write(st.session_state["interview_items"])
56
+ meeting_title = st.columns([7,1])
57
+ meeting_title[0].write("**Meeting title:**")
58
+ for i, interview in enumerate(st.session_state["items_to_show"]):
59
+ st.write(interview["job_title"]+str(i+1))
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ openai==0.28.1
2
+ streamlit
3
+ python-dotenv
4
+ azure-cosmos