Ryonaly commited on
Commit
e859b0f
·
verified ·
1 Parent(s): b128867

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +64 -0
  2. requirements.txt +2 -3
app.py ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import streamlit as st
3
+ import pandas as pd
4
+ from datetime import datetime
5
+
6
+ st.set_page_config(page_title="NICU Handover", layout="wide")
7
+
8
+ st.title("📝 NICU Handover Form")
9
+
10
+ # Initialize session state
11
+ if "data" not in st.session_state:
12
+ st.session_state.data = []
13
+
14
+ with st.form("handover_form"):
15
+ col1, col2 = st.columns(2)
16
+ with col1:
17
+ name = st.text_input("👶 اسم الطفل")
18
+ file_id = st.text_input("🆔 رقم الملف (اختياري)")
19
+ ga = st.number_input("📆 العمر الرحمي (GA بالأسبوع)", min_value=20, max_value=45, step=1)
20
+ pna = st.number_input("📅 العمر بعد الولادة (PNA بالأيام)", min_value=0, max_value=200)
21
+ weight = st.number_input("⚖️ الوزن (كجم)", min_value=0.3, max_value=7.0, step=0.1)
22
+
23
+ with col2:
24
+ diagnosis = st.text_input("🩺 التشخيص")
25
+ condition = st.selectbox("🔍 الحالة العامة", ["مستقر", "غير مستقر", "على جهاز تنفس"])
26
+ fluids = st.text_input("💧 السوائل")
27
+ feeding = st.selectbox("🍽️ التغذية", ["فموي", "IV", "NPO"])
28
+ treatment = st.text_area("💊 العلاج")
29
+
30
+ plan = st.text_area("🗓️ خطة اليوم")
31
+ notes = st.text_area("📝 ملاحظات إضافية")
32
+
33
+ submitted = st.form_submit_button("➕ أضف الحالة")
34
+
35
+ if submitted:
36
+ time_now = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
37
+ st.session_state.data.append({
38
+ "اسم الطفل": name,
39
+ "رقم الملف": file_id,
40
+ "GA": ga,
41
+ "PNA": pna,
42
+ "الوزن": weight,
43
+ "التشخيص": diagnosis,
44
+ "الحالة": condition,
45
+ "السوائل": fluids,
46
+ "التغذية": feeding,
47
+ "العلاج": treatment,
48
+ "خطة اليوم": plan,
49
+ "ملاحظات": notes,
50
+ "الوقت": time_now
51
+ })
52
+ st.success("✅ تم تسجيل الحالة بنجاح")
53
+
54
+ st.markdown("---")
55
+ st.header("📋 الحالات المُسجلة")
56
+
57
+ if st.session_state.data:
58
+ df = pd.DataFrame(st.session_state.data)
59
+ st.dataframe(df, use_container_width=True)
60
+
61
+ csv = df.to_csv(index=False).encode("utf-8")
62
+ st.download_button("⬇️ تحميل البيانات CSV", data=csv, file_name="NICU_handover.csv", mime="text/csv")
63
+ else:
64
+ st.info("لم يتم تسجيل أي حالة بعد.")
requirements.txt CHANGED
@@ -1,3 +1,2 @@
1
- altair
2
- pandas
3
- streamlit
 
1
+ streamlit
2
+ pandas