leadguru-jobs 0.506.0__py3-none-any.whl → 0.507.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: leadguru_jobs
3
- Version: 0.506.0
3
+ Version: 0.507.0
4
4
  Summary: LGT jobs builds
5
5
  Author-email: developer@leadguru.co
6
6
  Classifier: Development Status :: 5 - Production/Stable
@@ -38,8 +38,8 @@ lgt_jobs/lgt_common/slack_client/methods.py,sha256=-PxK8StkJ-dyACHdRRiQlRL2qaG9K
38
38
  lgt_jobs/lgt_common/slack_client/slack_client.py,sha256=C1FwHQW82OS73THwPRF4_AvyDi4QbYLjbI_NDXO8Nwk,15896
39
39
  lgt_jobs/lgt_common/slack_client/web_client.py,sha256=oZV7oUcSXXngfMI6oXDedlQWePL9b2ClkocqbXNe1ns,6259
40
40
  lgt_jobs/lgt_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
- lgt_jobs/lgt_data/analytics.py,sha256=pku0MifRazlY12fEvNLupnG-U_PUJ0RgZbRfzW2P1js,22900
42
- lgt_jobs/lgt_data/engine.py,sha256=OkTIIsVhb4o0dcDOzolb-NNTftzhJvsCuldxg1PvLUM,8113
41
+ lgt_jobs/lgt_data/analytics.py,sha256=Gr-7IzrnHPN9YJlIT6-NqrzVYU39vQUMKCRMsvvM5A4,22869
42
+ lgt_jobs/lgt_data/engine.py,sha256=YJYEAj1Z4_XIhPMaoB7bp8x9ponANBzw7gZRrj6c-c4,8600
43
43
  lgt_jobs/lgt_data/enums.py,sha256=P-Jo_kQfFanbN5ztjQZIaWkZ6qOmAjHdypZ85ReOgdA,2407
44
44
  lgt_jobs/lgt_data/helpers.py,sha256=58ycqKF1z5nAw0vs6yVCg-SQet107YHyKYXaQUc7M68,157
45
45
  lgt_jobs/lgt_data/model.py,sha256=DPT2ztJG9w7O0_sxbCY1vzNwz9Y-ykJq0Tfuv7-UT0g,29448
@@ -47,7 +47,7 @@ lgt_jobs/lgt_data/mongo_repository.py,sha256=h3xA2AvqHaiQfl4vg88SdOKBczJ0P6bpkZY
47
47
  lgt_jobs/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
48
  lgt_jobs/services/web_client.py,sha256=eCgzyyXco6iPwAJziyRek_3ns1bxJZKknnLIJApKeoo,2070
49
49
  lgt_jobs/templates/new_message.html,sha256=SNVFWnq1goVrtaTJpbEru-8vYOav1wz31z8r01hAZI8,6985
50
- leadguru_jobs-0.506.0.dist-info/METADATA,sha256=Dl1kqyOzTr_qIfg668C93TI3qScE4KZYT4pmWmUcFrY,1319
51
- leadguru_jobs-0.506.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
52
- leadguru_jobs-0.506.0.dist-info/top_level.txt,sha256=rIuw1DqwbnZyeoarBSC-bYeGOhv9mZBs7_afl9q4_JI,9
53
- leadguru_jobs-0.506.0.dist-info/RECORD,,
50
+ leadguru_jobs-0.507.0.dist-info/METADATA,sha256=VTxjoydeK5GKP4YTw0t0whhLdgyBQKytIP9FpGaf-E0,1319
51
+ leadguru_jobs-0.507.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
52
+ leadguru_jobs-0.507.0.dist-info/top_level.txt,sha256=rIuw1DqwbnZyeoarBSC-bYeGOhv9mZBs7_afl9q4_JI,9
53
+ leadguru_jobs-0.507.0.dist-info/RECORD,,
@@ -337,7 +337,6 @@ def get_date_aggregated_analytics(source_id=None, started_at: datetime = None,
337
337
 
338
338
 
339
339
  def get_leads_aggregated_analytics(from_date: datetime = None, to_date: datetime = None, user_id: str = None):
340
- match_pipeline: dict = {}
341
340
  pipeline = [
342
341
  {
343
342
  '$project': {'_id': 0, 'user_ids': 1}
@@ -349,19 +348,17 @@ def get_leads_aggregated_analytics(from_date: datetime = None, to_date: datetime
349
348
  '$group': {'_id': '$user_ids', 'count': {'$sum': 1}}
350
349
  }
351
350
  ]
351
+ if user_id:
352
+ pipeline.insert(0, {"$match": {"user_ids": {"$in": [str(user_id)]}}})
352
353
 
353
354
  if from_date:
354
355
  beginning_of_the_day = datetime(from_date.year, from_date.month, from_date.day)
355
- match_pipeline["created_at"] = {"$gte": beginning_of_the_day}
356
+ pipeline.insert(0, {"$match": {"created_at": {"$gte": beginning_of_the_day}}})
356
357
 
357
358
  if to_date:
358
359
  end_of_the_day = datetime(to_date.year, to_date.month, to_date.day, 23, 59, 59, 999)
359
- match_pipeline["created_at"] = {"$lte": end_of_the_day}
360
-
361
- if user_id:
362
- match_pipeline["user_ids"] = {"$in": [str(user_id)]}
360
+ pipeline.insert(0, {"$match": {"created_at": {"$lte": end_of_the_day}}})
363
361
 
364
- pipeline.insert(0, {'$match': match_pipeline})
365
362
  filtered_messages = list(client.lgt_admin.filtered_messages.aggregate(pipeline))
366
363
  filtered_messages_dic = OrderedDict()
367
364
 
@@ -41,7 +41,8 @@ class UserTrackAction(Document):
41
41
  meta = {"indexes": ["user_id"], "db_alias": "lgt_admin"}
42
42
 
43
43
  @staticmethod
44
- def get_aggregated() -> Dict[str, Tuple[datetime, datetime]]:
44
+ def get_aggregated(from_date: datetime = None, to_date: datetime = None) \
45
+ -> Dict[str, Tuple[datetime, datetime]]:
45
46
  pipeline = [
46
47
  {
47
48
  "$group": {
@@ -51,6 +52,14 @@ class UserTrackAction(Document):
51
52
  }
52
53
  }]
53
54
 
55
+ if from_date:
56
+ beginning_of_the_day = datetime(from_date.year, from_date.month, from_date.day, 0, 0, 0, 0)
57
+ pipeline.insert(0, {"$match": {"created_at": {"$gte": beginning_of_the_day}}})
58
+
59
+ if to_date:
60
+ end_of_the_day = datetime(to_date.year, to_date.month, to_date.day, 23, 59, 59, 999)
61
+ pipeline.insert(0, {"$match": {"created_at": {"$lte": end_of_the_day}}})
62
+
54
63
  result = list(UserTrackAction.objects.aggregate(*pipeline))
55
64
 
56
65
  return {str(item.get("_id")): (item["first_action_at"], item["last_action_at"]) for item in result}