habulaj commited on
Commit
0b67224
·
verified ·
1 Parent(s): 5caab0a

Update routes/logs.py

Browse files
Files changed (1) hide show
  1. routes/logs.py +34 -22
routes/logs.py CHANGED
@@ -129,28 +129,40 @@ async def get_logs(
129
  def generate_message(log, user_info):
130
  action = log.get("action")
131
  reference = log.get("reference")
132
- old_data = log.get("old_data")
133
- new_data = log.get("new_data")
134
-
 
 
 
 
 
 
 
 
 
 
 
135
  email = user_info.get("email", "Alguém")
136
- name2 = None
137
-
138
- try:
139
- if reference == "User" and new_data:
140
- name2 = eval(new_data).get("name")
141
- elif reference == "Approval" and old_data:
142
- name2 = eval(old_data).get("name")
143
- elif reference in ("Collaboration", "Onboarding") and new_data:
144
- name2 = eval(new_data).get("name")
145
- except Exception:
146
- name2 = None
147
-
 
148
  if action == "update" and reference == "User":
149
- return f"{email} atualizou informações de {name2 or 'um usuário'}"
150
  elif action == "approve" and reference == "Approval":
151
- return f"{email} aprovou o estilista {name2 or ''}"
152
  elif action == "deny" and reference == "Approval":
153
- return f"{email} negou o estilista {name2 or ''}"
154
  elif action == "update" and reference == "Onboarding":
155
  return f"{email} atualizou uma pergunta do onboarding"
156
  elif action == "add" and reference == "Onboarding":
@@ -158,12 +170,12 @@ async def get_logs(
158
  elif action == "delete" and reference == "Onboarding":
159
  return f"{email} excluiu uma pergunta do onboarding"
160
  elif action == "add" and reference == "Collaboration":
161
- return f"{email} adicionou um novo colaborador"
162
  elif action == "delete" and reference == "Collaboration":
163
- return f"{email} excluiu um colaborador da lista de colaboradores"
164
  elif action == "update" and reference == "Collaboration":
165
- return f"{email} atualizou as permissões de um colaborador"
166
-
167
  return f"{email} realizou uma ação: {action} em {reference}"
168
 
169
  enriched_logs = []
 
129
  def generate_message(log, user_info):
130
  action = log.get("action")
131
  reference = log.get("reference")
132
+ old_data = log.get("old_data") or {}
133
+ new_data = log.get("new_data") or {}
134
+
135
+ if isinstance(old_data, str):
136
+ try:
137
+ old_data = json.loads(old_data)
138
+ except Exception:
139
+ old_data = {}
140
+ if isinstance(new_data, str):
141
+ try:
142
+ new_data = json.loads(new_data)
143
+ except Exception:
144
+ new_data = {}
145
+
146
  email = user_info.get("email", "Alguém")
147
+ target_email = None
148
+
149
+ if reference == "User" and new_data:
150
+ target_email = new_data.get("email")
151
+ elif reference == "Approval" and old_data:
152
+ target_email = old_data.get("name")
153
+ elif reference == "Collaboration":
154
+ target_email = (
155
+ new_data.get("email") or old_data.get("email")
156
+ )
157
+ elif reference == "Onboarding":
158
+ target_email = None
159
+
160
  if action == "update" and reference == "User":
161
+ return f"{email} atualizou informações de {target_email or 'um usuário'}"
162
  elif action == "approve" and reference == "Approval":
163
+ return f"{email} aprovou o estilista {target_email or ''}"
164
  elif action == "deny" and reference == "Approval":
165
+ return f"{email} negou o estilista {target_email or ''}"
166
  elif action == "update" and reference == "Onboarding":
167
  return f"{email} atualizou uma pergunta do onboarding"
168
  elif action == "add" and reference == "Onboarding":
 
170
  elif action == "delete" and reference == "Onboarding":
171
  return f"{email} excluiu uma pergunta do onboarding"
172
  elif action == "add" and reference == "Collaboration":
173
+ return f"{email} adicionou {target_email or 'um colaborador'} como novo colaborador"
174
  elif action == "delete" and reference == "Collaboration":
175
+ return f"{email} excluiu {target_email or 'um colaborador'} da lista de colaboradores"
176
  elif action == "update" and reference == "Collaboration":
177
+ return f"{email} atualizou as permissões de {target_email or 'um colaborador'}"
178
+
179
  return f"{email} realizou uma ação: {action} em {reference}"
180
 
181
  enriched_logs = []