Tigernawin commited on
Commit
041c71d
·
verified ·
1 Parent(s): df2996a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -18
app.py CHANGED
@@ -1,19 +1,12 @@
1
  import streamlit as st
2
  import pandas as pd
3
  from simple_salesforce import Salesforce, SalesforceAuthenticationFailed
4
- from modules.simulator import simulate_data
5
  from modules.filters import apply_filters
6
  from modules.visuals import display_dashboard, display_charts
7
 
8
  # --- Streamlit Page Setup ---
9
  st.set_page_config(page_title="Vedavathi Smart Pole Monitoring", layout="wide")
10
- st.title("📡 Vedavathi Smart Pole Monitoring - PoC Simulator")
11
-
12
- # --- Sidebar Controls ---
13
- st.sidebar.header("🛠️ Simulation Controls")
14
- data_source = st.sidebar.radio("Data Source", ["Simulated", "Salesforce"])
15
- simulate_faults = st.sidebar.checkbox("Simulate Random Faults", value=True)
16
- num_poles = st.sidebar.slider("Number of Poles", 5, 50, 10) if data_source == "Simulated" else None
17
 
18
  # --- Salesforce Connection ---
19
  def connect_to_salesforce():
@@ -78,16 +71,16 @@ def fetch_salesforce_data(sf):
78
  st.error(f"Error fetching Salesforce data: {e}")
79
  return pd.DataFrame()
80
 
81
- # --- Load Data ---
82
- sf = connect_to_salesforce() if data_source == "Salesforce" else None
 
 
 
 
 
83
 
84
- if data_source == "Salesforce" and sf:
85
- df = fetch_salesforce_data(sf)
86
- if df.empty:
87
- st.stop()
88
- elif data_source == "Simulated":
89
- df = simulate_data(num_poles, simulate_faults)
90
- else:
91
  st.stop()
92
 
93
  # --- Sidebar Filters ---
@@ -113,4 +106,4 @@ display_dashboard(filtered_df)
113
  st.subheader("📋 Pole Monitoring Table")
114
  st.dataframe(filtered_df, use_container_width=True)
115
 
116
- display_charts(filtered_df)
 
1
  import streamlit as st
2
  import pandas as pd
3
  from simple_salesforce import Salesforce, SalesforceAuthenticationFailed
 
4
  from modules.filters import apply_filters
5
  from modules.visuals import display_dashboard, display_charts
6
 
7
  # --- Streamlit Page Setup ---
8
  st.set_page_config(page_title="Vedavathi Smart Pole Monitoring", layout="wide")
9
+ st.title("📡 Vedavathi Smart Pole Monitoring - Salesforce Live Monitoring")
 
 
 
 
 
 
10
 
11
  # --- Salesforce Connection ---
12
  def connect_to_salesforce():
 
71
  st.error(f"Error fetching Salesforce data: {e}")
72
  return pd.DataFrame()
73
 
74
+ # --- Connect and Load Data ---
75
+ sf = connect_to_salesforce()
76
+
77
+ if not sf:
78
+ st.stop()
79
+
80
+ df = fetch_salesforce_data(sf)
81
 
82
+ if df.empty:
83
+ st.warning("No data found from Salesforce.")
 
 
 
 
 
84
  st.stop()
85
 
86
  # --- Sidebar Filters ---
 
106
  st.subheader("📋 Pole Monitoring Table")
107
  st.dataframe(filtered_df, use_container_width=True)
108
 
109
+ display_charts(filtered_df)